Создать ответ 
 
Рейтинг темы:
  • Голосов: 0 - Средняя оценка: 0
  • 1
  • 2
  • 3
  • 4
  • 5
BIOS Disassembling
Автор Сообщение
MetalliC Не на форуме
Продвинутый
***

Сообщений: 185
Зарегистрирован: 31.07.2013
Рейтинг: 2
Сказал спасибо: 15
Поблагодарили 33 раз(а) в 15 сообщ.
Сообщение: #321
RE: BIOS Disassembling
я тут порылся в старых логах IRC и не только, почитал что умные люди разбиравшиеся с этим делом говорили, и похоже всё-таки контрольная сумма считается в процессе "прокачки", вот только я ошибся в том что именно мониторит данные с G1, и это не Holly а сам GD-ROM (в случае Naomi - Altera FLEX EPF8452(есть ее firmware если кому интересно), ну а в Atomiswave наверное чип "Romero" или вообще ничего)

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

cybdyn зачем реверс ? доки по SPI GD-ROM-а есть и в них всё верно описано, кроме пары недокументированных команд 0x70 и 0x71, эмуляторы на них возвращают фиксированные блоки данных.
грубо говоря если взять gdromv3.cpp из NullDC и реализовать в FPGA ну и отреверсить и реализовать протокол работы по шине G1 - это дело должно работать.

SWAT все занимавшиеся проблемой всё-таки склоняются к тому, что контрольная сумма считается только после записи регистра и только "прокачиваемых" данных, так что первые 256 байт можно менять.
ну а самая большая дырка в том, что они использовали слабо стойкий алгоритм, что методом тыка можно случайно получить данные проходящие проверку, в случае например CRC32 вероятность такого была бы очень очень мала, больше похоже что там 16-бит, а то и вообще 8бит алгоритм.
кста как в Dreamcast так и в Naomi, т.к. у D.Knute методом тыка получилось сделать рабочий модифицированный биос для нее.
(Последний раз сообщение было отредактировано 02.08.2013 в 13:10, отредактировал пользователь MetalliC.)
02.08.2013 12:47
Найти все сообщения Цитировать это сообщение
SWAT Не на форуме
Администратор
*******

Сообщений: 7236
Зарегистрирован: 04.01.2005
Рейтинг: 30
Сказал спасибо: 149
Поблагодарили 1214 раз(а) в 762 сообщ.
Сообщение: #322
RE: BIOS Disassembling
Ну некоторое время назад я тоже считал что проверку осуществляет сам GD-ROM, но после холиваров с cybdyn мы решили остановиться на том, что проверку делает holly. И как оно на самом деле я уже и не берусь утверждать наверняка.
Но есть тут еще один такой момент... Ну ладно, заблокировался gd-rom ну и хрен бы с ним вроде, если он не используется. Но не все так просто, katana игры при этом тоже перестают работать, даже если им подсовываешь другие сисколы, а они ведь с gd-rom общаются только через них. Эта блокировка влияет еще на что-то, но вот на что и как оно проверяется я не знаю.

[Изображение: barbers.png]
02.08.2013 13:42
Вебсайт Найти все сообщения Цитировать это сообщение
cybdyn Не на форуме
Ветеран
*****

Сообщений: 1368
Зарегистрирован: 20.12.2011
Рейтинг: 8
Сказал спасибо: 4
Поблагодарили 98 раз(а) в 75 сообщ.
Сообщение: #323
RE: BIOS Disassembling
к гдрому не подходит сигнал CS и адресная шина только 3 адреса. врятли гдром чтото увидит.

вообщем то а что даст разгадка алгоритма. задача загрузить код и исполнить. эта возмоность есть.
02.08.2013 14:08
Найти все сообщения Цитировать это сообщение
SWAT Не на форуме
Администратор
*******

Сообщений: 7236
Зарегистрирован: 04.01.2005
Рейтинг: 30
Сказал спасибо: 149
Поблагодарили 1214 раз(а) в 762 сообщ.
Сообщение: #324
RE: BIOS Disassembling
И где эта возможность? Типа вот эти 256 байт? Я сомневаюсь что это прокатит...
А без проверки биоса, игры не работают. Знание алгоритма решило бы все проблемы.

[Изображение: barbers.png]
02.08.2013 14:26
Вебсайт Найти все сообщения Цитировать это сообщение
cybdyn Не на форуме
Ветеран
*****

