Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
awesome-n64-development
A curated list of Nintendo 64 development resources including toolchains, documentation, emulators, example code, and more
https://github.com/command-tab/awesome-n64-development
Last synced: 6 days ago
JSON representation
-
Community
- N64brew - Nintendo 64 homebrew chat on Discord
- Discord64 - Nintendo 64 emulation and homebrew chat on Discord
- `#n64dev` on EFnet - Nintendo 64 development IRC channel on EFnet
- /r/N64Homebrew - The N64Homebrew subreddit
- Discord64 - Nintendo 64 emulation and homebrew chat on Discord
- Nintendo 64 Discord - The /r/n64 community server for Nintendo 64 enthusiasts
-
Documentation
- Ultra64 - An absolute wealth of documentation including official development manuals, as well as SDK downloads and reference material
- N64brew Wiki - The N64brew community wiki
- N64dev - Useful N64 hacking links
- NEC VR4300 CPU Manual @ N64dev - The manual for the NEC VR4300 CPU used by the Nintendo 64
- Console Protocols - Nintendo 64 hardware info, memory map, PIF boot stage reference, and JoyBus I/O documentation
- dragonminded N64DEV - `libdragon` usage, Windows and Linux toolchains, and RCP documentation
- N64 ROM Formats - A short N64 ROM format quick reference sheet
- N64 ROM Formats Explained - Details the three commonly encountered Nintendo 64 ROM formats (use Big Endian/.z64)
- Accessory Reference - Guide on how to communicate with the Transfer Pak and Rumble Pak
- Hack64 - A variety of documentation on RCP data structures, compression, assembly, and more
- 64dd.org - Nintendo 64DD documentation, emulators, homebrew, and tools
- 64DD wiki - Documentation on 64DD hardware, disks, and related cartridges
- cen64#58 - A cen64 issue comment summarizing the boot process
- Microcode from source - How to compile microcode from source
- N64 cartridge info - Cartridge pinout
- RSP - Detailed RSP documentation in the r64emu emulator repository
- Nintendo 64 Architecture - An overview of the console architecture
-
Videos
- Installing the Nintendo 64 Development Kit - How to install the Nintendo 64 Software Development Kit under Windows 2000 and 98SE and build sample code. Also generally works under Windows XP.
- Behind The Code - Gerry O'Brien's YouTube channel, with a number of videos discussing Nintendo 64 development with NuSystem and the official SDK, development hardware, audio processing, and more
- Building cen64 for Speed and Preservation - Tyler Stachecki and Mike Ryan discuss making the cen64 emulator fast without compromising on accuracy
- REcon 2015 - Reversing the Nintendo 64 CIC - Mike Ryan, Marshall Hecht, and John McMaster talk about reverse engineering and cloning a 20 year old copy protection chip (the N64 CIC)
- Portland Retro Gaming Expo 2019 - N64 Homebrew Development - Part 1 - Victor Vieux talks about the Nintendo 64 technical specifications and begins building a game using `libdragon`
- Portland Retro Gaming Expo 2019 - N64 Homebrew Development - Part 2 - Victor Vieux adds sound and graphic assets and talks about the future of Nintendo 64 homebrew development
- Programming for Nintendo 64 - Damjan Nesic goes through the basics of programming for Nintendo 64 using C and a Windows XP virtual machine
- Reflective Regret: Adventures in N64 Development - Buu342's seminar on Nintendo 64 homebrew game development at Inércia Demoparty 2021 (with [code available](https://github.com/buu342/N64-ReflectiveRegretPresentation))
- Debugging N64 homebrew using GDB with a flashcart - Buu342 demonstrates how to use UNFLoader with GDB to debug Libultra, ModernSDK, and Libdragon homebrew running on a flashcart
-
Toolchains
- Official Nintendo 64 SDKs - Official Nintendo 64 Software Development Kits for Windows and SGI IRIX
- N64 SDK Easy Install CD - An ISO image made by AlphaTango and CrashOveride to simplify installation of the official SDK. Works on Windows 98-XP.
-
Emulators
-
Actively Maintained
- Project64 - An open-source emulator for Windows and (soonTM) Linux/Android. It used to focus on compatibility with commercial games, but now also focuses on improving accuracy and emulating as much of the console as possible while remaining performant and compatible.
- Sixtyforce - A closed-source emulator for Mac
- mupen64plus - A more recently updated fork of Mupen64 for Linux, Mac OSX, FreeBSD, and Windows. No GUI is included, so you can use simple64, RMG, or the RetroArch core for a UI.
- simple64 - A fork of Mupen64Plus that is easy to use and also more accurate.
- Mupen64+ Reverser Edition - A fork of the Mupen64Plus emulator tailored for reverse engineering.
- ModLoader64 - modding/ModLoader64)) - A wrapper for Mupen64plus that enables modding through plugins written in TypeScript
- ares - A low-level, accurate multi-system emulator with good support for N64. Available in sources and binary distributions for Windows, Mac and Linux. It includes a CPU and RSP recompiler, and emulates RDP with Vulkan (via Parallel-RDP).
-
Unmaintained
- 1964 - An open-source emulator for Windows
- mupen64 - An open-source, multi-platform emulator
- Wii64 - A port of mupen64 for Nintendo Wii and GameCube
- Mupen64-360 - A port of Wii64 (and thus mupen64) to the Xbox 360. No longer maintained.
- Nemu64 - A closed-source emulator for Windows with fantastic debugging tools. Currently is incredibly difficult to run on modern Windows.
- UltraHLE - An early emulator for Windows. Though closed-source, [the source leaked in 2002](https://web.archive.org/web/20020812020546/http://www.emulation64.com/freeflow-page.html).
- Surreal64 - An emulator for the original Xbox which includes ports of 1964, Project64, and UltraHLE
- TrueReality - An open-source emulator
-
-
Development Hardware
-
Unmaintained
- 64drive - A flash cartridge with USB support targeted at developers. Currently near impossible to get new, or expensive second hand.
- EverDrive 64 X7 - A flash cartridge with USB support for development
- UltraHDMI - Tech](https://www.game-tech.us/product/ultrahdmi/)) - A board that can be installed into the console to capture the digital output of the RCP and send it out a Mini HDMI connector to a modern TV. Convenient for connecting a real console to a nearby monitor while viewing the best possible output signal.
- N64RGB - An N64RGB mod that supports every motherboard revision and works pretty well.
- UltraSave - A device that works with the 64drive to transfer saves from real cartridges
- GameShark 3.0+ - A method of running homebrew via a GameShark
- sm64gameshark - How to transfer GameShark codes from USB to parallel, and how to identify GameShark cartridges with functional parallel ports
- Replacement Carts - A set of EagleCAD files for manufacturing your own N64 carts
- ED64 Plus - A Chinese clone of the Everdrive 64 at a much cheaper price point. It also has a disconnected USB port with a missing FT245R chip that [can be reattached](https://odysee.com/@backofficeshow:f/everdrive-ed64-nintendo-64-teardown:0) for theoretical added functionality.
- SummerCart64 - A fully open source, production ready, flashcart with 64DD implementation built-in. Mostly geared towards homebrew development.
-
-
Tools and Libraries
-
Development Cartridge Loaders
- sc64deployer - SummerCart64 loader and control software (Windows, macOS and Linux)
-
Asset Conversion and Viewing
- 64Drive Viewer - Preview textures, images, sounds, and 3D models on hardware with a 64drive over USB
-
Audio Playback and Editing
- N64-Tools - A tool to extract and import audio from many games that make use of the MIDI format
-
Debugging
- Project64 EmuScripts - Scripts for debugging under Project64 emulation
-
ROM Manipulation
- Tool N64 - A tool to display ROM information and perform byte reordering
- Real N64 CRC Tool v2 - A tool to check, calculate, and set ROM checksums and extract the bootcode of ROM files
- seq64/n64checksum - Source for a tool to calculate and set ROM checksums
- Info64 - A tool to display and set ROM header information and checksums
-
Development Libraries
-
-
Reverse Engineering
-
Projects
- Blast Corps - An in-progress decompilation of _Blast Corps_
- Superman 64 - An in-progress decompilation of _Superman 64_
- N64 Uncompiled Source Code - Various source code and related material discovered in various ROM images
- shogihax - Details a remote code execution exploit of the Nintendo 64 via the _Morita Shogi 64_ cartridge and its dialup modem
- Ultra FP64 - A work in progress FPGA Nintendo 64
- Mario Party 2 - An in-progress decompilation of _Mario Party 2_
- Virtual Pro Wrestling 2: Ōdō Keishō - An in-progress decompilation of _Virtual Pro Wrestling 2: Ōdō Keishō_
-
Guides and Reference
- n64-decompiling - An overview of decompiling Nintendo 64 ROMs with Ghidra
- awesome-decompilation - A curated list of awesome decompilation resources and projects
-
Tools and Disassemblers
- RI Probe - A ROM that dumps RDRAM values onscreen for debugging and exploring
- Online Disassembler - A lightweight, online service for when you don't have the time, resources, or requirements to use a heavier-weight alternative
- Compiler Explorer - Explore how your C, C++, Rust, or other compiled language code ends up looking after compilation
- GEDecompressor - Decompressor for a wide variety of compression formats used across various titles
-
-
Programming
-
Assembly
- Fraser N64 - YouTube channel featuring Nintendo 64 assembly programming
- N64 Assembly Language Tutorial - Fraser's detailed Nintendo 64 assembly programming guide
- N64 ASM Tutorials - Nintendo 64 assembly language programming tutorials by Mike Huber (mirrored by Jaeden Amero)
- n64ops - R4300i, RCP, and RSP opcode details
-
C
- N64 Homebrew Starter Guide - Buu342's guide to creating an N64 game with the official SDK
- Implementation of Sounds Using the Nintendo 64 Sound Tools - Buu342's guide to implementing sound in your ROM with the Nintendo 64 Sound Tools
- N64Squid Homebrew - Development walkthrough using the NuSystem library that's part of the official SDK
- moria.us #nintendo-64 - A series of blog posts covering a broad range of Nintendo 64 development topics
- N64brew Game Jam 2020 - N64brew Game Jam 2020 submissions
- N64brew Game Jam 2021 - N64brew Game Jam 2021 submissions
- N64brew Game Jam 2022 - N64brew Game Jam 2022 submissions
- N64brew Game Jam 2023 - N64brew Game Jam 2023 submissions
- helloworld - Hello World example using NuSystem and S2DEX microcode
- Penguins Luv Melons - A homebrew game built with `libdragon`
-
Rust
- rrt0/examples - Rust examples using cargo-n64
- gameshark-rs - Rust library and tools for working with GameShark codes
-
Programming Languages
Categories