A Gameboy emulator written in C++ to explore dynamic recompilation techniques. Features an accurate interpreter, a WIP cached interpreter that translates the Gameboy's Sharp LR35902 ISA to x64, and (fairly) accurate PPU emulation. Most games that have their MBC implemented are fully playable (see below).
- WIP Cached interpreter
- Passable emulation of most titles
- Some debug output and logging capabilities are available
Title | In-game |
---|---|
These tests have been passed using the interpreter cpu backend.
cpu_instrs | instr_timing |
---|---|
dmg-acid2 |
---|
Debug Views |
---|
- Add SPU
- CGB support
This project has only been tested on Linux. To compile, simply run ./run.sh
.