ProjectPSX is an experimental PlayStation 1 emulator written entirely in C# that focuses on learning and exploring console hardware through a clean and dependency-free implementation. The project emulates key components of the PS1 architecture, including the MIPS R3000A CPU, GPU, DMA controller, and CD-ROM subsystem, all interconnected through a custom bus system. Unlike production-grade emulators, ProjectPSX is intentionally designed as a transparent and educational codebase, prioritizing simplicity and readability over full compatibility or performance optimization. It includes a software-based rasterizer for rendering 3D graphics and supports features such as memory cards, basic BIOS functionality, and controller input mapping. The emulator can run many commercial games to varying degrees, although timing inaccuracies and missing features can still cause instability.
Features
- Full MIPS R3000A CPU emulation with coprocessors
- Software GPU rasterizer with polygon rendering
- CD-ROM subsystem with basic command handling
- Memory card and controller input support
- Built-in BIOS emulation and MIPS disassembler
- Debugging tools including VRAM visualization