Contents

The C64 SID Chip and Music as System

Three oscillators, one leaky analogue filter, and a generation of composers who had to become programmers to get a note out

Contents

Every other 8-bit machine of the period made a noise. The Commodore 64 had an instrument in it, and the difference shows up in a detail that sounds like trivia until you sit with it: the SID has an envelope generator per voice. Attack, decay, sustain, release, four bits each, sitting in a register you can write to. On the Spectrum’s beeper you got a square wave and whatever your CPU had time to spare. On the SID you got a shape you could describe, and a chip that would hold that shape while your code went off and did something else.

That one design decision is why C64 music sounds the way it does, and why the people who made it ended up writing assembler for a living.

The chip that was designed as a synthesiser

Advertisement

The 6581 was drawn up at MOS Technology by Bob Yannes in 1981 and 1982, on a schedule he later described as around five months. Yannes was a synth player, and he has been clear in interviews since — the long Andreas Varga conversation from 1996 is the one everyone quotes — that he was designing a musical instrument that happened to be destined for a home computer, and that the specification he wanted was considerably larger than the one that fit.

What shipped: three independent voices. Each gets a 16-bit frequency register, so your pitch resolution is fine enough for vibrato and portamento done in software. Each gets a choice of triangle, sawtooth, variable-width pulse, or noise. Each gets that ADSR envelope. Voices one and two and three can ring-modulate or hard-sync with their neighbour, which is where the metallic clanging in a lot of C64 percussion comes from. Then all three run into a single multimode filter — low-pass, band-pass, high-pass, combinable — with one cutoff and one resonance for the lot. And a master volume register at $D418.

Yannes left for Ensoniq shortly afterwards and spent the rest of his career building the sampler chips he’d wanted to build in the first place. He has never sounded especially sentimental about the SID. The people who used it feel differently, and the gap between those two positions is the interesting part.

Three voices, and the arithmetic of a chord

Three voices is the constraint that organises everything else.

A pop arrangement wants bass, chords, melody and drums. That is four things minimum, and you have three channels, one of which the game is going to want back for a laser noise. So you do arithmetic. You play a chord by cycling through its notes at 50Hz — C, E, G, C, E, G, one per frame — fast enough that the ear gives up and hears a chord with a shimmer on it. That is the arpeggio, and it is the single most recognisable sound of the machine. It exists because three is smaller than four.

Drums are the same trick from the other end. There is no drum channel, so a snare is the noise waveform with a very short envelope, stolen from the channel that was doing something else for the length of a frame. Listen to a Rob Hubbard bassline and you can hear the bass note being interrupted to be a hi-hat and then returning, all inside a twentieth of a second. The arrangement is a scheduling problem with a tune on top.

This is the bit that separates SID music from chiptune as a genre. The composers were allocating a fixed resource against competing demands in real time, and the sound of that allocation — the flicker, the ducking, the way a bass note gets clipped when the percussion needs it — is the aesthetic. I have written more about where that leaves modern chiptune in Chiptune Nostalgia and the Real Technical Constraint, because the distinction matters more than it looks.

The player routine is the instrument

Advertisement

Here is the thing that gets skipped. There was no music software. There was no format. A C64 composer in 1985 wrote a player routine — a chunk of 6502 assembler that ran on a raster interrupt, fifty times a second on a PAL machine, and poked the SID’s registers — and then wrote the tune as data for the player they had just written.

Which means the player was the instrument. Two composers with identical musical ideas produced different sounds because their playback code was different. Rob Hubbard’s tunes sound like Rob Hubbard partly because of the notes and substantially because his routine did things — filter sweeps timed to the frame, pulse-width modulation running continuously underneath a note, vibrato with a specific delay before it kicks in — that another routine simply didn’t do. He built the synthesiser and then played it, and the case for treating him as a headline act rests on exactly that: the authorship goes all the way down to the register writes.

