Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
HoRRoR RRC2008
Зарегистрирован: 21.06.2006 Сообщения: 2341 Откуда: Ростов-на-Дону
|
Добавлено: Сб Окт 20, 2007 12:39 am Заголовок сообщения: Pointer Searcher |
|
|
Pointer Searcher by HoRRoR <ho-rr-or@mail.ru>
Версия 0.1b
Исходники
Приглашаются тестеры :)
Примечание:
Перед использованием проги убедитесь, что в игре не используется система Ptr2Ptr (поинтеры,
указывающие на поинтеры), иначе использовать программу не имеет смысла. С Ptr2Ptr отлично
справляется программа Круптар (см. http://magicteam.emu-land.net/)
Полученный список поинтеров можно без труда импортировать в проект программы Круптар 6/7,
использование которой я Вам настоятельно рекомендую.
Описание:
Данная программа предназначена для нахождения беспорядочно разбросанных по РОМу поинтеров,
используя для этого текст.
Применение:
PSearch <InputFile> <OutputFile> <StopByte> <TextBegin>
<TextEnd> <SearchBegin> <SearchEnd> <PointerSize>
<PointerInterval> <PointerDifference> <PointerStep>
<MaxPointerCount> <TextMultiple> [Keys]
При вводе любых значений перед hex-значениями необходимо ставить любой из символов "h", "H" или "$".
История создания:
В очередной раз было влом выискивать поинетры вручную. Было влом писать очередную прогу для очередной
игры. Написал универсальную.
Параметры:
<InputFile> Собственно исходный файл
<OutputFile> Текстовый файл с адресами поинтеров
<StopByte> Стоп-байт для текстовых строк
<TextBegin> Начало блока текста
<TextEnd> Конец блока текста
<SearchBegin> Начало области поиска поинтеров
<SearchEnd> Конец области поиска поинтеров
<PointerSize> Размер поинтера (1<=Size<=4)
<PointerInterval> Интервал между поинтерами (будет отступаться после нахождения поинтера)
<PointerDifference> Разница смещений (например, при абсолютных поинтерах у GBA это обычно $F8000000,
у SEGA обычно 0)
<PointerStep> Шаг поиска. Т.е. поинтеры будут искать каждые n байт. Для абсолютных поинтеров на
GBA рекомендуется выставлять начало области поиска кратным 4-м и данное значение 4
<MaxPointerCount> Максимальное количество поинтеров на один адрес
<TextMultiple> Кратность адресов текста. Обычно ставится 0 за исключением особых случаев
Ключи:
-m Порядок байт процессора Motorola (например, SEGA)
Примеры:
PSearch "D:\_job\Scooby\Scooby Doo Mystery.bin" D:\_job\Scooby\PtrList.txt 0 $14199D $145EB5 $120000 $180000 4 0 $14199C 1 0 0 -m
PSearch "D:\_job\Van Helsing\1478 - Van Helsing (U).gba" D:\_job\Van Helsing\VHPtrs.txt 0 $18290C $190EEC $176A50 $18290C 4 0 $F8000000 4 0 4
--
Мне важно знать ваше мнение
Программа была написана за сегодня. _________________ Работаю за деньги
KILL ALL HUMANS!!!!!111 |
|
Вернуться к началу |
|
|
Otter
Зарегистрирован: 12.12.2006 Сообщения: 120 Откуда: Москва
|
Добавлено: Вт Окт 23, 2007 5:25 am Заголовок сообщения: |
|
|
Эх ты блин, в окнах круче. Я бы даже посоветовал сделать если введены какие-нито параметры, запускать как щас, иначе окно активировать. _________________ вот как-то рано поутру в пруду нашёлся полутруп |
|
Вернуться к началу |
|
|
Guyver RRC2008
Зарегистрирован: 12.05.2005 Сообщения: 302 Откуда: СИНЕГОРЬЕ
|
Добавлено: Ср Окт 24, 2007 1:36 pm Заголовок сообщения: |
|
|
А я бы вообще попросил бы автора проги не делать её консольной - у меня на компе (и не только у меня) она не запускается (как и дос-игры например), совместимость не помогает... Что делать? Как её запустить??? _________________ Я не волшебник - я только учусь...
Мой сайт: GUYVERperevod |
|
Вернуться к началу |
|
|
HoRRoR RRC2008
Зарегистрирован: 21.06.2006 Сообщения: 2341 Откуда: Ростов-на-Дону
|
Добавлено: Ср Окт 24, 2007 3:48 pm Заголовок сообщения: |
|
|
Otter писал(а): | Эх ты блин, в окнах круче. Я бы даже посоветовал сделать если введены какие-нито параметры, запускать как щас, иначе окно активировать. |
Да без проблем Просто не думал, что ей кто-нить заинтересуется Кстати эта версия косячит немного, ищу баги... Косяки пока только при мотороле заметил, но поинтеры генерятся правильно, значит это косяк поиска... Хотя из пары игр текст извлёк успешно.
Guyver писал(а): | А я бы вообще попросил бы автора проги не делать её консольной - у меня на компе (и не только у меня) она не запускается (как и дос-игры например), совместимость не помогает... Что делать? Как её запустить??? |
Эээ... Вообще-то под win32 прога, совместимость тут не причём... В общем, напишу оболочку, ждите с новой версией И тогда уж заодно кучу примочек к ней прицеплю
Главное - чтобы ей интересовались, тогда буду развивать проект _________________ Работаю за деньги
KILL ALL HUMANS!!!!!111 |
|
Вернуться к началу |
|
|
Guyver RRC2008
Зарегистрирован: 12.05.2005 Сообщения: 302 Откуда: СИНЕГОРЬЕ
|
Добавлено: Ср Окт 24, 2007 5:39 pm Заголовок сообщения: |
|
|
Одно меня удивляет - когда ты всё делать-то успеваешь??? И главное не абы-как, а хорошо??? ;о)))))) _________________ Я не волшебник - я только учусь...
Мой сайт: GUYVERperevod |
|
Вернуться к началу |
|
|
HoRRoR RRC2008
Зарегистрирован: 21.06.2006 Сообщения: 2341 Откуда: Ростов-на-Дону
|
Добавлено: Ср Окт 24, 2007 5:53 pm Заголовок сообщения: |
|
|
Guyver писал(а): | Одно меня удивляет - когда ты всё делать-то успеваешь??? И главное не абы-как, а хорошо??? ;о)))))) |
Да много времени это и не занимает... Да и я вообще не так много времени этому уделяю - когда настроение есть А написание этой проги у меня заняло пару часов. Просто прога полезная, таких я не встречал... Вот и решил выложить Да и не так уж и хорошо получилось, баги отлавливать придётся или заново писать _________________ Работаю за деньги
KILL ALL HUMANS!!!!!111 |
|
Вернуться к началу |
|
|
LG.BALUKATION
Зарегистрирован: 05.08.2006 Сообщения: 141 Откуда: Saint-Patersburg
|
Добавлено: Чт Окт 25, 2007 2:31 am Заголовок сообщения: |
|
|
Консоль - это не так уж плохо. Например, вызов текущего ваприанта можно достаточно легко интегрировать в другие программы (ИМХО очень полезная фича!)
GUI-вариант тоже может быть хорошь, но терять вышеописанную фичу не хотелось бы. ИМХО реализовать "обёртку" не проблема.
По-поводу не идёт - забавно, но у меня оно в Linux'е даже вроде пошло (реально юзать не пробовал, без параметров программа нормально представляется и завершает свою работу), а у вас в родной для проги винде не пошло. Это не ДОС-прога и никакая совместимость в винде ей не требуется.
Сорсы глянул только "по-диагонали", ИМХО это портабельно и легко перевести под FPC - а тогда хоть под Windows, хоть под Linux, хоть под DOS и ещё кучу систем можно будет легко версии собирать. Сам не пробовал собрать, т. к. паскаль сейчас не установлен. _________________ Zwei Drachen betrachten einander |
|
Вернуться к началу |
|
|
Otter
Зарегистрирован: 12.12.2006 Сообщения: 120 Откуда: Москва
|
Добавлено: Чт Окт 25, 2007 11:55 pm Заголовок сообщения: |
|
|
Guyver писал(а): | Одно меня удивляет - когда ты всё делать-то успеваешь??? |
Ага, бывают люди эхтакие нефлегматичные, я сам удивляюсь , для меня тоже за пару часов хоть чо-то написать немыслимо. Токо вкататься, поразмыслить, составить скелет программы.... _________________ вот как-то рано поутру в пруду нашёлся полутруп |
|
Вернуться к началу |
|
|
BlueHairLady RRC2008
Зарегистрирован: 12.05.2007 Сообщения: 158 Откуда: Гонолулу
|
Добавлено: Вс Окт 28, 2007 3:24 pm Заголовок сообщения: |
|
|
Guyver писал(а): | Одно меня удивляет - когда ты всё делать-то успеваешь??? И главное не абы-как, а хорошо??? ;о)))))) |
Меня работоспособность и профессионализм HoRRoR-а тоже давно поражают. А вдруг HoRRoR действительно "Чужой"? _________________ Надеюсь на возвращение, но сейчас меня нет. |
|
Вернуться к началу |
|
|
HoRRoR RRC2008
Зарегистрирован: 21.06.2006 Сообщения: 2341 Откуда: Ростов-на-Дону
|
Добавлено: Вс Окт 28, 2007 4:27 pm Заголовок сообщения: |
|
|
BHLady писал(а): | Меня работоспособность и профессионализм HoRRoR-а тоже давно поражают. А вдруг HoRRoR действительно "Чужой"? |
Да тут работоспособность?)) Раз в сто лет сяду за игру или программу, сделаю, выложу - и вот те на, инопланетянин Да и ещё и прогу эту написал кое-как, еле пашет
Вот я знаю людей, работоспособность которых действительно поражает _________________ Работаю за деньги
KILL ALL HUMANS!!!!!111 |
|
Вернуться к началу |
|
|
BoreS
Зарегистрирован: 03.04.2004 Сообщения: 347 Откуда: KarmaSociety
|
Добавлено: Вс Окт 28, 2007 11:00 pm Заголовок сообщения: |
|
|
я даже догадываюсь о ком ты |
|
Вернуться к началу |
|
|
HoRRoR RRC2008
Зарегистрирован: 21.06.2006 Сообщения: 2341 Откуда: Ростов-на-Дону
|
|
Вернуться к началу |
|
|
JurasskPark
Зарегистрирован: 15.03.2008 Сообщения: 155
|
Добавлено: Вс Мар 23, 2008 5:51 pm Заголовок сообщения: |
|
|
Данного пользователя больше не существует.
Просьба всем кто его знает. В почту не писать и в ISQ не стучаться.
По данному вопросу обращаться к Администрации сайта или форума. |
|
Вернуться к началу |
|
|
Mefistotel RRC2008
Зарегистрирован: 08.03.2008 Сообщения: 294 Откуда: МАГАДАН
|
Добавлено: Ср Июн 18, 2008 12:47 pm Заголовок сообщения: |
|
|
HoRRoR, как дела с программой?? Забросил или времени нет???
Интерес к проге довольно повышенный...
Ты обещал что-то добавить и сделать оконный интерфейс. |
|
Вернуться к началу |
|
|
HoRRoR RRC2008
Зарегистрирован: 21.06.2006 Сообщения: 2341 Откуда: Ростов-на-Дону
|
Добавлено: Ср Июн 18, 2008 12:54 pm Заголовок сообщения: |
|
|
Хм... Не уж то ею кто-то интересуется?
Ок, будет время - постараюсь доработать. Офигенно её использовать в совокупности с Круптаром - не раз меня выручала. _________________ Работаю за деньги
KILL ALL HUMANS!!!!!111 |
|
Вернуться к началу |
|
|
Mefistotel RRC2008
Зарегистрирован: 08.03.2008 Сообщения: 294 Откуда: МАГАДАН
|
Добавлено: Ср Июн 18, 2008 1:12 pm Заголовок сообщения: |
|
|
Офигенно было бы, если бы ты её поскорее доработал.
Оконный вариантик по стилю Круптара, очень бы не помешал.
А так, я буду ждать. Да и не только я. |
|
Вернуться к началу |
|
|
HoRRoR RRC2008
Зарегистрирован: 21.06.2006 Сообщения: 2341 Откуда: Ростов-на-Дону
|
Добавлено: Сб Июн 28, 2008 3:42 pm Заголовок сообщения: |
|
|
Переписал с нуля.
Оконная версия.
Проверку на ошибки и т.п. задумывал, но влом писать) И ещё влом было дописывать некоторые параметры. Если надо - свистните. Ну или сами допишите, сорцы в комплекте ;)
Параметры:
File - Собственно, файл
TextBlock Position - Начало текстового блока
TextBlock Size - Размер текстового блока
TextMultiply - Кратность адресов текста
StopData - Цепочка стоп-данных
PtrBlock Position - Начало блока поинтеров
PtrBlock Size - Размер блока поинтеров
PtrSize - Размер поинтера (1..4)
PtrReference - Разница смещений
PtrStep - Шаг сканирования (по умолчанию - размер поинтера)
PtrInterval - Расстояние между поинтерами (если найден поинтер, перед дальнейшим поиском одинаковых поинтеров пропустится это количество байт)
Motorola - No comments _________________ Работаю за деньги
KILL ALL HUMANS!!!!!111
Последний раз редактировалось: HoRRoR (Ср Ноя 26, 2008 6:25 pm), всего редактировалось 2 раз(а) |
|
Вернуться к началу |
|
|
Гость
|
Добавлено: Вс Июн 29, 2008 10:01 pm Заголовок сообщения: |
|
|
Нормалёк. Вроде работает.
Автору сёчера большой RESPECT! |
|
Вернуться к началу |
|
|
Mefistotel RRC2008
Зарегистрирован: 08.03.2008 Сообщения: 294 Откуда: МАГАДАН
|
Добавлено: Вс Июл 13, 2008 11:13 pm Заголовок сообщения: |
|
|
Horror, спасибо за прогу. Заценю чуть позже и поделюсь впечатлениями. |
|
Вернуться к началу |
|
|
HoRRoR RRC2008
Зарегистрирован: 21.06.2006 Сообщения: 2341 Откуда: Ростов-на-Дону
|
Добавлено: Пн Июл 21, 2008 1:04 pm Заголовок сообщения: |
|
|
Если кому интересно, простенький релатив сёчер для больших файлов. Писал под себя, если кому-нибудь поможет - буду рад.
* - любой символ, остальные символы можно использовать как разницу. Разница учитывается на основе стандартной кодировки (разница между '3' ($33) и 'b' ($42) будет $F (15)).
Краткое ридми:
FilePath - сам файл
Position - позиция поиска в файле
Size - размер области поиска
Step - шаг поиска
BlockSize - размер загружаемых блоков (МБ) *
String - искомый текст
* размер загружаемых блоков не влияет на результат поиск - это размер частей, которые по очереди загружаются в память для поиска.
P.S. От багов никак не застрахован, проверялся мною на одном случае (для которого, собственно, и был написан), и ещё на одном сегодня для контрольной проверки проги. Сорцы в комплекте. _________________ Работаю за деньги
KILL ALL HUMANS!!!!!111 |
|
Вернуться к началу |
|
|
JurasskPark
Зарегистрирован: 15.03.2008 Сообщения: 155
|
Добавлено: Пн Июл 21, 2008 4:27 pm Заголовок сообщения: |
|
|
А можно в поле FilePath убрать значение т.е. путь к файлу H:\KH2.IMG ?
Понятно, что значение можно удалить, а вот чтобы сразу этого значения не было. _________________ Вот такой я интересный зверёк! |
|
Вернуться к началу |
|
|
HoRRoR RRC2008
Зарегистрирован: 21.06.2006 Сообщения: 2341 Откуда: Ростов-на-Дону
|
Добавлено: Пн Июл 21, 2008 4:34 pm Заголовок сообщения: |
|
|
А какая разница? Либо вводить, либо менять - разницы не вижу. И там всё равно есть диалог выбора файла, думаю, скорей его предпочтут, нежели ручной ввод. А вообще я для примера этот путь оставлял, как и стринг, хотя надо было со звёздочками оставить (типа "ingdom**earts"). _________________ Работаю за деньги
KILL ALL HUMANS!!!!!111 |
|
Вернуться к началу |
|
|
HoRRoR RRC2008
Зарегистрирован: 21.06.2006 Сообщения: 2341 Откуда: Ростов-на-Дону
|
Добавлено: Ср Ноя 26, 2008 6:24 pm Заголовок сообщения: |
|
|
Багфикс. Мелкий, но очень серьёзный - в некоторых случаях могли не находиться поинтеры, меньше 4-х байт. Спасибо Марату.
--
P.S. И почему мне никто не дал по башке за PtrDefference? _________________ Работаю за деньги
KILL ALL HUMANS!!!!!111 |
|
Вернуться к началу |
|
|
HoRRoR RRC2008
Зарегистрирован: 21.06.2006 Сообщения: 2341 Откуда: Ростов-на-Дону
|
Добавлено: Вс Мар 01, 2009 5:20 pm Заголовок сообщения: |
|
|
Обновил билд. Слегка доработал интерфейс и исправил один большущий косяк, из-за которого прога работала неправильно. Алсо, теперь можно загружать/сохранять конфиги.
P.S. Как обычно - пока сам пользоваться не начнёшь - до ума не доведёшь _________________ Работаю за деньги
KILL ALL HUMANS!!!!!111 |
|
Вернуться к началу |
|
|
Марат
Зарегистрирован: 08.01.2008 Сообщения: 211 Откуда: Казахстан, Астана
|
Добавлено: Вт Май 19, 2009 5:55 am Заголовок сообщения: |
|
|
HoRRoR писал(а): | Алсо, теперь можно загружать/сохранять конфиги.
|
Конфиг сохраняется, но не загружается. У тебя там мелкая ошибка: перепутано название диалога открытия файлов. |
|
Вернуться к началу |
|
|
|