russian ROMhacking
Ромхакинг: Архив новостей База ромхак-файлов Ромхакерская галерея Каталог сайтов Дополнительно: Поиск по сайту Зарубежный ромхакинг Новости эмуляции Cайт: Информация о сайте Общение: Форум Комментарии к материалам

Наш опрос

Сколько игр вы перевели?
Всего ответов: 957
Главная » 2013 » Сентябрь » 26 » Вышел FCEUX 2.2.2
Вышел FCEUX 2.2.2
21:33

Недавно вышедшее обновление самого мощного эмулятора NES принесло ряд интересных фич для ромхакинга.

Встроенный Hex Editor раньше умел только раскрашивать области памяти в зависимости от их назначения (код жёлтым цветом, данные - синим). А теперь ещё появилась фича "Highlight Activity", которая в реальном времени подсвечивает изменяющиеся ячейки памяти, позволяя легко находить нужные адреса (например, сравнивая содержимое двух сэйвов).

Ещё, может, кто помнит такую неудобную особенность всех известных дебаггеров для NES: нельзя было скроллировать дизассемблированный код вверх построчно. Потому что инструкции процессора 6502 могут быть разной длины... короче, забудем об этом.

Самое главное, наконец-то доведена до ума функциональность Символьного Отладчика (Symbolic Debugging). Это очень крутая фича. Она позволяет видеть в окне эмулятора отлично читаемый исходник игры, с именами переменных и меток, и даже комментариями. Естественно, имена придётся придумывать самостоятельно. Щёлкаем правой кнопкой мыши по любому адресу, вводим текст и всё - теперь FCEUX будет заменять этот адрес на указанный текст повсюду - в окошке Debugger, в логах, в заголовке окна Hex Editor. Это всё реально помогает отреверсить игру с удобствами.

Обычно же как бывает, в начале нового проекта перед ромхакером встают необъятные стены ассемблерного кода, и мы начинаем искать определённые адреса в памяти приставки, которые могли бы привести нас к нужному куску кода. Иногда бывает достаточно поставить бряк на какую-нибудь визуальную переменную (например, на координату спрайта или на карту тайлов), но чаще приходится долго и упорно перекапывать игру, на ходу документируя адреса данных (в текстовом файле) и разбирая порядок выполнения кода. Ну а теперь можно забыть про текстовые файлы и просто использовать Symbolic Debug. Скажем, даже когда по внешнему виду дизассемблированной процедуры вы с трудом понимаете, почему вот эта часть кода приводит к прыжку на вот этот адрес, берём и тупо называем этот неисследованный адрес пространным именем типа "ПопадёмСюдаПриКоординате=1F" (да, можно по-русски), и продолжаем читать и комментировать код дальше. Вскоре вы заметите, что ситуация проясняется всё больше и больше. Ведь мы тут фактически восстанавливаем фрагмент исходного кода игры, но не углубляясь в изучение программы целиком, а всего лишь упорядочивая окружающие нас вещи, исключительно в рамках текущей задачи. Восстанавливать исходник всей игры не придётся!

Короче, всем, кто хочет научиться чему-то большему, чем банальное изменение графики в РОМах Денди, рекомендую внимательно прочитать документацию по отладчику FCEUX.

Вообще, там в FCEUX 2.2.2 ещё много всего нового появилось (например, в PPU Viewer можно фильтровать графику с помощью Code/Data Logger). Полный список изменений можно прочитать здесь.

Категория: Утилиты | Просмотров: 2711 | Добавил: АнС |
Мы для вас уже отобрали похожие новости, ранее добавленные на сайт. Возможно, что вас заинтересует и какая-то из них, посмотрите: Если ищите другие подобные этому материалы, то воспользуйтесь поиском по тегам:
АнС, эмулятор, Hex Editor, Dendy, FCEUX, Cah4e3, отладка, инструменты, Debugger, NES
Вы можете посоветовать новость "Вышел FCEUX 2.2.2" из рубрики "Утилиты" своим знакомым, либо обсудить её с остальными пользователями, которые также как и вы интересуются данной темой, оставив своё мнение в комментариях ниже, либо в различных социальных сервисах.
Всего комментариев: 12
+1  
1 ПАУК   (26.09.2013 22:11)
Ещё бы документацию на русском...

+1  
5 АнС   (27.09.2013 19:20)
Не надо лениться. wink

+1  
2 TLT   (27.09.2013 01:32)
Просто мега обнова! Вот бы всё это и многое другое было бы у нас лет 8 назад. Сейчас до NES руки не доходят даже поиграть.

+1  
3 Mr2   (27.09.2013 16:13)
Все-таки в txt файлик лучше записывать важные данные.
Только недавно IDA прикончила месяц трудов по поиску и комментированию. killed
Хорошо что разобранный код был не так важен для дальнейшей работы.
Данных из txt файла хватило для того чтоб забыть про этот печальный случай.

+3  
4 АнС   (27.09.2013 19:19)
А вот для таких случаев нужно пользоваться SVN или Git. Бекапы лишними не бывают. Потерять или случайно удалить можно любые файлы - хоть саморучно набранные, хоть автоматически создаваемые (кстати, NL-файлы тоже по сути обычные текстовики, их можно редактировать в Блокноте).

+2  
6 Ti_   (01.10.2013 19:25)
А что это было, если не секрет.

+2  
7 Mr2   (03.10.2013 21:56)
Главное меню Forsaken .
При попытки открыть дизасемблированный файл, IDA сообщила что это не её формат.
Я посмотрел, внутри файла небыл прописан заголовок, пытался восстановить, но IDA использует сжатие,
а его похоже не восстановить. Пробывал подставлять заголовок из других файлов, выдаёт ошибки.

+1  
8 ПАУК   (04.10.2013 23:11)
Двойной клик мышки перестал разворачивать на весь экран.

+1  
9 АнС   (05.10.2013 15:29)
Config->GUI->Switch fullscreen by double-click

Просто раньше была установлена по умолчанию.

+1  
10 ПАУК   (05.10.2013 15:35)
А где-нибудь есть хакерская тема по этому эмулятору? Может, научусь чему-нибудь интересному...

+1  
11 RenTao   (18.10.2013 22:13)
Жалко что во время паузы не подсвечиваются, было бы удобнее работать с Hex Редактором и ещё было бы не плохо что бы при выделение кода указывалось за то этот код отвечает

+1  
12 Lance   (25.10.2013 13:27)
Ого. Новый отладчик NES-игр

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]

Календарь новостей

«  Сентябрь 2013  »
ПнВтСрЧтПтСбВс
      1
2345678
9101112131415
16171819202122
23242526272829
30

Поиск

Картинка из галереи

Ссылка страницы


HTML-код или BB-код

Партнеры сайта

  • База игровых движков
  • Всё об играх на GamesFAQ