Pokemon FireRed Decomp: Three ROM Revisions Including the Switch Build

By Indie Kings | October 28, 2026

Updated October 28, 2026: pret/pokefirered, the community decompilation of Pokemon FireRed and LeafGreen, now builds six separate ROM images from one source tree, spanning three distinct revisions of the game, and its most recent merge on October 20, 2026 fixed a batch of AI bugs specific to double battles. The repository dates to December 31, 2017 and has 60 contributors, 1,691 stars and 1,059 forks.

A blue Game Boy Advance SP handheld console

Image: a blue Game Boy Advance SP, a later revision of the hardware FireRed shipped on, via Wikimedia Commons.

Six builds, three revisions

The README lists six ROM images with six SHA1 hashes: pokefirered.gba, pokeleafgreen.gba, pokefirered_rev1.gba, pokeleafgreen_rev1.gba, and then two entries named pokefirered_switch.gba and pokeleafgreen_switch.gba. The naming is not decorative. The Makefile defines six build targets, firered, firered_rev1, firered_rev10, leafgreen, leafgreen_rev1 and leafgreen_rev10, and the switch targets map to GAME_REVISION=10, which is a third revision of the cartridge rather than a port to Nintendo's newer console. In other words, the project tracks revision 0, revision 1 and revision 10 of both versions, and the switch label is simply the name the README gives the revision 10 build.

That distinction matters for anyone verifying a build. Pokemon FireRed and LeafGreen were reissued with small fixes, and the differences between revisions are exactly the kind of thing a matching decompilation has to account for, because the compiler cannot be blamed for a hash mismatch if the target binary is a different revision. Splitting the build into explicit targets lets contributors work against whichever dump they legally own and still confirm a byte level match. It also means bug reports can be triaged by revision, which is more bookkeeping than most fan projects bother with and a large part of why this one remains trustworthy.

The doubles AI problem

The October 20 merge, pull request 772 in the repository's numbering, is titled Fix Various Doubles-related AI Bugs. That is a modest description of work that touches one of the most scrutinised systems in any Pokemon decompilation. Double battles change the decision space for the computer opponent: two active Pokemon on each side, moves that hit both opponents, abilities and targeting rules that interact, and a switching decision that can be correct in singles and disastrous in doubles. Fixing AI behaviour in that mode means reading the original decision routines closely enough to tell a bug from an intentional quirk, then changing source without altering the matching build.

The last part is the hard constraint. A matching decompilation cannot simply improve the game and call it a fix, because the whole point is that the default build still hashes to the retail ROM. Work like this lands in the source tree in a way that preserves the original behaviour under the matching configuration, with the corrected logic available to people building modified versions. It is the same discipline that lets the project serve two audiences at once: preservationists who want the cartridge reproduced exactly, and modders who want a readable, buildable version of the game to change. A doubles AI patch that satisfies both is a small demonstration of why the matching approach is worth the trouble.

Nine years of a smaller tree

Compared with its Emerald sibling, FireRed is the smaller repository by reach, with 1,691 stars against 3,649 and 60 contributors against 134, but it has been running since the final day of 2017 and still merges work in October 2026. Twenty six issues are open. The fork count, 1,059, is again lower than the star count rather than higher, which suggests a project people watch more than they branch, and that fits the game: FireRed and LeafGreen are remakes of the first generation, frequently the entry point for newcomers, and the ROM hack scene around them leans on tools and documentation as much as on a single base repository.

What the repository offers that a standalone hack base does not is the verification story. Six build targets, six hashes, a documented toolchain, and a source tree that has been reviewed by dozens of contributors over nearly a decade. The INSTALL file treats the GBA toolchain as the main obstacle, pointing at devkitARM and the agbcc compiler that pret maintains for period accurate code generation, with a modern build path for people who do not need the hash to match. That is unglamorous infrastructure, but it is the difference between a project that can absorb a fix in 2026 and one that quietly rots once its original maintainer moves on.

Project card

ItemDetail
Repositorypret/pokefirered on GitHub
GamesEnglish Pokemon FireRed and LeafGreen
CreatedDecember 31, 2017
Build outputsSix ROM images, FireRed and LeafGreen across revisions 0, 1 and 10
Revision 10 namingMakefile targets firered_switch and leafgreen_switch map to GAME_REVISION=10
HashesFireRed rev 0 41cb23d8, LeafGreen rev 0 574fa542, plus rev 1 and switch builds
Latest mergeOctober 20, 2026, pull request 772 on doubles AI bugs
Scale1,691 stars, 1,059 forks, 60 contributors
Open issues26 as of late October 2026
ToolchaindevkitARM with agbcc for matching builds, modern compiler option available

FAQ

What does pokefirered build?
Six ROM images covering English FireRed and LeafGreen at three revisions each, with a SHA1 published for every build in the README.

What is the switch build?
It is a third build revision, revision 10, exposed as firered_switch and leafgreen_switch in the Makefile. The name comes from the label used for that dump, not from a port for Nintendo Switch hardware.

Why track three revisions?
Because a hash mismatch can come from targeting a different cartridge revision. Separate targets let contributors verify against the dump they own and let bug reports be sorted by revision.

What changed on October 20?
Pull request 772 fixed several AI bugs specific to double battles, where targeting, spread moves and switching create decision cases that singles never exercise.

Does fixing AI break the matching build?
The matching configuration still has to reproduce the retail ROM. Changes are structured so the default build keeps its hash while modified builds can carry the corrected behaviour.

Is the project still active?
Yes. It merged work in October 2026, nine years after the repository was created, and 26 issues remain open.

Bottom Line

The headline number here is six builds, because it shows a project that takes verification seriously enough to enumerate cartridge revisions instead of pretending one hash covers everything. The doubles AI work is the more interesting signal: it is maintenance on behaviour rather than on build plumbing, the kind of change that only makes sense once a decompilation is mature enough to be edited like ordinary software. FireRed may never have the cultural pull of Emerald's hack scene, but a nine year old tree with 60 contributors, six reproducible builds and a fresh AI fix is exactly what preservation looks like when it is working.

Sources

  • GitHub pret/pokefirered README build list and hashes, Makefile build targets and GAME_REVISION mapping, INSTALL.md toolchain notes, accessed October 28, 2026
  • GitHub API metadata for pret/pokefirered, stars, forks, contributors, issues and latest commit, accessed October 28, 2026

Related: Nxnative: Nintendo Switch Games Run Native on Apple Silicon | Switch Emulator: Nintendo Switch Games Run on Jailbroken PS5

Share