mirror of https://github.com/zeldaret/mm.git
Move installation to wiki and update readme
This commit is contained in:
parent
57587fa612
commit
9c85eaea92
103
README.md
103
README.md
|
@ -1,99 +1,22 @@
|
||||||
# Legend of Zelda: Majora's Mask (U) 1.0
|
# Legend of Zelda: Majora's Mask (U) 1.0
|
||||||
|
```diff
|
||||||
|
- WARNING! -
|
||||||
|
|
||||||
|
The ROM this repository builds while has a matching checksum cannot be 'shifted' due
|
||||||
|
to hardcoded pointers which have yet to be dumped. Thus this repository is currently
|
||||||
|
in an experimental and research phase and cannot currently be used traditionally as a
|
||||||
|
source code base for general changes.
|
||||||
|
```
|
||||||
|
|
||||||
|
This repo does not include all assets necessary for compiling the ROM. A prior copy of the game is required to extract the required assets.
|
||||||
|
|
||||||
This is a decompilation of Legend of Zelda: Majora's Mask (U) 1.0
|
This is a decompilation of Legend of Zelda: Majora's Mask (U) 1.0
|
||||||
|
|
||||||
It builds the following ROM:
|
It builds the following ROM:
|
||||||
* rom.z64 `md5: 2a0a8acb61538235bc1094d297fb6556`
|
* rom.z64 `md5: 2a0a8acb61538235bc1094d297fb6556`
|
||||||
|
|
||||||
# Installation
|
Please refer to the Installation guide in the Wiki for setup instructions.
|
||||||
|
|
||||||
## Step 1:
|
Website: https://zelda64.dev/
|
||||||
|
|
||||||
If you're running Windows 10, [install WSL](https://docs.microsoft.com/en-us/windows/wsl/install-win10). If you're running an older version of Windows, install a Linux VM. If you're already running a Linux OS, you're good to go.
|
Discord: https://discord.zelda64.dev
|
||||||
|
|
||||||
## Step 2:
|
|
||||||
|
|
||||||
Install the following packages:
|
|
||||||
|
|
||||||
```
|
|
||||||
make
|
|
||||||
git
|
|
||||||
binutils-mips-linux-gnu
|
|
||||||
python3
|
|
||||||
pip3
|
|
||||||
```
|
|
||||||
|
|
||||||
For your convience, you can copy the following:
|
|
||||||
|
|
||||||
```
|
|
||||||
sudo apt-get update
|
|
||||||
sudo apt-get install make
|
|
||||||
sudo apt-get install git
|
|
||||||
sudo apt-get install binutils-mips-linux-gnu
|
|
||||||
sudo apt-get install python3
|
|
||||||
sudo apt-get install python3-pip
|
|
||||||
```
|
|
||||||
|
|
||||||
## Step 3:
|
|
||||||
Download build_tools.zip from the Releases section and extract it to the tools folder. This contains the compilers the decompilation uses, as well as a modified version of Qemu to emulate them on a modern Linux system. The compilers must go into the tools folder. Qemu may be placed wherever you like.
|
|
||||||
|
|
||||||
## Step 4:
|
|
||||||
|
|
||||||
Open up your .bashrc file (~/.bashrc), scroll to the bottom, and add the following, replacing `/path/to/qemu-mips` with the location the qemu-mips you extracted from the build tools:
|
|
||||||
|
|
||||||
```
|
|
||||||
export QEMU_IRIX="/path/to/qemu-mips"
|
|
||||||
export MIPS_BINUTILS_PREFIX=mips-linux-gnu-
|
|
||||||
```
|
|
||||||
|
|
||||||
Save and close/reopen your terminal window.
|
|
||||||
|
|
||||||
## Step 5:
|
|
||||||
Make a fork of the main repository https://github.com/n64decomp/majora.git and clone your fork.
|
|
||||||
|
|
||||||
## Step 6:
|
|
||||||
|
|
||||||
Navigate to the folder you just cloned. Type the following commands:
|
|
||||||
|
|
||||||
```
|
|
||||||
git submodule update --init --recursive
|
|
||||||
pip3 install -r requirements.txt
|
|
||||||
```
|
|
||||||
|
|
||||||
## Step 7:
|
|
||||||
|
|
||||||
You will need to acquire a copy of the ROM. The md5 of this ROM should be `2a0a8acb61538235bc1094d297fb6556`.
|
|
||||||
|
|
||||||
Once this has been done, type, replacing `<ROM>` with the name of your ROM:
|
|
||||||
```
|
|
||||||
./tools/extract_rom.py <ROM>
|
|
||||||
```
|
|
||||||
|
|
||||||
This will extract all the individual files in the ROM into a newly created baserom folder, as well as decompress the compressed files in a newly created decomp folder.
|
|
||||||
|
|
||||||
Next, type:
|
|
||||||
```
|
|
||||||
make disasm
|
|
||||||
```
|
|
||||||
|
|
||||||
This will create the build folders as well as a newly created asm folder containing the disassemblies of nearly all the files containing code.
|
|
||||||
|
|
||||||
## Step 8:
|
|
||||||
|
|
||||||
Type the following:
|
|
||||||
```
|
|
||||||
make
|
|
||||||
```
|
|
||||||
|
|
||||||
If all goes well, a ROM rom.z64 should be built and the following text should be printed:
|
|
||||||
|
|
||||||
`rom.z64: OK `
|
|
||||||
|
|
||||||
If you instead see the following:
|
|
||||||
|
|
||||||
```
|
|
||||||
rom.z64: FAILED
|
|
||||||
md5sum: WARNING: 1 computed checksum did NOT match
|
|
||||||
```
|
|
||||||
|
|
||||||
This means that something is wrong with the ROM's contents. Either the baserom files are incorrect due to a bad ROM, or some piece of code is not matching.
|
|
||||||
|
|
Loading…
Reference in New Issue