Сообщения без ответов | Активные темы Текущее время: 28 мар 2024, 23:32



Ответить на тему  [ Сообщений: 17 ] 
 IDA Pro GEN/BIN loader (5.2) с исходниками 
Автор Сообщение
Сообщение 09 окт 2008, 21:02
Профиль
Аватара пользователя

Зарегистрирован:
24 июл 2007, 06:54
Сообщения: 492
Откуда: Embedded
Набросок лоадера ROMок для эмулятора Sega Genesis/Megadrive для IDA. Загружает файл, создает массив точек входа в программу (обрабатываются все вектора М68К (младшие 64 из полных 256ти), если адрес лежит внутри ROM-файла. Заполняет массив данных стандартного заголовка игры Sega Genesis/Megadrive. Создает сегмент кода (и помещает туда ROM файл), создает сегмент области Z80, создает сегмент области I/O портов, VDP. Так же создается сегмент озу $FF0000-$FFFFFF и его фантом (пока отельным сегментом) в $FFFF0000-$FFFFFFFF (используется некоторыми играми и программами, т.к. у М68К 24 битная адресная шина, то старший байт адреса не участвует, но я еще не разобрался как это реализовать).

v.2:
1. Создает кучу минисегментов для портов, ОЗУ Z80 и т.д. Это дает возможность расставить метки, но при этом график не расползается;
2. Создает сегмент SRAM, если тот лежит в пределах нижних 4Мб и при этом не пересекается с ROMом.

Минусы, которые я хотел бы исправить:
1. Массивы создаются с флагом "Использовать dup()", не разобрался пока как его автоматически сбросить - сбрасываем вручную.
2. Хочу занести набор меток стандартных адресов (например VDP_DATA = $C00000 и VDP_CONTROL = $C00004 и т.д.).
3. Ну и еще много чего... ;)

Тестируйте пока то, что создано. Отписывайтесь тут.


Вложения:
SegaLDR.rar [11.96 КБ]
Скачиваний: 695

_________________
Tried so hard and got so far, but in the end, it doesn't even matter...
Сообщение 10 окт 2008, 12:07
Профиль
Аватара пользователя

Зарегистрирован:
24 июл 2007, 06:54
Сообщения: 492
Откуда: Embedded
Обновил, v.2.

_________________
Tried so hard and got so far, but in the end, it doesn't even matter...


Сообщение 10 окт 2008, 22:33
Профиль

Зарегистрирован:
12 мар 2008, 16:18
Сообщения: 37
Хм, при загрузке всех файлов у меня вылетает:
Код:
bytes   pages size description
--------- ----- ---- --------------------------------------------
  8388608  1024 8192 allocating memory for b-tree...
  8388608  1024 8192 allocating memory for virtual array...
   262144    32 8192 allocating memory for name pointers...
-----------------------------------------------------------------
17039360            total memory allocated

Loading IDP module D:\Program Files\IDA\procs\pc.w32 for processor metapc...OK
Autoanalysis subsystem has been initialized.

[b]LoadLibrary(D:\Program Files\IDA\loaders\SegaLDR.ldw) => error code 14001[/b]
D:\Program Files\IDA\loaders\SegaLDR.ldw: can't load file
Unloading IDP module D:\Program Files\IDA\procs\pc.w32..


IDA в версии 5.2.0.908
Пробовал на Alien Soldier (E) [!] и Aerobiz (U) [!]


Сообщение 11 окт 2008, 07:45
Профиль
Аватара пользователя

Зарегистрирован:
24 июл 2007, 06:54
Сообщения: 492
Откуда: Embedded
Не знаю, у меня на 5.2.0.908 нормально:
ИзображениеИзображение
Изображение
Может что-то с файлом? Ну там права или еще чего. Он же пишет "LoadLibrary error", т.е. он его даже загрузить не может.

_________________
Tried so hard and got so far, but in the end, it doesn't even matter...


Сообщение 11 окт 2008, 15:33
Профиль

Зарегистрирован:
12 мар 2008, 16:18
Сообщения: 37
Эта ошибка в большинстве случаев подразумевает, что библиотека вызывает другую библиотеку, которая в данный момент недоступна. Попробовал скопировать все файлы, что нашел в SDK в разные директории установленной IDA - не помогло. Переустановка IDA тоже не помогла.
Санчевский плаг пахал и пашет нормально.
Интересно, у кого-нибудь лоадер запустился, а то, может, у всех так...


Сообщение 11 окт 2008, 17:34
Профиль
Аватара пользователя

Зарегистрирован:
24 июл 2007, 06:54
Сообщения: 492
Откуда: Embedded
У тебя виста? Компилил по умолчанию, SDK родной, ключи по стандарту - как в ридми написано. Болванка бралась со Санческого плагина. Даже ума не приложу, что и как. Однако, работает на домашнем компе и на рабочем компе. SDK у нее не ставится, а просто папка с файлами, которая существует отдельно на переносном винте, так что никакой зависимости 100%. Смотри, что у тебя либо у тебя ИДА коцанная.

_________________
Tried so hard and got so far, but in the end, it doesn't even matter...


Сообщение 11 окт 2008, 18:04
Профиль

Зарегистрирован:
12 мар 2008, 16:18
Сообщения: 37
У меня ХР. Сборку IDA брал с cracklab (наверное, как и большинство) - у тебя, подозреваю, другая. Попробую, на крайний случай, с работы запуститься, но хотелось бы еще узнать откуда твоя IDA.


Сообщение 11 окт 2008, 18:42
Профиль
Аватара пользователя

Зарегистрирован:
22 июл 2007, 02:10
Сообщения: 313
Откуда: ниоткуда
Цитата:
Интересно, у кого-нибудь лоадер запустился, а то, может, у всех так...

