pret/pokeruby
FreeDecompilation of Pokémon Ruby/Sapphire
FreeFree tier
About pret/pokeruby
Pokémon Ruby and Sapphire decompilation project (pokeruby) that disassembles the original Game Boy Advance games into C, Assembly, and C++ source code. The repository builds two exact ROM replicas (pokeruby.gba and pokesapphire.gba) with provided SHA1 checksums. It is maintained by the pret community and includes build instructions in INSTALL.md, a Makefile, and supporting tools. The project enables game preservation, learning, and modding.
Key Features
Disassembly of Pokémon Ruby and Sapphire into C, Assembly, and C++ source code
Builds pokeruby.gba and pokesapphire.gba ROMs with verified SHA1 checksums
Codebase composed of 84.1% C, 9.5% Assembly, 6.1% C++
Open source project under the pret organization (pret.github.io)
Includes build tools, Makefile, and INSTALL.md for setup
Provides multiple revision ROMs (e.g., rev1, rev2, debug variants)
Pros & Cons
Pros
- Free and open source with no licensing restrictions
- Well-documented setup instructions in INSTALL.md
- Active community and multiple related projects at pret.github.io
- High accuracy to original game output, verified by SHA1 hashes
Cons
- Requires original Pokémon Ruby/Sapphire ROM to build (due to legal restrictions)
- Technical expertise needed for compilation toolchain setup
- Only covers Ruby/Sapphire; other versions require separate projects
Best For
Game preservation through accurate disassembly of original Pokémon gamesLearning game development and reverse engineering for Game Boy AdvanceCreating custom ROM hacks and modifications for Pokémon Ruby/Sapphire
FAQ
What is this project?
It is a decomposition of Pokémon Ruby and Sapphire that produces exact ROM replicas from the original game code.
How do I set up the repository?
Follow the instructions in INSTALL.md to install necessary tools and build the ROMs.
What ROMs does it build?
It builds pokeruby.gba (SHA1: f28b6ffc97847e94a6c21a63cacf633ee5c8df1e) and pokesapphire.gba (SHA1: 3ccbbd45f8553c36463f13b938e833f652b793e4), along with debug and revision variants.