Есть два пути "клонирования" устройств, подобных обсуждаемым здесь. Сначала, конечно, надо получить код программы оригинала. Далее.
Первый путь — дизассемблирование кода, изучение алгоритма, переменных в озу, методов ввода/вывода информации. Далее перевод алгоритма на язык целевого устройства (на чём будем запускать — пк, мк, бк, двк, ардуино итд.
) Далее добавление в код управления "новыми" для оригинала устройствами : матричный дисплей, видеокарта пк, клавиатура, звуковая карта или бипер итд.) и соблюдение таймингов программы-оригинала. На выходе получится нативная прошивка (или приложение) для нового устройства.
Второй путь — поручить разбор алгоритма и ячеек озу целевому процессору, научив его понимать оригинальные коды. Сделать модуль, который в режиме интерпретации будет выполнять изначальную программу, как она есть, включая временные параметры команд (количество тактов, задержки итд). То есть создать программный модуль эмуляции исходного процессора.
Я выбрал второй путь. Плюсы — не надо вникать в особенности алгоритма каждой игры. Получение настоящих звуковых эффектов. И достаточно подставить код и графику другой игры, и она сразу заработает в эмуляторе. Минус — бОльшие затраты ресурсов конечного процессора, и пожалуй, всё.
Boris1371, видимо, хочет пойти по первому варианту. В условиях ограниченных ресурсов целевого мк, это наверно нормально. И отладчик из поста выше в этом поможет. Будем надеяться, эксперимент удастся!