Разработка и ромхакинг > Ромхакинг
PSX Дебаггер
<< < (2/4) > >>
Mr2:

--- Цитата: paul_met от 08 Май 2022, 21:22:34 ---Копирования адресов PC и значения регистров очень не хватало.
--- Конец цитаты ---

 :drinks:


--- Цитата: paul_met от 08 Май 2022, 21:22:34 ---А вот некоторые новые фичи не совсем понятны.Что-то у меня данная функция не работает корректно.
--- Конец цитаты ---

Если что, в архиве с дебаггером есть мануал.


--- Цитата: paul_met от 08 Май 2022, 21:22:34 ---Если галочка на auto стоит, то при переключении между 1-2-4 режимами байт, отображаются левые значения по текущему адресу.
--- Конец цитаты ---

В разделе ''Mem patch", есть поле адреса и поле данных. В поле данных нужно вписать адрес памяти из которого хочешь прочитать данные, и нажмать на кнопку Byte, в зависимости от нужного количества байт.


--- Цитата: paul_met от 08 Май 2022, 21:22:34 ---Нажатие на кнопку Get не даёт никакого результата.

--- Конец цитаты ---
Эта кнопка для получения значения из регистра или координат памяти. В разделе ''Mem patch", впиши в поле данных имя регистра или координаты памяти, и нажми кнопку get.(подробности есть в мануале)
paul_met:

--- Цитата: Mr2 от 08 Май 2022, 22:01:36 ---В поле данных нужно вписать адрес памяти из которого хочешь прочитать данные, и нажмать на кнопку Byte, в зависимости от нужного количества байт.
--- Конец цитаты ---
Во-первых, вводить адрес в поле для данных - это не логично. Поле адреса - для адреса, поле данных - для данных.
Во-вторых, это не работает. Я ввожу полный адрес в поле для данных и нажимают любую из кнопок (1-2-4 байт) и поле данных просто очищается (при любом положение auto).
По мне, так надо вводить адрес в поле адреса и поcле нажатия на какую-либо из кнопок размера байт в поле данных должны появляться эти самые байты. При этом пользователь видит и вводимый адрес в нужном поле и полученные по этому адресу данные.


--- Цитата ---Эта кнопка для получения значения из регистра или координат памяти. В разделе ''Mem patch", впиши в поле данных имя регистра или координаты памяти, и нажми кнопку get.(подробности есть в мануале)
--- Конец цитаты ---
Заморочки с координатами памяти вообще лишние, ведь проще и понятнее вводить в поле полный адрес, чем высчитывать его координаты по окну. Аналогично с получением значения из регистра через окно Mem patch - неудобная и ненужная функция, так как значение регистра теперь можно получить двойным кликом на него в окне с регистрами.
Вообще, на твоём месте я бы сделал ещё и pupup меню, которое выпадает при клике правой кнопкой мыши по окнам со списком регистров, инструкций/PC/DISASM и Memory. А у же в самом меню можно было выбрать какие именно данные копировать в буфер.
Mr2:

--- Цитата: paul_met от 09 Май 2022, 09:42:45 ---Во-первых, вводить адрес в поле для данных - это не логично. Поле адреса - для адреса, поле данных - для данных.

--- Конец цитаты ---
Поле адреса может быть занято, если пользователь решил пропатчить прочитанное из памяти значение в другой адрес.


--- Цитата: paul_met от 09 Май 2022, 09:42:45 ---Во-вторых, это не работает. Я ввожу полный адрес в поле для данных и нажимают любую из кнопок (1-2-4 байт) и поле данных просто очищается (при любом положение auto).
--- Конец цитаты ---
Понял, не читаются адреса начинающиеся с 8-ки: 80026ac4, без 8-ки работает: 26ac4 . Перед релизом тестировал на игре, которая не использует в памяти 8-ку. Нужно будет поправить, спасибо за наводку. :)


--- Цитата: paul_met от 09 Май 2022, 09:42:45 ---Заморочки с координатами памяти вообще лишние, ведь проще и понятнее вводить в поле полный адрес, чем высчитывать его координаты по окну. Аналогично с получением значения из регистра через окно Mem patch - неудобная и ненужная функция, так как значение регистра теперь можно получить двойным кликом на него в окне с регистрами.
--- Конец цитаты ---
Это альтернативные функции получения значений, они были добавлены раньше чем получение значений кликом. Также вместо значений регистров можно использовать их имена, в любом поле. Координаты памяти короче чем адрес: m6a = 80026ac4. Координаты также можно использовать в любом поле. Тут по выбору, что быстрее, дотянуться до окна и  сделать клик, или ввести руками имя. :neznayu:


