Skip to content
Hardware

APU: The NES Audio Engine

Five channels of chiptune magic

The NES Audio Processing Unit delivered two pulse waves, a triangle, noise, and sample playback—creating the iconic sound of 8-bit Nintendo.

nintendo-entertainment-systemaudioprocessorsricohnintendochiptune1983–present

Built into the same chip as the CPU (2A03/2A07), the Audio Processing Unit gave the NES its distinctive sound. Two pulse waves handled melodies, a triangle wave provided bass, noise created percussion, and the delta modulation channel allowed rudimentary samples. Composers like Koji Kondo and Hip Tanaka turned these constraints into art.

Fast facts

  • Channels: 5 total (2 pulse, 1 triangle, 1 noise, 1 DMC).
  • Output: mono, mixed internally.
  • Sample rate: varies; DMC plays at 4.2–33.1 kHz depending on rate setting.
  • Integration: part of the 2A03 (NTSC) or 2A07 (PAL) CPU package.
  • NTSC/PAL differences: the 2A03 and 2A07 differ in CPU clock, frame-counter rate (~240 Hz vs ~200 Hz), DMC rate table, noise period table, and DMC DMA conflict timing — register semantics are otherwise identical.

Channel specifications

Pulse channels ($4000-$4007)

Feature Details
Duty cycles 12.5%, 25%, 50%, and 25% negated — the hardware’s own label for the fourth
Frequency ~54 Hz to ~12.4 kHz (11-bit period; any period below 8 is silenced outright by the sweep unit)
Envelope hardware decay or constant volume
Sweep automatic pitch bend up/down
Length counter automatic note cutoff

Four duty settings, three timbres. The fourth setting is not a 75% pulse in the hardware’s own terms — NESdev’s duty table calls it “25% negated”, and prints its output as 1 0 0 1 1 1 1 1 against 0 1 1 0 0 0 0 0 for plain 25%. It is the same shape with the high and low halves exchanged. Inverting a wave changes its phase, not its harmonic content, so 25% and 75% are indistinguishable played on their own. The difference only becomes audible against something else: another channel it can reinforce or cancel, or anything phase-sensitive downstream.

Ricoh’s specification for the chip lists all four because the hardware encodes four, not because a composer is offered four tones. In practice the palette is thin, bright (12.5%), reedy (25%, or its 75% twin) and hollow (50%) — which is a large part of why NES music is so recognisable. There was nowhere to hide.

Triangle channel ($4008-$400B)

Feature Details
Waveform 32-step triangle (no volume control)
Frequency up to fCPU/32, about 55.9 kHz on NTSC — far above hearing (the timer is clocked every CPU cycle, where the other channels’ are clocked every second cycle)
Usage bass lines, soft leads
Quirk a timer of zero is how games silence the channel; the cost is a pop when an audible note resumes

Noise channel ($400C-$400F)

Feature Details
Modes long (32,767 steps) or short — 93 or 31 steps, depending where the shift register stood when the mode flag was set
Frequency 16 fixed rates
Usage drums, explosions, sound effects

DMC channel ($4010-$4013)

Feature Details
Format 1-bit delta-encoded samples
Sample rates 16 fixed rates (4.2-33.1 kHz)
Memory samples must reside in $C000-$FFFF
Usage voice, drums, complex sounds

Register summary

Address Channel Purpose
$4000-$4003 Pulse 1 Duty, envelope, sweep, period, length
$4004-$4007 Pulse 2 Same as Pulse 1
$4008-$400B Triangle Linear counter, period, length
$400C-$400F Noise Envelope, mode, period, length
$4010-$4013 DMC Rate, sample address, length, output
$4015 All Channel enable/status
$4017 Frame Frame counter mode

Programming techniques

  • Arpeggios: rapidly cycle through notes to simulate chords.
  • Duty cycling: switch pulse duty mid-note for timbre variation — between 12.5%, 25% and 50%. Switching between 25% and 75% changes nothing audible on its own, for the reason given above.
  • Volume envelopes: software-controlled volume for more expressive decay.
  • Echo: delay audio data in software for pseudo-reverb.
  • DMC percussion: use samples for punchy drums unavailable in synthesis.

Expansion audio

Some cartridges added extra sound channels:

Mapper Extra channels
VRC6 2 pulse + 1 sawtooth
VRC7 6 FM synthesis channels
Sunsoft 5B 3 PSG channels (AY-3-8910 compatible)
Namco 163 up to 8 wavetable channels
FDS 1 wavetable channel

See also

Not yet fact-checked. This entry was drafted by an AI and nobody has verified it. The dates, figures and technical details may be wrong. Use it to find your bearings, then confirm anything that matters against a primary source.