mirror of
https://github.com/SwareJonge/mkdd.git
synced 2024-11-30 08:40:52 +00:00
Decompilation of Mario Kart Double Dash!!
.github/workflows | ||
config | ||
include | ||
info | ||
libs | ||
orig | ||
src | ||
tools | ||
.gitignore | ||
.gitmodules | ||
build.bat | ||
calcprogress.py | ||
common.py | ||
configure.py | ||
expected.py | ||
getfunction.py | ||
README.md | ||
requirements.txt |
mkdd
WIP 1:1 Decompilation of Mario Kart Double Dash!!
Building
Requirements
Initial setup
- Install python, 3.10.4 is recommended as it gets installed by default on most recent Linux distros
- Install devkitPro, the only package you need is devkitPPC which gets installed by selecting either Wii or GameCube development
- Add the path where ninja is located to your environment variables under
PATH
- Download the GC MW Compilers
- Clone the repo using
git clone https://github.com/SwareJonge/mkdd --recursive
- Install the modules from requirements.txt (
pip install -r requirementstxt
) - Dump a copy of the Debug or PAL version and extract
main.dol
- For Debug place
main.dol
inorig/MarioClub_us/
- For PAL place
main.dol
inorig/Release_eu/
- Put the contents of the
GC
folder insidecompilers_latest.zip
in thetools
folder
Instructions
- To target Debug, run
python configure.py -r us
- To target PAL, run
python configure.py -r eu
- If
dol_slices.yml
changed, rerun the configure script - Run
ninja
- Last build step should say something like:
main.dol: OK
- Output is located in the
out
folder
Credits
- Seeky for ppcdis, without it this project wouldn't have been where it is now
Matching
Used code from the following repositories(JSystem, SDK)
- Metroid Prime Decomp
- Pikmin 2 Decomp
- Super Mario Galaxy Decomp
- Super Mario Sunshine Decomp
- Syati
- Twilight Princess Decomp
And many thanks to the people who helped me match some game functions(sorry if i forgot someone)