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.


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