Разработка и ромхакинг > Ромхакинг и программирование
[PSX] Ghidra PSX Loader
(1/3) > >>
DrMefistO:
Привет всем,

Представляю вашему вниманию загрузчик исполняемых файлов первой плойки для GHIDRA. Возможности:

* Создаёт порты и секции. В случае PsyQ умеет находить main() и секции компилятора: .rdata, .text, .data, .sdata, .sbss, .bss
* Ищет сигнатуры библиотечных функций для PsyQ всех доступных версий
* Поддерживает SYM файлы
* Умеет работать с LIB и OBJ файлами PsyQ SDK
* Умеет подгружать данные для оверлей-блоков
* Автоматически применяет и создаёт типы данных для библиотечных функций
Релизы: https://github.com/lab313ru/ghidra_psx_ldr/releases
Исходники: https://github.com/lab313ru/ghidra_psx_ldr


Sharpnull:
Старая тема не редактируется? [PSX] GHIDRA Playstation Loader
DrMefistO:
А, сорян) я и забыл о том, что её уже создавал. Можно удалить старую? А то там срач в коментах
dedok179:
Поддержку SYM не пробовал реализовать как в TDR? Правда там просто декомпилирование с достройкой кода
DrMefistO:
TDR? А исходники есть?
dedok179:

--- Цитата: DrMefistO от 24 Ноябрь 2019, 11:34:19 ---TDR? А исходники есть?

--- Конец цитаты ---
Автор темы вроде как брал некоторую инфу из твоего лоадера.
DrMefistO:
Выглядит круто. Только, как я понял, PsyQ символы он не поддерживает? (Ещё не смотрел исходники, но нужно глянуть).

Да и мой загрузчик ушёл далеко вперёд, может больше, чем было. Как раз планирую добавить поддержку SYM.
dedok179:

--- Цитата: DrMefistO от 24 Ноябрь 2019, 12:27:34 ---Выглядит круто. Только, как я понял, PsyQ символы он не поддерживает? (Ещё не смотрел исходники, но нужно глянуть).

Да и мой загрузчик ушёл далеко вперёд, может больше, чем было. Как раз планирую добавить поддержку SYM.

--- Конец цитаты ---
Вроде как должен был (не обратил внимания)
DrMefistO:
Насколько я понял, он только по SYM-файлу всё делает. Ну и плюс стандартный стаб для PSYQ детектит, сигнатуры - нет..

Добавлено позже:
Забавно, но его .elf-конвертер не умеет детектить секции PSYQ.


Добавлено позже:
Version v1.8: Added Psyq v4.5 signatures, updated PsyQ v4.7, small fixes.
dedok179:

--- Цитата: DrMefistO от 24 Ноябрь 2019, 14:55:32 ---Насколько я понял, он только по SYM-файлу всё делает. Ну и плюс стандартный стаб для PSYQ детектит, сигнатуры - нет..

Добавлено позже:
Забавно, но его .elf-конвертер не умеет детектить секции PSYQ.


Добавлено позже:
Version v1.8: Added Psyq v4.5 signatures, updated PsyQ v4.7, small fixes.

--- Конец цитаты ---
Приятно видеть что он развивается  :)
MetalliC:
а этот лодырь подхватит обычный бинарник, не ELF ?
всё собираюсь мыслями поковырять бинарники одной железки на MIPS VR4300, но хз пользовать по-старинке иду или же попробовать гидру...
DrMefistO:
Этот лоадер для PS-EXE, и в будущем CPE бинарей, но не ELF.. Если твой бинарь не такого формата, то не подтянет.

А вообще, если нужна декомпиляция мипса - это про гидру. Лоадер пишется на изи, если понадобится.
brill:
Оперативным был фикс. Спасибо.
DrMefistO:
Выпустил новую версию:

* Поддержка SYM-файлов: функции (аргументы и возвращаемое значение), глобальные переменные, enum-ы, typdef-ы
* Ручной и автоматический выбор региона RAM: по заголовку, либо из вариантов 0x00xxxxxx, 0xA0xxxxxx, 0x80xxxxxx
worm:
Хорошо, очень хорошо) вот бы все это дело применить ещё в хакинге - было бы идеально)


--- Цитата: DrMefistO от 23 Ноябрь 2019, 21:02:25 ---А то там срач в коментах
--- Конец цитаты ---
Не переживай за сию утрату - я тебе его и тут организую :lol:
dedok179:

--- Цитата: DrMefistO от 30 Ноябрь 2019, 01:14:37 ---Выпустил новую версию:

* Поддержка SYM-файлов: функции (аргументы и возвращаемое значение), глобальные переменные, enum-ы, typdef-ы
* Ручной и автоматический выбор региона RAM: по заголовку, либо из вариантов 0x00xxxxxx, 0xA0xxxxxx, 0x80xxxxxx
--- Конец цитаты ---
Спасибо, щас глянем как это выглядит)
DrMefistO:
Подскажите ещё игры, где есть SYM?

Добавлено позже:
Ответ найден: https://www.retroreversing.com/ps1-debug-symbols
DrMefistO:
Вернул FLAIR (PAT) сигнатуры - больше рейт успешности определения функции.
DrMefistO:
Выпустил версию v2.2: теперь поддерживаются оверлеи из SYM-файлов, применяется больше имён и типов.
DrMefistO:
Зарелизил v2.3: теперь можно подгружать данные для оверлей блоков. (Для применения в декомпиляторе, придётся выбирать нужный блок для каждой вызываемой ссылки, или ссылки на данные. Гидра сама не может знать, к какому из оверлеев идёт обращение.)
Навигация
Главная страница сообщений
Следующая страница

Перейти к полной версии