Case study
pokered: a matching Pokémon Red and Blue disassembly
Reconstructs the Game Boy games Pokémon Red and Blue as RGBDS assembly, with graphics and data kept as editable source files. One tree builds the USA/Europe Red and Blue ROMs, a Blue debug build and patches for the Virtual Console releases, each checked against a recorded SHA-1. It is a full disassembly rather than a decompilation into a higher-level language.
- Targets
- Game
- Category
- Independent reconstruction cases
- Relationship
- Independent reconstruction project
- Sources reviewed
Requirements & limits
- Prerequisites: The build reads no original ROM: every input is in the repository, so the outputs are rebuilt from source rather than combined with extracted assets. The repository therefore carries the game's text, graphics and data in source form.
- Prerequisites: INSTALL.md covers Linux distributions, macOS with Homebrew, Windows through WSL (or Cygwin on older Windows) and Termux. The build needs make, gcc or clang, git and rgbds 1.0.4, which the repository pins; helper tools under tools/ handle graphics conversion, compression and patch generation.
- Scope: README says the disassembly builds Pokemon Red (UE), Pokemon Blue (UE), the BLUEMONS.GB debug build and two Virtual Console patch files, listing a SHA-1 for each. Code, text, maps and audio are RGBDS assembly, and graphics are PNG files converted during the build; Virtual Console patches come from separate VC builds and patch templates.
- Testing evidence: make compare builds every target and runs sha1sum against roms.sha1. pret's CI does this on Linux and macOS with rgbds 1.0.4 and fails when the build leaves uncommitted changes, while forks only build. Matching hashes show identical output bytes.
- License: The repository has no license file, so reuse terms for the disassembly are unstated, and the original game's content remains its rights holders'. rgbds is a separate project with its own terms.
About this entry
The description was reviewed against primary sources.
Primary sources
- README.md GitHub · pret/pokered · Revision af51989
- INSTALL.md GitHub · pret/pokered · Revision af51989
- Makefile GitHub · pret/pokered · Revision af51989
- roms.sha1 GitHub · pret/pokered · Revision af51989
- .rgbds-version GitHub · pret/pokered · Revision af51989
- .github/workflows/main.yml GitHub · pret/pokered · Revision af51989
- .github/checkdiff.sh GitHub · pret/pokered · Revision af51989
- vc GitHub · pret/pokered · Revision af51989
More in Games
- pokeruby: a matching Pokémon Ruby and Sapphire decompilation · Case study
- Pokémon Emerald: a matching Game Boy Advance decompilation · Case study
- Pokémon FireRed and LeafGreen: a matching Game Boy Advance decompilation · Case study
- Pokémon HeartGold and SoulSilver: a work-in-progress, checksum-matched DS disassembly · Case study
- Pokémon Platinum: a checksum-matched Nintendo DS decompilation · Case study
- pw: a matching decompilation of the Pokéwalker firmware · Case study