Zork
(Bild: Marcin Wichary, CC by 2.0 Deed)

Infocoms Zork kann auf TRS-80, Apple II portiert werden

Im Quellcode von Zork fand man jetzt konkrete Hinweise darauf, wie man dieses Spiel auf zahlreiche andere Home Computer übertragen kann.

Das populäre Textadventure Zork erschien vom Spielehersteller Infocom erstmals im Jahr 1977. Die Quellcodes verschiedener Textadventures von Infocom, darunter Zork, sind seit dem Jahr 2019 verfügbar. Doch diesen Code kann man auf späteren Homecomputern nicht ausführen.

Zork ist auch eine eigene Progammiersprache

Die meisten Spiele hat Infocom in der „Zork Implementation Language“ geschrieben, die für keine bestimmte Plattform oder keinen bestimmten Prozessor nativ war, sondern von allen möglichen Systemen durch Versionen ihrer Z-Maschine interpretiert werden konnte. Bei Retro-Fans gilt die Z-Maschine als die erste echte Spielentwicklungsmaschine. Doch diese Aussage hat niemand genauer überprüft.

Open Source als Motor der Entwicklung

Im Bereich Open Source hat man viel Arbeit geleistet, um moderne und verbesserte Versionen dieser Interpreter für nahezu jedes erdenkliche Gerät zu erstellen. Die Quellcodes für diese Z-Maschinen-Implementierungen, virtuelle Maschinen würde man heute sagen, tauchten vor ein paar Tagen in einem GitHub-Repository von Andrew Plotkin auf. Plotkin, eine bedeutende Figur in den Bereichen moderner und klassischer Text-Adventures, beschreibt, was sie sind und wie er sie in einem Blogbeitrag auf seiner Website gefunden hat.

Mitten in einer langen Diskussion in einem Interactive-Fiction-Forum über Infocom-Interpreter und moderne Standards für deren Dokumentation fällt eine Nachricht aus dem Nichts über ein jahrzehntelanges Rätsel: „Ich habe den Quellcode von wahrscheinlich den meisten Interpretern von Infocom. Bis du es erwähnt hast, hatte ich keine Ahnung, dass er nicht öffentlich verfügbar war.

Plotkin antwortet etwas mehr als eine Stunde später, dass sie es privat besprechen würden. Dann postete jemand anders den IBM-PC-Interpreter-Quellcode in der Manier, als wäre plötzlich jedermanns Gedächtnis wiedererweckt worden.

Wie bekam man Zork auf die Homecomputer?

Zork, Cover

Wie Plotkin anmerkt, enthält der Interpreter-Quellcode nicht viele interessante, persönliche oder andere aufschlussreiche Kommentare oder Artefakte. Er enthält jedoch einige unbeabsichtigte Kommentare darüber, wie es war, in den 1980er Jahren kommerzielle Software wie Zork zu produzieren.

Es gibt eine Menge interner Dokumentation darüber, wie man Disketten für die verschiedenen Plattformen erstellt hat. So waren in den 1980er Jahren Disketten ziemlich inkompatibel zwischen den meisten Plattformen.

Zunächst musste man die Spieledaten und den Interpreter irgendwie auf einen C64 bekommen. Der C64 konnte diese dann auf einer Diskette speichern. Aber wie machte man das? Damals gab es kein WLAN, keinen Ethernet-Anschluss …

Infocoms Lösung war, ein serielles Kabel von ihrem DEC-20 von Digital, zum C64 etc. zu legen. Auf dem DEC-20 hat man alle Spiele entwickelt. Das serielle Übertragungsprogramm heißt in den meisten dieser Ordner „TFTP“.

Rechteinhaber lehnen Veröffentlichung von Quellcode-Relikten häufig ab

Plotkin merkt auch an, dass er die Dateien auf GitHub abgelegt hat, ohne es großartig anzukündigen. Das liegt daran, weil er aktiv mit den heutigen Rechteinhabern von Infocom wegen dem Quellcode von Zork verhandelt. Er will die Arbeit der legendären Firma in Open Source verwandeln. Eine Weile lang verhandelte er mit Activision, die Infocom 1986 übernommen hatten. Jetzt muss er mit Microsoft reden, die Activision im Oktober geschluckt haben.

Ein Anwalt würde sagen: ‚Hör auf, Quellcode zu veröffentlichen, während du mit dem ursprünglichen Rechteinhaber verhandelst.‘ Das wäre ein guter juristischer Rat„, schrieb Plotkin. „Ich habe, äh, den guten-Ratschlag-Teil meines Gehirns ignoriert.

Fazit

Der Hackaday-Blog hat sich bereits mit den Details der Z-Maschine und ihrer Portierung von DEC PDP-10-Spielen auf TRS-80s und andere Heimcomputer beschäftigt. Dort kann man mehr über die Zork Implementation Language erfahren, die selbst eine abgespeckte Version der Model Development Language (MDL) ist. Das steht alles im „Learning ZIL“, einem Infocom-Lehrbuch für die Sprache, das man ungekürzt im Internet Archive veröffentlicht hat. Der Untertitel lautet: „Everything You Always Wanted to Know About Writing Interactive Fiction But Couldn’t Find Anyone Still Working Here to Ask.“

infocom, zork

Der Artikel zeigt, wie der Quellcode der Z-Maschine, der ersten virtuellen Maschine für Text-Adventures, nach langer Zeit wieder ans Licht kam. Und auch, wie die Z-Maschine die Portierung von Spielen wie Zork auf verschiedene Plattformen ermöglichte und wie sie heute noch von Open-Source-Entwicklern genutzt wird.

Aufgrund der geleakten Informationen ist somit schon recht bald mit zahlreichen Umsetzungen von Zork auf den verschiedensten Computer-Plattformen zu rechnen. Dazu werden sich andere Spiele von Infocom gesellen, die ebenfalls auf der Zork Implementation Language basieren.