Искусство эмуляции Atari ST

Автор: (C) Matthias Arndt
Перевод: (C) Иван Песин


Содержание

1 Введение

Я фанат Atari ST. Это был компьютер, который открыл мне новый мир. Эта вещь изменила мою жизнь.

Все те, кто больше любят компьютеры Amiga, пишите свои статьи, а не кричите, что ST - это чепуха.

Что? Вы не знаете что такое ST? Это домашняя и полу-профессиональная компьютерная система конца 80-х, начала 90-х годов, производства Atari. У ST все еще очень много друзей по всему миру. Сообщество пользователей Atari ST очень активно в Сети, особенно в части эмуляции. Посетите сайты "Маленький зеленый экран" (www.atari.st) и www.atari.org, чтобы понять меня.

Внимание в этой статье будет сосредоточено на эмуляции Atari ST под Linux (видимо, подразумевается платформа x86 -- прим. ред.), опишет доступные эмуляторы и предоставит полезную информацию об эмуляции ST вообще.

2 Что такое эмуляция?

Эмуляция пытается изменить поведение и производительность аппаратного обеспечения про помощи программного обеспечения. В сущности, это значит заставить думать ваш ПК, что он другой компьютер с другой аппаратной архитектурой и, в большинстве случаев, с другой ОС. Это все и позволит вам запускать большинство программ, написанных для эмулируемой ОС на вашем ПК.

В нашем случае это означает запуск ПО для Atari ST на линукс-машине.

3 Аппаратное обеспечение

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

(данные относятся к стандартным ST, не TT, Falcon или клонам)

  • Процессор: Motorola 68000 с тактовой частотой 8MHz и 32-битной шиной
  • RAM: 512K, 1MB, 2MB или 4MB (зависит от модели)
  • ROM содержащая ОС: 192K или256K (зависит от модели и версии ОС)
  • Shifter video subsystem, работающая в следующих режимах:
  1. 320x200 пикселей, 16 цветов из 512 (50 или 60Hz)
  2. 640x200 пикселей, 4 цветов из 512 (50 или 60Hz)
  3. 640x400, монохромный режим с частотой 72Hz
  • Звуковой чип Yamaha, с возможностью проигрывания 3 звуков одновременно
  • встроенные MIDI порты (вход и выход)
  • порт ROM для подсоединения картриджа на 128K
  • дополнительно жесткий диск
  • до 2 дисководов, SD или DD
  • последовательный и параллельный порты
  • мышь
  • Поддержка цифрового джойстика Atari
  • ТВ выход (обычный разъем для антенны) на моделях M и STE
  • OС: TOS (Tramiel Operating System) с встроенным GEM
  • Модели выпущенные до 1992 (версия OS и количество ОЗУ варьируются): 520ST, 520STM, 520STFM, 260ST, 520ST+, 1040ST, 1040STF, 1040STFM, 1040STE, 520STE, Mega ST1, Mega ST2, Mega ST4 и Mega STE

Модели STE отличаются расширенными графическими и звуковыми возможностями.

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

Это был маленькое описание того, что должен эмулировать эмулятор :-).

4 Эмуляция ST

Первой попыткой написания эмулятора был Gemulator (1994 или 1995 год). Он работал под DOS и требовал специальной аппаратной карты. Сегодня все эмуляторы ST работают программно.

Но бум эмуляции ST начался в 1997 с выходом эмулятора PacifiST, написанного Фредериком Гидуином (Frederic Gidouin).

С тех пор и некоторые другие эмуляторы достигли высоких показателей, например WinSTon и STEEM. Это частично относится и к эмуляторам под Linux. STEEM сейчас официально доступен под Linux, а STonX становится лучше и лучше с каждым релизом.

5 Эмуляторы ST для Linux

5.1 Общие проблемы всех эмуляторов

Всем эмуляторам ST присущи следующие проблемы:

  • Они не могут использовать настоящие флоппи ST из-за проблем в программировании флоппи контроллера.
  • Ни один из приведенных эмуляторов не эмулирует MIDI порты (кроме STEEM для Windows).
  • Ни один из приведенных эмуляторов не может запускать программы с защищенных от копирования дисков, так что забудьте о своих старых оригиналах.

5.2 STonX

Знаменитый STonX был первым и долгое время единственным эмулятором для юниксов. На данный момент он достиг действительно стабильного состояния, но по-прежнему не является хорошим выбором для запуска игр и демонстраций.

