Форум Magic Team

Переводы, переводы, переводы... => Ромхакинг и перевод => Тема начата: Viking от 19 Февраля 2013, 19:29:17

Название: Круптар, выделение (определение) текста.
Отправлено: Viking от 19 Февраля 2013, 19:29:17
 Быть может, в название темы я не совсем корректно выразил мысль, прошу извинить. Мне не совсем, а если быть точным вообще непонятно как заставить Круптар отыскать текст в файле. Текст находится в файле в обычной кодировке ASCII. То есть теоретически для его поиска даже таблица не нужна. В инструкции "Kruptar для чайников" я так и не нашёл где и как разбить (разобрать) имеющийся файл на текст (фразы). Может, я что-то не так понял в инструкции. В общем, подскажите, пожалуйста, как это сделать.
 

[Дата добавления: 19 Февраля 2013, 22:10:03]
Понял как извлечь текст, правда, без использования поентеров.
Теперь вопрос в следующим, я не совсем понял, зачем нужна Разница смещений и как её вычислить. Нет, конечно, по теории я понял, но что-то на практике применить не удалось. Приважу пример.
Начало первого байта текста $1315F. Конец, в прочем это и не важно - $1AB49.
Начало блока поинтеров $12E38.
Первый поинтер вида 03 26. В принципе всё совпадает через $326 и начинается текст.
Вопрос в следующем, как высчитать разницу смещений? Я подумал, что она будет равна 12E38, 1315F – 326 = 12E38. Поправьте если я в чём-то не прав.
Платформа SEGA CD.
 
Название: Круптар, выделение (определение) текста.
Отправлено: KenshinX от 20 Февраля 2013, 12:26:04
Вот так глядишь ещё пара деньков пройдёт и ты сам со всем разберёшься.  LOL Что за игра-то хоть? Она, случайно, не на букву S?  ::)
Название: Круптар, выделение (определение) текста.
Отправлено: Джинни от 21 Февраля 2013, 04:45:07
Теперь вопрос в следующим, я не совсем понял, зачем нужна Разница смещений и как её вычислить.
Разница смещений (свойство ptReference) нужна для получения абсолютного адреса строки в роме.

Например, значение пойнтера в таблице пойнтеров равно $AAAA,
А строка, на которую этот пойнтер указывает, находится в файле по адресу $1BAAA.
Значит разница смещений = $1BAAA - $AAAA = $11000.
Ну и в круптаре вместо символа $ надо буковку h писать, так как другие варианты не работают.
Название: Круптар, выделение (определение) текста.
Отправлено: greengh0st от 21 Февраля 2013, 17:04:18
Сэнсей босссссссс!!! 38 блок надо править))))
Название: Круптар, выделение (определение) текста.
Отправлено: Сильвестр17 от 10 Марта 2013, 12:45:43
Та я разобрался!! Методом проб и ошибок