máquina Z | |
---|---|
Desarrollador | infocom |
Profundidad de bits | dieciséis |
presentado | 1979 |
Versiones | 1.1 (2014) |
Arquitectura | CISC |
Orden de bytes | Grande |
¿abierto? | Sí |
La máquina Z es una máquina virtual desarrollada por Joel Berez y Mark Blank 1979 y utilizada por Infocom para juegos de aventuras de texto . Con la ayuda de un compilador especializado, el código fuente del juego se compiló en los llamados "archivos de historia" o "archivos de código Z", que contenían instrucciones binarias para la máquina Z, lo que hizo posible trasladar los juegos a una nueva plataforma. simplemente escribiendo una máquina Z para esta plataforma. Con una gran cantidad de sistemas informáticos domésticos incompatibles en ese momento, esta fue una ventaja importante sobre el uso de código nativo o el desarrollo de un compilador para cada sistema por separado.
La letra "Z" es la primera letra del nombre Zork , el primer juego de aventuras lanzado por Infocom. De acuerdo con la convención moderna, los archivos de historial generalmente tienen las extensiones .Z1, .Z2, Z3, .Z4, Z5, Z6, .Z7 o .Z8, donde el número es el número de versión de la máquina Z para la cual el archivo de historial se pretende. Además, el primer byte en el archivo de historial también denotaba la versión [1] , sin embargo, los archivos de historial originales creados por Infocom tenían las extensiones .DAT (del inglés data , data) y .ZIP (del inglés Z-machine Interpreter Program ). .
En la historia del desarrollo, Infocom ha creado seis versiones de la máquina Z, con la mayor cantidad de juegos lanzados por el estudio para la tercera versión. Las versiones posteriores tenían más funciones, como juegos que usaban la versión seis que admitía gráficos.
El compilador llamado Zilch que se usó para crear los archivos históricos nunca se ha publicado, aunque la documentación de ZIL (lenguaje de implementación de Zork) se ha escrito bajo una licencia abierta [ 2] . Tras la adquisición de Infocom por parte de Activision , Computer Gaming World anunció que "ZIL [...] está funcionalmente muerto" e informó sobre rumores de un "parser completamente nuevo que quizás nunca se use" [3] . En mayo de 1993, Graham Nelson lanzó la primera versión de un compilador para su lenguaje Inform , que genera archivos para la máquina Z, aunque el lenguaje Inform es diferente de ZIL.
Informar se ha vuelto popular en el ámbito de la literatura interactiva . Gran parte de la ficción interactiva estaba en los archivos de la máquina Z. La demanda de la capacidad de crear archivos de juegos grandes llevó a Nelson a crear una especificación para las versiones séptima y octava de la máquina Z, aunque la versión 7 rara vez se usaba. Debido a las diferentes direcciones de archivos, los archivos de historial de la versión 3 pueden tener un tamaño de hasta 128 KB, la versión 5 admite hasta 256 KB y la versión 8 puede tener un tamaño de hasta 512 KB. Si bien estas dimensiones pueden parecer pequeñas según los estándares informáticos actuales, para las aventuras basadas en texto son lo suficientemente grandes como para desarrollar juegos complejos.
En la década de 1990, Nelson desarrolló el estándar Z-machine [4] basado en un análisis detallado de los archivos de Infocom existentes.
Los intérpretes de archivos de código Z están disponibles en varias plataformas. El sitio web de Inform proporciona enlaces a intérpretes para 15 sistemas operativos (incluidos microordenadores de 8 bits de la década de 1980, como Apple II , TP-80 y ZX Spectrum , así como para Unix y Windows), 10 sistemas operativos móviles (incluido Palm OS y Game Boy ), y para tres intérpretes multiplataforma ( Emacs , Java y JavaScript ). Según Nelson, es "quizás la máquina virtual más portátil jamás creada" [5] .
Los intérpretes populares son Nitfol y Frotz. Nitfol utiliza la API Glk y es compatible con las versiones 1 a 8, incluida la versión 6 con gráficos. Los archivos guardados se almacenan en formato Quetzal. Los archivos binarios están disponibles para varios sistemas operativos diferentes , incluidos macOS , Linux , DOS y Windows . [6]
Otro cliente popular para macOS es Zoom. Admite el mismo formato Quetzal, pero la estructura de archivos es diferente. [7]
Frotz fue escrito en C por Stefan Jokisch en 1995 para DOS. Se ha portado con el tiempo a otras plataformas como Unix , RISC OS , macOS e iOS . [8] Se admitieron efectos de sonido y gráficos en diversos grados. En 2002, el desarrollo se estancó y David Griffith se hizo cargo del programa. El código de la máquina virtual y la interfaz de usuario se ha separado para que la máquina virtual sea independiente de cualquier interfaz de usuario. Esto hizo posible crear más variaciones para portar Frotz. Una de las adaptaciones más extrañas también fue una de las más simples: un bot de mensajería instantánea envuelto alrededor de Frotz con una capacidad mínima de E/S , con el que puedes jugar juegos de Z-machine a través de un cliente de mensajería instantánea. [9]