ReCom
Цитата:А, как можно узнать адрес графики, в роме, с помощью дебаггера?
1. Основная (циклическая) часть процедуры распаковки находится по адресу 06DF-0763. Так что бряк (Breakpoint) нужно ставить чуть выше, например на 06DB.
2. Как игра остановится, смотришь на регистр de.
Если значение de лежит в пределах 9800-9BFF, значит распаковывается карта тайлов заднего фона - она нам не нужна. Нажимаешь F9.
Если значение de имеет вид Cxxx или Dxxx, значит ЧТО-ТО распаковывается во WRam-память. Нужно проверить (переходим к пункту 3).
Если значение de находится в пределах 8000-97FF, значит распаковываются тайлы (Можешь заглянуть во VRam-вьювер и, многократно нажимая F7, понаблюдать за тем, как выводятся тайлы).
Переходим к 3-му пункту.
3. Нужно посмотреть, какой блок рома загружен в память.
Для этого в нижней области дебаггера спускаешься вниз и смотришь данные адреса FF97 (X), либо по адресу 4000-79FF смотришь номер блока слева вида RoX, где X - номер блока.
Далее X умножаешь на 4000, к произведению прибавляешь значение регистра hl минус 4000 - вот начальный адрес нужного ресурса.
Нажимаешь F9, чтобы продолжить.
И ещё: значение регистра bc / h10 - количество тайлов.
Примечание: все числа и адреса в дебаггере представляются в 16-ричном формате.