Case study
GoldenEye 007: matching Nintendo 64 decompilation for three releases
Reconstructs GoldenEye 007’s Nintendo 64 code as C source that rebuilds the US, Japanese and PAL ROMs. Assets come from a user-supplied US ROM, with Japanese and PAL differences taken from their own ROMs, and the default build compares each output with a recorded SHA-1. The README still calls the project work in progress, while a mutable status page reports all 208 files done; it is distinct from the separately curated PC port.
- Targets
- Game
- Category
- Independent reconstruction cases
- Relationship
- Independent reconstruction project
- Sources reviewed
Requirements & limits
- Prerequisites: Requires an unmodified, independently obtained US ROM; JP and PAL builds additionally need their own original ROMs, and US asset extraction must come first. The README states that the repository does not include all assets needed to compile the ROMs.
- Prerequisites: Documented hosts are Linux, WSL or a VM, plus Docker or Docker Compose. The build uses GNU make, MIPS binutils, Python 3 and host build tools. By default it compiles C with a locally generated static recompilation of the IRIX IDO 5.3 compiler from vendored decompals/ido-static-recomp; alternatively it runs the original IDO binaries under qemu-irix.
- Scope: The reviewed GitHub repository describes itself as a mirror of the kholdfuzion GitLab project. README calls it a work-in-progress decompilation that builds US, JP and EU ROMs, each with a listed SHA-1. The mutable status page reports 208 of 208 files done and 100% for src, src/game, src/inflate and src/libultra without stating its unit. The output is an N64 ROM, not the separately curated native PC port.
- Testing evidence: With the default COMPARE=1, the build checks the output ROM’s SHA-1 and prints an OK line for the selected version; COMPARE=0 and the DEBUG and USB variants skip that check. NTSC, JP and EU CI workflows build from secretly supplied base ROMs and generate status reports.
- License: GitHub detects no license and the reviewed tree has no top-level license file, so no reuse grant is established. Original ROMs and extracted assets retain separate rights, and the checked-in IRIX IDO binaries and vendored tools keep their own terms.
About this entry
The description was reviewed against primary sources.
Primary sources
- readme.md GitHub · n64decomp/007 · Revision c435646
- docs/SetupGuide.md GitHub · n64decomp/007 · Revision c435646
- Makefile GitHub · n64decomp/007 · Revision c435646
- ge007.u.sha1 GitHub · n64decomp/007 · Revision c435646
- ge007.j.sha1 GitHub · n64decomp/007 · Revision c435646
- ge007.e.sha1 GitHub · n64decomp/007 · Revision c435646
- .github/workflows/main.yml GitHub · n64decomp/007 · Revision c435646
- .github/workflows/JPN.yml GitHub · n64decomp/007 · Revision c435646
- .github/workflows/EU.yml GitHub · n64decomp/007 · Revision c435646
- tools/ido5.3_recomp/README.md GitHub · n64decomp/007 · Revision c435646
- https://kholdfuzion.github.io/goldeneyestatus/
- https://gitlab.com/kholdfuzion/goldeneye_src/-/tree/c4356466796c697dfd298010b9bed261f9ed8c6a
More in Games
- Gran Turismo 4: an agent-assisted PS2 engine matching decompilation · Case study
- Halo 2: an agent-assisted matching decompilation of an LTCG Xbox build · Case study
- Himuro: a matching Fatal Frame PS2 decompilation · Case study
- ICO decompilation: byte-identical PAL and Japanese PlayStation 2 boot ELFs · Case study
- Kingdom Hearts 358/2 Days: a matching Nintendo DS decompilation · Case study
- LEGO Island: source reconstruction with separately reported exact rebuilds · Case study