ℹ️ AI-generated decompilation: This decompilation is fully generated using generative AI, under human direction and supervision.
If your response to that is that this project is "just unmaintainable AI slop anyway", feel free to leave. You are not welcome here.
If, however, you're interested in how the project works, why this approach was chosen, and what human direction and verification are involved, read on.
A work-in-progress C/C++ decompilation of the Nintendo DS game. The goal is to rebuild the game from readable, editable source and make it easier to mod.
The European version currently rebuilds byte for byte. Verified C/C++ gradually replaces the remaining assembly, with emulator checks to confirm game behavior.
The main percentage measures C/C++ that compiles to the original ARM9 code, byte for byte. Assembly coverage is tracked separately.
You will need:
- Windows, Python 3.11 or newer, and Ninja on
PATH. - A compatible Metrowerks ARM toolchain, with
mwccarm.exeandmwldarm.exeintools/mwccarm/1.2/base/. - Your own decrypted European ROM at
extract/baserom_PiT_eur.nds. See ROM requirements and checksums.
Game assets and proprietary tools are not included; supply your own ROM and lawfully obtained compiler.
From the repository root, run:
powershell -NoProfile -ExecutionPolicy Bypass -File .\tools\build_nds.ps1 -DisableDataModsThis configures the project, builds the sources, and produces PiT_eur.nds in
the repository root. To check that the compiled code matches the original:
ninja checkOpen the built ROM in your emulator. CLion users can also use the shared Build and Run EUR NDS configuration after setting its emulator path.
To include a local data mod from data/eur/project.json, omit
-DisableDataMods. See the modding guide for editing
text, stats, and scripts.