This is a Rust-based PlayStation 1 emulator that I originally wrote in Java as a final-year university project, ending in August 2016. I decided to port the code to C afterwards and see how far I could take it in terms of functionality. The C version reached parity with the Java version (other than my Java version having a nice graphical debugger that I created). This version was also fundamentally incomplete, and I only got as far as it booting Crash Bandicoot 1, with no controller or sound support.
As I've recently been learning and playing around with Rust, I want to go back and finish what I started by re-implementing all of this again and finally having a go at finishing it as a passion project. This is just a shell that I will gradually fill out as I implement various functionality.
Please note that this is my own code, and there is no association or endorsement by Sony, implied or otherwise.
- The CP0 co-processor, aka System Control Co-processor.
- The CP2 co-processor, aka the Geometry Transformation Engine.
Everything.