61
Инструменты / Smd IDA Tools - Sega Mega Drive reversing helpers
« : 07 Февраля 2024, 20:02:28 »и все так-же не хватает lea FF в начале. асм ругается на эти строки.Не понял.
В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.
и все так-же не хватает lea FF в начале. асм ругается на эти строки.Не понял.
рядом с ромом src надо папку создавать. и видимо независимо от того куда путь для создания lst. на диск д сохранял сам файл lst, а эти файлы из инклуда он рядом с ромом положилНе нужно вручную папки создавать, всё создастся. Нужно только выбрать куда сохранять lst. Перекачай плагин, говорю же.кое кто, не будем показывать пальцем, забыл в диалоге сохранения файла указать этот-же путь для сохранение инклудных файлов.
еще запускал иду от администратора.
оОбнови плагин из последнего релиза. Я починил создание листинга для 7.7.
похоже эти строки можно закомментить.У тебя какой-то адрес странный, нужно либо две F, либо четыре.
но опять таки старая проблема вылезла:Код: [Выделить]lea ($FFF152).w,a0не хватает FF спереди: $FFF152 => $FFFFF152
мде... а дальше все посыпалось при сборкевидимо нельзя их комментить
как раз видимо описание этих переменных
при экспорте надо было галкой помечать ASM68K Assembler? то есть это как раз совместимый с ASM68K.exe который потом и собирает ром? а то может я не тот пункт выбираю и поэтому дело швах...
Добавлено позже:
ахахахаха кнопка отмены не работает в диалоге создания файлажму отмена - а Ида все равно ныкается создавать файл
)))
DrMefistO,Можешь скинуть в личку idb, я проверю. Либо поищи сам ещё либо в каталоге с ромом, либо в каталоге с листингом.
Подскажи пожалуйста, по какой причине может не работать создание ассемблерного листинга?
Есть полностью разобранный ром, выбираю File->Produce file->Create LST file, после чего действительно создается файл.
Но в нем вначале есть вложения:
Этих файлов нигде нет и папки src тоже.
Я там еще насоздавал структур и енумов, кое-где использую не полностью структуры, а отдельные поля. Может в этом дело?
DrMefistO, у меня вопрос, как обратно добавить ром в проект? Изначально при открытии проекта Генс знает какой ром запускать. Но потом по какой-то причине это сломалось. И теперь надо каждый раз при открытии проекта открывать нужный ром через генс.В smd_ida_tools2 как сам Gens, так и ром в нём нужно выбирать вручную, т.к. сейчас gens не собирается в один файл с плагином для иды.
ну черт знает. надписи в эмуляторах чуть различаются. настройки звука одинаковые в них обоих. но в одном прям ярко звучит (из старой иды 6.8), а во втором (и в той версии что у меня эмулятор генс для игр на компе) как будто из бочки. плюс стартовая мелодия на выборе бойца бьет с ошибкой барабан. примерно как в комикс зоне одна из мелодий играет не верно - вот та-же фигня и тут со звуком. помню мы решали в GEMS эмуляторе такую-же проблему... ну как решали... я там присутствовалМожешь заснять видео, в котором долгий экспорт показан?там какой-то множитель кароче "не тот" типа он выставлен под какую-то там сеговскую частоту... а на компе то 44100. и поэтому звучит отвратно. а чтобы звучало правильно - надо эту там какую-то циферку влепить другую. то есть по отношению к приставке код будет не точным, но зато на компе будет играть более сочно. https://www.emu-land.net/forum/index.php/topic,83239.msg1444575.html#msg1444575
ничего я не понял с этой отладкой чего отключать где как... ничего не включая чистую иду открою, загрузить готовый idb файл, выбираю LST... и понеслась моча по трубам три часа выгружает при сохранении. ASM сохранение чуть быстрее, но все равно один фиг три часа ждать. 6.8 ида выгружала ASM почти молниеносно.
запускал из папки, которую я скачал. v2.
v1 в старой иде он сам там откуда-то эмулятор запускает...
я так понимаю, что код, рожаемый IDA'ой мягко говоря не совсем совместим с ASM68K.EXE ? то есть нужно еще дополнительно парсер сделать, чтобы из идовского асм кода текст переформатировал в ASM68K.EXE совместимый?В smd_ida_tools_v2 есть экспортёр в код, собираемый различными ассемблерами m68k.а то я тут мальца запнулся:
move a6,usp ; 0x4E66
в моей недосистеме 0х4E66 расшифровывает как:
4E66 movem.l -(a6), a7/a6/a5/a3/d6/d3/d2/d1
понятно что где-то видимо накосячил. IDA и еще одна досовская приблуда показывает как move a6,usp
но на этот usp - ругается ASM68K.EXE и не хочет собирать.
оказалось надо не голый move, а move.l
move.l a6,usp
еще брыкается на всякие типа:
align $10
но там видимо ошибочное распознавание и надо видимо пропускать, без дизасма - типа как данные какие-то. графика там к примеру.
дальше IDA, скатина, видимо недописывает FF к значению:
clr.w ($FFF006).w - ASM68K.EXE ругается. правильно должно быть:
clr.w ($FFFFF006).w
Есть возможность как-то это окно держать открытым?Нажать J на команде.
(Ссылка на вложение)
Нужно иследовать везде где идет запись в контроллер VDP, может есть альтернатива?
Добавлено позже:
Добавил action который вызывает open_xrefs_window, помогло
Добавлено позже:
А динамически можно посмотреть, что пишется в VDP_CTRL? Чтобы постоянно справку не смотреть, еще не все изучил
А в Гидре лучше?Для гидры у меня нет отладочного плагина.
фигасе)Kickstart
подписано А1200 это для эмулятора, не помню на каком я тестировал, он брал эту инфу для кикстартера (или как он там назывался)
Если я правильно понял, процессор гба работает с 32х битными командами только в определенном диапазоне памяти(0x03000000-...) и с 16битными командами в диапазоне 0x08000000-..., что создало проблемы при прыжке.Никто же не мешает в регистр поместить любое число и прыгнуть на него.
Просто альтернатива Иде, x64dbg и Cheat Engine, только с интерфейсом для людей. Хочу не только изучать внутренности игр, но и делать моды, а для этого нужны всякие удобства.Звучит солидно) и как успехи?)
А самому не хочется такую "пулю" сделать? Я вот не выдержал и делаюИ что это?)
Еще немного оффтопа:Конечно, предлагай.
Прекрасно, как разберусь, может смогу что предложить по улучшению, сам только недавно начал, хотя бы ребята помогли с прерываниями.
Постоянно ищу какую-то сербрянную пулю, которая поможет все свои любимые игры изучить, но такого нет
Если надо будет использовать старый, как говорят майки "классический режим", надо будет немного настроить, но вроде, если не устанавливать новый vcpkg, все должно заработать.Спасибо:) Для гидры есть конечно что улучшать, но да, как ты сказал, читать проще сразу азм. Структуры распознавать не так и сложно:) У меня в видосах я их частенько разбирал.
Добавил зависимости только для Gensida, для Gens не добавлял, по идее манифест надо вынести на верхний уровень.
И поменял описание)
Добавлено позже:
Спасибо за такой отличный инструмент, мог о таком только мечтать
А как с дополнением для Гидры, там есть что улучшать для декомпиляции? Пробовал читать листинг, сложно, хотя до этого переносил небольшие библиотеки на x86.
Добавлено позже:
Сеговский листинг проще всего читать сразу на ассемблере, но пока еще не научился распознавать структуры.