Введение
Amiga, эмулирующая другие компьютеры
Компьютер Amiga можно использовать для эмуляции различных других компьютерных платформ, включая устаревшие, такие как Commodore 64, и конкурирующие с ним в то время, такие как IBM PC и Macintosh.
MS-DOS на Amiga через Sidecar или Bridgeboard
Совместимость с MS-DOS была важной проблемой в первые годы существования Amiga, чтобы позиционировать машину как серьезный инструмент для бизнеса. Для запуска операционной системы MS-DOS компания Commodore выпустила Sidecar для Amiga 1000 – по сути, плату 8088 в закрытом корпусе, подключаемую к боковой стороне Amiga. Благодаря умному программированию (библиотеке под названием Janus, в честь двуликого римского бога дверей и переходов) стало возможным запускать программы для ПК в окне Amiga без использования эмуляции. Во время презентации Sidecar зрители были поражены, увидев MS-DOS версию Microsoft Flight Simulator, работающую на полной скорости в окне Amiga на Workbench. Позже Sidecar был реализован в виде платы расширения под названием "Bridgeboard" и выпущен как A2088XT для моделей Amiga 2000+. Модели Bridgeboard, основанные на процессорах Intel 80286 и 80386, позже были выпущены Commodore как A2286 и A2386. Плата Bridgeboard и библиотека Janus сделали возможным использование расширительных карт для ПК и жестких/гибких дисков. Впоследствии появились и карты других производителей для слотов расширения Amiga 500 и Amiga 600, такие как KCS Powerboard, а Vortex выпустила полноразмерные карты для Amiga 2000+ на основе процессоров 80386 и 80486 под названием Golden Gate. В конечном итоге, полноценные программные эмуляторы, такие как PC Task и PCx, позволили Amiga запускать программы MS-DOS, включая Microsoft Windows, без дополнительного оборудования, но с потерей в скорости и совместимости.
Планка KCS PowerPC
Голландская компания Amiga Kolff Computer Supplies разработала похожее расширение для A500. Позже оно было усовершенствовано для эмуляции VGA. Однако многозадачность оно не поддерживало.
Трансформер для Амиги
Когда Commodore представила Amiga 1000 в июле 1985 года, она также неожиданно объявила о программном эмуляторе IBM PC для этой платформы. Компания продемонстрировала эмулятор, загрузив IBM PC DOS и запустив Lotus 1-2-3. Некоторые из присутствовавших на демонстрации сомневались, что эмулятор, несмотря на свою техническую впечатляемость, сможет работать с приемлемой производительностью. Приложение, получившее название Transformer, действительно было крайне медленным; тест "Landmark" показал производительность, эквивалентную 300 кГц 286, что значительно ниже 4,7 МГц самого старого и медленного ПК IBM. Более того, он работал только на Amiga с микропроцессором 68000 и не запускался, если в Amiga было установлено более 512 КБ оперативной памяти.
PCTask
PCTask – программный эмулятор ПК, эмулирующий аппаратное обеспечение PC Intel с процессором 8088 и графическими режимами CGA. Последняя версия (4.4) позволяла эмулировать 80386 с частотой 12 МГц и включала поддержку до 16 МБ оперативной памяти (15 МБ расширенной) под MS DOS, до двух дисководов и 2 жестких дисков. Эмулятор мог использовать файлы жестких дисков и, следовательно, обрабатывать несколько файлов и разделов жестких дисков. Он поддерживал дискеты высокой плотности и CD-ROM, если на Amiga были установлены соответствующие устройства. Доступные графические режимы включали MDA, CGA, EGA, VGA и SVGA, эмулирующие графические карты Hercules с 512 КБ до 2 МБ оперативной памяти и до 256 цветов на Amiga AGA, а также возможность использования графических плат Amiga (например, Cybergraphics, EGS Spectrum, Picasso). Также поддерживались эмуляция параллельного и последовательного портов, динамика ПК и мыши, включая последовательную эмуляцию мыши. Если аппаратное обеспечение Amiga было достаточно мощным (68060 или PPC) и имело достаточно оперативной памяти, была возможна одновременная работа нескольких процессов PCTask на одной машине, запуск MS DOS-приложений в окне Amiga на общем экране (например, в графическом интерфейсе Amiga Workbench). PCTask также мог передавать файлы между Amiga и эмулируемой MS DOS-машиной, используя мостовые карты GoldenGate, которые позволяли Amiga с разъемами расширения получить полный контроль над неиспользуемыми слотами ISA и использовать карты PC ISA. Последняя версия (4.4) могла запускать даже Microsoft Windows до версии 95. PCTask оснащен JITM (Just in Time Machine) для процессоров 8088/80286/80486, способным интерпретировать все инструкции этих процессоров, но для активации этой функции требуется 4 МБ дополнительной оперативной памяти. PCTask был повторно выпущен автором как бесплатное программное обеспечение.
Mac OS на Amiga
Также для Amiga были представлены два продукта: A Max (внутренние и внешние модели) и карта расширения Emplant. Оба позволяли Amiga эмулировать Apple Macintosh и запускать классическую Mac OS. Для этого требовалось изображение ROM Apple Macintosh или, в случае A Max, сами микросхемы ROM, которые необходимо было получить с настоящего Macintosh. Пользователю требовалось владеть настоящим Macintosh или микросхемами ROM Mac для легального запуска эмулятора. В 1988 году был выпущен первый эмулятор Apple Mac, A Max, в виде внешнего устройства для любой Amiga. Для работы ему требовались микросхемы ROM Mac, и он мог читать дискеты Mac при использовании с дисководом Mac (дисководы Amiga не могут читать дискеты Mac. В отличие от дискет Amiga, дискеты Mac вращаются с переменной скоростью, как и CD-ROM-приводы). Это не было особенно элегантным решением, но оно обеспечивало доступный и работоспособный опыт использования Mac. Компания ReadySoft, создатель A Max, выпустила A Max II в начале 1990-х годов. A Max II размещался на карте, совместимой с Zorro, и позволял пользователю, снова используя настоящие микросхемы ROM Mac, эмулировать цветной Macintosh. Фактически, Amiga 3000, эмулирующая Mac через A Max II, была значительно быстрее, чем первый потребительский цветной Mac, LC. Со временем стала доступна полноценная программная виртуализация, но изображение ROM все равно было необходимо. Примеры программного обеспечения для виртуализации включают ShapeShifter (не путать с панелью настроек стороннего разработчика ShapeShifter), позже замененного Basilisk II (оба разработаны тем же программистом, который придумал SheepShaver, Кристианом Бауэром), Fusion и iFusion (последний запускал классическую Mac OS, используя карту-ускоритель PowerPC "сопроцессора"). Виртуальные машины обеспечивают скорость, равную или превышающую скорость Macintosh с тем же процессором, особенно в отношении серии m68k из-за того, что настоящие Mac работали в режиме ловушек MMU, что снижало производительность. Кроме того, сразу после перехода с 68k на PowerPC в 1994 году наблюдался дефицит программного обеспечения PowerPC Mac: компьютеры Amiga с процессорами 68060, работающие с ShapeShifter или Fusion, могли запускать код 68k Macintosh быстрее, чем настоящие Mac. Стоит отметить, что, хотя Amiga успешно эмулировали Macintosh, они никогда не считались клонами Macintosh, поскольку не могли использовать Mac OS в качестве основной операционной системы. Современные Amiga, такие как AmigaOne и Pegasos, могут эмулировать машины Macintosh, используя Basilisk II или Mac on Linux.
8-битные компьютеры Commodore
Для Amiga было создано множество эмуляторов Commodore 64. В 1988 году журнал Compute! рассмотрел The 64 Emulator от ReadySoft и GO 64 от Software Insight Systems и сообщил о неоднозначных результатах работы обоих. Несмотря на то, что журнал использовал копии оригинальных ROM-ов Commodore 64, выяснилось, что некоторые программы, такие как SpeedScript, не запускаются, а производительность обоих эмуляторов уступала реальному компьютеру. Среди других эмуляторов были MagiC64 и A64. Существует версия VICE для Amiga, эмулирующая 8-битные компьютеры Commodore.
Яблоко II
Одним из эмуляторов Apple II для Amiga был Apple 2000, разработанный Кевином Кралианом. Учитывая, что базовый 8-мегагерцевый процессор Amiga 68000 с трудом эмулировал 1-мегагерцевый 6502, Apple 2000 был написан на языке ассемблера для процессора 68020+ чтобы обеспечить эмуляцию Apple II на полной скорости. Он несколько раз перерабатывался, пока в 1994 году не вышла версия 1.3. После выпуска программы в интернете появились предположения, что она является частью эмуляционной платформы Emplant, но на самом деле Apple 2000 был самостоятельным проектом. Особенностью программы была возможность запуска не только отдельных исполняемых файлов Apple II, но и образов дисков, сжатых с помощью Dalton's Disk Disintegrator – популярного инструмента сжатия дисков 1980-х годов. Изначально Apple 2000 был распространялся как проприетарное программное обеспечение, но в 2018 году исходный код был открыт под лицензией MIT.
Atari ST
Эмуляция Atari ST на Amiga очень проста, поскольку обе машины используют одну и ту же модель процессора (68000) и в значительной степени обладают схожими аппаратными характеристиками. В прошлом для Amiga было разработано множество программных эмуляторов Atari, таких как Amtari или Medusa. AmigaOS 4 и MorphOS могут эмулировать платформы Atari ST и Atari STE с помощью бесплатного эмулятора Hatari, распространяемого под лицензией GPL.
Эмуляция Amiga
Компьютеры PowerPC с установленной AmigaOS 4 могут запускать UAE для эмуляции Amiga, оснащенной процессором Motorola 68000. Оригинальные образы ROM Kickstart 3.1 включены в обновление AmigaOS 4.1 Update 4.