atari800 — Atari 800 – 65XE… на Мурмуляторе

в 17:51, , рубрики: atari, Atari 2600, Atari 800XL, atari st, atari will be back!, murmulator, pi pico, мурмулятор

Для Атари на Мурмуляторе имеются целых три разных эмулятора: Atari 2600, Atari 800 и Atari Lynx.

atari800 на Мурмуляторе

atari800 на Мурмуляторе

Первый ограничен исполнением только ROM-файлов для приставки Атари 2600, последний - это очень простенький хэндхэлд, который мало распространён на просторах бывшего Союза, поэтому сосредоточимся на среднем, который теоретически эмулирует Atari 400, 800, 1200XL, 600XL, 800XL, 65XE, 130XE, 800XE, XE Game System и 5200 SuperSystem.

Реализация для Мурмулятора основана на эмуляторе https://github.com/atari800/atari800 - который легко собирается под Линукс. Т.е. основная проблема - ограниченные ресурсы маленького RP2040. Конечно, пришлось повозиться, но удалось запихнуть всё необходимое, как минимум для вариантов оригинального компьютера с 48 КБ памяти. Дополнительные 16 КБ включаются, только если на Мурмуляторе установлена PSRAM, т.к. иначе всё не влезало.

Подключение дополнительной памяти типа Mosaic

Подключение дополнительной памяти типа Mosaic

Теоретически эмулятор поддерживает множество разных видов Атари:

atari800 — Atari 800 - 65XE… на Мурмуляторе - 3

Но больше половины из них никогда даже не тестировалось на Мурмуляторе из-за банального непонимания, чем они там внутри отличаются (кроме объёма памяти), как это должно проявляться, и какое поведение соответствует оригиналу, а что является багом.

Первое, что завелось легко и просто - Atari MEMO PAD:

Atari MEMO PAD
Atari MEMO PAD

Чуток повозившись, запустил и комплектный бейсик:

Atari Basic

Atari Basic

Дальше - больше... поддержка запуска файлов-игр:

Выбор файла для загрузки

Выбор файла для загрузки
atari800 — Atari 800 - 65XE… на Мурмуляторе - 7
АтA-Zone

АтA-Zone

Естественно, остался и способ запуска ROM-картриджей (файлов-имеджей)

Запуск ROM-картриджей

Запуск ROM-картриджей

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

Настройки звука

Настройки звука

Эмулятор поддерживает пару Денди-8 или Wii джойстиков, клавиатуру, вывод в режиме VGA с эмуляций PAL и NTSC (разное число строк) оригинального устройства. При желании, его можно ещё долго улучшать, добавлять эмуляцию дисководов, магнитофонный вход и прочую периферию, но имеющийся результат уже приемлемый, а лучшее - враг хорошего.

Атари - это отдельный мир, почти такой же большой, как Эппл, но ещё более отдельный )) И, благодаря опыту портирования atari800 на Мурмулятор, я с ним немного глубже познакомился.

Релизы тута: https://github.com/DnCraptor/atari800/releases

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

Пишите свои вопросы и пожелания, на вопросы отвечу, пожелания учту...

Автор: mikeveng73

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js