JaCzekanski / Avocado

🥑 PlayStation 1 emulator
GNU General Public License v2.0
537 stars 31 forks source link

Reimplement GTE module #4

Closed JaCzekanski closed 4 years ago

JaCzekanski commented 7 years ago

Right now GTE is implemented according to reversed documentation - reading and understanding it is impossible. Also, there is no tests attached - .exe based tests or unit tests should be created.

JaCzekanski commented 6 years ago

Latest commits 3af4dd9..9291062 added support for missing GTE opcodes and fixed most of implementation bugs. Automatic testing based on fuzzing real console was added.

Code should be refactored into high level functions like MultiplyMatrixByVector to provide better code reusage and to make opcodes human readable.

JaCzekanski commented 5 years ago

Code is mostly refactored, there are still few opcodes which fails auto test suite.

screenshot 2019-01-09 at 23 33 14

Opcodes which calculates under/overflow flags incorrectly:

JaCzekanski commented 4 years ago
Screenshot 2020-07-22 at 01 24 59

All green