A work in progress Gameboy emulator i made to learn Rust, using Piston for the rendering. The emulator is still in early development, most of the basic stuff is yet to be implemented, but it can boot the original BIOS, Tetris and Dr Mario 🎉
Roms should be placed inside /src/roms
, the emulator must be compiled in release mode to create an optimized build (for performance issues) and ran with cargo run --release -- rom-name.gb
.
Some debugging commands can be launched during execution: l will enable CPU execution logging, t will toggle the currently used tileset, d will dump interrupts/cpu/lcdc states to screen, tilemaps and screentiles to file and current tileset to image
All tests are organized in the tests
directory and can be run with cargo test