2.6 KiB
Building
The build for this is unfortunately really complicated. Use this file to describe the build process.
Overview
Starting from a bare repository, you need to do the following things to get a translated MOTHER 1+2 ROM:
- Get an original MOTHER 1+2 ROM and EarthBound ROM (not provided here).
- Name the MOTHER 1+2 ROM
m12fresh.gba
and place it in the repository folder. - Name the EarthBound ROM
eb.smc
and put it in the same folder.
- Name the MOTHER 1+2 ROM
- Download armips and copy
armips.exe
to the repository folder. - Build the build (see below).
- Build the script (see below).
- Build the hack and insert it into the ROM (see below).
Building the build
This only has to be done once, assuming you're not making changes to the build tools.
You will need Visual Studio to build the build. The Community edition is free:
https://www.visualstudio.com/vs/community/
Download and install that. Then, for each of the following solution files,
- ScriptTool\ScriptTool.sln
- SymbolTableBuilder\SymbolTableBuilder.sln
- compiled\Amalgamator\Amalgamator.sln
do the following:
- Open the .sln file with Visual Studio
- In the Solution Explorer pane, right-click the solution and "Restore NuGet Packages"
- Once that finishes, right-click the solution again and "Build Solution"
Building the script
"The script" refers to the translation files in the working
folder.
You will use ScriptTool.exe (one of the things you built earlier) to build the script. It will be located in ScriptTool\ScriptTool\bin\Debug\ScriptTool.exe.
This is a command-line tool. Syntax:
ScriptTool.exe -compile -main -misc <working folder path>
There's no batch file for this, although I ought to make one. You will have to run this every time you make a change to the script.
Building the hack
After the script is built, you need to build the hack code and insert it into
the MOTHER 1+2 ROM file. This is taken care of by insert.bat
; it will generate a file called m12.gba
with everything ready.
There's another one-time pre-requisite to take care of before you can run it.
C code
Some of the hack code is written in C and cross-compiled to ARM with GCC. In addition to armips described above, you will need to install this GCC toolchain:
gcc-arm-none-eabi-7-2017-q4-major-win32
It was at version 7-2017-q4-major at the time of writing, but I imagine newer versions work just fine. Download and run the installer linked above. Make sure you add the path to your environment variable.