You can install c-of-time on Windows using the following methods. The steps detailed in this guide were tested with Windows 11. This guide assumes that you have a 64-bit version of Windows installed.
MSYS2 is a Unix-like environment for Windows. It provides a terminal and a package manager that allows you to install the required tools on Windows with a few commands. This is the recommended method for installing c-of-time on Windows.
- Download and install MSYS2 by following the instructions on their website. This guide assumes that you installed MSYS2 to
C:\msys64
, adjust the paths accordingly if you installed it to a different location. - Press the Windows key, search for "MINGW64" and open the "MSYS2 MINGW64" shortcut to open a terminal. Note that the other MSYS shortcuts will not work, always open the "MSYS2 MINGW64" one.
- Run
pacman -S git make mingw-w64-x86_64-arm-none-eabi-toolchain mingw-w64-x86_64-python-pip
to install Git, Make, the ARM toolchain and the Python package manager. Confirm that you want to install all packages by pressing enter, then typey
and press Enter. - Install Python dependencies:
pip3 install pyyaml ndspy
- Navigate to the directory where you want to install c-of-time. You can use
cd
to change the directory andls
to list the contents of the current directory. For example, if you want to install c-of-time toC:\Users\YourName\Documents\c-of-time
, runcd /c/Users/YourName/Documents
.- Note: You can also use the Windows Explorer to navigate to the directory where you want to install c-of-time. Right-click in the directory and select "Open in Terminal", then run
C:\msys64\msys2_shell.cmd -mingw64 -here
to open a terminal in that directory.
- Note: You can also use the Windows Explorer to navigate to the directory where you want to install c-of-time. Right-click in the directory and select "Open in Terminal", then run
- Download this repository by running
git clone --recursive https://github.com/SkyTemple/c-of-time.git
in the MSYS2 terminal. c-of-time will be downloaded in a folder calledc-of-time
inside the current directory. - Enter the
c-of-time
directory withcd c-of-time
. - Copy the ROM you have prepared into the
c-of-time
directory and rename it torom.nds
. You can open Windows Explorer in the current directory by runningexplorer .
in the MSYS2 terminal.- US ROM offsets are used by default. If you're using a EU or JP ROM, change the
REGION
variable inMakefile
toEU
orJP
accordingly.
- US ROM offsets are used by default. If you're using a EU or JP ROM, change the
- Run
make headers
to add aliases and documentation comments to headers for increased compatibility. - Run
make patch
to build the project. The output ROM will be saved asout.nds
by default.- If you are encountering errors with armips, you might need to install the Visual C++ Redistributable for Visual Studio 2015. Make sure to download the 64-bit version (
vc_redist.x64.exe
).
- If you are encountering errors with armips, you might need to install the Visual C++ Redistributable for Visual Studio 2015. Make sure to download the 64-bit version (
You can run c-of-time in the Windows Subsystem for Linux (WSL). WSL 2 is recommended for maximum compatibility.
Refer to this guide by Microsoft to install WSL. After the installation is finished, open a terminal such as the Windows Command Prompt or Windows PowerShell and run wsl.exe
to enter WSL. You can now install follow the setup instructions for Linux.
- You can use the official ARM toolchain to build c-of-time. Make sure to add the toolchain to your
PATH
environment variable. You will need to installmake
and other Unix build tools as well. - devkitpro provides a Windows installer for a custom toolchain. Follow the instructions on their website to install it and make sure to add the toolchain to your
PATH
environment variable.