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

Overview

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%, 75%
Frequency ~54 Hz to ~12 kHz audible (11-bit period; periods below 8 are silenced by the sweep mute)
Envelope hardware decay or constant volume
Sweep automatic pitch bend up/down
Length counter automatic note cutoff

Triangle channel ($4008-$400B)

Feature Details
Waveform 32-step triangle (no volume control)
Frequency ~27 Hz to ~28 kHz (timer is clocked every CPU cycle — double the pulse rate, hence wider range)
Usage bass lines, soft leads
Quirk period 0 produces ultrasonic buzz

Noise channel ($400C-$400F)

Feature Details
Modes long (32,767 steps) or short (93 steps) LFSR
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.
  • 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