Автор Тема: Smd IDA Tools - Sega Mega Drive reversing helpers  (Прочитано 22006 раз)

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

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1294
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« : 08 Февраль 2015, 21:16:43 »
Собственно, проект по написанию крутых специфичных плагинов в помощь ромхакерам SMD.

Включает:
 - ROM loader - загрузчик, позволяющий грузить ромы сеги в IDA Pro. Благодарности HardwareMan'у за основу;
 - Z80 sound drivers loader - позволяет загружать звуковые драйвера для Sega в IDA Pro. Автоматически именуются порты и создаются сегменты;
 - Z80 sound drivers debugger - позволяет отлаживать звуковые драйвера в IDA Pro;
 - Gensida debugger - дебагер-плагин который позволяет дебажить ромы Sega Genesis / Mega Drive);
 - Smd Constants identifier - при нажатии на J на константе, отправляемой в какой-либо командный регистр, в комментарий выведется инфа о том, что данное число значит, какие флаги устанавливает;
 - ASM Fixer - помогает при экспортировании листинга из IDA, и приведении его к ассемблируемому виду.
 - Генерация компилируемого ассемблерного листинга для AS/VASM/ASM68K прямо из коробки.

Проект развивающийся, поэтому каждый может предлагать свои идеи, изменения.

Исходники проекта и скомпиленые плагины здесь: https://github.com/lab313ru/smd_ida_tools2/releases
« Последнее редактирование: 26 Январь 2023, 03:03:14 от DrMefistO »

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2536
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #90 : 22 Октябрь 2020, 20:09:58 »
опять прогресс - логотип сега без звука огня, после второй экран. потом он гаснет, черный экран и все на этом. больше не вижу я где мог напортачить :( вроде все что увидел - поправил...  :'(

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1294
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #91 : 22 Октябрь 2020, 20:37:12 »
Можешь завести отдельную тему, плиз?

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2536
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #92 : 22 Октябрь 2020, 20:59:00 »
выжили :) обидно, печально, да ладно.

Оффлайн Takamura-kun

  • Пользователь
  • Сообщений: 1084
  • Пол: Мужской
  • Закалён и плечист.
    • ВКонтакте
    • Просмотр профиля
Re: Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #93 : 23 Октябрь 2020, 04:46:10 »
Можешь завести отдельную тему, плиз?
Нельзя. Важнейшим фактором в этом деле является мотивация и вдохновение. Эта тема служит ему источником вдохновения и таким образом, прилагая больше усердия, он быстрее справится с поставленной задачей.

выжили  обидно, печально, да ладно.
Не уходи - пусть док и недоволен, но Я тебе тут всегда рад) в любой момент заходи и спрашивай что угодно, желательно во всех подробностях, а док будет делиться с тобой своим опытом и подскажет что и как :)

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1294
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #94 : 23 Октябрь 2020, 11:30:35 »
Ну, какбэ, к моим советам не прислушались. А иного варианта сместить банк, кроме как перелопачивания кода я не вижу. Я же разбирал это всё в видео. А на каждый кусок кода говорить, что есть где, и что может быть не учтено - это гиблое дело. Тем более, тут тема об SmdIdaTools, а не о реверсе конкретной игры.

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3240
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #95 : 24 Октябрь 2020, 11:38:02 »
но на картинке есть еще "не отформатированное место" - обозначено вопросом. это не subroutine - как это безобразие двигать? ведь оно для чего-то то нужно.

перемести курсор на начало dc.b, кликни, а потом нажми C
и будет тебе счастье.
а если лень ставить брейкпоинт и играть, скачай мувик прохождения и крути его с фреймскипом.
всегда так делал, даже на стримах засветил по хакингу контры на сегу :)

