Автор Тема: [SMD] Messida - debugger for IDA Pro  (Прочитано 13066 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1299
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #30 : 05 Сентябрь 2015, 13:50:49 »
Ну что ж, попробую.

Оффлайн Takamura-kun

  • Пользователь
  • Сообщений: 1142
  • Пол: Мужской
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #31 : 05 Сентябрь 2015, 14:56:26 »
зарелизил версию v1.4
Сейчас заценим) спасибо

А вообще как у MESS с эмуляцией дела обстоят, лучше, чем у Kega/Regen?

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1299
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #32 : 05 Сентябрь 2015, 15:09:52 »
worm, он по крайней мере всякие мапперы держит. В отличии от Кеги. Но в плане звука и некоторых других фич, Кега лучше.

Оффлайн tgitv

  • Пользователь
  • Сообщений: 21
    • ВКонтакте
    • Steam
    • Youtube
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #33 : 05 Сентябрь 2015, 15:12:22 »
Обновил до версии 1.1. Тестируйте, не стесняйтесь.
Спасибо! Работает!

Оффлайн MetalliC

  • Технический консультант
  • Сообщений: 9517
  • Пол: Мужской
  • Demul team / MAME developer
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #34 : 05 Сентябрь 2015, 15:41:28 »
Цитата: worm
А вообще как у MESS с эмуляцией дела обстоят, лучше, чем у Kega/Regen?

с эмуляцией таймингов доступа к VDP так почти никак, так что играм к этому критичным будет не хорошо.

на счет звука не согласен, он лучше/точнее чем в Кега, хотя и может звучать не так сочно т.к. нет интерполяций и прочих улучшательств.

Оффлайн Takamura-kun

  • Пользователь
  • Сообщений: 1142
  • Пол: Мужской
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #35 : 06 Сентябрь 2015, 00:15:38 »
Иногда вылетает. Возможно из-за моего вмешательства в дизассемблируемый код?

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1299
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #36 : 06 Сентябрь 2015, 01:20:05 »
worm, было бы неплохо, если ты сможешь понять, когда и при каких обстоятельствах происходит вылет. Тогда я смог бы пофиксить.

MetalliC, лодырь готов: https://github.com/DrMefistO/sdc_loader. Только убери арии из конфига.

Оффлайн MetalliC

  • Технический консультант
  • Сообщений: 9517
  • Пол: Мужской
  • Demul team / MAME developer
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #37 : 06 Сентябрь 2015, 15:57:48 »
супер, спасибо. буду пробовать.

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1299
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #38 : 06 Сентябрь 2015, 15:59:13 »
Если захочешь чего коммитить, сообщи, и я тебя добавлю в контрибуторы.

Оффлайн Takamura-kun

  • Пользователь
  • Сообщений: 1142
  • Пол: Мужской
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #39 : 06 Сентябрь 2015, 19:20:52 »
Цитата: DrMefistO
было бы неплохо, если ты сможешь понять, когда и при каких обстоятельствах происходит вылет. Тогда я смог бы пофиксить.

во время остановки эмуляции, при этом я долго (час, примерно) эмулировал без остановки и немного правил указатели в ida до этого. Если что-то узнаю об этом подробнее - обязательно сообщу.

Кстати, насколько сложно сделать linux версию сего лакомого кусочка?
« Последнее редактирование: 06 Сентябрь 2015, 19:30:16 от worm »

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1299
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #40 : 06 Сентябрь 2015, 19:34:31 »
worm, если у тебя есть Ида под линукс, то можно. У меня нету. А какая у тебя?

Оффлайн Takamura-kun

  • Пользователь
  • Сообщений: 1142
  • Пол: Мужской
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #41 : 06 Сентябрь 2015, 21:15:30 »
worm, если у тебя есть Ида под линукс, то можно. У меня нету. А какая у тебя?
6.5 :)
На дропбоксе валяется, могу расшарить, если нужна. Только она недоломана и базу не сохранить и не загрузить. Вместо этого, нужно использовать Dump Database to IDC file и Script file :lol:
Без SDK, конечно, раздавали.

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1299
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #42 : 06 Сентябрь 2015, 21:24:34 »
worm, если там нету процов из про-версии, то не выйдет.

Оффлайн Takamura-kun

  • Пользователь
  • Сообщений: 1142
  • Пол: Мужской
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #43 : 06 Сентябрь 2015, 21:39:34 »
Кажется, все работает, за исключением сохранения/загрузки баз. :)
Нужен ведь именно сеговский проц?)

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1299
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #44 : 06 Сентябрь 2015, 22:04:13 »
worm, собрать-то можно. Но придется вникать долго, как все то, что я наконфигурил для студии, перенести в параметры для Make.

Оффлайн Takamura-kun

  • Пользователь
  • Сообщений: 1142
  • Пол: Мужской
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #45 : 06 Сентябрь 2015, 22:18:17 »
worm, собрать-то можно. Но придется вникать долго, как все то, что я наконфигурил для студии, перенести в параметры для Make.
Аа, тогда ну его) проще с виртуалки запускать - конечная цель все равно одна)

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1299
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #46 : 12 Сентябрь 2015, 02:28:59 »
Обновил до версии 1.4.1. Изменения в шапке.

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1299
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #47 : 12 Сентябрь 2015, 13:46:43 »
Версия v1.4.2:
  • Исправлено продолжение запуска эмуляции после первого бряка;
  • Исправлено отображение содержимого памяти для всех регионов.