Сообщений: 1368
Зарегистрирован: 20.12.2011
Рейтинг: 8
Сказал спасибо: 4
Поблагодарили 98 раз(а) в 75 сообщ.
Сообщение: #325
RE: BIOS Disassembling
неее, под возможностью - я имею ввиду с модифицированного. или если будет эмуль привода он и запустит образ и соответствующий к нему код.
02.08.2013 14:52
Найти все сообщения Цитировать это сообщение
SWAT Не на форуме
Администратор
*******

Сообщений: 7236
Зарегистрирован: 04.01.2005
Рейтинг: 30
Сказал спасибо: 149
Поблагодарили 1214 раз(а) в 762 сообщ.
Сообщение: #326
RE: BIOS Disassembling
Ну тот что сейчас есть, хотелось бы конечно улучшить. Загрузчик что в нем сидит, вообще был тестовый и имеет косяки. Им пользоваться просто приходится, за неимением альтернативы. Я же не знал что вдруг случится чудо, я бы его сразу причесал Smile Возможно из за косяков что в нем есть, он и проверку прошел Smile
По идее сделать бы его по умнее, чтобы загружаться можно было с разных устройств, да с разных файловых систем.

[Изображение: barbers.png]
02.08.2013 15:43
Вебсайт Найти все сообщения Цитировать это сообщение
MetalliC Не на форуме
Продвинутый
***

Сообщений: 185
Зарегистрирован: 31.07.2013
Рейтинг: 2
Сказал спасибо: 15
Поблагодарили 33 раз(а) в 15 сообщ.
Сообщение: #327
RE: BIOS Disassembling
(02.08.2013 13:42)SWAT писал(а):  Но есть тут еще один такой момент... Ну ладно, заблокировался gd-rom ну и хрен бы с ним вроде, если он не используется. Но не все так просто, katana игры при этом тоже перестают работать, даже если им подсовываешь другие сисколы, а они ведь с gd-rom общаются только через них. Эта блокировка влияет еще на что-то, но вот на что и как оно проверяется я не знаю.

с этим действительно не понятно, вот лог доступа к области гд-рома и управляющих регистров при буте шенмы2 http://rghost.ru/47890388 (последняя цифра в логе - PC с которого был доступ, логировалось всё что попадало под if ( memMasked >= 0x7000 && memMasked < 0x7800)
) вроде весь доступ с области сисколов, хотя в либах катаны находятся указатели на A05F74xx, так что возможно что софт сам проверяет статусы дма G1.

SWAT ткни носом плз где можно почитать на тему этой проверки и не работы игр при запуске с SD
(Последний раз сообщение было отредактировано 04.08.2013 в 19:53, отредактировал пользователь MetalliC.)
04.08.2013 19:49
Найти все сообщения Цитировать это сообщение
cybdyn Не на форуме
Ветеран
*****

Сообщений: 1368
Зарегистрирован: 20.12.2011
Рейтинг: 8
Сказал спасибо: 4
Поблагодарили 98 раз(а) в 75 сообщ.
Сообщение: #328
RE: BIOS Disassembling
классный лог! в графе read только нехватает что именно прочитано. както монжо подправить?

под GD - я так понял область с базовым адресом: A05Fxxxx?

адрес на конце - это точка где перехват чт. записи был?
(Последний раз сообщение было отредактировано 04.08.2013 в 23:40, отредактировал пользователь cybdyn.)
04.08.2013 23:17
Найти все сообщения Цитировать это сообщение
MetalliC Не на форуме
Продвинутый
***

Сообщений: 185
Зарегистрирован: 31.07.2013
Рейтинг: 2
Сказал спасибо: 15
Поблагодарили 33 раз(а) в 15 сообщ.
Сообщение: #329
RE: BIOS Disassembling
(04.08.2013 23:17)cybdyn писал(а):  под GD - я так понял область с базовым адресом: A05Fxxxx?
да, старшие 16 бит в лог не пишутся, и так ясно что это x05fxxxx
(04.08.2013 23:17)cybdyn писал(а):  адрес на конце - это точка где перехват чт. записи был?
да, это адрес опкода SH4 который читал/писал регистр попадающий в диапазон 5f7000 - 5f7800
собсно в этом и смысл, я хотел посмотреть лезут ли игры сами к гдрому и к GD-DMA Control Registers или делают это только через сисколлы

