Zork запустился на процессоре Intel 4-битных компьютеров
Классическая игра на старейших компьютерах
Прежде чем DOOM стал доступен на любом вычислительном устройстве, игра, которая могла быть запущена на любом компьютере до эры DOOM, это была Zork. Эта текстовая приключенческая игра была впервые опубликована в конце 1970-х годов и могла работать на многих платформах благодаря виртуальной машине, которая интерпретировала код игры. Это позволило программистам разрабатывать новую виртуальную машину для каждой платформы, а не портировать игру каждый раз.
Пользователь [smbakeryt] захотел посмотреть, насколько далеко можно продвинуть этот дизайн, и успешно запустил эту классическую игру на одном из старейших компьютеров, когда-либо произведенных. Компьютер, о котором идет речь, это процессор Intel 4004, первый коммерчески доступный универсальный микропроцессор. Это 4-битная машина, которая появилась примерно за восемь лет до выхода Zork.
Как уже упоминалось, единственное требование, чтобы сделать Zork работоспособным на любой машине, это Z-машина для этой платформы, поэтому [smbakeryt] взялся за работу. Он использует терминал Heathkit H9, и главной ограничивающей составляющей здесь является объем оперативной памяти, необходимой для запуска игры. Ему удалось расширить адресную шину, чтобы увеличить доступную память в оборудовании, но он также смог запустить Z-машину программно с большими усилиями. Существуют несколько слоев программной абстракции, которые довольно удивительны для компьютеров 1970-х годов, но это делает проект весьма интересным вызовом.
Что касается цели [smbakeryt] найти "самую маленькую вычислительную машину", которая могла бы запустить Zork, будет сложно представить что-то, что предшествует 4004 и могло бы обеспечить приемлемый пользовательский опыт. Тем не менее, мы всегда поощряем других оспаривать эту идею и веху, установленную [smbakeryt]. Аналогично, DOOM имеет историю запуска на машинах со спецификациями ниже рекомендуемых минимальных требований, и один из необычных примеров — это успешный запуск на приставке NES.