A GameBoy emulator, written in Rust.
In my quest to build a GBA emulator in Rust, I made a Game Boy emulator in Rust.
- MBC2, MBC3, MB5 cartridge support
- CGB support
- WASM for browser support
- Refactor CPU to use into adn from traits
- Give components a common trait
- GDB?
- Sound issues
Make sure you have the latest version of Rust installed
brew install sdl2
sudo apt update && sudo apt install -y libsdl2
cargo run <rom file path>
- You can also build a release and run the executable as well
Joypad | Keyboard |
---|---|
A | X |
B | Z |
Start | Space |
Select | Enter |
Up | Up Arrow |
Down | Down Arrow |
Left | Left Arrow |
Right | Right Arrow |
Test | Status |
---|---|
cpu instrs | ๐ |
instr timing | ๐ |
* Other Blargg tests failing or can not test due to not supporting CGB at the moment
Test | Status |
---|---|
DMG Acid | ๐ |
- Pan Docs
- Game Boy Opcodes
- gbz80(7) โ CPU opcode reference
- Ultimate Game Boy Talk
- A journey into GameBoy emulation
- GBEDG
- GhostSonic Reddit Post on Sound
- Game Boy Sound Emulation
These are some awesome emulators by some really smart people that helped me get to this point.