summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhuderlem <huderlem@gmail.com>2020-02-09 13:38:58 -0600
committerGitHub <noreply@github.com>2020-02-09 13:38:58 -0600
commitd8904e40f698f83fe977c15c9aeb4631adbdc0cb (patch)
treecd6e96c485d32004228c91fe93180e1369799405
parent16735269d3f70572223b7e75cfd98e43f52cbe10 (diff)
Update INSTALL.md
-rwxr-xr-xINSTALL.md78
1 files changed, 29 insertions, 49 deletions
diff --git a/INSTALL.md b/INSTALL.md
index a48c906..fa30c70 100755
--- a/INSTALL.md
+++ b/INSTALL.md
@@ -1,70 +1,50 @@
-Follow the OS-specific instructions below.
+# Prerequisites
-# Linux
+| Linux | macOS | Windows 10 (build 18917+) | Windows 10 (1709+) | Windows Vista, 7, 8, 8.1, and 10 (1507, 1511, 1607, and 1703)
+| ----- | ----- | ------------------------- | ------------------ | ---------------------------------------------------------
+| none | [Xcode Command Line Tools package][xcode] | [Windows Subsystem for Linux 2][wsl2] | [Windows Subsystem for Linux][wsl] | MSYS2 (see below)
-Install [**devkitARM**](http://devkitpro.org/wiki/Getting_Started/devkitARM).
+[xcode]: https://developer.apple.com/library/archive/technotes/tn2339/_index.html#//apple_ref/doc/uid/DTS40014588-CH1-DOWNLOADING_COMMAND_LINE_TOOLS_IS_NOT_AVAILABLE_IN_XCODE_FOR_MACOS_10_9__HOW_CAN_I_INSTALL_THEM_ON_MY_MACHINE_
+[wsl2]: https://docs.microsoft.com/windows/wsl/wsl2-install
+[wsl]: https://docs.microsoft.com/windows/wsl/install-win10
-Make sure that there is an environment variable called DEVKITARM with the path of the directory before the "bin" directory containing "arm-none-eabi-as", "arm-none-eabi-cpp", "arm-none-eabi-ld" and "arm-none-eabi-objcopy".
+The [prerelease version of the Linux subsystem](https://docs.microsoft.com/windows/wsl/install-legacy) available in the 1607 and 1703 releases of Windows 10 is obsolete so consider uninstalling it.
-Then get the compiler from https://github.com/pret/agbcc and run the following commands.
+Make sure that the `build-essential`, `git`, and `libpng-dev` packages are installed. The `build-essential` package includes the `make`, `gcc-core`, and `g++` packages so they do not have to be obtained separately. MSYS2 does not include `libpng-dev` so it must be built from source.
-```
-./build.sh
-./install.sh PATH_OF_POKEPINBALLRS_DIRECTORY
-```
-
-Then in the pokepinballrs directory, build the tools.
-
-```
-./build_tools.sh
-```
+Install the **devkitARM** toolchain of [devkitPro](https://devkitpro.org/wiki/Getting_Started) and add its environment variables. For Windows versions without the Linux subsystem, the devkitPro [graphical installer](https://github.com/devkitPro/installer/releases) includes a preconfigured MSYS2 environment, thus the steps below are not required.
-Finally, build the rom.
+ export DEVKITPRO=/opt/devkitpro
+ echo "export DEVKITPRO=$DEVKITPRO" >> ~/.bashrc
+ export DEVKITARM=$DEVKITPRO/devkitARM
+ echo "export DEVKITARM=$DEVKITARM" >> ~/.bashrc
-```
-make
-```
-# Windows
+# Installation
-Install [**devkitARM**](http://devkitpro.org/wiki/Getting_Started/devkitARM).
+To set up the repository:
-Then get the compiled tools from https://github.com/pret/pokeruby-tools. Copy the `tools/` folder over the `tools/` folder in your pokepinballrs directory.
+ git clone https://github.com/pret/pokepinballrs
+ git clone https://github.com/pret/agbcc
-You can then build pokepinballrs using `make` in the MSYS environment provided with devkitARM.
+ cd ./agbcc
+ ./build.sh
+ ./install.sh ../pokepinballrs
-# Mac
+ cd ../pokepinballrs
+ ./build_tools.sh
-Installing pokepinballrs on a Mac requires macOS >= 10.12 (Sierra or higher).
+Place a copy of the original ROM in the `pokepinballrs` directory, and name it `baserom.gba`. This is necessary because this is an incomplete disassembly.
-Download a [devkitPRO pacman](https://github.com/devkitPro/pacman/releases/tag/v1.0.0)
+To build **pokepinballrs.gba** and confirm it matches the official ROM image:
-Run the following commands in Terminal:
+ make compare
+## Notes
-```
-xcode-select --install
-
-sudo dkp-pacman -S devkitARM
-
-export DEVKITPRO=/opt/devkitpro
-echo "export DEVKITPRO=$DEVKITPRO" >> ~/.bashrc
-export DEVKITARM=$DEVKITPRO/devkitARM
-echo "export DEVKITARM=$DEVKITARM" >> ~/.bashrc
-echo "if [ -f ~/.bashrc ]; then . ~/.bashrc; fi" >> ~/.bash_profile
-
-git clone https://github.com/pret/pokepinballrs
-git clone https://github.com/pret/agbcc
-
-cd agbcc/
-./build.sh
-./install.sh ../pokepinballrs
-
-cd ../pokepinballrs
-./build_tools.sh
-```
+* If the base tools are not found on macOS in new Terminal sessions after the first successful build, run `echo "if [ -f ~/.bashrc ]; then . ~/.bashrc; fi" >> ~/.bash_profile` once to prevent the issue from occurring again. Verify that the `devkitarm-rules` package is installed as well; if not, install it by running `sudo dkp-pacman -S devkitarm-rules`.
-And build the ROM with `make`.
+* If the repository was previously set up using Cygwin, delete the `.exe` files in the subfolders of the `tools` folder except for `agbcc` and try building again. [Learn the differences between MSYS2 and Cygwin.](https://github.com/msys2/msys2/wiki/How-does-MSYS2-differ-from-Cygwin)
# Faster builds