Приставки > Картриджи / диски
О формате катриджа для денди.
CaH4e3:
http://xcult.sonic-cult.org/dispart.php?catid=16&gameid=16&subid=1&artid=1
Хвмен, И чем тебе IDA не нравится?
HardWareMan:
--- Цитата: CaH4e3;176184 ---http://xcult.sonic-cult.org/dispart.php?catid=16&gameid=16&subid=1&artid=1
Хвмен, И чем тебе IDA не нравится?
--- Конец цитаты ---
А ты присмотрись. Меня вообще бесит, что все пытаются затыкнуть Идой все дыры.
CaH4e3:
Лично я проблем не вижу. Как ты файл оформишь, так он и будет выглядеть. перекрестные ссылки, опять таки. Дизасм с идой превращается в сплошное удовольствие, когда скачешь по ссылкам. А что может сделать plane дизасм? Только то, что ты в него сам закодишь. На сегодня ИДА - самая удобная система для дизасма. Я не имею ввиду возможность потом идашный код на чем-то откомпилировать, я имею ввиду именно дизасм.
HardWareMan:
--- Цитата: CaH4e3;176217 ---Лично я проблем не вижу. Как ты файл оформишь, так он и будет выглядеть. перекрестные ссылки, опять таки. Дизасм с идой превращается в сплошное удовольствие, когда скачешь по ссылкам. А что может сделать plane дизасм? Только то, что ты в него сам закодишь. На сегодня ИДА - самая удобная система для дизасма. Я не имею ввиду возможность потом идашный код на чем-то откомпилировать, я имею ввиду именно дизасм.
--- Конец цитаты ---
Я написал не plane дизасм, а cross, что разные вещи. Кросс пробегает по коду, выделяя данные. 100% вариант, даже с табличными переходами.
CaH4e3:
Нормального кросс дизасма нет, потому что невозможно стопроцентно отделить данные от кода, даже при "пробегании". Константные параметры, которые явно вычисляются из пзушных данных кросс может вычислить, но неконстантные, взятые, скажем, из портов - нет. Не говори мне, что твой кросс сам нашел бы точку входа в процедуру, выполняющуюся в ОЗУ, если бы ты не поставил на нее вектор AdrErr. Причем, чтобы сделать это в IDA, нужно иметь всего лишь глаза и один раз ткнуть кнопку 'C'.
HardWareMan:
--- Цитата: CaH4e3;176258 ---Нормального кросс дизасма нет, потому что невозможно стопроцентно отделить данные от кода, даже при "пробегании". Константные параметры, которые явно вычисляются из пзушных данных кросс может вычислить, но неконстантные, взятые, скажем, из портов - нет. Не говори мне, что твой кросс сам нашел бы точку входа в процедуру, выполняющуюся в ОЗУ, если бы ты не поставил на нее вектор AdrErr. Причем, чтобы сделать это в IDA, нужно иметь всего лишь глаза и один раз ткнуть кнопку 'C'.
--- Конец цитаты ---
Ну да. Кто чем привык пользоваться. Да и ИМХО все же IDA больше под х86 заточена. Да и как ты только "глазами" бы нашел подрограмму, которая окружена данными? Наугад бы тыкал? Я делал заточенный кросс под Сегу конкретно, с последующим описанием всех портов. Причем, вариант с определением кода, работающего в ОЗУ (при наличии команды перехода в область ОЗУ осматривать какие данные туда пересылаются и выбрать их из библиотеки собранных констант) очень даже поддается автоматизации. И вообще, завязываем оффтопить, иначе модер нас прибьет. %)
Rumata, будем делать отдельную тему с полным описанием исходника SegaOS (неважно как оно выглядит, лишь бы читалось удобно)?
CaH4e3:
Тему пора переименовать в genesis tech и удалить первых два поста оффтопа. ;)))) Как это делается руками - видно по исходнику, который я положил. Не представляю, сколько тебе придется кодить, чтобы сделать то, о чем ты говоришь, но по двум опкодам адрес начала кода определяется с закрытыми глазами, а именно - регистр, который загружается адресом блока данных для загрузки регистров, используется и для чтения кода. Регистров читается ровно 9 по 4 байта, следовательно 36ой байт - есть адрес начала блока кода. Теперь нарисуй мне блоксхемку, как это будет в общем виде искать кросс? ;)
Ты можешь закодить поиск конкретного варианта, одного, двух... но не всех, котоыре могут быть использованы. В общем случае, программа для полного дизасма невозможна.
Rumata:
--- Цитата: HardWareMan ---Rumata, будем делать отдельную тему с полным описанием исходника SegaOS (неважно как оно выглядит, лишь бы читалось удобно)?
--- Конец цитаты ---
Естественно. И очень интересно проследить взаимодействие этой ОС с железом
--- Цитата: CaH4e3 ---Тему пора переименовать в genesis tech и удалить первых два поста оффтопа
--- Конец цитаты ---
Угу. Так и поступим, но с некоторыми нюансами. Поскольку тема формата РОМов раскрыта, её прикроем, а по МД будем открывать новую. Кто первый?
Навигация
Перейти к полной версии