Files
st/INSTALL.md
Yanis b80acf3455 Update tools (#21)
* improve configure.py part 1

* compile settings per-file instead of global

* remove dont_reuse_strings in sources

* multiversion support

* update docs

* report filename change

* fixed objdiff not being able to create context file

* add version define to decompme cflags/m2ctx
2026-01-17 19:21:42 +01:00

1.7 KiB

Install

Contents:

Prerequisites

  1. Use one of these platforms:
    • Windows (recommended)
    • Linux
  2. Install the following:
    • Python 3.11+ and pip
    • GCC 9+
    • Ninja
  3. Install the Python dependencies:
python -m pip install -r tools/requirements.txt
  1. Install pre-commit hooks:
pre-commit install
  1. Run the Ninja configure script:
python tools/configure.py

By default this will configure for any version that has a baserom in the extract folder (see below), to configure for one specific version:

python tools/configure.py [--version | -v] <eur|jp>
  1. Put one or more base ROMs in the /extract/ directory of this repository.

Now you can run ninja to build a ROM for the chosen version.

Note

For Linux users: Wibo is used by default. If you want to use Wine instead, run configure.py with -w <path/to/wine>.

Matching the base ROM

This is optional! You only need to follow these steps if you want a matching ROM.

First, extract the ARM7 BIOS from your DS device. Put the ARM7 BIOS in the root directory of this repository, and verify that your dumped BIOS matches one of the following:

File name SHA1
arm7_bios.bin 6ee830c7f552c5bf194c20a2c13d5bb44bdb5c03
arm7_bios.bin 24f67bdea115a2c847c8813a262502ee1607b7df