Martin Galway, working for Ocean, went at it from a different angle and is generally credited with getting sampled sound out of the machine — the $D418 volume register has a design quirk on the 6581 where writing to it produces an audible click, and if you write to it fast enough with the right values you have a rough four-bit sample player that eats your CPU alive. Arkanoid in 1987 is the usual example. Galway’s approach to the chip sounds smoother, more produced, more interested in timbre than in the acrobatics. Same silicon, different software, and you can tell them apart in four bars.

The economics reinforced this. A composer was typically paid a few hundred pounds for a game’s whole soundtrack and was expected to deliver the player routine as part of it, which meant the person writing the music owned the sound end-to-end and had nobody to hand a spec to. Hubbard has talked about turning tunes around in days. That schedule sounds punishing, and it also removed every layer between an idea and the hardware — you had the thought and then you had the register write, with no producer in between. Compare the number of hands a piece of game music passes through now.

There was also a bug to route around. The 6581’s envelope generator can get stuck if a new note is gated at the wrong moment, and the fix everyone converged on was the hard restart: slam the ADSR registers to known values a frame before the note you actually want, so the envelope has somewhere to start from. Every serious player routine has one. It is a workaround for defective hardware that became standard practice, and it is audible — that tiny tick before a bass note is the sound of a bug being managed.

The filter that was different on every machine

The SID’s filter is analogue, and MOS could not make it consistently.

The cutoff frequency of a 6581 varies from chip to chip, sometimes dramatically. A tune composed on one machine, with a filter sweep tuned by ear until it sat exactly right, would sweep somewhere else entirely on the C64 sitting in the next room. There was no calibration. There was no reference. Composers were tuning an effect against a component whose behaviour was a manufacturing lottery.

Then Commodore fixed it. The 8580, which turns up in the C64C from the late 1980s, has a filter that does what the datasheet says. It is also, for the same reason, less characterful, and it lacks the DC offset that made the volume-register sample trick loud — so a chunk of the existing catalogue plays back with the digi component almost silent. An entire body of work was tuned to a defect, and correcting the defect broke it. The emulator authors have been arguing about which chip is the canonical one for thirty years and there is no answer, because both answers are true.

What the constraint actually bought

The temptation is to file this under charming limitation. It is more specific than that.

The SID’s restrictions pushed composition and programming into the same job, and the result was a body of work with an unusually high concentration of authorship. There was no middleware layer, no licensing department, no orchestra to interpret anything. One person wrote the code that made the sound and the data that told it what to play, in a memory budget you could count in kilobytes, and shipped it. That is closer to how a demoscene coder works than to how a film composer works, and it produced music with a demoscene’s fingerprints on it — technical showing-off as an expressive mode, the flex and the feeling arriving in the same phrase.

It also produced something the machine’s marketing never promised. C64 loading screens have tunes that outlast the games attached to them; players left cassettes loading to hear the music finish. That is a strange fact about a piece of business hardware, and it happened because Yannes lost the argument about how big his chip should be, and three voices turned out to be exactly small enough to be interesting.

The SID’s real legacy is a design lesson that keeps recurring: a system that is generous in one dimension and mean in every other one gets you further than a balanced one. Yannes gave composers per-voice envelopes and a filter — expressive controls, properly synthesiser controls — and then gave them almost nothing else. The chip was rich enough to reward being fought with. That combination is rarer than it sounds, and you can hear it every time a bassline briefly turns into a drum and comes back.

Advertisement
Advertisement
Jay
Written by Jay

vo.rs's games critic. Jay covers the medium as a system rather than a spectacle — this month's release, the indie nobody bought, and the Amiga game it's quietly descended from — asking what a mechanic makes you feel and why the loop holds. Learned to wait through a C64 tape load, never stopped playing since, and still finishes the odd 60-hour RPG out of spite. Expect argued verdicts, no score ever, spoilers below the line, and a running list of older games worth your weekend.