Programmieren am Limit: Demoszener als Meister in der Beschränkung

64 KB schmale Anwendungen, die 3D-Animationen und Musik kreieren – die Demoszene sorgt für Staunen. Auf dem VCFB ließ sie sich in die Karten schauen.

In Pocket speichern vorlesen Druckansicht 218 Kommentare lesen
Programmieren am Limit: Demoszener als Meister in der Beschränkung

(Bild: "Brain Control")

Lesezeit: 11 Min.
Von
  • Pit Noack
Inhaltsverzeichnis

In den Achtzigern tauschten Computerfreaks auf Schulhöfen "dezentrale Sicherheitskopien" von Spielen wie Donkey Kong, Pacman oder Archon. Cracker wetteiferten darum, den Kopierschutz von neu erschienenen Games möglichst zügig zu knacken. Zur Mehrung des eigenen Ruhms verewigten sich Crackergruppen mit zunächst minimalen Textmanipulationen in den per Kopie verbreiteten Versionen. In Donkey Kong erschien etwa in der Sprechblase des vom Riesenaffen entführten Mädchens statt des ursprünglichen "Help!" der Crackername "1103".

Diese Manipulationen entwickelten immer elaboriertere Formen. Dem eigentlichen Programm vorgeschaltete Intros oder Cracktros zeigten krachend bunte, pulsierende Lauftexte und Animationen und zelebrierten einen ganz eigenen, verschrobenen, oft schülerhaften Humor. Bald wurde sehr viel mehr Programmieraufwand auf die Gestaltung der Cracktros verwand als auf die Überwindung von Kopierschutzmechanismen. Da war es nur konsequent, diese neue Form digitaler Gestaltung von Spielkopien zu lösen und eigenständige Programme – eben Demos – zu entwickeln.

Demos (demonstratio für "zeigen" und "nachweisen") beweisen die Fähigkeiten der Demo-Entwickler und weisen die technischen Möglichkeiten der Maschine nach: Die frühe Demo-Programmierung war geprägt durch die bestmögliche Ausnutzung limitierter Speicher- und Prozessor-Ressourcen auf Plattformen wie dem Commodore C64 und dem Amstrad CPC. Es ging also zunächst weniger um die Schöpfung ästhetisch bestrickender Werke als vielmehr darum, das Publikum mit Tricks und Hacks zu beeindrucken, die das letzte aus der Maschine herausholten – und damit weit über das hinausgingen, was die Entwickler der Hardware vorgesehen hatten.

Die heutige Demoszene ist eine verschworene, international vernetzte Gemeinschaft: Einige Tausend aktive Entwickler treffen sich auf jährlich stattfindenden Demopartys wie der Evoke, der Revision oder der Assembly. Die Demoszener sind in der Regel in für Grafik, Animation, Sound und Koordination arbeitsteilig organisierten Gruppen zusammengeschlossen. Auf den Partys präsentieren die Gruppen ihre Werke auf riesigen Leinwänden und dicken Soundsystemen und konkurrieren in Wettbewerben (Compos) miteinander, bei denen das Publikum per Abstimmung über Sieg und Niederlage entscheidet. Jedes Demo darf nur auf einer Party in Wettbewerb treten.

Die Compos sind in verschiedene Kategorien – etwa nach Rechnerplattformen – unterteilt. Reichlich vertreten sind klassische Rechner wie C64, Amiga oder Atari VCS 2600. Die sportliche Herausforderung, mit limitierten Ressourcen zu beeindrucken, ist bei PC-Demos per Wettbewerbsbedingung gesetzt: Üblich sind Begrenzungen auf 4 oder 64 KB. Demos für exotische oder gar von Hand gelötete Maschinen treten in sogenannten Wild Compos an.

Die Kurztagung im Rahmen des Vintage Computing Festivals Berlin vergangenes Wochenende beleuchtete unter der Leitung von Stefan Höltgen (HU Berlin) das Thema Demoszene aus technischer wie aus medien- und kunstwissenschaftlicher Perspektive. Der Demoszener Sven Oliver Moll (Szenename SvOLLI) zeigte das Atari VCS 2600 Demo "Bang!" der Gruppe XayaX von 2014, an dessen Entstehung er maßgeblich beteiligt war.

Moll lieferte tiefe Einblicke in die hardwarenahe Demoprogrammierung und die Koordination der Entwicklung im Team. Entwickler jüngeren Semesters dürfen staunen, wie man mit einem RAM von lediglich 128 Byte für Variablen und Sprungadressen überhaupt irgendetwas bewerkstelligen kann. Moll erläuterte diverse Hacks, mit denen es etwa gelang, die eigentlich vom System auf 2 begrenzte Anzahl der Sprites durch mehrfaches, exakt getimtes Beschreiben der Spriteregister auf 10 zu erweitern. Er stellte zudem einige Tools vor, die er extra für die Demoprogrammierung entwickelt hatte, etwa den Editor apefat (A Poor Excuse For A Tracker) als grafisches Frontend für Paul Slocums Sequencer Kit.

(Bild: Evan Amos)

Im Gespräch nannte Moll den Atari VCS seine bevorzugte Plattform. Er schätzt am VCS vor allem die Überschaubarkeit der Hardware, die eine vergleichsweise schnelle Einarbeitung möglich macht. Für die Entwicklung nutzt er den Emulator Stella, der die Speicherzustände buchstäblich Bitgenau und schrittweise grafisch darstellen kann. Erst nach getaner Arbeit landet das Demo auf einem Steckmodul.

Der Debugger des Atari VCS Emulators Stella

(Bild: stella-emu.github.io)