Case study

The Wind Waker: a GameCube decompilation with hash-checked relinking

Reconstructs source for The Wind Waker’s GameCube executable and REL modules across the USA/Korea, PAL and Japanese releases and a Japanese kiosk demo. Matched units are compiled from source and linked with objects split from the user’s disc, then checked against per-version SHA-1 hashes; the repository ships no assets or assembly and covers the GameCube game, not the HD remaster.

Requirements and limitations

  • README describes a work-in-progress GameCube decompilation supporting every GameCube version: GZLE01 (USA Rev 0 and Korea Rev 48), GZLP01 (PAL), GZLJ01 (Japan) and the D44J01 Japanese kiosk demo. Output is the original executable and REL modules, not a port; the reviewed sources do not cover the Wii U HD remaster.
  • Building needs the user’s own disc image of the chosen version in a supported format (ISO/GCM, RVZ, WIA, WBFS, CISO, NFS, GCZ or TGC), which can be deleted after the first build. The repository contains no game assets or assembly; decomp-toolkit splits the original locally.
  • Builds run natively on Windows with Python and ninja, or on Linux/macOS with ninja and the automatically downloaded wibo wrapper. configure.py pins decomp-toolkit v1.8.3, objdiff v3.7.3, binutils 2.42-1 and a 20251118 compiler bundle; README also describes a shared Ghidra project as an aid whose output is not accurate enough to copy directly.
  • The default build links source-built objects only for units marked complete, uses original extracted objects for the rest and checks the result against the version’s build.sha1 (415–417 entries per version). decomp.dev’s reports for the pinned commit list 79.58% of GZLE01 code (32,968 of 39,324 functions) matched, 78.38–78.65% for the other retail versions and 74.08% for the demo. CI runs in a private container holding game files; this collection ran no build.
  • The repository carries CC0-1.0, which does not cover Nintendo’s game, disc content or the downloaded compilers. CONTRIBUTING.md rejects primarily AI-generated pull requests; the reviewed sources establish no REA involvement.

About this entry

Type
Case study
Category
Independent reconstruction cases
Relationship
Independent reconstruction project
Targets
Game

Sources reviewed

The description was reviewed against primary sources. This does not establish runtime testing, security auditing or verified compatibility.

Primary sources

  1. README.md GitHub · zeldaret/tww · Revision 8b93b37
  2. configure.py GitHub · zeldaret/tww · Revision 8b93b37
  3. tools/project.py GitHub · zeldaret/tww · Revision 8b93b37
  4. config/GZLE01/build.sha1 GitHub · zeldaret/tww · Revision 8b93b37
  5. CONTRIBUTING.md GitHub · zeldaret/tww · Revision 8b93b37
  6. LICENSE GitHub · zeldaret/tww · Revision 8b93b37
  7. .github/workflows/build.yml GitHub · zeldaret/tww · Revision 8b93b37
  8. https://github.com/zeldaret/tww/actions/runs/38619222013
  9. https://decomp.dev/zeldaret/tww