Decompilation of Paper Mario - Mirror of https://github.com/pmret/papermario
Go to file
Ethan Roseman bc5fa0f5bf fix master
2020-08-14 11:05:28 -04:00
asm Merge pull request #7 from nanaian/load_map_bg 2020-08-14 10:58:16 -04:00
include fix master 2020-08-14 11:05:28 -04:00
src Merge pull request #7 from nanaian/load_map_bg 2020-08-14 10:58:16 -04:00
tools match CountFortressKeys 2020-08-14 03:22:41 +01:00
.clang-format Refactoring stuff 2020-08-12 21:56:23 -04:00
.clang-tidy Refactoring stuff 2020-08-12 21:56:23 -04:00
.gitignore Refactoring stuff 2020-08-12 21:56:23 -04:00
.gitmodules Refactoring stuff 2020-08-12 21:56:23 -04:00
checksum.sha1 Refactoring stuff 2020-08-12 21:56:23 -04:00
diff_settings.py meow 2020-08-12 22:56:47 -04:00
diff.py Refactoring stuff 2020-08-12 21:56:23 -04:00
docker-compose.yml gud changes 2020-04-24 00:26:17 -04:00
docker-sync.yml gud changes 2020-04-24 00:26:17 -04:00
Dockerfile Update Dockerfile 2020-05-12 00:45:15 -04:00
format.sh Refactoring stuff 2020-08-12 21:56:23 -04:00
Makefile Update Makefile and readme 2020-08-12 22:32:41 -04:00
papermario.ld Refactoring stuff 2020-08-12 21:56:23 -04:00
Readme.md Increase spacing between question for readability 2020-08-12 22:49:08 -07:00
undefined_syms.txt match load_map_bg 2020-08-14 04:25:16 +01:00

Paper Mario Decompilation

Setup

Requirements

You'll need Linux or Windows 10 (WSL) to work on this project.

Dependencies

  • *mips-linux-gnu binutils: You may be able to just download this via your package manager (sudo apt install binutils-mips-linux-gnu), or you'll have to build it yourself. (guide todo)

Ubuntu and co (easy mode):

For a quick and easy way to install all relevant decomp-related tools on Ubuntu and other similar distros,

sudo apt install -y binutils-mips-linux-gnu build-essential pkg-config python3 python3-pip wget git clang-tidy clang-format nano vbindiff zlib1g-dev libyaml-dev libcapstone-dev

Building mips-linux-gnu

todo

Fork and clone the repo

Click the "fork" button in the top right corner of the main repo's webpage (https://github.com/ethteck/papermario) to fork this repo to your own GitHub account. After this, clone the repo to your computer via the command below:

git clone https://github.com/YOUR_GITHUB_USERNAME/papermario.git

The Rom

You'll need a US Paper Mario rom to work on this project. Copy it into the root directory of the repository with the name baserom.z64.

Make setup

run make setup to set up tools and extract the rom

Make

run make to rebuild the rom. Get OK? If so, you're all set! Otherwise, please feel free to reach out to us in the discord.

FAQ

  • If you received the following error when running make setup:
/bin/bash: mips-linux-gnu-as: command not found
Makefile:92: recipe for target 'build/asm/boot.o' failed
make: *** [build/asm/boot.o] Error 127

💡 Solution

One of the packages from the Ubuntu and co (easy mode) script did not install correctly. Elevate your user permissions using sudo su, run the script again and append --fix-missing to it.



  • If you received the following error when running make:
sha1sum -c checksum.sha1
sha1sum: 'papermario.z64'$'\r': No such file or directory
: FAILED open or read
sha1sum: WARNING: 1 listed file could not be read
Makefile:118: recipe for target 'verify' failed
make: *** [verify] Error 1

💡 Solution

This is a Windows line ending issue run git checkout checksum.sha1 to fix it.