GameRoy (Source)

GameRoy (Source)
GameRoy (Source)
File Size:
541.20 kB
02 September 2023
6 x

A Game Boy emulator, disassembler and debugger, written in Rust

GameRoy appears to have high compatibility, I tested over a dozen random games and all played without issue.


* Support for DMG (only).
* High accuracy
* Accurate clock frequency: don't sync over frames or sound, but the clock frequency itself.
* Battery saves support.
* Save and load states.
* Time travel backwards in time (Rewind)
* Graphical interface for listing roms in a folder.
* Debugger with a graphical interface:
  - Views for disassembly, registers, video RAM, etc...
  - Statically trace rom for executable memory ranges (and at runtime).
  - Add breakpoints at read, write, jump or execution of memory addresses.
  - Watch addresses.
  - Step code backwards.


Building and Running

This project depends on resvg (version 0.23, at time of writing) for rendering assets, and cargo-about (0.5.1) for generate a list of licenses (this last one is optional).

You can install them using cargo:

cargo install resvg
cargo install cargo-about


Compiling and running for native, i.e, Windows and Linux (other platforms are untested), only needs cargo:

cargo run --release -p gameroy_native


For building to android, you need to have Anroid NDK installed.

Gameroy uses Gradle to build the android port. To build and install the .apk in a device:

cd android
./gradlew installDebug # or gradlew installDebug, on Windows
Powered by Phoca Download