У меня работает. Судя по версии и регистрации, у меня сборка такая же, как и у HWM. Щас на cracklab лежит другой экзешник, может быть, там просто ещё допихали чего...

_________________
Мысль - это интеллектуальный эксцесс данного индивидуума.


Сообщение 11 окт 2008, 19:52
Профиль
Аватара пользователя

Зарегистрирован:
24 июл 2007, 06:54
Сообщения: 492
Откуда: Embedded
Griever писал(а):
У меня ХР. Сборку IDA брал с cracklab (наверное, как и большинство) - у тебя, подозреваю, другая. Попробую, на крайний случай, с работы запуститься, но хотелось бы еще узнать откуда твоя IDA.

Моя ИДА с закрытого ФТП electronics.ru, но в осле такая-же есть. Исходник есть, скомпили ее с родным для твоей версии СДК и делов.

_________________
Tried so hard and got so far, but in the end, it doesn't even matter...


Сообщение 11 окт 2008, 20:21
Профиль

Зарегистрирован:
12 мар 2008, 16:18
Сообщения: 37
Да, думаю, собака порылась в процессе компиляции: даже если сравнивать твой *.vcproj с Санчевским, то содержимое сильно различается. К сожалению, не имею возможности скомпилить под себя, ну да это уже, полагаю, только мои заботы :)


Сообщение 11 окт 2008, 20:36
Профиль
Аватара пользователя

Зарегистрирован:
24 июл 2007, 06:54
Сообщения: 492
Откуда: Embedded
Griever писал(а):
Да, думаю, собака порылась в процессе компиляции: даже если сравнивать твой *.vcproj с Санчевским, то содержимое сильно различается. К сожалению, не имею возможности скомпилить под себя, ну да это уже, полагаю, только мои заботы :)

Чем они отличаются? Я могу скомпилить и через Санчевский vproj ;)

_________________
Tried so hard and got so far, but in the end, it doesn't even matter...


Сообщение 11 окт 2008, 21:21
Профиль

Зарегистрирован:
12 мар 2008, 16:18
Сообщения: 37
Было бы здорово, если бы ты попробовал :)
А отличаются они примерно следующим:
-Непонятные 3 байта в начале файла, которые мешают, например, многим просмотрщикам отображать его как xml файл
-Кодировки (1251 и utf)
-У санча release, у тебя Debug
- Думаю, строки типа OutputDirectory="C:\Program Files\IDA\loaders" могут быть опасными (у меня, например все на диске D:\), У санча такого нет.
Ну много чего, что легко увидеть в сравнении по содержимому в Total Commander.
Разумеется, скорее всего, все это не влияет на поведение библиотеки, но может, от греха подальше попробовать проверенный vcproj?


Сообщение 11 окт 2008, 22:39
Профиль
Аватара пользователя

Зарегистрирован:
24 июл 2007, 06:54
Сообщения: 492
Откуда: Embedded
Хехе... Это все правится 5 секунд в свойствах проекта - раз, Санч писал ЕМНИП на VCS6 а я на VCEx - два, xml корректно отображается только IE (хз почему) - три. VCSEx один фиг конвертнет vcproj в свой формат. Однако, это все же твоя проблема, ибо у меня на 2х разных компах пашет и у GManiac'а тоже (мы не могли качать один и тот же бинарник). Я конечно попробую, но ИМХО результат будет тот же. А опция Release/Debug ниначто не влияет - проверял.

* * *

Нифига себе... С 23Кб лодырь раздулся на 470Кб! Это же пипец полный.... Тестируй.
PS Санчевский vcproj так же настроен на debug...


Вложения:
SegaLDRHack.rar [123.45 КБ]
Скачиваний: 517

_________________
Tried so hard and got so far, but in the end, it doesn't even matter...
Сообщение 11 окт 2008, 23:50
Профиль

Зарегистрирован:
12 мар 2008, 16:18
Сообщения: 37
Ух! Заработало! Потрясающе. Уж думал, придется забыть! :)

---- добавлено ----

Спасибо за труды! ^_^


Сообщение 12 окт 2008, 00:30
Профиль ICQ WWW
Аватара пользователя

Зарегистрирован:
22 июл 2007, 11:16
Сообщения: 787
Компиляй статиком и будет тебе счастье. Я не VC6 компилял, а 2008ым, последним. Но у меня все либы стоят, в отличие от остальных. Потому у меня и твой лодырь пустился без вопросов.

_________________
1. Модератор всегда прав.
2. Если модератор не прав, см. п. 1.


Сообщение 12 окт 2008, 10:07
Профиль
Аватара пользователя

Зарегистрирован:
24 июл 2007, 06:54
Сообщения: 492
Откуда: Embedded
CaH4e3 писал(а):
Компиляй статиком и будет тебе счастье. Я не VC6 компилял, а 2008ым, последним. Но у меня все либы стоят, в отличие от остальных. Потому у меня и твой лодырь пустился без вопросов.

Дык, у меня тоже тока то, что с экспрессом (халявный который) шло и стоит. А проект создавал по ридми, сопутствующий с SDK. Так что увы и ах. А где там статик задается?

_________________
Tried so hard and got so far, but in the end, it doesn't even matter...


Сообщение 08 ноя 2008, 21:10
Профиль ICQ WWW
Аватара пользователя

Зарегистрирован:
24 июл 2007, 10:41
Сообщения: 570
А может у кого-нибудь есть лоадер для SNES? Или хотя бы модуль-дизассемблер для 65c816? Нигде не могу найти.


Показать сообщения за:  Поле сортировки  
Ответить на тему   [ Сообщений: 17 ] 

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 13


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by STSoftware for PTF (mod by Zeru-j).
Русская поддержка phpBB