Характеристика:

  • не нужен мощный процессор. Pentium машины с 16MB ОЗУ достаточно.
  • поддержка 4MB или 14MB ST RAM
  • поддерживает все графические режимы ST, но без overscan или rasters
  • поддержка X'ов и вывода с помощью SVGALib
  • может работать в окне и полноэкранном режиме
  • поддержка эмулируемого жесткого диска. Это означает возможность монтирование дерева каталогов Linux
  • поддержка образов дисков в стандартном формате ( файлы *.ST, которые можно найти в Сети)
  • поддержка расширенных графических режимов ST
  • эмуляция звукового чипа
  • плохая поддержка джойстика (во всяком случае, я не смог заставить его работать на моей машине)
  • поддерживает все версии TOS, но оптимизирован для TOS 2.x
  • поставляется под лицензией GPL
  • легко переносится на другие юниксы (STonX работает на Solaris и AIX )

STonX не эмулятор для игр и демонстраций, но определенно эмулятор для разработки приложений, отвечающих требованиям GEM. Он очень быстр и гладко работает. И за 6 месяцев работы я не смог его свалить (Может упасть эмулируемый ST, но не сам эмулятор).

На данный момент, раздражающими моментами являются:

  • плохая поддержка джойстика
  • отсутствие .MSA файлов образа диска
  • нет поддержки overscan
  • слишком быстр для игр

Но нет совершенных программ -- STonX определенно стоит попробовать. Он лучше, чем можно было ожидать.

STonX можно найти по ссылке: http://stonx.sourceforge.net/.

5.3 STEEM для Linux

Это порт эмулятора STEEM на Linux. Он распространяется свободно, но не под лицензией GPL.

STEEM гораздо лучше приспособлен для игр, т.к. он поддерживает даже STE графику и звук, эффекты overscan и raster. На нем можно запускать много демонстраций и большинство игр.

Характеристика STEEM:

  • есть эмуляция STE
  • поддерживает как образы формата .ST, так и .MSA
  • поддержка джойстика через клавиатуру
  • поддержка звука, которая иногда не синхронная (эффекты проигрываются на полсекунды позже)
  • работает со всеми версиями TOS, кроме 1.62, которая вообще не должна использоваться
  • милый интерфейс (помните, есть STEEM для Windows)
  • работают многие, хотя и не все игры (во всяком случае, Super Cars 2 и Xenon работают)
  • свободный, но не под лицензией GPL: доступен только в виде двоичного кода

STEEM близок к совершенству. Некоторые возможности Windows версии все еще отсутствуют, но работает он очень хорошо. И главное преимущество его над StonX - это возможность запуска игр!

STEEM можно найти по адресу: http://steem.atari.org/.

5.4 Hatari

Hatari - это порт кода WinSTon на Linux. Он все еще в стадии альфа версии и на данный момент еще не работает.

За подробностями обращайтесь на http://hatari.sourceforge.net/.

6 TOS

Как указывалось выше TOS - это стандартная для Atari ST операционная система. (Можно устанавливать Minix, Mint и некоторые другие ОС.)

Очевидно, что все эмуляторы требуют для работы TOS ROM. Он не включен ни в один эмулятор из-за лицензии. Есть несколько мест в сети, где можно получить образы TOS, и доступны так же программы, которые позволяют извлечь содержимое TOS ROM вашей ST в файл.

7 Программное обеспечение для ST

В сети все еще находится большое количество программного обеспечения для ST. На FTP серверах можно найти свободные программы, на некоторых из них есть и пиратские копии игр. Наконец, сетевое сообщество пользователей ST очень отзывчиво, и всегда поможет в поиске софта.

8 Общество

В сети существует большое сообщество пользователей Atari, несколько каналов IRC, доски объявлений и дерево новостей Usenet.

Несколько советов:

  • http://www.atari.st/ - "Маленький зеленый экран" (основной сайт эмуляции ST) содержит форум и хороший архив игр - посмотрите сами.
  • http://www.atari.org/ - главный портал новостей сообщества пользователей Atari. 90% сайтов, касающихся ST, можно найти в здешнем архиве ссылок.
  • Доступна группа новостей comp.sys.atari.st и другие
  • #atari канал IRC тоже может помочь вам.

На время написания статьи, в ноябре 2001, "Маленький зеленый экран" находился в состоянии обновления дизайна, но ко времени опубликования этой статьи это может измениться.

9 Заключение

Atari ST жив -- и вы можете поддержать эту разработку под линукс. Присоединяйтесь к нам, запустив эмулятор Atari ST. Даже если у вас никогда не было ST, стоит попробовать.

Возьмите меня к примеру: у меня никогда не было C64, VCS2600 или ZX Spectrum, но я работаю с эмуляторами этих всех компьютеров.

Помните: Atari никогда не умрет!


Matthias Arndt

Я -- энтузиаст Linux из северной Германии. Люблю простой рок 50-х, музыку rock'n'roll, а также писать истории и, естественно, публиковать их в Linux Gazette. В настоящее время изучаю экономическую информатику [computer science in conjunction to economics].


Copyright (C) 2001, Matthias Arndt.
Copying license http://www.linuxgazette.com/copying.html
Published in Issue 73 of Linux Gazette, December 2001

Вернуться на главную страницу