WikiSort.ru - Комьютерные игры

ПОИСК ПО САЙТУ | о проекте
Z-machine
Разработчик Infocom
Разрядность 16
Представлена 1979
Версии 1.1 (2014)
Архитектура CISC
Порядок байтов Big
Открытая? Да

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

История

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

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

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

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

В 1990-х годах, Нельсон разработал стандарт Z-machine[4] на основе детального анализа существующих Инфоком файлов.

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

Интерпретатор Frotz для Iphone с запущенным Zork I.

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

Популярными интерпретаторами являются Nitfol и Frotz. Nitfol использует Glk[en]  API, и поддерживает версии с 1 по 8, включая версию 6 c графикой. файлы сохранений хранятся в формате Quetzal. Двоичные файлы доступны для нескольких различных операционных систем, в том числе и для Macintosh, и Linux,DOS, иWindows.[6]

Ещё один популярный клиент для Mac (OS Х) — это Zoom. Он поддерживает тот же Quetzal формат, но структура файла разная.[7]

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

См. также

  • Glulx[en] — проект, похожий на Z-machine, но снимающий ряд свойственных ей ограничений. Разработан Эндрю Плоткиным[en] в 1999 году. C тех пор был выпущен ряд новых версий, включающих, в частности, поддержку UNICODE. В отличие от 16-битной Z-machine, работает с 32-битным адресным пространством.
  • Информ — язык программирования, который может создавать программы для Z-machine.
  • SCUMM - (Script Creation Utility for Maniac Mansion by LucasArts), графическая система, похожая на Z-machine.
  • 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: 10, September 1989
  4. Inform - ZMachine - Standards. inform-fiction.org. Проверено 26 марта 2018.
  5. Nelson, Graham About Interpreters. Inform website. Проверено 7 ноября 2009.
  6. if-archive/infocom/interpreters/nitfol. Проверено 29 октября 2016.
  7. Logical Shift Zoom. Проверено 29 октября 2016.
  8. Frotz README file on Github. Проверено 29 октября 2016.
  9. Frotz DUMB file on Github. Проверено 29 октября 2016.

Ссылки

Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".

Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.

Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .




Текст в блоке "Читать" взят с сайта "Википедия" и доступен по лицензии Creative Commons Attribution-ShareAlike; в отдельных случаях могут действовать дополнительные условия.

Другой контент может иметь иную лицензию. Перед использованием материалов сайта WikiSort.ru внимательно изучите правила лицензирования конкретных элементов наполнения сайта.

2019-2024
WikiSort.ru - проект по пересортировке и дополнению контента Википедии