Pong auf dem CHIP-8

In den 70er Jahren suchte man eine möglichst einfache Spezifikation für die Beschreibung von Videospielen. Herausgekommen ist der CHIP-8: 2 Farben, eine Auflösung von 64x32 Bildpunkten, 16 Register für die Speicherung von Variablen, 4kB Speicher, eine Tastatureingabe mit 16 Tasten und eine Audioausgabe, die genau einen Ton erzeugen kann. Programmiert wird der CHIP-8 mit 35 Opcodes, die jeweils zwei Byte lang sind.

Ausgedacht hat sich das Joseph Weisbecker bereits in den 70er Jahren und den Artikel An Easy Programming System in der Zeitschrift »Byte« in der Dezember-Ausgabe von 1978 veröffentlicht - zusammen mit einer Beispiel-Implementierung eines Spiels.

Seitdem sind einige kleinere Spiele für diese virtuelle Maschine entstanden und das Projekt hat sich zu einer Hallo-Welt-Fingerübung der Emulatoren-Programmierung gewandelt. Daher gibt es für nahezu jede Plattform oder Programmiersprache einen Emulator, der die Spiele-Roms ausführen kann.

Ich bin durch den Vortrag State of Retro Gaming in Emacs darauf gestoßen. In diesem stellt wasamasa eine eigene Emulator-Implementierung vor, die er für den Emacs erstellt hat.

Update: In der Zwischenzeit hat Herr Rau in zwei sehr lesenwerten Blog-Artikeln den CHIP-8 genauer beschrieben. Teil 1, Teil 2.


buch bildung Tools hardware Comic Taschenrechner Funktionen lernen wiki server Tipp Linux raspberrypi Geschichten admin podcast review HP35s Mathe Informatik software video Gesellschaft ctf mooc git Spiele TV ldl python Datenbank Bilder Chat Termin cloud gamejam Second Life das-labor Kino importiert programmierung 35c3 Windows screencast esp8266 39c3 Studium Linkliste Spaß ldlmooc e-mail Latex Clonezilla audio Sport llm game-engine Konferenz Text RSS c't ccc Tafelbild JavaScript kunst bloggen hacking Wissenschaft film Twitter fun 34c3 pdf Dortmund