4 releases

✓ Uses Rust 2018 edition

0.2.2 Jun 29, 2019
0.2.1 Jun 29, 2019
0.2.0 Jun 29, 2019
0.1.0 Jun 19, 2019

#40 in Emulators


307 lines

GameBoy ROM parser

Build Status Crates.io Version

A very simple parser to get data out of GB ROMs and perform basic validation.

It's a design goal to make validation generally optional.


cargo run --bin gb2json --features="serde_json" -- /path/to/rom/data

And here's it in use in a real emulator (rusty-boy).


A parser for Gameboy ROMS. Provides high-level useful data types like RomHeader and RomType. Basic validation is provided through the validate method on RomHeader.

NOTE: this crate does nothing with the data before or after the ROM header right now. The bytes there are not validated as valid Gameboy machine code.

Mostly based on info from http://marc.rawer.de/Gameboy/Docs/GBCPUman.pdf . Information from other places is and other places is called out in comments in the relevant files


~41K SLoC