но, как я уже говорил, судя по тому что я видел в shinobi.lib из katana sdk могут и сами 5f74ххх читать/писать
(Последний раз сообщение было отредактировано 05.08.2013 в 03:05, отредактировал пользователь MetalliC.)
05.08.2013 02:59
Найти все сообщения Цитировать это сообщение
cybdyn Не на форуме
Ветеран
*****

Сообщений: 1368
Зарегистрирован: 20.12.2011
Рейтинг: 8
Сказал спасибо: 4
Поблагодарили 98 раз(а) в 75 сообщ.
Сообщение: #330
RE: BIOS Disassembling
либо может както переназначают указатели сисколов на свои.

но мне больше понравился лог, както увидеть что читается можно?
05.08.2013 03:27
Найти все сообщения Цитировать это сообщение
MetalliC Не на форуме
Продвинутый
***

Сообщений: 185
Зарегистрирован: 31.07.2013
Рейтинг: 2
Сказал спасибо: 15
Поблагодарили 33 раз(а) в 15 сообщ.
Сообщение: #331
RE: BIOS Disassembling
(05.08.2013 03:27)cybdyn писал(а):  либо может както переназначают указатели сисколов на свои.
возможно, я в логах IRC-канала NullDC что-то видел на эту тему.
типа в зависимости от результата недокументированной команды 0x71 (или 70?) код сисколов пишется разный.
хз так ли это, сам не проверял.

(05.08.2013 03:27)cybdyn писал(а):  но мне больше понравился лог, както увидеть что читается можно?
да, вот http://rghost.ru/47898930
05.08.2013 03:58
Найти все сообщения Цитировать это сообщение
SWAT Не на форуме
Администратор
*******

Сообщений: 7236
Зарегистрирован: 04.01.2005
Рейтинг: 30
Сказал спасибо: 149
Поблагодарили 1214 раз(а) в 762 сообщ.
Сообщение: #332
RE: BIOS Disassembling
(04.08.2013 19:49)MetalliC писал(а):  SWAT ткни носом плз где можно почитать на тему этой проверки и не работы игр при запуске с SD

Об этом ты можешь почитать только здесь, что я написал Smile Ведь никто кроме меня пока не делал софтварную эмуляцию GD-ROM, для запуска коммерческих игр с SD. А если ты и имел ввиду этот форум, то фактически в этой теме большая часть обсуждений и было.

[Изображение: barbers.png]
(Последний раз сообщение было отредактировано 05.08.2013 в 07:53, отредактировал пользователь SWAT.)
05.08.2013 07:52
Вебсайт Найти все сообщения Цитировать это сообщение
cybdyn Не на форуме
Ветеран
*****

Сообщений: 1368
Зарегистрирован: 20.12.2011
Рейтинг: 8
Сказал спасибо: 4
Поблагодарили 98 раз(а) в 75 сообщ.
Сообщение: #333
RE: BIOS Disassembling
я только предпологаю, просто идея сисколов - это некий интерфейс доступа к таблице функции. прога переписывает (возможно есть тож спец сискол) указатель на эту таблицу, таким образом обнавляют библиотеку работы с устройством если это нужно. чтото топи указатель на библеотку.
05.08.2013 10:54
Найти все сообщения Цитировать это сообщение
cybdyn Не на форуме
Ветеран
*****

Сообщений: 1368
Зарегистрирован: 20.12.2011
Рейтинг: 8
Сказал спасибо: 4
Поблагодарили 98 раз(а) в 75 сообщ.
Сообщение: #334
RE: BIOS Disassembling
Metalic - у тебя есть эти доки по SPI GD-ROM??? скинуть можешь или где скачать... твой лог очень занимательный))!!!
05.08.2013 17:26
Найти все сообщения Цитировать это сообщение
MetalliC Не на форуме
Продвинутый
***

Сообщений: 185
Зарегистрирован: 31.07.2013
Рейтинг: 2
Сказал спасибо: 15
Поблагодарили 33 раз(а) в 15 сообщ.
Сообщение: #335
RE: BIOS Disassembling
дока у меня та же что и у всех "cdif131e.doc", "Gdfm_k214e.doc", "Gdfm_s132e.doc".
05.08.2013 21:35
Найти все сообщения Цитировать это сообщение
SWAT Не на форуме
Администратор
*******

Сообщений: 7236
Зарегистрирован: 04.01.2005
Рейтинг: 30
Сказал спасибо: 149
Поблагодарили 1214 раз(а) в 762 сообщ.
Сообщение: #336
RE: BIOS Disassembling
Ну в kamui и shinobi мало чего интересного, это уже библиотеки, в которых только API можно глянуть. А вот cdif это то что нужно и я тебе уже писал же про нее cybdyn, там весь SPI/ATA протокол описан.