кстати судя по тому, где этот код находится, верхний код запускается по указателю на функцию, значит к этому указателю по условию может добавляться цифра и таким образом процессор попадает в это место с кодом, а IDA этого не увидела, потому что она не умеет видеть в 4-х мерном измерении :D

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1294
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #96 : 24 Октябрь 2020, 15:23:26 »
Ну вот рассказал ты про конкретно этот случай, а там ещё других таких тыщи. И рефы бывают хитропосчитанные, или вообще не быть прямых, например на банки.

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1294
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #97 : 04 Апрель 2021, 01:41:48 »
С радостью сообщаю, что запилил Smd IDA Tools 2!
Теперь оно работает на IDA 7.x со всеми их фишками.

Ссылка: https://github.com/lab313ru/smd_ida_tools2

Оффлайн perfect_genius

  • Пользователь
  • Сообщений: 1169
    • ВКонтакте
    • Steam
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #98 : 04 Апрель 2021, 11:36:11 »
Какие фишки из 7.х наиболее полезны?
Что-нибудь связанное со скриптами?

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1294
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #99 : 04 Апрель 2021, 12:09:54 »
Самое крутое это undo redo. И много чего ещё по мелочи.

Оффлайн Nemesis_c

  • Пользователь
  • Сообщений: 1342
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #100 : 04 Апрель 2021, 18:33:16 »
С радостью сообщаю, что запилил Smd IDA Tools 2!
:hi: круто, затестимс

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1294
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #101 : 04 Апрель 2021, 18:47:18 »
Го на стрим в 8 по МСК.

Добавлено позже:
Обновил. Сделал некоторые фиксы.
« Последнее редактирование: 04 Апрель 2021, 19:04:48 от DrMefistO »

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1294
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #102 : 05 Апрель 2021, 01:20:45 »
На стриме обнаружились баги:) Вроде снова поправил.

Оффлайн Takamura-kun

  • Пользователь
  • Сообщений: 1084
  • Пол: Мужской
  • Закалён и плечист.
    • ВКонтакте
    • Просмотр профиля
Re: Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #103 : 05 Апрель 2021, 07:55:56 »
На стриме обнаружились баги:) Вроде снова поправил.
Это все эти ваши веб интерфейсы - от лукавого они!!)

Оффлайн Nemesis_c

  • Пользователь
  • Сообщений: 1342
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #104 : 05 Апрель 2021, 08:40:47 »
Го на стрим в 8 по МСК.
Проспал. 20 по Москве - 2 ночи у меня  :blush:

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1294
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #105 : 14 Апрель 2021, 22:29:26 »
Вышло обновление с исправлениями критичных багов (ида могла вылететь).

Оффлайн CaH4e3

  • Пользователь
  • Сообщений: 3589
    • Twitter
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #106 : 16 Апрель 2021, 18:33:39 »
а что там со снесом?

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1294
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #107 : 16 Апрель 2021, 19:05:15 »
Соседняя тема:)

Добавлено позже:
http://www.emu-land.net/forum/index.php/topic,85524.0.html

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1294
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #108 : 30 Апрель 2021, 01:32:46 »
Выпустил обновление:
- исправлен крэш, если закрыть Иду без отладки
- исправлено отображение lineA и lineF опкодов

Оффлайн CaH4e3

  • Пользователь
  • Сообщений: 3589
    • Twitter
    • Просмотр профиля
Re: Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #109 : 30 Апрель 2021, 23:51:29 »
у меня багрепорт.
1. берем рому, делаем базу иды в заданной папке. пускаем отладку - все ок
2. берем этот ром и эту базу и переносим куданить еще в другое место - на другой диск допустим. пускаем отладку - все по борозде.
3. как вариант в той же папке поменять БАЙТ в исходном роме, который к иде не относится более, так как она его уже ассимилировала каким он был прежде. пускаем отладку - все по побозде.

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

