pico-xt — старая добрая PC/XT на Мурмуляторе

Эмуляторов IBM PC/XT в сети навалом, но для Мурмулятора (https://murmulator.ru) пока есть только один: https://github.com/xrip/pico-xt.

Вопросы на тему «Зачем вообще нужен этот ваш мурмулятор?» мы тут обойдём, т.к. данное устройство относится к разряду «хобби», и по уровню полезности можно сравнивать только с такими же хобби, как собирание марок или монет. Хотя, некоторые умудряются включить сборку Мурмулятора своими руками в работу радио-кружка. Но это — другая история.

IBM PC/XT эмулятор (pico-xt) на Мурмуляторе

IBM PC/XT эмулятор (pico-xt) на Мурмуляторе

ам эмулятор не придерживается строгих стандартов и просто пытается вытянуть всё, что можно из достаточно ограниченных возможностей микроконтроллера RP2040 (на котором и построен Мурмулятор). Например, эмуляция процессора реализует часть команд, добавленных только в процессор 80186 или даже 80286, поэтому часть утилит определяю его некорректно:

Norton Utilities на pico-xt - О системе

Norton Utilities на pico-xt — О системе

CheckIt на pico-xt - бенчмарк

CheckIt на pico-xt — бенчмарк

RP2040 содержит всего 264 КБ памяти, поэтому для pico-xt реализован swap-файл, который позволяет расширить доступную для ДОС память до 640 КБ, дополнительно реализована эмуляция EMS (LIM 4.0):

CheckIt на pico-xt - тест памяти

CheckIt на pico-xt — тест памяти

Реализация XMS в pico-xt недоступна, т.к. для нормальной реализации требует процессора минимум 80386, но некоторая обрезанная XMS логика в эмуляторе присутствует, что позволяет DOS адресовать HMA и UMB.

MS DOS 6.22 результат команды mem

MS DOS 6.22 результат команды mem

Norton Utilities на pico-xt (XMS)

Norton Utilities на pico-xt (XMS)

У владельцев Мурмулятора v1.4, или Мурмулятора с навесной PSRAM, своп не включается, а задействуется внешняя память.

Производительность в режиме swap

Производительность в режиме swap

Производительность с подключеной PSRAM

Производительность с подключеной PSRAM

VGA и EGA режимы на pico-xt поддерживаются крайне ограничено (мало памяти в микроконтроллере) и 90% игрушек в них работать не будет, хотя, некоторые утилиты и определят наличие соответствующего видеоадаптера, а стандартные для PC/XT MDA и CGA крайне убоги. Но! Разработчик прошивки предусмотрел поддержку TGA, поддержку которой, в свою очередь, имеют почти все игры тех лет, например, культовый Принц Персии:

Принц Персии на pico-xt (TGA)

Принц Персии на pico-xt (TGA)

Принц Персии на pico-xt

Принц Персии на pico-xt

Со звуком в pico-xt тоже всё в порядке — эмулируются AdLib, Tandy Sound и Disney Sound Source. Т.е. игрушки, которые шли на Tandy 1000 (клоне ХТ) пойдут и на эмуляторе. Поддержки Sound Blaster’ов пока не завезли ((.

Wolf 3D тоже вполне можно запустить (wolf3d tandy), и он даже относительно играбелен:

Wolf 3D на pico-xt

Wolf 3D на pico-xt

Секрет Острова Обезьян на pico-xt

Секрет Острова Обезьян на pico-xt

Для фанатов CP/M — её тоже можно запустить на pico-xt:

CP/M-86 ver.1.1 на pico-xt

CP/M-86 ver.1.1 на pico-xt

Последняя версия эмулятора доступна тут: https://github.com/xrip/pico-xt/releases

Сам Мурмулятор: https://murmulator.ru/types

Пишите вопросы ниже, буду рад ответить, а возможно, что и ещё статью напишу…

© Habrahabr.ru