From 3cd498cc2ffb93a2823fa309d193f006678192eb Mon Sep 17 00:00:00 2001 From: Ethan Roseman Date: Wed, 12 Aug 2020 22:32:41 -0400 Subject: [PATCH] Update Makefile and readme --- Makefile | 5 ++++- Readme.md | 34 ++++++++++++++++++++++++++++++---- 2 files changed, 34 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index fec7d46a5a..3f5b53d03a 100644 --- a/Makefile +++ b/Makefile @@ -72,10 +72,13 @@ clean: submodules: git submodule update --init --recursive +n64split: + make -C tools/n64splitter + split: rm -rf $(DATA_DIRS) $(BGM_DIRS) && ./tools/n64splitter/bin/n64split -b -v -o . -c tools/n64split.yaml baserom.z64 -setup: clean submodules split +setup: clean submodules n64split split print-% : ; $(info $* is a $(flavor $*) variable set to [$($*)]) @true diff --git a/Readme.md b/Readme.md index a9827f51df..4058e955e3 100644 --- a/Readme.md +++ b/Readme.md @@ -1,6 +1,32 @@ -# Generate the .bin files by splitting the rom -Place Paper Mario (U) (named baserom.z64) in the root directory, build `n64split`, and run: +# 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, ``` -./splitrom.sh +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 ``` -You'll need to build binutils manually with two targets: mips-sgi-irix5 and mips-linux-gnu - we don't have proper instructions yet, but see the Dockerfile for an example. + +#### 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.