The Amiga Custom Chipset
Agnus, Denise, and Paula
Three custom co-processors gave the Amiga capabilities that PCs wouldn't match for years. Read through Commodore's own manual they are not three chips that do graphics, blitting and sound — they are one answer to a single question about who gets the memory, and the 68000 comes last.
The Amiga’s secret weapon was never the Motorola 68000 CPU — it was the three custom chips working alongside it. Agnus handled memory and the Blitter. Denise produced graphics. Paula managed audio and I/O.
Described that way the chipset sounds like a division of labour, which is how it is usually explained: dedicated silicon for each job, freeing the processor. Commodore’s Hardware Reference Manual supports a sharper reading. The chips are not three specialists working in parallel — they are the parts of one memory scheduler, and every design decision in the machine follows from where a component sits in it.
One question, asked of every part
Everything in the Amiga shares one pool of memory, and the manual settles the order of access explicitly:
| Priority | Device | Commodore’s stated reason |
|---|---|---|
| Highest | disk, audio, display, sprite DMA | “missed DMA cycles can cause lost data, noise in the sound output, or on-screen interruptions” |
| the Copper | “it has to perform its operations at the same time during each display frame to remain synchronized with the display beam” | |
| the blitter | it “performs data copying, modifying, and line drawing operations much faster than the 68000” | |
| Lowest | the 68000 | — |
The processor is last. Not as an oversight or a compromise, but because Commodore ranked the machine’s parts by how well each does the work that matters, and the general-purpose chip lost.
Read back through that ranking, the individual chips stop looking like features and start looking like consequences:
- The Copper exists because register changes must
land at exact beam positions, and its
WAIT“keeps Copper off of bus until beam position has been reached” — a coprocessor whose defining instruction is to ask for nothing. - The blitter sits above the CPU because it is
faster at moving memory, and can be told via
BLTPRI— “blitter-nasty” — to stop yielding altogether. - Paula’s audio is DMA because a sound channel that waited on the processor would click.
- Denise is the only chip not competing for memory: it receives what Agnus fetches and turns it into pixels.
- And Agnus is not one of three peers. It is the scheduler that the other two, and the CPU, are arranged around.
The design’s elegance is that this is mostly invisible. The 68000 “uses only the even-numbered memory access cycles”, which matches its own habit of spending “about half of a complete processor instruction time doing internal operations”. It is interleaved rather than starved — until the display grows large enough to want the other half too.
Four things the short version gets wrong
Summaries of this chipset, including earlier versions of this entry, repeat four claims the manual does not support.
The Copper has three instructions, not two. MOVE and WAIT are the famous
pair, but “the Copper has only three instructions” — SKIP is the third, and it
is what makes a Copper list capable of branching.
The blitter does not offer AND, OR and XOR. It offers all of them and 253 others: “the blitter can combine the data from the three source DMA channels in up to 256 different ways”. The operation is a byte, not a menu choice.
HAM does not display 4,096 colours simultaneously, in the sense that phrase usually implies. A HAM pixel modifies “the color of the pixel immediately to the left”, changing one colour component. The palette is reachable across a line, not selectable per pixel — which is exactly why HAM images fringe.
The audio channels are 1 and 2 left, 0 and 3 right — the pairing is often quoted the other way round.
The three sisters## The three sisters
Agnus (8361/8370/8372/8375)
The memory controller and Blitter engine:
- DMA controller: coordinated all memory access, giving each chip its time slice.
- Blitter: hardware block-copying engine that moved graphics data faster than the CPU ever could.
- Copper: a simple coprocessor that executed display lists synchronised to the video beam.
- Versions: Fat Agnus (8370/8372) added more chip RAM addressing; Super Agnus and Alice appeared in later models.
Denise (8362/8373)
The graphics chip:
- Playfields: up to two independent scrolling backgrounds with different colour depths.
- Sprites: eight hardware sprites, 16 pixels wide, with independent positioning.
- HAM mode: Hold-And-Modify reaches the full 4,096-colour space by editing one component of the previous pixel.
- Colour palette: 32 colours from 4096 (OCS/ECS), expanded in AGA’s Denise successor, Lisa.
Paula (8364)
Audio and I/O:
- Four channels: channels 1 and 2 to the left output, 0 and 3 to the right.
- 8-bit samples: direct sample playback at variable rates—revolutionary for 1985.
- DMA-driven: audio played from memory without CPU intervention.
- Disk and serial: also handled floppy drive and serial port I/O.
The Copper
Perhaps the Amiga’s most distinctive feature, the Copper was a simple coprocessor in Agnus that could:
- WAIT: pause until the video beam reached a specific position.
- MOVE: write a value to a hardware register.
There is a third, SKIP, which skips the next instruction if the beam has passed
a given point — the branch that makes a Copper list a program rather than a
sequence. With these, programmers created rainbow gradients, split-screen
effects, and per-scanline palette changes that seemed impossible on contemporary
hardware.
The Blitter
The Blitter was a DMA-driven block transfer engine that could:
- Copy: move rectangular regions of memory.
- Combine: any of 256 logic functions of its three sources, chosen as a byte.
- Fill: flood-fill enclosed areas.
- Line draw: render lines directly in memory.
Games used the Blitter for sprite rendering, scrolling backgrounds, collision detection, and real-time effects that would cripple a CPU-only approach.
Chipset evolution
- OCS (1985): Original Chip Set in the Amiga 1000, 500, and 2000.
- ECS (1990): Enhanced Chip Set with productivity modes and SuperHiRes.
- AGA (1992): Advanced Graphics Architecture in the Amiga 1200 and 4000—256 colours from 16 million, 64-bit memory bus.
Why it mattered
The Amiga chipset embodied Jay Miner’s philosophy: offload repetitive work to custom silicon, freeing the CPU for game logic. PCs of the era couldn’t match Amiga graphics without expensive add-on cards. The architecture influenced later console and graphics card design.