Rollercoaster Tycoon 2 работает только на ПК под управлением Windows. ПК в этом смысле означает совместимость с IBM PC, которая обратно совместима с оригинальным IBM PC, который использовал процессор Intel 8088. 8088 был более дешевой версией 8086, поэтому это означает, что все ПК используют версию набора команд 8086. На протяжении многих лет Intel выпустила процессоры, которые расширили этот набор команд. В первую очередь Intel 80386 добавила 32-разрядную поддержку.
Будучи 32-разрядной игрой Windows с процессором Pentium II, заданным как минимальное требование, RCT2 будет полностью или почти полностью написан с помощью инструкций, поддерживаемых 80386. Не было так много инструкций, добавленных более поздним 80486, Pentium и Pentium II. Заметным исключением были бы инструкции MMX, но они были сложны в использовании и, вероятно, не были полезны для такого рода игр. Кроме того, оригинальный Railroad Tycoon поддерживал процессоры Pentium, но только более поздние версии «MMX» для Pentium поддерживали эти инструкции.
Итак, игра работает на ПК с ОС Windows, которые поддерживают современную версию набора инструкций 8086. Это включает в себя как ПК Intel, так и компьютеры AMD (и через ПК), поскольку на всех ПК есть процессоры, которые используют набор инструкций 8086. Любой ПК с процессором AMD, достаточно быстрый для запуска игры с приемлемой скоростью, будет поддерживать современную версию набора инструкций 8086. Это будет включать все компьютеры AMD, проданные за последние 15 лет.
Обратите внимание, что факт, что игра была написана на ассемблере или нет, на самом деле не имеет никакого значения для конечного пользователя. Игра, полностью написанная на C++, будет скомпилирована в машинный код, прежде чем будет доставлена клиентам. Аналогично, игра, написанная полностью в сборке, собирается в машинный код. Игра Windows, написанная на C++ или сборке, будет работать только на ПК под управлением Windows, который поддерживает современную версию набора инструкций 8086.
Тот факт, что RCT2 был написан на сборке, только существенно влияет на разработчиков и издателей игры. Игра, написанная на C++, может быть легко перенесена на другие платформы. Обычно это не так просто, как перекомпиляция игры для создания машинного кода для другой платформы, но обычно требуется лишь небольшая часть кода на C++. Портирование RCT2 на компьютеры Apple PlayStation 2 или PowerPC потребует полной перезаписи каждой строки исходного кода.
Существует проект под названием OpenRTC2, который эффективно сделал именно это. Они изменили конструкцию игры и переписали ее с нуля на C. Это позволило им выпускать версии своей игры, которые работают на других платформах, чем ПК с ОС Windows.
Либо команда между двумя наборами процессоров достаточно перекрывается, разработчики использовали один из них эмулятор, или этого не произошло. – nicomp
Я только что понял, что это было в эмуляторе. Благодарю. И разве Intel и AMD используют один и тот же набор команд? – Sam
@ Да, да, с годами были небольшие различия, но если вам нужно спросить, ответ да). – Leushenko