A decompilation of Metroid Prime brought to you by fans of the series.
Go to file
Phillip Stephens 543a0f1fe8 Start matching CMediumAllocPool
Former-commit-id: 2c3e4985b1
2023-10-02 22:36:22 -07:00
.github/workflows Attempted fix for git-in-container 2023-01-31 01:02:59 -05:00
.vscode Various fixes and matches 2023-03-29 19:27:34 -07:00
asm Start matching CMediumAllocPool 2023-10-02 22:36:22 -07:00
buildstrings Add build string files 2022-10-06 14:25:33 -07:00
include Start matching CMediumAllocPool 2023-10-02 22:36:22 -07:00
libc More MusyX imps 2023-06-21 16:27:28 -07:00
sha1 Add missing sha1 files 2022-08-22 10:18:31 -04:00
src Start matching CMediumAllocPool 2023-10-02 22:36:22 -07:00
tools Use patched 1.2.5n; delete frank/franklite 2023-07-15 10:03:29 -04: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 Generate objdiff.json 2023-08-11 01:28:49 -04:00
CONTRIBUTING.md Replace metaforce_renames.sh with a python script 2022-10-23 16:43:51 +03:00
README.md Use patched 1.2.5n; delete frank/franklite 2023-07-15 10:03:29 -04:00
configure.py Initial CMediumAllocPool, rstl::list fixes 2023-10-01 12:28:38 -07: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 Fix TRK_MINNOW_DOLPHIN.a linking 2023-02-07 21:39:29 -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