Z-machine

Z-machine

Die Z-machine ist eine virtuelle Maschine, die von Joel Berez und Marc Blank 1979 entwickelt und von Infocom für ihre Text-Adventures verwendet wurde. Infocom kompilierte den Spielecode in Dateien mit Anweisungen für die Z-machine (bekannt als story files, oder Z-code files). Dadurch konnte Infocom auf einfach Weise alle ihre Text-Adventures auf eine neue Plattform portieren, und zwar indem sie lediglich eine Implementierung der Z-machine für die jeweilige Plattform programmierten. Angesichts der zu jener Zeit großen Anzahl von zueinander inkompatiblen Heimcomputer-Systemen stellte dies einen großen Vorteil gegen über direkt für die jeweilige Rechnerplattform erstellten Programmen dar.

Das "Z" in Z-machine steht für Zork, Infocoms erstes Adventure-Spiel. Die Namen von Dateien mit Z-code haben meistens die Dateiendungen .z1, .z2, .z3, .z4, .z5, .z6, .z7 oder .z8 (manchmal auch .dat), wobei die Zahl die Versionsnummer der Z-machine bezeichnet, für die die Datei bestimmt ist. Früher war für die Dateinamen die Endung .zip (ZIP = Z-machine Interpreter Program) üblich. Dies kollidiert heute allerdings mit der weitverbreiteten Verwendung dieser Dateiendung für PKZIP-kompatible Archivdateien. Infocom selbst erstellte sechs Versionen der Z-machine, während die Versionen 7 und 8 von Graham Nelson stammen.

Von den ersten beiden Versionen sind jeweils nur zwei Dateien von Infocom bekannt. Die späteren Versionen hatten mehr Möglichkeiten, wobei die sechste Version sogar über Grafikunterstützung verfügte.

Der Compiler, den Infocom zur Erstellung ihrer Story-Files verwendete (Zilch genannt), wurde niemals veröffentlicht, auch wenn die Dokumentation der verwendeten Sprache (ZIL für Zork Implementation Language) noch immer existiert. Im Mai 1993 veröffentlichte schließlich Graham Nelson die erste Version seines Inform-Compilers, der ebenfalls Z-machine-Dateien erzeugt. Er war es auch, der während der 1990er nach detaillierter Analyse der vorhandenen Infocom-Dateien einen Z-machine-Standard erstellte. Die zu Grunde liegende Programmiersprache Inform ist allerdings wesentlich anders als ZIL. Die meisten Inform-Dateien sind für die Z-machine Version 5 bestimmt.

Inzwischen ist Inform in der Interactive Fiction-Gemeinde sehr beliebt geworden, sodass nun ein großer Teil der Interactive Fiction als Story Files für die Z-machine erstellt wird. Der Wunsch nach der Möglichkeit, immer größere Spieledateien zu erzeugen, veranlasste Graham Nelson, die Versionen 7 und 8 der Z-machine zu erstellen, wobei die Version 7 allerdings nur sehr selten benutzt wird. Auf Grund der Art und Weise, wie Adressen verwendet werden, waren Story Files für die Version 3 mit einer Größe von 128 KB begrenzt. Die Version 5 ermöglichte bereits eine Größe von 256 KB, und die Version 8 ermöglicht sogar Story Files mit Größen bis zu 512 KB. Diese Größen mögen angesichts der heutigen Verhältnisse im Computerspiele-Sektor klein erscheinen, sind aber im Fall von Text-Adventures selbst bei der Erstellung von sehr großen Spielen ausreichend.

Inhaltsverzeichnis

Interpreter

Heute gibt es Z-code-Interpreter für eine breite Auswahl von Computer-Plattformen. Beliebte Interpreter sind Nitfol und Frotz.

Nitfol

Nitfol verwendet die Programmierschnittstelle GLK und unterstützt die Versionen 1 bis 8 der Z-machine, inklusive der grafischen Version 6. Spielstände werden im Quetzal-Format abgespeichert. Binärdateien existieren derzeit für verschiedenste Betriebssysteme, darunter Macintosh, Linux, MS-DOS und Windows.

Frotz

Frotz auf einem iPhone mit dem Spiel Zork