--- Цитата: paul_met от 09 Май 2022, 09:42:45 ---Вообще, на твоём месте я бы сделал ещё и pupup меню, которое выпадает при клике правой кнопкой мыши по окнам со списком регистров, инструкций/PC/DISASM и Memory. А у же в самом меню можно было выбрать какие именно данные копировать в буфер.

--- Конец цитаты ---
Я думал о подобном, но реализация муторная. :-\
LedZeppelin68:
Спасибо за апдейт, давным давно пользуюсь этим дебаггером

этот релиз даже сподвиг записать видео по хакингу
https://www.youtube.com/watch?v=DiBPNb8GwGs

А можно ли добавить функцию фильтра program counter'ов?
списочек где-нибудь сбоку, в который можно было бы добавлять (и удалять) PC, по которым бы дебаггер не срабатывал
Mr2:

--- Цитата: LedZeppelin68 от 10 Май 2022, 03:24:48 ---Спасибо за апдейт, давным давно пользуюсь этим дебаггером
--- Конец цитаты ---
:hi:


--- Цитата: LedZeppelin68 от 10 Май 2022, 03:24:48 ---этот релиз даже сподвиг записать видео по хакингу
https://www.youtube.com/watch?v=DiBPNb8GwGs
--- Конец цитаты ---
Ого, электроники дают! Даже в Dino Crisis  пароли к дверям не шифровали. :)

По незадействованному в видео функционалу:
1. Получить адрес PC, можно двойным кликом левой кнопки мыши по инструкции.
2. Дамп можно открывать кнопкой: "Open dump", располагается рядом с сейв стетами.
3. Текст можно просматривать в окне памяти, двойным кликом левой кнопки мыши.


--- Цитата: LedZeppelin68 от 10 Май 2022, 03:24:48 ---А можно ли добавить функцию фильтра program counter'ов?
списочек где-нибудь сбоку, в который можно было бы добавлять (и удалять) PC, по которым бы дебаггер не срабатывал

--- Конец цитаты ---
Проверка списка будет замедлять эмуляцию. Если нужно исключить инструкции чтения/записи, то их можно удалить пропатчив адрес инструкции нулями(00000000).
LedZeppelin68:

--- Цитата: Mr2 от 10 Май 2022, 07:58:03 --- :hi:
По незадействованному в видео функционалу:
1. Получить адрес PC, можно двойным кликом левой кнопки мыши по инструкции.
2. Дамп можно открывать кнопкой: "Open dump", располагается рядом с сейв стетами.
3. Текст можно просматривать в окне памяти, двойным кликом левой кнопки мыши.

--- Конец цитаты ---

Я пока ещё по старинке, буду привыкать к новым возможностям :)


--- Цитата ---Проверка списка будет замедлять эмуляцию. Если нужно исключить инструкции чтения/записи, то их можно удалить пропатчив адрес инструкции нулями(00000000).

--- Конец цитаты ---
Да такой финт мне известен, но не всегда игра после этого работает :)
Mr2:

--- Цитата: LedZeppelin68 от 10 Май 2022, 10:59:30 ---Я пока ещё по старинке, буду привыкать к новым возможностям :)
--- Конец цитаты ---
Я тоже вчера, дебажил игру, и по привычки хотел переписать значение регистра вручную, но быстро опомнился. :lol:


--- Цитата: LedZeppelin68 от 10 Май 2022, 10:59:30 ---Да такой финт мне известен, но не всегда игра после этого работает :)

