- CPU Emulation: emulates the PlayStation's main R3000A-compatible CPU.
- GPU Emulation: handles some graphics rendering. Rendering is done using the
wgpulibrary (could it even run in a browser?). - Debugging: some debugging and stepping features are available.
It cannot currently run any games, since the CD-ROM drive is not emulated yet. However, the BIOS boot scene is completely displayed.
- Rust: Ensure you have a recent version of Rust installed. You can get it from rust-lang.org.
- PlayStation BIOS: You will need a PlayStation BIOS ROM image (e.g.,
SCPH1001.BIN). Place it in abios/directory in the project root.
- Clone the repository:
git clone <your-repository-url> cd crustation
- Build the project using Cargo:
cargo build --release
- To run the emulator (it will attempt to load the BIOS):
cargo run --release
- To run a specific PlayStation executable:
(The emulator loads the BIOS first, then the executable.)
cargo run --release path/to/your/executable.exe
env_logger(or a similar logging facade)pollstercrustationgui(the GUI crate for this project)winit(for window creation and event handling)wgpu(or a library wrapping it, for graphics rendering)crossbeam-channel(for communication, between CPU and GPU threads)
ctrlc(for handling Ctrl-C interrupts)- Standard Rust libraries.
This project is licensed under the MIT License.
