libdragon
Modules | Files
libdragon

Low level runtime for homebrew development on the N64 platform. More...

Modules

 Audio Subsystem
 Interface to the N64 audio hardware.
 
 Controller Subsystem
 Controller and accessory interface.
 
 Timer Subsystem
 Interface to the timer module in the MIPS r4300 processor.
 
 Asset Subsystem
 Interfaces for loading assets from ROM or other supports.
 
 Display Subsystem
 Video interface system for configuring video output modes and displaying rendered graphics.
 
 Peripherals subsystem
 Management of serial peripherals, reachable through Joybus.
 
 Low Level Hardware Interfaces
 Low level hardware interface descriptions and functionality.
 

Files

file  libdragon.h
 Main include file for programs seeking to link against libdragon.
 
file  n64types.h
 Custom types used by libdragon.
 

Detailed Description

Low level runtime for homebrew development on the N64 platform.

libdragon handles the hardware interfaces to the various systems in the N64. The audio interface is handled by the Audio Subsystem. The controller interface, controller peripheral interface and EEPROM interface are handled by the Controller Subsystem. The display interface and RDP rasterizer are handled by the Display Subsystem. System timers are handled by the Timer Subsystem. Low level interfaces such as interrupts, caching operations, exceptions and the DMA controller are handled by the Low Level Hardware Interfaces.

libdragon makes every effort to be self-sufficient and self-configured. However, when operating in unexpected environments such as with a non-6102 CIC, additional setup may be required. Please see the documentation for sys_set_boot_cic to inform libdragon of a nonstandard CIC.