Decompilation of Mario Kart Double Dash!!
Go to file
2024-01-01 02:56:34 +01:00
.github/workflows always check when copy pasting... 2023-08-18 20:25:04 +02:00
config match and link JAUAudioArcLoader.cpp 2023-12-30 18:37:37 +01:00
include Update stuff from THPPlayer to reference DWARF 2024-01-01 02:56:34 +01:00
info link and update must stuff from MSL_Common 2023-05-03 04:33:34 +02:00
libs match and link JAUAudioArcLoader.cpp 2023-12-30 18:37:37 +01:00
orig fix old stuff + start working on release version 2023-02-25 03:08:03 +01:00
src Update stuff from THPPlayer to reference DWARF 2024-01-01 02:56:34 +01:00
tools match and link Course.cpp for release 2023-12-12 20:17:11 +01:00
.gitignore add arguments to build debug or release 2023-03-01 16:16:23 +01:00
.gitmodules attempt at setting up new build system 2022-07-06 15:49:54 +02:00
build.bat stuff for RaceMgr, System and add workflow 2023-02-01 22:09:52 +01:00
calcprogress.py add arguments to build debug or release 2023-03-01 16:16:23 +01:00
common.py fixes/workarounds in common.py 2023-12-19 21:35:18 +01:00
configure.py steal a bunch of shit 2023-09-16 02:18:41 +02:00
expected.py JKRDvdRipper WIP 2023-01-27 03:32:06 +01:00
getfunction.py update getfunction.py 2023-03-27 14:05:46 +02:00
README.md update readme 2023-12-19 21:29:54 +01:00
requirements.txt update requirements 2023-03-01 16:32:26 +01:00

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 in orig/MarioClub_us/
  • For PAL place main.dol in orig/Release_eu/
  • Put the contents of the GC folder inside compilers_latest.zip in the tools 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)

And many thanks to the people who helped me match some game functions(sorry if i forgot someone)