A decompilation of Metroid Prime brought to you by fans of the series.
Go to file
Luke Street 7ca3a1c0bb Replace int types in Retro code
Retro seemingly avoided using the Dolphin
typedefs in most places, opting to use int/uint
instead. This likely means they didn't use
u8/s8/u16/s16/etc either.


Former-commit-id: 133326ae40
2022-10-09 01:37:23 -04:00
.github/workflows Attempt to use ninja for actions again 2022-10-07 01:39:43 -07:00
.vscode Standardize include guards, clang-format headers 2022-10-09 01:13:17 -04:00
asm Split CIntElement, CModVectorElement, CParticleDataFactory 2022-10-09 00:11:17 -04:00
buildstrings Add build string files 2022-10-06 14:25:33 -07:00
include Replace int types in Retro code 2022-10-09 01:37:23 -04:00
libc Standardize include guards, clang-format headers 2022-10-09 01:13:17 -04:00
sha1 Add missing sha1 files 2022-08-22 10:18:31 -04:00
src Replace int types in Retro code 2022-10-09 01:37:23 -04:00
tools Also look for and reject `\r` 2022-10-06 14:45:34 -07: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 int types in Retro code 2022-10-09 01:37:23 -04:00
Makefile Match and link CScriptSwitch 2022-10-07 23:55:54 -07:00
README.md Add build status badge 2022-10-07 01:58:45 -07:00
configure.py Split CIntElement, CModVectorElement, CParticleDataFactory 2022-10-09 00:11:17 -04:00
diff_settings.py Add header dependency tracking; add asm-differ config & more 2022-04-12 23:55:49 -04:00
ldscript.lcf Lots of stuff 2022-10-03 20:00:46 -04:00
obj_files.mk Split CIntElement, CModVectorElement, CParticleDataFactory 2022-10-09 00:11:17 -04:00

README.md

Metroid Prime

Build

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 devkitPro with GameCube development package.
  • Open C:\devkitPro\msys2\msys2.exe
  • Run the following:
    pacman -Sy --noconfirm --needed msys2-keyring
    pacman -Su --noconfirm --needed gcc git gamecube-dev
    

macOS:

  • Install wine:
    brew tap gcenx/wine
    brew install wine-crossover
    sudo xattr -r -d com.apple.quarantine "/Applications/Wine Crossover.app"
    
  • Install devkitPro.
  • Run the following:
    sudo dkp-pacman -Syu --noconfirm --needed gamecube-dev
    

Linux:

  • Install wine from your package manager.
    • Faster alternative: WiBo, a minimal 32-bit Windows binary wrapper.
      Ensure the binary is in PATH.
  • Install devkitPro.
  • Run the following:
    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
  • Build:
    make -j