и да, 68ая версия.

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1294
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #110 : 30 Апрель 2021, 23:58:38 »
6.8 я не поддерживаю уже. Попробуй на 7.5.

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1294
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #111 : 02 Май 2021, 16:49:56 »
На последнем стриме обнаружились баги, которые, как оказалось, были оставлены по моей глупости:) Теперь они исправлены. Просьба скачать последний релиз.

Бага заключалась в крэше при изменении значений регистров.

Оффлайн CaH4e3

  • Пользователь
  • Сообщений: 3589
    • Twitter
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #112 : 04 Май 2021, 21:52:55 »
6.8 я не поддерживаю уже. Попробуй на 7.5.
ну хорошо, допустим я взял и мигрировал всю свою кодбазу под 7.х включая лодыри и скрипты (давно хотел переписать все нахер, чтобы было универсально и без кучи дублирующихся функций)
где гарантии, что не выйдет ида условно 8.0 и там все будет опять похерено и ты снова не уйдешь на эту иду, дропнув поддержку предыдущих версий и мне придется снова все переписывать? лол

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1294
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #113 : 04 Май 2021, 22:27:07 »
Вероятности меньше, только если не придумают x128 битность. Основная причина, по которой IDA 7.x отличается IDA 6.8 - это поддержка x86 в плагинах. Теперь её нет.

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1294
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #114 : 31 Май 2021, 20:03:57 »
Обновил проект:
  • Now there are two GENSes: one for debugging m68k roms, and the second one - to debug z80 sound drivers
  • Implemented YM2612 sound channels viewer/debugger
  • Fixed 32-bit values loading using lea instruction (it means 68020 as the default CPU for sega roms)
  • Other fixes


Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1294
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Re: Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #115 : 22 Июнь 2021, 22:06:31 »
Выложил новую версию:
  • Fixed 32-bit values lea
  • Fixed asm_fixer (moved to Python3 and IDA 7.x)
  • Added ability to patch roms in IDA
  • Moved to gRPC (stable work)
  • Fixed Z80 step over
  • Added YM2612 envelopes
  • Other minor fixes



« Последнее редактирование: 22 Июнь 2021, 22:12:47 от DrMefistO »

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1294
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #116 : 24 Июнь 2021, 19:04:53 »
Выпустил ещё две версии:
  • Fixed AR displaying
  • Changed colors for ADSR
  • Fixed YM2612 values editor
  • Added PSG values and controls
  • Fixed crash while stopping a debugging session from IDA in some cases
  • Now the Z80 sound drivers loader contains many useful enums with ym2612 register names, its values and so on
  • Fixed stepping over ldir and ei/di instructions in z80 debugger
  • Fixed z80 registers reading/writing. Added more register halves


Оффлайн shinta111

  • Пользователь
  • Сообщений: 3
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #117 : 09 Декабрь 2022, 11:48:25 »
Здравствуйте! Подскажите пожалуйста, как активировать плагин smd_ida_tools2?
ida 7.5, gensida_ida75_m68k_z80, кидаю папки loaders plugins  в директорию с программой, открываю idax64, открываю ром

Но debugger не появился. Что делаю ни так?

Оффлайн Марат

  • Пользователь
  • Сообщений: 556
  • Пол: Мужской
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #118 : 09 Декабрь 2022, 15:57:50 »
Выбрать процессор Моторолла M68000 и нажать set. После этого должно появится окно с gens ida plugin

Оффлайн shinta111

  • Пользователь
  • Сообщений: 3
    • Просмотр профиля
Smd IDA Tools - Sega Mega Drive reversing helpers
« Ответ #119 : 10 Декабрь 2022, 00:09:18 »
Вроде сделал, но ничего не изменилось. Но заметил ошибки при загрузке плагинов, они могут влиять на проблему?
LoadLibrary(E:\dstr\IDA Pro 7.5\ida75sp3\plugins\idapython3_64.dll) error: Не найден указанный модуль.
E:\dstr\IDA Pro 7.5\ida75sp3\plugins\idapython3_64.dll: can't load file
Но этот dll есть в папке.