Z-machine — це віртуальна машина, яку розробили Джоель Берез і [en] у 1979 році і використовується компанією [ru] для текстових пригодницьких ігор. Інфоком компілювали код гри у файли, які містять інструкції для Z-машини (вони називалися «Файли з історіями» (англ. story files) або «Z-код файли»), що дозволяло перенести ігри на нову платформу, просто написавши Z-machine для цієї платформи. За великої кількості несумісних домашніх комп'ютерних систем в той час, це було важливою перевагою в порівнянні з використанням нативного коду або розробкою компіляторів для кожної системи окремо.
Розробка | |
---|---|
Розрядність | 16 |
Поява | 1979 |
Версія | 1.1 (2014) |
Тип архітектури | CISC |
Порядок байтів | big-endian |
Відкритий дизайн | Так |
Історія
Літера «Z» є першою буквою назви Zork, першої пригодницької гри, випущеної компанією Інфоком. Z-кад файли зазвичай мають назви, що закінчуються на .Z1, .Z2, Z3, .Z4, Z5, Z6, .Z7, або .Z8, де цифра — це номер версії Z-machine, для якої призначений файл з історією. Перший байт у файлі з історією теж позначав версію.
Однак це сучасна домовленість. Сам Інфоком використовував розширення .DAT (від англ. data, дані) і .zip (від англ. Z-machine Interpreter Program), але останнє розширення стало широко застосовуватися архіваторами починаючи з 1990-х років, після того, як Activision закрив Інфоком. Інфоком випустили шість версій Z-machine. Файли для версій 1 і 2 є дуже рідкісними. Всього дві гри для 1 і дві для версії 2. Версія 3 охоплює більшість випущених ігор. Більш пізні версії мали більше можливостей, наприклад ігри, що використовують версію шість, підтримували графіку.
Компілятор (називався Zilch), який Інфоком використовували для того, щоб створити файл з розповіддю, ніколи не був випущений, хоча була написана документація мови (ZIL) під відкритою ліцензією . Після того, як Mediagenic перевів Інфоком у Каліфорнію в 1989 році, журнал Computer Gaming World заявив, що « ZIL … функціонально мертвий», і повідомив чутки про «абсолютно новий парсер, який можливо ніколи не буде використаний». У травні 1993 року, Грем Нельсон випустив першу версію компілятора для своєї мови Inform, який генерує файли для Z-machine, навіть незважаючи на те, що мова Inform відрізняється від ZIL.
Inform став популярним у сфері інтерактивної літератури. Більша частина інтерактивної фантастики була у файлах для Z-machine. Попит на можливість створення великих ігрових файлів підштовхнув Нельсона на створення специфікації сьомої і восьмої версій Z-machine, хоча версія 7 використовується рідко. Через різні способів адресації Story file для версії 3 може бути об'ємом до 128 КБ, версія 5 підтримує до 256 КБ, а на версії 8 файл може бути розміром 512 КБ. Хоча ці розміри можуть здатися незначними за нинішніми стандартами обчислювальної техніки, для текстових пригод вони достатньо великі для розробки хитромудрих ігор.
У 1990-х роках, Нельсон розробив стандарт Z-machine на основі детального аналізу наявних Інфоком-файлів.
Інтерпретатори
Інтерпретатори для Z-code файлів доступні на різних платформах. На сайті Інформу наведено посилання на інтерпретатори для 15 настільних операційних систем (зокрема 8-розрядних мікроеом з 1980-х років, таких, як Apple II, ТР-80, і Спектрум, а також для UNIX і Windows), 10 мобільних операційних систем (включно з Palm OS і Game boy), і для трьох кросплатформених інтерпретаторів (Emacs, Java і JavaScript). За словами Нельсона, це «можливо, найпортативніша віртуальна машина, з будь-коли створених».
Популярними є інтерпретаторами Nitfol і Frotz. Nitfol використовує [en] API, і підтримує версії з 1 по 8, зокрема й версію 6 c графікою. Файли збережень зберігаються у форматі [en]. Двійкові файли доступні для декількох різних операційних систем, зокрема й для Macintosh, Linux, DOS і Windows.
Ще один популярний клієнт для Mac (OS Х) — це Zoom. Він підтримує той же формат Quetzal, але структура файлу інша.
Frotz був написаний мовою Сі Стефаном Джокишем (Stefan Jokisch) у 1995 році для DOS. З часом був портований на інші платформи, такі як Unix, RISC ОС, MACK ОС і IOS. Звукові ефекти і графіка підтримувалися тою чи іншою мірою. До 2002 року, розвиток зайшов у глухий кут і програму взяв на доопрацювання Девід Гріффіт. Код віртуальної машини та користувача інтерфейсу був розділений таким чином, щоб віртуальна машина стала незалежною від будь-якого користувацького інтерфейсу. Це дало можливість створювати більше варіацій для портування Frotz. Одна з найбільш дивних адаптацій також була однією з найпростіших: бот для обміну миттєвими повідомленнями обгорнутий навколо Frotz з мінімальною можливістю (вводу-виводу), з яким можна грати в ігри для Z-machine через клієнт обміну миттєвими повідомленнями.
Див. також
- Glulx — проект, схожий на Z-machine, але знімає ряд властивих їй обмежень. Розроблено Ендрю Плоткіним у 1999 році. З того часу було випущено низку нових версій, що включають, зокрема, підтримку UNICODE. На відміну від 16-бітної Z-machine, працює з 32-бітним адресним простором.
- Inform — мова програмування, якою можна створювати програми для Z-machine.
- [ru] — (Script Creation Utility for Maniac Mansion by LucasArts), графічна система, схожа на Z-machine.
- TADS — як Glulx, спрямований на вирішення деяких з його обмежень.
Примітки
- The Z-Machine Standards Document. inform-fiction.org. Архів оригіналу за 1 лютого 2018. Процитовано 26 березня 2018.
- McGrew, Jesse. ZILF. Bitbucket. Архів оригіналу за 28 листопада 2021. Процитовано 12 серпня 2019.
- Inside the Industry: Infocom's West Coast Move Stirs Controversy, Computer Gaming World, September 1989, с. 10
- Inform - ZMachine - Standards. inform-fiction.org. Архів оригіналу за 18 березня 2018. Процитовано 26 березня 2018.
- Nelson, Graham. About Interpreters. Inform website. Архів оригіналу за 3 грудня 2009. Процитовано 7 листопада 2009.
- if-archive/infocom/interpreters/nitfol. Процитовано 29 жовтня 2016.
- Logical Shift Zoom. Архів оригіналу за 9 серпня 2019. Процитовано 29 жовтня 2016.
- Frotz README file on Github. Архів оригіналу за 19 листопада 2018. Процитовано 29 жовтня 2016.
- Frotz DUMB file on Github. Архів оригіналу за 27 березня 2018. Процитовано 29 жовтня 2016.
Посилання
- The Z-Machine standards document [Архівовано 12 серпня 2019 у Wayback Machine.]
- Learning ZIL (PDF) — посібник з Infocom ZIL, 1989
- Description of ZIP (PDF) Інтерпретатор мови Z (внутрішній документ Infocom), 1989
- Interpreters
- How to Fit a Large Program Into a Small Machine [Архівовано 28 липня 2019 у Wayback Machine.] опис створення і дизайну Z-machine
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Cya stattya pro virtualnu mashinu Infocom Pro generator elektromagnitnih hvil div Z mashina Z machine ce virtualna mashina yaku rozrobili Dzhoel Berez i en u 1979 roci i vikoristovuyetsya kompaniyeyu ru dlya tekstovih prigodnickih igor Infokom kompilyuvali kod gri u fajli yaki mistyat instrukciyi dlya Z mashini voni nazivalisya Fajli z istoriyami angl story files abo Z kod fajli sho dozvolyalo perenesti igri na novu platformu prosto napisavshi Z machine dlya ciyeyi platformi Za velikoyi kilkosti nesumisnih domashnih komp yuternih sistem v toj chas ce bulo vazhlivoyu perevagoyu v porivnyanni z vikoristannyam nativnogo kodu abo rozrobkoyu kompilyatoriv dlya kozhnoyi sistemi okremo Z machineRozrobkaRozryadnist16Poyava1979Versiya1 1 2014 Tip arhitekturiCISCPoryadok bajtivbig endianVidkritij dizajnTakIstoriyaLitera Z ye pershoyu bukvoyu nazvi Zork pershoyi prigodnickoyi gri vipushenoyi kompaniyeyu Infokom Z kad fajli zazvichaj mayut nazvi sho zakinchuyutsya na Z1 Z2 Z3 Z4 Z5 Z6 Z7 abo Z8 de cifra ce nomer versiyi Z machine dlya yakoyi priznachenij fajl z istoriyeyu Pershij bajt u fajli z istoriyeyu tezh poznachav versiyu Odnak ce suchasna domovlenist Sam Infokom vikoristovuvav rozshirennya DAT vid angl data dani i zip vid angl Z machine Interpreter Program ale ostannye rozshirennya stalo shiroko zastosovuvatisya arhivatorami pochinayuchi z 1990 h rokiv pislya togo yak Activision zakriv Infokom Infokom vipustili shist versij Z machine Fajli dlya versij 1 i 2 ye duzhe ridkisnimi Vsogo dvi gri dlya 1 i dvi dlya versiyi 2 Versiya 3 ohoplyuye bilshist vipushenih igor Bilsh pizni versiyi mali bilshe mozhlivostej napriklad igri sho vikoristovuyut versiyu shist pidtrimuvali grafiku Kompilyator nazivavsya Zilch yakij Infokom vikoristovuvali dlya togo shob stvoriti fajl z rozpoviddyu nikoli ne buv vipushenij hocha bula napisana dokumentaciya movi ZIL pid vidkritoyu licenziyeyu Pislya togo yak Mediagenic pereviv Infokom u Kaliforniyu v 1989 roci zhurnal Computer Gaming World zayaviv sho ZIL funkcionalno mertvij i povidomiv chutki pro absolyutno novij parser yakij mozhlivo nikoli ne bude vikoristanij U travni 1993 roku Grem Nelson vipustiv pershu versiyu kompilyatora dlya svoyeyi movi Inform yakij generuye fajli dlya Z machine navit nezvazhayuchi na te sho mova Inform vidriznyayetsya vid ZIL Inform stav populyarnim u sferi interaktivnoyi literaturi Bilsha chastina interaktivnoyi fantastiki bula u fajlah dlya Z machine Popit na mozhlivist stvorennya velikih igrovih fajliv pidshtovhnuv Nelsona na stvorennya specifikaciyi somoyi i vosmoyi versij Z machine hocha versiya 7 vikoristovuyetsya ridko Cherez rizni sposobiv adresaciyi Story file dlya versiyi 3 mozhe buti ob yemom do 128 KB versiya 5 pidtrimuye do 256 KB a na versiyi 8 fajl mozhe buti rozmirom 512 KB Hocha ci rozmiri mozhut zdatisya neznachnimi za ninishnimi standartami obchislyuvalnoyi tehniki dlya tekstovih prigod voni dostatno veliki dlya rozrobki hitromudrih igor U 1990 h rokah Nelson rozrobiv standart Z machine na osnovi detalnogo analizu nayavnih Infokom fajliv InterpretatoriInterpretator dlya Iphone z zapushenim Zork I Interpretatori dlya Z code fajliv dostupni na riznih platformah Na sajti Informu navedeno posilannya na interpretatori dlya 15 nastilnih operacijnih sistem zokrema 8 rozryadnih mikroeom z 1980 h rokiv takih yak Apple II TR 80 i Spektrum a takozh dlya UNIX i Windows 10 mobilnih operacijnih sistem vklyuchno z Palm OS i Game boy i dlya troh krosplatformenih interpretatoriv Emacs Java i JavaScript Za slovami Nelsona ce mozhlivo najportativnisha virtualna mashina z bud koli stvorenih Populyarnimi ye interpretatorami Nitfol i Frotz Nitfol vikoristovuye en API i pidtrimuye versiyi z 1 po 8 zokrema j versiyu 6 c grafikoyu Fajli zberezhen zberigayutsya u formati en Dvijkovi fajli dostupni dlya dekilkoh riznih operacijnih sistem zokrema j dlya Macintosh Linux DOS i Windows She odin populyarnij kliyent dlya Mac OS H ce Zoom Vin pidtrimuye toj zhe format Quetzal ale struktura fajlu insha Frotz buv napisanij movoyu Si Stefanom Dzhokishem Stefan Jokisch u 1995 roci dlya DOS Z chasom buv portovanij na inshi platformi taki yak Unix RISC OS MACK OS i IOS Zvukovi efekti i grafika pidtrimuvalisya toyu chi inshoyu miroyu Do 2002 roku rozvitok zajshov u gluhij kut i programu vzyav na doopracyuvannya Devid Griffit Kod virtualnoyi mashini ta koristuvacha interfejsu buv rozdilenij takim chinom shob virtualna mashina stala nezalezhnoyu vid bud yakogo koristuvackogo interfejsu Ce dalo mozhlivist stvoryuvati bilshe variacij dlya portuvannya Frotz Odna z najbilsh divnih adaptacij takozh bula odniyeyu z najprostishih bot dlya obminu mittyevimi povidomlennyami obgornutij navkolo Frotz z minimalnoyu mozhlivistyu vvodu vivodu z yakim mozhna grati v igri dlya Z machine cherez kliyent obminu mittyevimi povidomlennyami Div takozhGlulx proekt shozhij na Z machine ale znimaye ryad vlastivih yij obmezhen Rozrobleno Endryu Plotkinim u 1999 roci Z togo chasu bulo vipusheno nizku novih versij sho vklyuchayut zokrema pidtrimku UNICODE Na vidminu vid 16 bitnoyi Z machine pracyuye z 32 bitnim adresnim prostorom Inform mova programuvannya yakoyu mozhna stvoryuvati programi dlya Z machine ru Script Creation Utility for Maniac Mansion by LucasArts grafichna sistema shozha na Z machine TADS yak Glulx spryamovanij na virishennya deyakih z jogo obmezhen PrimitkiThe Z Machine Standards Document inform fiction org Arhiv originalu za 1 lyutogo 2018 Procitovano 26 bereznya 2018 McGrew Jesse ZILF Bitbucket Arhiv originalu za 28 listopada 2021 Procitovano 12 serpnya 2019 Inside the Industry Infocom s West Coast Move Stirs Controversy Computer Gaming World September 1989 s 10 Inform ZMachine Standards inform fiction org Arhiv originalu za 18 bereznya 2018 Procitovano 26 bereznya 2018 Nelson Graham About Interpreters Inform website Arhiv originalu za 3 grudnya 2009 Procitovano 7 listopada 2009 if archive infocom interpreters nitfol Procitovano 29 zhovtnya 2016 Logical Shift Zoom Arhiv originalu za 9 serpnya 2019 Procitovano 29 zhovtnya 2016 Frotz README file on Github Arhiv originalu za 19 listopada 2018 Procitovano 29 zhovtnya 2016 Frotz DUMB file on Github Arhiv originalu za 27 bereznya 2018 Procitovano 29 zhovtnya 2016 PosilannyaThe Z Machine standards document Arhivovano 12 serpnya 2019 u Wayback Machine Learning ZIL PDF posibnik z Infocom ZIL 1989 Description of ZIP PDF Interpretator movi Z vnutrishnij dokument Infocom 1989 Interpreters How to Fit a Large Program Into a Small Machine Arhivovano 28 lipnya 2019 u Wayback Machine opis stvorennya i dizajnu Z machine