Я затеял проект по продолжению 8-битной Contra Force с фамикома на Game Boy Advance, но пока уже несколько месяце времени нет особо. Но человечки уже бегают, прыгают и лифты ездят: youtu.be/FwRUjuW54aE
Обожаю GBA, он его архитектура воплотила мою мечту из глубокого детства сделать игру с плавным скроллингом — и тогда я еще не знал даже сколь это тривиальная задача на консолях с тайловыми видеочипами.
Если прям именно разбираться, то мои обзоры не подходят, надо прямо в источниках как правило англоязычных смотреть. У меня обычно просто обзорные компиляции поверхностных сведений, чтобы на принципиальном уровне понять что там внутри происходит.
По части детального описания у меня только программирование под Game Boy Advance: antistupd.livejournal.com/842.html
Я на самом деле не эксперт, но у 8080 насколько я понял незадокументированных инструкций как бы и не было — все незанятые слоты просто дублировали уже существующие команды сверху по таблице опкодов. Использовать такие просто не рекомендовалось как раз на случай будущего расширения системы команд, которую Z80 и сделал.
О, про процессор GB/GBC у меня тоже будет статья. Между gb и gbc разницы по процессору нет, второй просто четырём возможным цветам мог задавать палитру. А процессор весьма забавный получился.
И что-то я сомневаюсь насчёт автоматического портирования, т.к. разными были и системные возможности консолей. Если только немного облегчить портирование.
есть ряд несовместимостей принципиального характера — у Z80 в начале памяти находятся вектора прерываний, а MOS 6502 zero-page это самый лакомый кусок ОЗУ для переменных. поэтому даже если сама трансляция возможна, то по раскладке памяти не попадаем всё равно.
Ну неиспользованные коды зачастую всё равно продолжают «замыкать» блоки внутри процессора и некоторые варианты выполняют какие то осмысленные вещи, что есть смысл даже их использовать.
Полный перечень их можно посмотреть тут: clrhome.org/table/ где недокументированные выделены красным.
Почему не признали даже весьма осмысленные IXL/IXH для меня самого загадка. Загадка даже почему их просто не ввели сразу в стандарт команд, ведь смысл их довольно прямолинеен — просто подмена команд с регистрами HL/H/L и они действительно это и делают. Так что я лично не знаю.
ну да, я сразу же хотел аналогичную статью про 8-битное семейство Motorola/MOS запостить, но мне движок сайта написал, что я не могу так часто постить. ну да ладно, наверное уже можно, попробую снова.
Обожаю GBA, он его архитектура воплотила мою мечту из глубокого детства сделать игру с плавным скроллингом — и тогда я еще не знал даже сколь это тривиальная задача на консолях с тайловыми видеочипами.
По части детального описания у меня только программирование под Game Boy Advance: antistupd.livejournal.com/842.html
И что-то я сомневаюсь насчёт автоматического портирования, т.к. разными были и системные возможности консолей. Если только немного облегчить портирование.
Полный перечень их можно посмотреть тут: clrhome.org/table/ где недокументированные выделены красным.
Почему не признали даже весьма осмысленные IXL/IXH для меня самого загадка. Загадка даже почему их просто не ввели сразу в стандарт команд, ведь смысл их довольно прямолинеен — просто подмена команд с регистрами HL/H/L и они действительно это и делают. Так что я лично не знаю.