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.


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