Потихоньку пересобираю ром с нуля. Много интересного там, код хитро написан. Или изначально он писался не на ассемблере, или компилятор так интересно всё оптимизировал, или разработчики были хитрые
Отключил обработку исключений - если что-то меняешь в коде - перестало вылетать в экран дебага с выводом значений регистров. Правда, иногда стало просто виснуть - но реже, чем вылетало в дебаг
Собственно коду там - на несколько десятков килобайт, всё остальное - данные. Данные все выношу в отдельные бинарники - можно будет заменять что угодно, свободно изменяя размер.
С архитектурой m68k и железом консоли только начал знакомиться, поэтому пока много непонятного.
Кто-нибудь знает, зачем может при старте проверяться наличие чего-либо в порту первого контроллера и порту расширения (куда подключаются всякие Sega CD), и если там что-нибудь есть - почему пропускается вся инициализация (VDP, Z80, проверка TMSS, проверка региона консоли)?