Z-기계

Z-machine
Z-기계
디자이너인포콤
비트16
소개했다1979
버전1.1 (2014)
디자인CIC
엔디안니스
개방하다

Z머신은 1979년 조엘 베레즈와 마크 블랭크가 개발해 인포콤텍스트 어드벤처 게임에 사용한 가상 머신이다.인포콤은 게임 코드를 Z-머신 명령어(이야기 파일 또는 Z-코드 파일이라고 함)가 포함된 파일로 컴파일하여, 단순히 그 플랫폼에 대한 Z-머신 구현을 작성함으로써 문자 어드벤처를 새로운 플랫폼에 포팅할 수 있었다.당시 양립할 수 없는 가정용 컴퓨터 시스템이 많이 사용되고 있는 상황에서 이는 기본 코드를 사용하거나 각 시스템에 대한 컴파일러를 개발하는 것에 비해 중요한 장점이었다.

역사

Z 머신의 "Z"는 인포콤의 첫 번째 모험 게임인 조크를 의미한다.Z-코드 파일에는 보통 .z1, .z2, .z3, .z4, .z5, .z6, .z7 또는 .z8로 끝나는 이름이 있는데, 여기서 번호는 스토리 파일의 첫 번째 바이트에서 주어진 대로 파일을 실행할 Z-머신의 버전 번호다.[1]

그러나 이것은 현대적인 관습이다.Infocom 자체는 .dat(데이터)과 .zip(ZIP = Z-머신 인터프리터 프로그램)의 확장을 사용했지만, 후자는 PKZ를 위한 .zip의 광범위한 사용과 충돌했다.액티비전(Activision)이 인포콤을 닫은 후 1990년대에 시작된 IP 호환 아카이브 파일.인포콤은 Z-머신을 6가지 버전으로 제작했다.버전 1과 버전 2를 사용하는 파일은 매우 드물다.인포콤이 공개한 버전 1 파일은 2개뿐이고 버전 2는 2개뿐인 것으로 알려졌다.버전 3은 인포콤이 출시한 게임의 대부분을 다루고 있다.이후 버전에서는 더 많은 기능이 제공되어 버전 6의 그래픽 지원이 절정에 달했다.

인포콤이 스토리 파일을 제작할 때 사용한 컴파일러(Zilch라고 함)는 사용된 언어(ZILMDL과 유사한 Lisp-family language)의 문서화가 여전히 존재하며[2] 오픈소스 대체물이 작성되어 있지만 공개된 적이 없다.1989년 메디게닉이 인포콤을 캘리포니아로 옮긴 뒤 컴퓨터 게이밍월드는 "ZIL은 기능적으로 죽었다"고 밝히며 "사용할 수 없는 완전히 새로운 파서"라는 루머를 보도했다.[3]1993년 5월 그레이엄 넬슨은 정보 소스 언어가 ZIL과 상당히 다르지만 Z-머신 스토리 파일도 출력물로 생성하는 자신의 정보 컴파일러의 첫 버전을 발표했다.

정보는 대화형 픽션 커뮤니티에서 인기를 끌었다.대화형 픽션의 많은 부분이 Z-머신 스토리 파일 형식이다.더 큰 게임 파일을 만들 수 있는 능력에 대한 요구로 넬슨은 버전 7은 거의 사용되지 않지만 Z-머신의 버전 7과 8을 지정하게 되었다.주소 처리 방식 때문에 버전 3층 파일의 길이는 최대 128K, 버전 5층 파일의 길이는 최대 256K, 버전 8층 파일의 길이는 최대 512k이다.오늘날의 컴퓨터 표준으로 볼 때 이러한 크기는 작아 보일 수 있지만, 텍스트만 있는 모험의 경우, 이것들은 정교한 게임을 하기에 충분히 크다.

1990년대에 넬슨은 기존의 인포콤 파일에 대한 상세한 연구를 바탕으로 Z-Machine Standard를[4] 작성했다.

통역관

Froz가 아이폰에서 Zork I을 재생하는 구현.

