pret/pokeruby logo

pret/pokeruby

Free

Decompilation of Pokémon Ruby/Sapphire

FreeFree tier
Type
Open Source

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.