⚠️ Important: These demo applications are not affiliated with Nintendo.
They are for educational purposes only.
A simple Nintendo 64 application using Nintendo libraries.
Includes a script for automatically setting up the N64 SDK on modern Linux distributions.
├── SimpleN64Demo // Demo using libultra
└── SimpleN64DemoNusys // Demo using NuSystem abstraction layer
For Debian/Ubuntu/Fedora run:
make depsFor other Linux distributions you will have to install the dependencies manually.
Look in the package list for Debian or Fedora to get an idea of what is needed.
Then run:
make hostsetupThis will take a while (the n64chain will take about 1GB of disk space when done).
After that just source the init script like so (this will be done automatically in VSCodes integrated terminal):
source init_n64_env.shBuilding using Docker
This will build the n64chain in Docker without the need to install any host dependencies, just run:
make dockersetupThen run:
make dockerbuildTo build the N64 apps (the Docker image takes about 2.5GB of disk space).
If you get an error message when building stating something like:
../mips64-elf/bin/as: error while loading shared libraries: libopcodes-2.34.so: cannot open shared object file: No such file or directoryYou will need to set LD_LIBRARY_PATH to point to the lib directory of the toolchain:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$N64_TOOLCHAIN/tools/x86_64-pc-linux-gnu/mips64-elf/lib/Cen64 is included when setting up the n64chain.
alias cen64mt="cen64 -multithread -noaudio $N64_TOOL_CHAIN/tools/bin"More emulators here.
It is possible to debug the N64 app using GDB.
This has been setup with Visual Studio Code.
- Visual Studio Code
- C/C++ Extension Pack
- gdb-multiarch (GNU Debugger with support for multiple architectures)
With cen64 setup as the N64 emulator just run:
make debugto start the GDB server on port 8080.
Then press F5 in VSCode to connect to the GDB server.
If a breakpoint has been set in the code, GDB will pause the execution at that point.
Developing software for the N64 can be challenging. Here are some useful links to help you get started.
Nintendo 64 Development Resource