Z코드 파일용 통역기는 다양한 플랫폼에서 이용할 수 있다.Information 웹사이트에는 15개의 데스크톱 운영 체제(애플 II, TRS-80, ZX Spectrum 등 1980년대 8비트 마이크로컴퓨터 포함, "유닉스"와 "윈도우즈"를 각각 하나로 묶음), 10개의 모바일 운영 체제(팜 OS게임 보이 포함), 4개의 통역 플랫폼(이맥스, 자바,)에 대한 링크가 나열되어 있다.JavaScript 및 Scratch).넬슨에 따르면, 그것은 "아마도 지금까지 만들어진 것 중 가장 휴대용 가상 머신일 것이다"[5]라고 한다.

인기 있는 통역사는 니트폴과 프로츠를 포함한다.Nitfol은 Glk API를 사용하며 버전 6 그래픽 Z-머신을 포함하여 Z-머신의 버전 1~8을 지원한다.저장 파일은 표준 Quetzal 저장 형식으로 저장된다.바이너리 파일은 클래식한 Mac OS, Unix 유사 시스템, DOSWindows를 포함한 여러 운영 체제에서 사용할 수 있다.[6]

프로츠는 1995년 스테판 요키쉬가 도스(DOS)를 위해 C로 썼다.시간이 지남에 따라 유닉스 유사 시스템,[7] RISC OS, [8]iOS와 같은 다른 플랫폼에 포팅되었다.[9]음향 효과와 그래픽은 다양한 수준으로 지원되었다.2002년까지 개발이 중단되었고 그 프로그램은 데이비드 그리피스에 의해 채택되었다.코드 기반이 가상 시스템사용자 인터페이스 부분 간에 분할되어 가상 시스템이 사용자 인터페이스로부터 독립적으로 되었다.이것은 프로츠를 포팅하는 데 있어 더 많은 다양성을 허용했다.낯선 포트들 중 하나는 가장 간단한 것 중 하나이기도 하다. 즉석 메시징봇은 최소한의 입출력 기능을 갖춘 프로츠 버전으로 감싸져 있어서 인스턴트 메시징 클라이언트를 사용하여 대부분의 Z-머신 게임을 즐길 수 있는 봇을 만든다.[10]

다른 인기 있는 MacOS 및 기타 Unix 유사 시스템 클라이언트로는 Zoom이 있다.동일한 Quetzal 저장 형식을 지원하지만 파일 구조의 패키징은 다르다.[11]

참고 항목

  • Glux – Z-machine과 유사하지만 몇 가지 기존 제한 사항을 완화
  • 알림 – Z-머신 프로그램을 생성할 수 있는 컴퓨터 언어
  • SCUMM – Z-머신과 유사한 그래픽 시스템인 LucasArts의 Managine Mansel을 위한 스크립트 작성 유틸리티
  • TADS – Glulx와 마찬가지로 일부 제한 사항을 해결하기 위해 제작됨
  • Motorola 68000 시리즈Magnetic Scrolls의 모험 게임에서 가상 머신에 사용되는 기본 아키텍처

참조

  1. ^ "The Z-Machine Standards Document". inform-fiction.org. Retrieved 26 March 2018.
  2. ^ McGrew, Jesse. "ZILF". zilf.io. Retrieved 22 November 2020.
  3. ^ "Inside the Industry: Infocom's West Coast Move Stirs Controversy". Computer Gaming World. No. 63. September 1989. p. 10.
  4. ^ "Inform - ZMachine - Standards". inform-fiction.org. Retrieved 26 March 2018.
  5. ^ Nelson, Graham. "About Interpreters". Inform website. Retrieved 2009-11-07.
  6. ^ "if-archive/infocom/interpreters/nitfol". Retrieved 2016-10-29.
  7. ^ "Frotz README file on Gitlab". Retrieved 2019-02-19.
  8. ^ "The RISC OS Frotz Home Page". 1999-09-18.
  9. ^ "Frotz on the App Store". App Store.
  10. ^ "Frotz DUMB file on Gitlab". Retrieved 2019-02-19.
  11. ^ "Logical Shift Zoom". Retrieved 2016-10-29.

외부 링크