Zum Hauptinhalt Zur Navigation Zur Suche

Per FPGA: Hardwarebasierter Zork-Interpreter

Die Liste der Systeme, auf denen Infocoms Interpreter für Textadventures läuft, ist um einen Eintrag länger. In Form eines FPGA gibt es den Interpreter nun auch auf einem Microchip.
/ Alexander Merz
2 Kommentare Auf Google folgen (öffnet im neuen Fenster)
Der Aufbau für den Zork-Interpreter in Hardware (Bild: Charles Cole/Youtube)
Der Aufbau für den Zork-Interpreter in Hardware Bild: Charles Cole/Youtube

Die Zork-Reihe(öffnet im neuen Fenster) von Infocom war in den 80er Jahren populär und legte die Grundlage für das Adventure-Spielgenre – auch wenn sie damals allein auf Textbeschreibungen und manuelle Befehlseingaben aufbaute, die Grafik entstand allein in der Vorstellung des Spielers.

Zork-Interpreter in Hardware-Form
Zork-Interpreter in Hardware-Form (08:57)

Technisch setzten die Spiele auf die Z-Machine – eine frühe Form einer virtuellen Maschine. Dadurch musste sich der Spieleprogrammierer nicht um die Hardwaredetails kümmern. Da damals sehr hardwarenah programmiert wurde, war das eine enorme Erleichterung und erlaubte eine einfachere Portierung der Spiele auf eine Vielzahl von Plattformen. Da die Z-Machine und ihre Funktionsweise sehr gut dokumentiert(öffnet im neuen Fenster) sind, wird sie immer wieder auf aktuellen, aber auch manch exotischen Systemen implementiert.

Charlie Cole implementierte die Z-Machine mit Hilfe der Hardware-Beschreibungssprache Verilog(öffnet im neuen Fenster) auf einem FPGA. Sein gesamtes System besteht dabei aus einem preiswerten Altera-Cyclone-II-EP2C5-Entwicklerboard, das den mit 10 MHz getakteten FPGA beinhaltet, einem kleinen, berührungsempfindlichen LC-Display, 512 KByte RAM und 128 KByte Flash-Speicher. Die Performance des Systems soll laut Cole der eines Atari ST(öffnet im neuen Fenster) entsprechen.

Mit der Implementierung sollen sich alle Infocom-Textadventures aus der Zeit von 1982 bis 1987 spielen lassen. Eine Einschränkung gibt es allerdings: Mangels eines entsprechenden Permanentspeichers gibt es keine Möglichkeit, einen Spielstand zu speichern oder zu laden.

Es war nicht die erste Portierung der Z-Machine durch Charlie Cole. Er hat bereits 2011 die virtuelle Maschine auf einem Livescribe installiert und als App verfügbar(öffnet im neuen Fenster) gemacht. Dabei muss der Spieler die Befehlseingaben tatsächlich handschriftlich auf ein Blatt Papier schreiben.

Wer einen anderen Ansatz sucht, Zork mit so wenig Hardware wie möglich zu spielen, kann das auch mit einem Arduino und einem Fernseher tun. Auch dafür gibt es eine Portierung(öffnet im neuen Fenster).


Relevante Themen