Frotz ist eine weitere Implementation der Z-machine und vielleicht auch die bekannteste und beliebteste. Frotz ist eine der frühesten (wenn auch nicht die erste) nicht durch Infocom erfolgten Umsetzungen. Die erste Version - von Stefan Jokisch herausgegeben - stammt aus dem Jahr 1995. Frotz wurde in der gut portierbaren Programmiersprache C erstellt, was die Portierung der ursprünglichen DOS-Version auf die meisten modernen Computer-Systeme ermöglicht, darunter nicht nur Unix und Windows, sondern sogar Palmtops und Mobiltelefone. Inzwischen wurden verschiedene Erweiterungen hinzugefügt, darunter solche für Sound-Effekte und Grafik.

2002 übernahm David Griffith die Verantwortung für den grundlegenden Code von Frotz. Zu dieser Zeit wurde die Codebasis klar getrennt, und zwar zwischen dem Code für die virtuelle Maschine und jenem für die Benutzerschnittstelle. Dadurch wurde die virtuelle Maschine völlig unabhängig von der Benutzerschnittstelle, was die Programmierung von einigen der ausgefalleneren Portierungen von Frotz ermöglichte. Dazu gehört eine, bei der eine Frotz-Version von einem Instant Messenger umgeben ist, sodass nun die meisten Z-machine-Spiele mit einem Instant Messenger gespielt werden können.

Weblinks


Wikimedia Foundation.

Игры ⚽ Поможем написать курсовую

Schlagen Sie auch in anderen Wörterbüchern nach:

  • MACHINE — La machine est une réalité technique qui joue un rôle dans la production, mais c’est aussi une réalité humaine et sociale qui a des effets profonds sur la vie matérielle des hommes, sur l’organisation du travail et les rapports sociaux. Ce… …   Encyclopédie Universelle

  • machine tool — machine tooled, adj. a power operated machine, as a lathe, used for general cutting and shaping of metal and other substances. [1860 65] * * * Stationary, power driven machine used to cut, shape, or form materials such as metal and wood. Machine… …   Universalium

  • Machine Asynchrone — 8 kW La machine asynchrone, connue également sous le terme « anglo saxon » de machine à induction, est une machine électrique à courant alternatif sans connexion entre le stator et le rotor. Les machines possédant un rotor « en… …   Wikipédia en Français

  • Machine asynchrone — de 8 kW. La machine asynchrone, connue également sous le terme « anglo saxon » de machine à induction, est une machine électrique à courant alternatif sans connexion entre le stator et le rotor. Les machines possédant un rotor… …   Wikipédia en Français

  • Machine Robo Rescue — 出撃!マシンロボレスキュー (Shutsugeki! Mashin Robo Resukyū) Genre Adventure, Mecha TV anime Directed by Hideki Sonoda …   Wikipedia

  • Machine De Turing — Pour les articles homonymes, voir Turing (homonymie). Une machine de Turing est un modèle abstrait du fonctionnement des appareils mécaniques de calcul, tel un ordinateur et sa mémoire, créé par Alan Turing en vue de donner une définition précise …   Wikipédia en Français

  • Machine de turing — Pour les articles homonymes, voir Turing (homonymie). Une machine de Turing est un modèle abstrait du fonctionnement des appareils mécaniques de calcul, tel un ordinateur et sa mémoire, créé par Alan Turing en vue de donner une définition précise …   Wikipédia en Français

  • Machine electrostatique — Machine électrostatique Grande machine électrostatique de Van Marum au Teylers Museum, Hollande. À droite, batterie de bouteilles de Leyde. La machine électrostatique est ainsi nommée parce qu elle fait appel aux lois de l électrostatique à la… …   Wikipédia en Français

  • Machine Électrostatique — Grande machine électrostatique de Van Marum au Teylers Museum, Hollande. À droite, batterie de bouteilles de Leyde. La machine électrostatique est ainsi nommée parce qu elle fait appel aux lois de l électrostatique à la différence des machines… …   Wikipédia en Français

  • machine-outil — machine [ maʃin ] n. f. • XIVe; lat. machina « invention, engin » I ♦ Vx Ruse, machination. II ♦ (1559) Objet fabriqué, généralement complexe (⇒ mécanisme), destiné à transformer l énergie (⇒ moteur), et à utiliser c …   Encyclopédie Universelle

  • machine-transfert — machine [ maʃin ] n. f. • XIVe; lat. machina « invention, engin » I ♦ Vx Ruse, machination. II ♦ (1559) Objet fabriqué, généralement complexe (⇒ mécanisme), destiné à transformer l énergie (⇒ moteur), et à utiliser c …   Encyclopédie Universelle

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”