Участник:Nikita22007/Z-machine

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
Z-machine
Разработчик Infocom
Разрядность 16
Представлена 1979
Версии 1.1 (2014)
Архитектура CISC
Порядок байтов Big
Открытая? Yes

В Z-машина - это виртуальная машина , которую разработали Джоэль Берез и Марк бланк в 1979 году и используемая компанией Инфоком для текстовых приключенческих игр. Инфоком компилировали код игры в файлы, содержащие инструкции для Z-машины (они назывались "Файлы с историями"(story files) файлов или "Z-код файлы"(Z-code files)) что позволяло  портировать текстовые приключения на новую платформу просто написав Z-машину для этой платформы. С большим количеством несовместимых домашних компьютерных систем в то время, это являлось важным преимуществом по сравнению с использованием нативного кода или разработкой компилятора для каждой системы  отдельно.

Буква "Z" является  первой буквой названия Zork, первой  приключенческой игры, выпущенной компанией Инфоком . Z-code файлы обычно имеют названия, заканчивающиеся на .Z1, .Z2,  Z3, .Z4, Z5,  Z6, .Z7, либо .Z8, где цифра-это номер версии Z-машины, для которой предназначен файл с историей. Также первый байт в файле с историей тоже обозначал версию.[1]

Это современный конвенции. Сама Инфоком используемые расширения .DAT (данные) и .zip (зип = Z-машины программа переводчик), но последние столкнулись с широким применением .ZIP для архиваторами pkzip-совместимый архиве файлов начиная с 1990-х годов, после того, как Activision закрытые Инфоком. Инфоком выпустили шесть версий Z-машины. Файлы для версий 1 и 2 являются очень редкими. Всего две игры для  1 и две для версии 2. Версия 3 охватывает большинство выпущенных игр. Более поздние версии имели больше возможностей, так например игры, использующие версию шесть, поддерживали графику .

Компилятор (назывался Zilch), который Инфоком использовали для того,чтобы создать файл с рассказом, никогда не был выпущен, хотя была написана документация языка (ZIL) под open-source лицензией[2] . После Mediagenic Инфоком переехал в Калифорнию в 1989 году, журнал компьютерные игры заявил, что "ЗИЛ ... функционально мертв", и сообщил слухи о "совершенно новом парсере, который никогда не будет использован".[3] В мае 1993 года, Грэм Нельсон выпустил первую версию компилятора для своего языка Inform, который генерирует файлы для Z-машины, даже несмотря на то, язык Inform отличается от ZIL.

Inform стал популярным в сфере интерактивной литературы. Большая часть интерактивной фантастики было в файлах для Z-машины. Спрос на возможность создания больших игровых файлов подтолкнул Нельсона на создание специфичных 7 и  8 версий Z-machine, хотя версия 7 используется редко. Из-за различных способов адресации  Story file для версии 3 может быть объемом до 128 КБ, версия 5 поддерживает до 256 КБ, а на  версии 8 файл может быть размером до 512 КБ. Хотя эти размеры могут показаться незначительными по сегодняшним стандартам вычислительной техники, для текстовых приключений они достаточно велики для разработки замысловатых игр.

В 1990-х годах, Нельсон разработал Z-machine стандартОшибка в сносках?: Неправильный вызов: ключ не был указан на основе детального анализа существующих Инфоком файлов.

Интерпретаторы

[править | править код]
Интерпретатор Frotz для Iphone с запущенным Zork I.

Интерпретаторы для Z-code файлов доступны на различных платформах. На сайте Информа приведены ссылки на интерпретаторы для 15 настольных операционных систем (в том числе 8-разрядная микроЭВМ с 1980-х годов, таких, как Apple II, ТР-80, и Спектрум, а  также для "Unix" и "Windows" ), 10 мобильных операционных систем (включая Palm OS  и Game boy), и для трёх кроссплатформенных интерпретаторов (Emacs, Java и JavaScript). По словам Нельсона, это "возможно, самая портативная виртуальная машина, из когда-либо созданных".Ошибка в сносках?: Неправильный вызов: ключ не был указан

Популярными интерпретаторами являются Nitfol и Акщея. Nitfol использует Glk  API, и поддерживает версии с 1 по 8 Z-machine, включая версию 6 c графической. файлы сохранений хранятся в формате Quetzal. Двоичные файлы доступны для нескольких различных операционных систем, в том числе и для Macintosh, и Linux,DOS, иWindows.Ошибка в сносках?: Неправильный вызов: ключ не был указан

Еще один популярный клиент для Mac (OS Х) - это Zoom. Он поддерживает тот же Quetzal формат, но структура файла разная.Ошибка в сносках?: Неправильный вызов: ключ не был указан

Frotz был написан на языке C Стефаном Джокиш ( Stefan Jokisch) в 1995 году для DOS. Со временем была портирована на другие платформы, такие как Unix, RISC ОС, MACK OС и IOS.Ошибка в сносках?: Неправильный вызов: ключ не был указан Звуковые эффекты и графика поддерживались в той или иной степени. К 2002 году, развитие зашло в тупик и программу взял на доработку Дэвид Гриффит. Код виртуальной машины и пользовательского интерфейса был разделён таким образом, чтобы виртуальная машина стала независимой от любого пользовательского интерфейса. Это дало возможность создавать больше вариаций портов Frotz. Одним из самых странных портов также был и одним из самых простых: бот для обмена мгновенными сообщениями обернут вокруг Frotz с минимальной возможностью ввода-вывода, с которым можно играть в игры для Z-machine через клиент обмена мгновенными сообщениями..Ошибка в сносках?: Неправильный вызов: ключ не был указан

  • Glulx – похож на Z-машину, но снимает некоторые ограничения предыдущих версий.
  • Информ – язык программирования, который может создавать программы для Z-машины.
  • SCUMM –(Script Creation Utility for Maniac Mansion by LucasArts), графическая система, похожая на Z-машину
  • TADS – как Glulx, направлен на решение некоторых из его ограничений
  1. The Z-Machine Standards Document. inform-fiction.org. Дата обращения: 26 марта 2018.
  2. McGrew, Jesse ZILF. Bitbucket.
  3. "Inside the Industry: Infocom's West Coast Move Stirs Controversy", Computer Gaming World, p. 10, September 1989

Внешние ссылки

[править | править код]

[[Категория:Игры Infocom]] [[Категория:Игровые движки]] [[Категория:Виртуальные машины]]