Разработка и ромхакинг > Инструменты
[PS1] PCSX 1.5 с отладчиком
dedok179:
--- Цитата: Mr2 от 20 Июня 2022, 09:43:11 ---Ты просто судишь со стороны, на практике всё круто.
--- Конец цитаты ---
Так и есть. Никаких лишних настроек окон и прочего, открыл и весело работай. С тем же PCSX Redux мне к примеру не слишком комфортно работать из-за того что вечно надо настраивать окна, так еще и бывает что и настройки этого всего слетают и это отдельно бесит.
Griever:
--- Цитата: Sharpnull от 20 Июня 2022, 02:08:42 ---повторить функции NO$PSX уйдёт много времени
--- Конец цитаты ---
А каких функций не хватает в No$psx?
nonamezerox:
--- Цитата: Mr2 от 06 Августа 2022, 08:24:39 ---Pcsx 1.5 с отладчиком v5
Добавлены псевдо инструкции.
Исправлена очистка "Clear PC".
Исправлена очистка "Clear REG".
Удалена кнопка "Развернуть", из меню иконки.
Исходный код.
*По ссылке переходить с установленным в браузер Adblock.
--- Конец цитаты ---
А тут обзывать метки и адреса можно буковами человеческими и запоминать эти обзывалки? Ну, что бы в простыне отображались вместо волшебных шестнадцатиразрядных чисел?
Mr2:
--- Цитата: nonamezerox от 08 Августа 2022, 10:02:48 ---А тут обзывать метки и адреса можно буковами человеческими и запоминать эти обзывалки?
--- Конец цитаты ---
Нет.
--- Цитата: nonamezerox от 08 Августа 2022, 10:02:48 ---Ну, что бы в простыне отображались вместо волшебных шестнадцатиразрядных чисел?
--- Конец цитаты ---
Дизассемблер в дебаггере сделан для поверхностного анализа. Для нормальной работы с кодом, нужно использовать IDA или Ghidra. Также есть хороший дизассемблер SlowR3KA, но он больше для модификации кода, а не для анализа.(метки прописываются в дизассемблированном файле)
nonamezerox:
--- Цитата: Mr2 от 08 Августа 2022, 10:24:25 ---Нет.
Дизассемблер в дебаггере сделан для поверхностного анализа. Для нормальной работы с кодом, нужно использовать IDA или Ghidra. Также есть хороший дизассемблер SlowR3KA, но он больше для модификации кода, а не для анализа.(метки прописываются в дизассемблированном файле)
--- Конец цитаты ---
Жаль, хотя бы еще колонку label слева от колонки instr просто с TextBox (просто что бы буквы ввести и всё) бы добавить.. Эх...
paul_met:
--- Цитата: Mr2 от 06 Августа 2022, 08:24:39 ---Добавлены псевдо инструкции.
--- Конец цитаты ---
А эта самодеятельность для чего?
Mr2:
--- Цитата: paul_met от 08 Августа 2022, 18:20:00 ---А эта самодеятельность для чего?
--- Конец цитаты ---
Для удобства, по названию команды сразу определяешь её предназначение. Допустим, из кучи инструкций SW, не нужно отсекать 8 сохранений в стек, чтобы найти сохранение(SW) в нужный адрес, так как сохранение в стек будет иметь своё название. Все псевдоинструкции описаны в документации, также имеется флаг их отключения.
paul_met:
--- Цитата: Mr2 от 08 Августа 2022, 18:39:25 ---Для удобства, по названию команды сразу определяешь её предназначение. Допустим, из кучи инструкций SW, не нужно отсекать 8 сохранений в стек, чтобы найти сохранение(SW) в нужный адрес, так как сохранение в стек будет иметь своё название. Все псевдоинструкции описаны в документации, также имеется флаг их отключения.
--- Конец цитаты ---
По мне, так такое переименование только вносит путаницу. Человек уже изучил все официальные названия инструкций, а тут ему предлагают те же самые только якобы с более удобными названиями и изучение идёт по второму кругу и по другому мануалу. Гораздо удобнее было бы просто выделить цветом соответствующие инструкции (как в вышеупомянутом SlowR3KA). Тогда сразу будут чётко видны прыжки, чтения, записи, сравнения и т.д.
Mr2:
--- Цитата: paul_met от 08 Августа 2022, 20:01:57 ---Человек уже изучил все официальные названия инструкций, а тут ему предлагают те же самые только якобы с более удобными названиями
--- Конец цитаты ---
Не совсем так, оригинальные инструкции описывают общий принцип, как например ORI v0, zr, 4. LI v0, 4 указывает на конкретную операцию. Да и в официальных доках, описаны некоторые псевдо инструкции.
--- Цитата: paul_met от 08 Августа 2022, 20:01:57 --- и изучение идёт по второму кругу и по другому мануалу.
--- Конец цитаты ---
Псевдо инструкции это не переименование оригинальных инструкций, так что учить будешь по первому кругу. ;)
К тому же потом сможешь использовать их в PSIG. К примеру нужно тебе копировать значение регистра v1 в регистр v0, не ломая голову пишешь COPY v0, v1 и дело в шляпе! :drinks:
--- Цитата: paul_met от 08 Августа 2022, 20:01:57 ---Гораздо удобнее было бы просто выделить цветом соответствующие инструкции (как в вышеупомянутом SlowR3KA). Тогда сразу будут чётко видны прыжки, чтения, записи, сравнения и т.д.
--- Конец цитаты ---
Для подсветки синтаксиса нужно не хило напрячься, я к такому не готов. :neznayu:
paul_met:
Mr2, У плойки простецкий процессор со скудным набором инструкций (даже SH2 посложнее будет), какие тут могут быть напряги? Псевдо инструкции весьма сомнительное улучшение, а вот выделение цветом реально бы помогло отделить "мух от котлет", сохраняя при этом оригинальный и привычный для всех, кто в теме, синтаксис.
nonamezerox:
--- Цитата: Mr2 от 20 Июня 2022, 09:43:11 ---Я хотел сделать, но на winApi это слишком заморочено.
--- Конец цитаты ---
--- Цитата ---
typedef struct tagLVITEMA {
UINT mask;
int iItem;
int iSubItem;
UINT state;
UINT stateMask;
LPSTR pszText;
int cchTextMax;
int iImage;
LPARAM lParam;
int iIndent;
int iGroupId;
UINT cColumns;
PUINT puColumns;
int *piColFmt;
int iGroup;
} LVITEMA, *LPLVITEMA;
--- Конец цитаты ---
Можно колонку с пиктограммами добавить ;)
Mr2:
--- Цитата: nonamezerox от 10 Августа 2022, 08:27:53 ---Можно колонку с пиктограммами добавить ;)
--- Конец цитаты ---
Исходники открыты, можешь добавить всё что хочешь. :surrender:
paul_met:
Сделал небольшой редизайн окна отладки и убрал активацию псевдо инструкций по умолчанию (думаю, Mr2 не будет против альтернативы). Кому интересно, прикрепил файл.
Mr2:
--- Цитата: paul_met от 10 Августа 2022, 23:12:39 ---Сделал небольшой редизайн окна отладки и убрал активацию псевдо инструкций по умолчанию (думаю, Mr2 не будет против альтернативы).
--- Конец цитаты ---
Я только за! :drinks:
Mr2:
Pcsx 1.6 с отладчиком v6
Исправлена инструкция SLTIU, в режиме интерпретации.
Добавлен выбор операций сравнения, для брейкпоинтов чтения\записи.
Добавлен выбор операций сравнения, для брейкпоинта на запись в регистр.
Скорректирован ввод адреса в поле перехода\отображения инструкции.
Добавлена опция использования дампа вместе с сейвстейтом.
Добавлено окно параметров отладчика.
Исходный код.
*По ссылке переходить с установленным в браузер Adblock.
dedok179:
Спасибо что продолжаешь обновлять его :thumbup:
Mr2:
Pcsx 1.6 с отладчиком v7
Добавлена возможность редактировать текст в окне лога.
Добавлена проверка выполнения неизвестной инструкции.
Исходный код.
*По ссылке переходить с установленным в браузер Adblock.
--- Цитата: dedok179 от 13 Октября 2022, 19:00:42 ---Спасибо что продолжаешь обновлять его :thumbup:
--- Конец цитаты ---
:hi:
dedok179:
Можешь пожалуйста добавить дополнительную возможность перехода по address+offset и чтобы после перехода по нему стиралось только поле offset (ну и флаг стирать address или нет), очень поможет в навигации по структурам (мне уже калькулятор во сне приходит)
Mr2:
--- Цитата: dedok179 от 11 Декабря 2022, 18:03:52 ---Можешь пожалуйста добавить дополнительную возможность перехода по address+offset и чтобы после перехода по нему стиралось только поле offset (ну и флаг стирать address или нет), очень поможет в навигации по структурам (мне уже калькулятор во сне приходит)
--- Конец цитаты ---
Идея хорошая, но ещё одно поле впендюрить некуда :), придётся поле базового адрес пихать в опции. ;)
paul_met:
А я бы предпочёл, чтобы значение в редактируемом поле PC после нажатия кнопок прыжка или показа (разница между ними до сих пор не понятна) не стиралось или автоматом копировалось в буфер обмена (тем более, что его постоянно надо туда копировать).
Навигация
Перейти к полной версии