Решение элегантное и простое. Для работы нам понадобится моя программа "Пакостник".
Скачать программу!
Открываем ей ром. Выбираем эмулятор, которым будем его запускать. Можно сразу же запустить ром, не изменяя его, и пройти до того места, где появляется слово КОНТИН, и сохраниться ПРЯМО ПЕРЕД этим экраном, чтобы потом проверять проще было. Идеальный эмулятор для этого - VirtuaNES, так как в других эмулях сохранение может записаться так, что при его загрузке не будет видно никаких изменений, которые мы произведём... А с квиксейвом VirtuaNES таких проблем не будет...
Начать я решил со слова "NO." В нём 5 букв. Адрес, по которому расположено слово - как ты мне говорил, h6684. Я не знаю, где расположены байты, которые меняют длину слова, но я предполагаю, что они идут перед ним.
Поэтому в своей проге я выбираю 16ричную систему и в диапазон значений файла пишу
От 6600 до 6684 (ну решил я сразу проверить такой диапазон, с запасом)
В значениях для поиска ставлю 05 - длина слова "NO."
И решаю увеличить длину на 2, например - Увеличенные на 2 в "Заменить найденные байты на"
Нажимаю напакостить - нашлись и увеличились на 2 сразу два значения. - Запускаю ром - вижу, что всё получилось. (в роме, как оказалось, нужно заменить именно 2 значения, если заменить одно - ром виснет...)
теперь слово "YES." - его длина 06. Просто меняю в значениях для поиска 05 на 06 - и тоже нахожу 2 значения.
Со словом контин сложнее. Его длина 0A, но при поиске она не находится, тогда я увеличиваю диапазон поиска, от 6550 до 6684. Всё, найдено опять 2 символа, и их можно изменить как хочешь...
Отредактировано Guyver (2010-08-31 02:24:08)