Case study
Animal Crossing: Wild World: matching Korean DS decompilation with differential runtime checks
Reconstructs the ARM9 game code of Animal Crossing: Wild World’s Korean DS release as one C or C++ source per function, checked against the user’s ROM with the original Metrowerks compiler and linker. Each function also has a readable Clean rewrite, and an included DS interpreter compares the ROM code, natively compiled sources and rewrites on recorded play. Data sections, the ARM7 binary, the linked SDK libraries and regrouping into original source files remain outside the reconstruction.
Requirements and limitations
- Covers only the Korean release (ADMK) ARM9 code. The verification page, dated 2026-10-18, reports all 25,247 game functions passing byte and relocation checks, 24,767 linked with mwldarm into modules that match the ROM, and 17 marked FAKEMATCH. Data sections mostly still come from the ROM through ds-decomp objects; the ARM7 binary, .bss pointers and source-file regrouping are not covered, and most names are placeholders.
- Requires the user’s own Korean ROM matching SHA-1 1fffd601d3439e37cd934e72d08e487a93fc449b and the Metrowerks CodeWarrior for DS compiler (mwccarm); neither is distributed. NitroSDK, NitroSystem, NitroDWC with the GameSpy SDK, NitroWiFi and the Metrowerks runtime (4,083 functions) are excluded, and the tools count them as not decompiled when absent.
- Python 3.11+ drives extraction, verification and linking, and ds-decomp’s dsd v0.12.1 performs the whole-program link and module comparison. Linux and macOS run the Windows compiler through wibo. The PC runtime builds as a 32-bit program with clang on Windows or gcc on Linux.
- CI runs in a private container that holds the ROM and compiler. runtime.md reports Reference, Native and Clean runs agreeing on a 1,300-frame title recording, a 13,760-frame new-game recording and eight scenes from a save that is not in the repository, while three scenes still differ. The GitHub Actions build for the reviewed commit passed verification, linking and the Native checks but failed its Clean-function differential check. This review ran none of these checks.
- The repository is dedicated under CC0 1.0 and states that it is not affiliated with Nintendo. The ROM, compiler, SDK libraries and test save keep their own rights. The reviewed sources state no AI or REA involvement, and no runtime reproduction is claimed.
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
- README.md GitHub · banatic/acww-decomp · Revision c7e3256
- docs/verification.md GitHub · banatic/acww-decomp · Revision c7e3256
- docs/runtime.md GitHub · banatic/acww-decomp · Revision c7e3256
- INSTALL.md GitHub · banatic/acww-decomp · Revision c7e3256
- libs/README.md GitHub · banatic/acww-decomp · Revision c7e3256
- docs/ci.md GitHub · banatic/acww-decomp · Revision c7e3256
- .github/workflows/build.yml GitHub · banatic/acww-decomp · Revision c7e3256
- LICENSE GitHub · banatic/acww-decomp · Revision c7e3256
- https://github.com/banatic/acww-decomp/actions/runs/39115041988