A decompilation of Metroid Prime brought to you by fans of the series.
Go to file
Phillip Stephens f1049381a6 Split POI nodes into their own headers, add weak imps to CSoundPOINode
Former-commit-id: 91313bf619
2023-01-11 18:01:00 -08:00
.github/workflows Only upload progress on main branch 2022-11-28 00:02:10 -05:00
.vscode Add GXLight 2022-12-24 17:07:56 -08:00
asm Match and link CParticlePOINode 2023-01-11 17:44:25 -08:00
buildstrings Add build string files 2022-10-06 14:25:33 -07:00
include Split POI nodes into their own headers, add weak imps to CSoundPOINode 2023-01-11 18:01:00 -08:00
libc More musyx work 2022-12-24 14:54:58 -08:00
sha1 Add missing sha1 files 2022-08-22 10:18:31 -04:00
src Split POI nodes into their own headers, add weak imps to CSoundPOINode 2023-01-11 18:01:00 -08:00
tools Add WeaponTypes.cpp 2022-12-01 18:10:20 +02:00
.clang-format Start matching CScriptPlatform; more CScriptMazeNode 2022-09-18 01:55:13 -04:00
.gitattributes Initial commit 2022-03-23 17:22:48 -04:00
.gitignore Minor fixes, actually link PadClamp 2022-10-07 15:53:40 -07:00
CONTRIBUTING.md Replace metaforce_renames.sh with a python script 2022-10-23 16:43:51 +03:00
README.md Use decomp-toolkit 2022-11-27 23:57:46 -05:00
configure.py Match and link CParticlePOINode 2023-01-11 17:44:25 -08:00
diff_settings.py Add header dependency tracking; add asm-differ config & more 2022-04-12 23:55:49 -04:00
dtk_version Update dtk 2023-01-05 09:14:05 -05:00
ldscript.lcf Split, match and link OSMessage 2022-12-17 22:48:45 -08:00
progress.py Build static libs by default; update progress.py 2022-12-14 21:17:16 -05:00

README.md

Metroid Prime Build Status Code Progress Data Progress

A decompilation of Metroid Prime.

This repository builds the following DOLs:

949c5ed7368aef547e0b0db1c3678f466e2afbff  build/mp1.0/main.dol (USA 0-00)
860141f9671fc141ce8f55448643f713bc64b349  build/mp1.1/main.dol (USA 0-01)
52316d2a71c0d18c84f054fd6f1e58bdd7bf0ded  build/mp1.kor/main.dol (KOR)

If you'd like to contribute, see CONTRIBUTING.md.

Dependencies

Windows:

  • Install ninja and add it to %PATH%.
  • Install devkitPro with GameCube development package.
  • Open C:\devkitPro\msys2\msys2.exe
  • Install GameCube development packages:
    pacman -Sy --noconfirm --needed msys2-keyring
    pacman -Su --noconfirm --needed gcc git gamecube-dev
    

macOS:

  • Install ninja:
    brew install ninja
    
  • Install wine-crossover:
    brew install --cask --no-quarantine gcenx/wine/wine-crossover
    
  • Install devkitPro.
  • Install GameCube development packages:
    sudo dkp-pacman -Syu --noconfirm --needed gamecube-dev
    

Linux:

  • Install ninja.
  • Install wine from your package manager.
    • Faster alternative: WiBo, a minimal 32-bit Windows binary wrapper.
      Ensure the binary is in PATH.
  • Install devkitPro.
  • Install GameCube development packages:
    sudo dkp-pacman -Syu --noconfirm --needed gamecube-dev
    

Building

  • Checkout the repository:
    git clone https://github.com/PrimeDecomp/prime.git
    
  • Download GC_WII_COMPILERS.zip
  • Extract the contents of the GC directory to tools/mwcc_compiler.
    • Resulting structure should be (for example) tools/mwcc_compiler/1.3.2/mwcceppc.exe
  • Configure:
    python configure.py
    
  • Build:
    ninja