PicaSSO, какую игру ты вскрыл?
На какую платформу, и самое главное - каков размер рома, если не более 8-ми мегабайт, то можешь воспользоваться этим.
Я его вчера вечером написал (это надо, целых три часа угрохал, а оказалось, что она умеет ну ооочень мало).
Руководство:
Это пока первая рабочая бэта-версия (вставлять текст она пока не умеет).
Загружаемые ромы не более 8-ми мегабайт.
Таблица поддерживает однобайтовую кодировку DTE/MTE.
Настройка поинтеров: вводятся абсолютные адреса (те которые показывает хекс-редактор).
Существует ограничение: поинтеры (в роме) - двухбайтовые, и должны указывать строго на начало текста (в пределах одного банка, банк - 65536 байт, то есть 64кб, или &hFFFF), пока нет обработки смещения поинтера (как на NES - &h8000).
Положение поинтеров относительно теста роли не играет, но значения поинтеров должны быть равны: (адрес начала текста)-(адрес ближайшего предшествующего начала банка)
Адрес ближайшего предшествующего начала банка - значение вида &hXXXX0200, где XX - шестнадцатиричные числа адреса.
Пока за стандартное обозначение кода принято {&hXX}, где XX - хекс-код.
Строка, помеченная <!-- обрабатываться не будет (типа комментарий).
Могу описать работу на примере Chrono Trigger:
Ром - Chrono Trigger (U).smc
Таблица - ct(full).tbl
Настройка поинтеров (для названий локаций):
Адрес таблицы поинтеров: 456194
Адрес начала текста: 455169
Количество поинтеров: 111
Код конца строки: 00
Размер хедера: 512
Извлекается скрипт названий локаций.
Кому интересно, вот исходник данной версии.
Отредактировано Alex_231 (2006-03-21 10:26:05)