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.