[Изображение: barbers.png]
06.08.2013 07:43
Вебсайт Найти все сообщения Цитировать это сообщение
cybdyn Не на форуме
Ветеран
*****

Сообщений: 1368
Зарегистрирован: 20.12.2011
Рейтинг: 8
Сказал спасибо: 4
Поблагодарили 98 раз(а) в 75 сообщ.
Сообщение: #337
RE: BIOS Disassembling
повторение - мать наладки)) лучше линк
06.08.2013 11:09
Найти все сообщения Цитировать это сообщение
SWAT Не на форуме
Администратор
*******

Сообщений: 7236
Зарегистрирован: 04.01.2005
Рейтинг: 30
Сказал спасибо: 149
Поблагодарили 1214 раз(а) в 762 сообщ.
Сообщение: #338
RE: BIOS Disassembling
https://dl.dropboxusercontent.com/u/40145/CDIF131E.pdf

[Изображение: barbers.png]
06.08.2013 11:55
Вебсайт Найти все сообщения Цитировать это сообщение
cybdyn Не на форуме
Ветеран
*****

Сообщений: 1368
Зарегистрирован: 20.12.2011
Рейтинг: 8
Сказал спасибо: 4
Поблагодарили 98 раз(а) в 75 сообщ.
Сообщение: #339
RE: BIOS Disassembling
теперь сопоставить этот док и лог...

может ещё лог от обычной(другой) игры сделаешь?
06.08.2013 13:17
Найти все сообщения Цитировать это сообщение
MetalliC Не на форуме
Продвинутый
***

Сообщений: 185
Зарегистрирован: 31.07.2013
Рейтинг: 2
Сказал спасибо: 15
Поблагодарили 33 раз(а) в 15 сообщ.
Сообщение: #340
RE: BIOS Disassembling
cybdyn тебя в гугле чтоли забанили ? Wink
вбиваешь в поиске имена указанных файлов и качаешь по первой же ссылке.

(06.08.2013 13:17)cybdyn писал(а):  теперь сопоставить этот док и лог...

может ещё лог от обычной(другой) игры сделаешь?
уфф, если уж собрался разгребать всякие логи гдрома - скачай исходники NullDC, найди в nullDC\dc\gdrom\gdromv3.cpp строчку "#define printf_rm nilprintf" и замени на "#define printf_rm log", скомпилируй эмулятор, запусти игру и разбирай полученную кучу текста хоть до посинения Wink
там же есть дефайны принта SPI и ATA команд, включаются аналогично заменой nilprintf на log

SWAT два последних дока это не камуи/шиноби, а описания формата гд-ромов, тоже полезно для понимания что там, где и как на диске лежит.
06.08.2013 14:58
Найти все сообщения Цитировать это сообщение
Создать ответ 


Похожие темы
Тема: Автор Ответов: Просмотров: Посл. сообщение
  Неудачная прошивка после BIOS мода Toshiba1986 12 13481 20.12.2022 00:30
Посл. сообщение: megavolt85
  dreamshell bios flasher cannot detect bios chip chth96 4 8481 01.04.2021 16:14
Посл. сообщение: chth96
  Dual Bios switch soldering accidentally removed, now DC powers on but don't boot up tonyhoro 3 8124 03.09.2020 03:16
Посл. сообщение: Zychion
  Несколько вопросов про bios mod ClickCLK 1 6032 27.07.2019 00:09
Посл. сообщение: megavolt85
  после hdd+bios mod дрим не читает диски veless 13 35897 07.03.2018 11:11
Посл. сообщение: megavolt85
  Ошибка 2 при прошивке Bios Mod MD_Haus 7 18285 07.03.2018 07:50
Посл. сообщение: megavolt85
  Проблема после Bios mod'a Eugeniy_59 12 38082 23.03.2017 14:30
Посл. сообщение: megavolt85
Информация Мат. плата VA2.1 и её bios и ide моды MastaMinus 18 65330 14.11.2016 14:57
Посл. сообщение: MastaMinus
  Проблемы с BIOS-модом pcm 5 19917 02.09.2016 19:05
Посл. сообщение: pcm
Видео Dreamcast странно себя ведет после bios-mod snt 4 17456 27.06.2016 23:55
Посл. сообщение: snt

Переход:


Пользователи просматривают эту тему: 4 Гость(ей)