Before we go into the details, let's define the two endpoints of the N64's audio subsystem:
- Our starting point is the cartridge ROM, which contains data that only the CPU can interpret.
- The ending point is the Digital-to-Analogue Converter (DAC), which only understands waveform data .
Now, how do we connect both ends? Consoles normally include a dedicated audio chip that does the work for us. Unfortunately, the Nintendo 64 doesn't have a dedicated chip, so this task is distributed across these components:
- The main CPU: Transfers the audio data from the game's ROM to RAM, then composes Audio Lists to be handled by the RSP.
- The RSP: Using additional microcode, it interprets the audio lists previously stored in RAM and performs the required operations on the audio data, which can include:
- Decompressing Adaptive Differential Pulse-Code Modulation (ADPCM) samples and applying effects.
- Sequencing and mixing MIDI data using audio banks stored in RAM.
The resulting data is, as expected, waveform data. This is then sent to the Audio Interface (AI) block, which transfers it to the digital-to-analogue converter . Being a stereo system, the resulting waveform contains two channels, each with 16-bit resolution.

Overview of how the audio pipeline is commonly implemented.
The repertoire
Time to check out the soundtracks made for the N64. There are too many (good ones) to mention in this article, so here are some that caught my attention:

Video - The Legend of Zelda: Majora's Mask (2000).
The music of this game is tied to its daunted atmosphere.

Video - Bomberman Hero (1998).
This game has a nice and unique house-based soundtrack.
Secrets and limitations
Because of this design, the constraints are dictated by the overall workload:
- The sampling rate can be up to 44.1 kHz, but using the top rate steals too many CPU cycles.
- There's no strict limit on the number of channels; it all depends on how much the RSP is capable of mixing (often around 16-24 channels when processing ADPCM, or approximately 100 with PCM).
- Memory is another concern. While competitors relied on larger media (i.e. CD-ROM) and dedicated audio memory, Nintendo 64 cartridges hold much less data (let alone music data) and must share main memory with other components.
For these reasons, players may notice that N64 ports feature lower-quality music or repeated scores. A common workaround is to implement a music sequencer that generates samples at runtime using a pre-populated set of sounds (resembling MIDI music).