Point the AI agent you already use at a game you own. It writes C or C++, one function at a time. The game's original compiler builds each attempt, and only identical bytes count.
Split bysplatwith spimdisasm; finds code loaded later, and compressed code
Built byKMC GCC 2.7.2or IDO 5.3 / 7.1, the game's own compiler
Judged byLinkingat the function's real address, compared byte for byte
You getA rebuildable projectthat builds your ROM again, byte for byte
GameCubeRecommended
Your fileDisc or DOLISO, GCM, RVZ, WIA, CISO, GCZ
Split bydecomp-toolkitin a dtk-template project
Built byCodeWarriorGC 1.0 to 3.0, C and C++
Judged byobjdiffin the project's own build; finished files are linked into the game
You getA dtk-template projectthe shape community decomps use
WiiRecommended
Your fileDisc or DOLISO, RVZ, WIA, WBFS, CISO
Split bydecomp-toolkitin a dtk-template project
Built byCodeWarriorup to Wii 1.7, C and C++
Judged byobjdiffin the project's own build; finished files are linked into the game
You getA dtk-template projectthe shape community decomps use
PlayStationBeta
Your fileDisc or EXE.bin/.cue, .iso or .chd
Split bysplatwith spimdisasm; overlays in the disc's other files too
Built byGCC 2.7.2 / 2.8.1the PSY-Q era compilers
Judged byLinkingat the function's real address, compared byte for byte
You getA rebuildable projectthat builds your EXE again, byte for byte
PlayStation 2Beta
Your fileDisc or ELFthe game's main program
Split bysplatwith spimdisasm
Built byEE-GCC or CodeWarriorEE-GCC 2.9 to 3.2, CodeWarrior 2.3.3 / 3.0.1; C and C++; one compiler per address range when a game mixes them
Judged byLinkingat the function's real address, compared byte for byte
You getA rebuildable projectthat builds the program again, byte for byte
Game Boy AdvanceBeta
Your fileROM.gba
Split byluvdisplus a pass for code nothing calls
Built byagbccthe compiler GBA games were built with
Judged byLinkingat the function's real address, compared byte for byte
You getA rebuildable projectthat builds your ROM again, byte for byte
DSBeta
Your fileROM.nds
Split byds-decompARM9, ITCM, DTCM and overlays
Built byCodeWarrior for DS1.2 to DSi 1.6
Judged byobjdiffin the project's own build
You getA ds-decomp projectthat builds the ROM again on each build
Windows PCBeta
Your filePrograma 32-bit x86 .exe
Split byGhidrathen decompdecomp cuts each function out of the .exe
Built byVisual C++6.0, 7.0 or 7.1; C and C++
Judged byobjdiffper function
You getA project of your game's functionsas C and C++ sources
Then tell your agent
decompile my game at ~/games/game.z64
Proprietary compilers (IDO, CodeWarrior, Visual C++) install only after you accept them in Setup. Also: 3DS, PSP, Switch and Xbox, through a fork of a community decomp repository.
How it's checked
The game's compiler is the judge. Not the AI.
Each attempt is compiled with the same compiler and flags the game was built with, linked at the function's real address, and compared with your copy. A near miss comes back with an instruction diff. Only score 0 is a match.
It installs the app and the compilers, then opens the app. Windows is experimental: decompdecomp runs in WSL 2 there, which the installer turns on. macOS is coming.
2 · Tell your agent
decompile my game at ~/games/game.z64
Connect your agent one time with decomp connect. Or open Demo Quest 64 in the app and watch first.