← all projects
frog-adv-decomp
CPythonTypeScriptByte-matching GBA decompilation driven by a multi-agent LLM pipeline
A matching decompilation of a Game Boy Advance title that rebuilds a byte-identical ROM from clean-room C source — with most of the work performed by an orchestrated fleet of LLM agents, each verifying its output against the original binary.
byte-identical ROM
Matched
739 / ~1,114
Functions in C
2,670
Commits
Highlights
- 01The build produces a byte-identical ROM: built SHA-1 equals the original, zero diff bytes — the hardest correctness bar in decompilation.
- 02A cost-tiered multi-model pipeline routes small functions to cheaper models and the hard tail to frontier models in goal mode, each agent isolated in its own git worktree with automatic verify-or-revert gating.
- 03739 of ~1,114 functions decompiled to C (66%), across 2,670 fine-grained commits from the automated loop.
- 04~50 custom Python tools form the harness: target ranking, function-boundary detection, per-symbol asm diffing, relocation checks — each linter encoding a real historical bug it now prevents.
- 05Corpus-assisted matching mines C idioms from ~20 sibling GBA decompilations without copying code.
- 06Strict clean-room discipline: no leaked source consulted, user-supplied SHA-verified ROM, pre-commit hooks guaranteeing no copyrighted bytes ever land in the repo.


full write-up in progress — detailed notes on this project are coming soon.