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.


kunst screencast bildung ZDF cloud Smarthome workshop Termin rs232 JavaScript Funktionen INN server raspberrypi xmpp Mathe ubuntu Linux Newsgroup ccc sdr wiki NNTP Testverfahren Informatik Second Life Clonezilla Tools Psychologie Arduino Spaß das-labor Linkliste bloggen gamejam ITA podcast esp8266 debian 35c3 Text game-engine Comic IoT admin dtp Twitter fun bio lernen mooc SciFi Spiele Sketchnotes pdf ctf programmierung Studium Geschichten hardware Tafelbild c't Tipp Kino Commandline ldlmooc Film python e-mail git Dortmund Latex Sport TV hacking Windows software buch heise Wissenschaft serielle Schnittstelle importiert ldl badge Archiv Datenbank audio Taschenrechner 3dDruck Usenet HP35s video Gesellschaft Bilder Chat Konferenz GPIO 34c3 RSS docker