--- Конец цитаты ---
На практике, такое редко нужно делать, обычно пишу список  инструкций обращающихся к нужному адресу, затем поочерёдно отключаю каждую, пока не дойду до нужной.
Также для разметки обращений к памяти, и отработавших инструкций есть Code Marker.
dedok179:
Отдельное спасибо за возможность получения адреса по столбцу. Теперь не нужно ломать глаза в поиске нужного. Ну а если по всем изменениям, работать с кодом стало в принципе пободрее
yousver2:
крайне неплохой дебаггер, очень впечатляет возможность дебага спу и дма, и регистров. Единственное, что немного расстраивает - нет step over и step out, как в других дебаггерах. Вот бы еще их как нибудь добавить, вообще сказка была бы. Еще лично у меня баг - при сохранении игры на Ф1 почему то экран блимкает 1 раз, и окно эмуля становится матовым, без изображения геймплея. Разгрузка нормальная, на ф3, без каких либо багов. Причем сам сейв проходит нормально - если я разгружусь.
Aleksey19:
Mr2, Здравствуйте, а вы бы не хотели сделать видео уроки, по вашим мануалам и программам?
krocki:
Нашёл у себя файлик мануал по хакингу вдруг кому надо (прям ностальгия!!!)... тык... ^_^
Mr2:

--- Цитата: Aleksey19 от 03 Июнь 2022, 15:15:44 ---Mr2, Здравствуйте, а вы бы не хотели сделать видео уроки, по вашим мануалам и программам?

--- Конец цитаты ---
Нет, не хочу. :)
Aleksey19:
krocki, спасибо, будем изучать) а что-то подобное для ps1 есть не знаешь?)
krocki:
Aleksey19, ОК сделал обзорчик как сумел зыыыырк!!! ::)
Снизу добавил мнемонику...
Aleksey19:
krocki, спасибо, с меня шоколадка)
Mr2:
krocki, память в дебаггере меняется через патчер "Mem Patch".
В поле Address пишешь адрес памяти, в поле ниже, пишешь данные.
Также память можно сдампить, отредактировать в хекс редакторе и загрузить назад.(кнопки:Dump,  Open Dump, Load)
krocki:
Mr2, ОК будем знать...хотя я уже привык по своему все по старинке и парой неудобными вариантами как то изворачиваться. ^_^
Aleksey19, Вот ещё нашёл у себя старенький мануал... ;)
Aleksey19:
krocki, вот этот мануал кстати есть, пробовал, получалось))) были просто маленькие вопросы, почему именно так, если честно спрошу)
Sharpnull:
Его пилить ещё вечность, пока по GUI он ни о чём. Нужно:
* Моноширинный шрифт, сейчас текст везде пляшет.
* Нормальный редактор памяти как у всех с поиском в памяти, переходом по Ctrl+G, заморозкой значения, отображением недавно использованной памяти и т. д. как в BizHawk/Mesen. В отдельном окне. Костыли Mem Patch и RAM уходят автоматом.
* Редактирование регистров через список регистров.
* Прокрутка кода колесом мыши и полосой прокрутки.
* Подсветка кода. Отображение высчитанных значений.
* Ассемблер для вставки кода.
* Список точек останова. Сложные условия как в MAME.
* DEC 2 HEX - перевод во время ввода, хотя сама панель может не к месту, тогда уж ещё сделать автоматический перевод в dec при выделении в редакторе памяти как в HxD.
* Подсказки при наведении, читать каждый раз доки утомительно.
Что-то сделать несложно уже сейчас, но хотя бы повторить функции NO$PSX уйдёт много времени (там тоже интерфейс не самый удобный).
Код нужно выкладывать на Github, первый коммит оригинальной версией, а то на romhacking только последняя версия и изменения не видны.
Mr2:

--- Цитата: Sharpnull от 20 Июнь 2022, 02:08:42 ---Его пилить ещё вечность, пока по GUI он ни о чём.
--- Конец цитаты ---
Ты просто судишь со стороны, на практике всё круто.


--- Цитата: Sharpnull от 20 Июнь 2022, 02:08:42 ---* Подсветка кода. Отображение высчитанных значений.
--- Конец цитаты ---
Я хотел сделать, но на winApi это слишком заморочено.


--- Цитата: Sharpnull от 20 Июнь 2022, 02:08:42 ---* Ассемблер для вставки кода.
--- Конец цитаты ---
Проще использовать PSIG.


--- Цитата: Sharpnull от 20 Июнь 2022, 02:08:42 ---Код нужно выкладывать на Github, первый коммит оригинальной версией, а то на romhacking только последняя версия и изменения не видны.

--- Конец цитаты ---
Оригинальной версии нет. Версия от Хоррора не срефакторина, её вообще нужно удалить.
Я с Гитхабом не дружу. Список изменений текущей версии есть в документации.(внутри проекта есть папка Docs, в которой лежит файл DebuggerUpdates.txt)

Навигация
Главная страница сообщений
Следующая страница
Предыдущая страница

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