Критический апдейт.
« Последнее редактирование: 12 Сентябрь 2015, 13:57:53 от DrMefistO »

Оффлайн Takamura-kun

  • Пользователь
  • Сообщений: 1142
  • Пол: Мужской
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #48 : 12 Сентябрь 2015, 19:22:47 »
Исправлено продолжение запуска эмуляции после первого бряка
Вот это очень хорошо) напрягало немного

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1299
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #49 : 12 Сентябрь 2015, 19:43:23 »
worm, ну так надо сообщать) А то "все хорошо", "все замечательно".. )

Оффлайн Takamura-kun

  • Пользователь
  • Сообщений: 1142
  • Пол: Мужской
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #50 : 13 Сентябрь 2015, 23:08:25 »
worm, ну так надо сообщать) А то "все хорошо", "все замечательно".. )
Так это пустяковый баг)) не хотел напрягать, у тебя, наверно, и без того работы по плагину хватает))
Кстати, я узнал про вылет кое-что. Он случается чаще, когда выхожу escape'ом из эмуляции)

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1299
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #51 : 13 Сентябрь 2015, 23:30:45 »
worm, окей, проверю это. А про баги все равно лучше сообщать.

Оффлайн Takamura-kun

  • Пользователь
  • Сообщений: 1142
  • Пол: Мужской
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #52 : 21 Сентябрь 2015, 17:02:18 »
Цитата
Желательно установить отсюда последние версии дополнительных модулей в помощь реверсеру: https://github.com/DrMefistO/smd_ida_tools/tree/master/build
404. Так и должно быть?

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1299
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #53 : 21 Сентябрь 2015, 19:09:41 »
В шапке я уже давно поправил линки. Это просто папки build уже нету.

Оффлайн Takamura-kun

  • Пользователь
  • Сообщений: 1142
  • Пол: Мужской
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #54 : 25 Сентябрь 2015, 13:21:52 »
Я заметил вот какую штуку. На всех ромах, что я "вспарывал", одинаковая функция инициализации (с оффсета $200) ее можно было бы занести в базу плагина :) (если, конечно, эти данные действительно статичны.)
Код: (Содрано с соника) [Выделить]
$200 ; Setup
$20e ; PortA_Ok
$22E ; SkipSecurity
$238 ; VDPInitLoop
$24A ; WaitForZ80
$250 ; Z80InitLoop
$25C ; ClrRAMLoop
$268 ; ClrCRAMLoop
$272 ; ClrVSRAMLoop
$27A ; PSGInitLoop
$28C ; run game

P.S.
Цитата
В шапке я уже давно поправил линки. Это просто папки build уже нету.
Сразу попрошу прощения за тупость - ничего не могу с собой поделать :D
т.е. smd_loader и smd_consts теперь вшиты в messida.plw? Или их нужно билдить вручную?
Потому, что линк на папку build в шапке остался, а скомпилированных smd_loader и smd_consts нигде не могу найти. Так что сижу на старых версиях)

Оффлайн s1nka

  • Пользователь
  • Сообщений: 1580
  • Пол: Мужской
    • Steam
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #55 : 25 Сентябрь 2015, 13:26:52 »
worm, в шапки ссылка на проект messida, smd_loader и smd_consts лежат в проекте smd_ida_tools. Перейти в раздел Releses и там лежат бинарники последних версий smd_loader и smd_consts.

Оффлайн Takamura-kun

  • Пользователь
  • Сообщений: 1142
  • Пол: Мужской
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #56 : 25 Сентябрь 2015, 13:34:58 »
s1nka, спасибо! :)
Перейти в раздел Releses и там лежат бинарники последних версий smd_loader и smd_consts.
Если бы Вы не предоставили ссылку на эту папку, я бы и в smd_ida_tools ее не нашел. Мистика.
Поковырялся и нашел все таки, прогресс))
« Последнее редактирование: 25 Сентябрь 2015, 13:43:45 от worm »

Оффлайн s1nka

  • Пользователь
  • Сообщений: 1580
  • Пол: Мужской
    • Steam
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #57 : 25 Сентябрь 2015, 14:10:58 »
worm, уличная магия. :). Рад помочь.

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1299
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #58 : 25 Сентябрь 2015, 15:04:20 »
worm, эти функции именно на этих местах встречаются чаще всего вроде только в официальных сеговских играх.
У меня была другая идея:
создать сигнатуры на известные участки кода. Оно тогда будет подходить для всех ромов. Только надо продумать структуру таких сигнатур, и, что там будет лежать. Например, есть всякие там таблицы данных, или упаковщики. Их можно детектить так. Но это - задача отдельного проекта...)

Оффлайн Takamura-kun

  • Пользователь
  • Сообщений: 1142
  • Пол: Мужской
    • Просмотр профиля
Re: MESSIDA - Sega Genesis Debugger for IDA Pro (beta testing)
« Ответ #59 : 25 Сентябрь 2015, 18:40:19 »
Хорошая идея) кстати, при вылете, оказывается, создается дамп файл. Скинуть?