Современные компьютеры и современные браузеры достигли серьезных высот производительности. Лет десять назад интерактивное веб-приложение казалось чудом, а теперь на JavaScript пишут не только игры или, скажем, графические редакторы, но даже эмуляторы старых компьютеров. Мы выбрали несколько наиболее интересных эмуляторов, которые порадуют любителей старины и всех, кто интересуется историей вычислительной техники.

 

JSMESS


MESS (Multi Emulator Super System, часть проекта MAME) — один из старейших эмуляторов домашних компьютеров, игровых приставок и научных калькуляторов. Отличается он тем, что поддерживает не один процессор или архитектуру, а около 250 разных систем. JSMESS — это порт MESS на JavaScript, разработанный Джейсоном Скоттом по заказу Internet Archive. JSMESS доступен на archive.org вместе с внушительным каталогом игр и софта для разных старинных платформ. Интересно, что для эмуляции PC в качестве прослойки тут используется DOSBox. Но если это и сказывается на производительности, то незначительно: можешь хоть сейчас погонять в Prince of Persia, и работать он будет не хуже, чем когда-то на «двушке» у папы на работе.

 

PCjs


PCjs — это семейство эмуляторов старых процессоров, среди которых Intel 8080, x86, PDP-11 и одна из реализаций MOS 6502. На главной странице pcjs.org есть интересная подборка готовых конфигураций и образов, в том числе виртуалки с MS-DOS, PC-DOS, OS/2 и даже Windows. Windows 95 нам загрузить не удалось, а вот Windows 3.11 медленно, но завелась. Запустив одну из машин, не забудь заглянуть в список доступных образов дисков — там можно обнаружить подборки редкого софта и операционок (к примеру, Minix и SCO Xenix). Как вариант — можешь загрузить свой образ диска или дискеты в формате IMG.

 

PCE.js


Этот родственник PCjs отличается тем, что, помимо x86, эмулирует Mac Plus и Atari ST. Интереснее всего, пожалуй, демонстрация Mac OS System 7 — и не только потому, что автор не поленился добавить картинку с классическим «Макинтошем». По скорости работы система чуть ли не превосходит оригинал, а на диске HD 2 находится несколько папок с программами и играми. На том же сайте есть эмулятор IBM PC/XT с приложенными к нему демками Monkey Island, Civilization и Wolfenstein 3D.

 

Javatari


Если говорить о браузерных эмуляторах Atari, то Javatari — это, наверное, лучший из них. Он, в частности, используется на сайте Virtual Atari, где собрана коллекция из 550 игр. Если же ты вдруг захочешь развлечься программированием на ассемблере для Atari 2600 или просто решишь полюбопытствовать, как раньше делали игры, то обязательно загляни на сайт 8bitworkshop.com: он на одной странице позволяет править исходники и наблюдать за изменениями.

 

Virtual x86


Шумиха вокруг браузерных эмуляторов начала набирать обороты в 2011 году, когда Фабрис Беллар запустил проект JSLinux — эмулятор ПК с Linux, который работает на его домашней страничке. С тех пор идею Беллара неплохо развили: проект Virtual x86 предлагает на выбор список из семи дистрибутивов UNIX и Linux, а также Windows 1.01, Windows 95 и 98, Kolibri OS и Oberon. В отличие от PCjs, этот эмулятор не пытается стартовать Windows с нуля и ограничивается загрузкой образа оперативной памяти. Даже для Windows 98 это всего 12 Мбайт, так что процесс идет быстро. Увы, все операционки максимально урезаны и не имеют подключения к интернету.

 

Эмуляторы ZX Spectrum

Игра Ugh в jBacteria
Игра Ugh в jBacteria

Для тех, кто родился в СССР, компьютерная ностальгия часто связана с ZX Spectrum. Пока что лучший браузерный эмулятор «Спектрума» из того, что нам попадалось, — это уже упомянутый JSMESS. Помимо него, существуют JSSpeccy, Qaop, jBacteria и еще несколько, но каждый из них — со своими причудами (загрузка файлов, звук, управление — редкий случай, когда не подводит ничего из этого). Ну и конечно, всегда можно махнуть рукой на браузер и скачать старый добрый Fuse.

 

Прочее

Раз в браузере работает даже Windows 98, значит, нет никаких преград, которые бы помешали запихнуть туда все, что появилось до него. И это активно делают. В наш небольшой обзор не вошли эмулятор NES с парой десятков приложенных игр, эмулятор «Радио-86РК» и многие другие. Неплохой список ты можешь найти на сайте Фредерика Кембуса и экспериментировать самостоятельно. Там, в частности, есть ссылки на эмуляторы совсем уж старинных машин вроде Z1, UNIVAC и даже разностной машины Бэббиджа.

Подробнее о том, как создают браузерные эмуляторы, читай в статье «Байт из других миров. Как ретрокомпьютеры эмулируют на JavaScript».



1 комментарий

Подпишитесь на ][, чтобы участвовать в обсуждении

Обсуждение этой статьи доступно только нашим подписчикам. Вы можете войти в свой аккаунт или зарегистрироваться и оплатить подписку, чтобы свободно участвовать в обсуждении.