The Commodore 128 Demo Scene: VDC Wizardry in the Dark
Features

The Commodore 128 Demo Scene: VDC Wizardry in the Dark

The demo scene is where old computers go to be pushed past their specifications, and the Commodore 128 presents the scene with a riddle. The machine contains multitudes: a C64’s worth of beloved, exhaustively documented chips, and alongside them the VDC — a business display controller with its own memory, bitmap modes nobody documented for artists, and twenty-five years of near-silence. The C128 demo scene, such as it is, is the story of a small number of very determined programmers choosing the hard chip. What they found in it justifies every hour.

Set expectations first: there is no vast C128 scene. The overwhelming majority of “C128 demos” run in 64 mode, on the VIC-II, where the audience and the accumulated knowledge are. The native scene is a specialist pursuit measured in landmarks rather than volume, and its landmarks cluster on the VDC for a reason — the VIC side of a 128 demo is a solved problem, while the VDC side, in 1995 or 2006 or 2021, was a genuine frontier, with timing behaviours that had to be measured against real hardware because the documentation simply didn’t say.

A dragon rendered by the VDC chip: the demo scene's signature subject — bitmap art from a text chip

The landmarks

The line of descent runs through a handful of productions. Early experimenters in the mid-1990s were already shipping VDC routines — surviving code collections from 1995 include VDC graphics loaders that initialise the chip, clear its private memory with its own block-fill feature, and stream picture data across the register interface, the unglamorous groundwork of a scene. The production that announced the chip as a demo platform was Crest and Oxyron’s Risen from Oblivion VDC (2006) — a demo built around VDC graphics that even pauses to run a “system analysis” of the display chip, measuring pixel-clock cycles against the computer’s own timers like a racing team dyno-testing its engine. That gesture is the scene in miniature: half art, half metrology.

In 2012 the Akronyme Analogiker partnership of Tokra and Mike took a different approach to the same chip: VDC Mode Mania, a slideshow written substantially in BASIC 7.0 — the machine’s own ROM language — that walks the audience through the VDC’s exotic display modes one after another, interlaced and not, colour and monochrome, up to resolutions that embarrass the Amiga’s worst enemies’ claims about 8-bit machines. Extended in releases through 2023, the slideshow eventually demonstrated a 960×540 monochrome mode — on a chip Commodore marketed for typing. In 2021 the same community cross-pollinated the VDC with its oldest rival, teaching it to decode and display ZX Spectrum screens in VDC SpectruMania and Crest’s Colour Spectrum. And the current frontier is a from-scratch C toolchain project, vdcmaniac, which re-derives the mode family in compiled code, adds virtual bitmaps larger than the screen with smooth register-level panning, and publishes its register diagnostic process openly — including the false trails, like a register-ordering bug in its own code that presented exactly like a hardware timing fault until a systematic sweep isolated it.

The Great Wave off Kanagawa in the VDC's HFLI colour-cell mode: the interlaced colour work that defines the modern C128 demo aesthetic

Why the VDC rewards the obsessive

Three properties make the chip a scene darling in miniature. First, unexplored depth: because commercial software used the VDC for text, its graphics registers were a wilderness — modes combining interlace, fine colour cells and attribute tricks had to be discovered, not copied. Second, honest difficulty: the CPU reaches the VDC’s memory through a two-register keyhole with wait states, so every effect is an optimisation problem with teeth; the smooth panning and burst-mode transfers of the modern demos are engineering achievements invisible to their audiences. Third, the dual-screen temptation: the 128 can drive its VIC-II and VDC outputs simultaneously, two displays from one computer, a trick a handful of productions and installations have used to make the machine perform in stereo — the one party piece no other Commodore can match.

A C64 demo proves mastery of a known mountain. A VDC demo is cartography: half the achievement is discovering what the chip can do at all.

The scene’s smallness is also its character. Where the C64 scene measures itself in hundreds of releases a year and four decades of one-upmanship, the C128’s VDCographers form a lineage you can name — experimenters in the nineties, Crest/Oxyron’s landmark, the Analogiker slideshow project, the modern C-toolchain builders — each generation’s tools and timing tables handed to the next through source code and forum archaeology. It is less a scene than a research tradition with a demo habit.

The Commodore 128: home of the two video chips whose contrasting scenes define the machine's demo culture

The dual-screen temptation, explored

The one trick no retelling should skip is the two-monitor performance. The 128’s VIC-II and VDC are independent display engines with independent outputs; nothing in the architecture forces a program to choose just one at a time. A native production can therefore run two pictures at once — the colour, sprite-driven VIC face on one screen and the VDC’s high-resolution artwork on another — and the handful of demos and installations that have done it describe the effect as the machine finally showing its whole self: the games computer and the business computer performing simultaneously, each doing what the other cannot. It never became a genre, for the practical reason that audiences at demo parties would need two projectors and coders would need two monitors on the desk, but as a symbol it is perfect. The C128 spent its commercial life apologising for being two computers. In the demo scene’s hands, that is the superpower.

The toolchain culture around the chip has matured in step: cross-compilers, register references assembled from measurement rather than manuals, emulator support for the exotic modes (the vdcmaniac project tests against VICE’s x128cpp build), and timing tables passed between generations of programmers like family silver. Scenes run on shared knowledge; the VDC scene’s knowledge had to be manufactured first, which is why its history reads like research and why its releases arrive with the quiet pride of papers as much as parties.

How to watch them

For the curious reader, the scene is unusually accessible. The productions live in the standard Commodore archives — CSDb carries the releases with their credits and comments; the mode slideshows run happily in VICE’s C128 emulation with the 64K VDC configuration selected; and the source code for the modern C-based work is published for anyone who wants to see how the register sequences are built. Watch in the right order: Risen from Oblivion VDC for the 2006 landmark, VDC Mode Mania end-to-end as the guided tour (it is, functionally, a museum with a joystick), the 2021 Spectrum conversions for the joke that turns into a technical flex, and the current vdcmaniac mode stills for where the frontier sits now. Bring the 64K video RAM — several of the headline modes assume it — and a tolerance for monochrome, which the chip uses the way a printmaker uses etching: as a resolution strategy, not a limitation. The scene is small enough that a single evening covers its canon. Few evenings in retro computing repay study better.

The quiet verdict

History will record that the Commodore 128 was not a demo-scene machine. The footnote — and it is a glorious one — is that inside it sat the most underexplored display chip Commodore ever shipped, and that a few dozen programmers across thirty years refused to leave it alone. The VDC wizardry is real: 640×400 colour art, 960×540 text modes, Spectrum pictures on Commodore silicon, bitmaps panning wider than the screen. The dark, it turns out, was just where the chip was waiting.

One email a week: the best new articles, hidden gems, and zero spam. Insert coin to continue.

Join the discussion

Your email address will not be published. Required fields are marked *