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

Сообщений: 371
Зарегистрирован: 04.04.2009
Рейтинг: 2
Сказал спасибо: 1
Поблагодарили 4 раз(а) в 4 сообщ.
Сообщение: #81
RE: BIOS Disassembling
Ну а что там таки внутри, этого БИОСА?
24.02.2012 20:30
Найти все сообщения Цитировать это сообщение
cybdyn Не на форуме
Ветеран
*****

Сообщений: 1368
Зарегистрирован: 20.12.2011
Рейтинг: 8
Сказал спасибо: 4
Поблагодарили 98 раз(а) в 75 сообщ.
Сообщение: #82
RE: BIOS Disassembling
вообщем, для тех кто знает что с этим делать и как воспользоваться... это вещь!... тем более я не хочу переписывать это изобретая велик.. ну и мне инетресно, как идёт загрузка .... я же собираюсь делать IPL Wink

буду надеятся, что это устранит всякие там неприятности с невозможностью гулькать на хакнутом биосе... ну и вообще будет всё под моим контролем... а то приходиться тут просить помощи....

хакнем биос, запустим винты
хакнем дримшелWink, покажем всем - мы впереди))))
(Последний раз сообщение было отредактировано 25.02.2012 в 02:06, отредактировал пользователь cybdyn.)
25.02.2012 01:38
Найти все сообщения Цитировать это сообщение
SWAT Не на форуме
Администратор
*******

Сообщений: 7237
Зарегистрирован: 04.01.2005
Рейтинг: 30
Сказал спасибо: 149
Поблагодарили 1214 раз(а) в 762 сообщ.
Сообщение: #83
RE: BIOS Disassembling
Нету другого.

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

Сообщений: 1368
Зарегистрирован: 20.12.2011
Рейтинг: 8
Сказал спасибо: 4
Поблагодарили 98 раз(а) в 75 сообщ.
Сообщение: #84
RE: BIOS Disassembling
а хакнутый переписан заново, или только область где шел сидит заменна другими данными?
насколько то вэри-симпл, много чего не хватает?
сам по себе дримшел - это екзешка как и игры (ну грузиться в туже бласть и т.д ) или гдето межДу , типа в памяти в порядка возрастания сидят так: KERNEL-SHELL-IPBIN-1ST_READ...HEAP,STACK ???
25.02.2012 11:02
Найти все сообщения Цитировать это сообщение
SWAT Не на форуме
Администратор
*******

Сообщений: 7237
Зарегистрирован: 04.01.2005
Рейтинг: 30
Сказал спасибо: 149
Поблагодарили 1214 раз(а) в 762 сообщ.
Сообщение: #85
RE: BIOS Disassembling
Я же все это уже говорил...

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

Сообщений: 1368
Зарегистрирован: 20.12.2011
Рейтинг: 8
Сказал спасибо: 4
Поблагодарили 98 раз(а) в 75 сообщ.
Сообщение: #86
RE: BIOS Disassembling
извини , можешь напомнить ещё раз, именно на те вопросы что задал? плиз?
25.02.2012 23:24
Найти все сообщения Цитировать это сообщение
SWAT Не на форуме
Администратор
*******

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

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

Сообщений: 1368
Зарегистрирован: 20.12.2011
Рейтинг: 8
Сказал спасибо: 4
Поблагодарили 98 раз(а) в 75 сообщ.
Сообщение: #88
RE: BIOS Disassembling
под ядром я понимаю изначальную инициализацию , установку обработчиков, сисколов. и т.п всё что до копирвания шела в память и прыжка на него. т.к в шеле уже идёт по идее исполнение , под настроенную систему, хотя может у тебя все переинициализируется по новому.
27.02.2012 01:19
Найти все сообщения Цитировать это сообщение
SWAT Не на форуме
Администратор
*******

Сообщений: 7237
Зарегистрирован: 04.01.2005
Рейтинг: 30
Сказал спасибо: 149
Поблагодарили 1214 раз(а) в 762 сообщ.
Сообщение: #89
RE: BIOS Disassembling
Нет, всякие настройки контроллеров памяти и т.п. делается в биосе. DS работает так же как игры.

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

Сообщений: 71
Зарегистрирован: 26.06.2011
Рейтинг: 1
Сказал спасибо: 2
Поблагодарили 8 раз(а) в 7 сообщ.
Сообщение: #90
RE: BIOS Disassembling
Чисто из любопытства посмотрел реализации этого simple bios'а http://cadcdev.svn.sourceforge.net/viewv...iew=markup, и появился вопрос:
Непонятны телодвижения, чтобы записать значения по какому-то адресу

PHP код:
...
mov #-1,r3  ! r3 = 0xffffffff
shll16 r3  r3 0xffff0000
shll8 r3  
r3 0xff000000
mov 
#0,r0  ! r0 = 0
mov.l r0,@(16,r3)  ! -> MMUCR (0xff000010)
... 

Нельзя ли было просто сделать типа
PHP код:
mov #0xff000010,r3 
mov.l r0,@r3 

Не проще ли было сделать так, или я что-то не понимаю
20.03.2012 19:18
Найти все сообщения Цитировать это сообщение
cybdyn Не на форуме
Ветеран
*****

Сообщений: 1368
Зарегистрирован: 20.12.2011
Рейтинг: 8
Сказал спасибо: 4
Поблагодарили 98 раз(а) в 75 сообщ.
Сообщение: #91
RE: BIOS Disassembling
да это меня тож смутило..
1- могли писать на си без оптимизации.. и такое вполне можно прадставить...
2- автор кода, чтото упаминает про начало
"Sentinel value so our first two bytes aren't the same as the real Sega ROM. This makes nvflash_detect work" мож это не про то

3- насколько я знаю - у SH4 команды 16 разрядные. так что не факт что в регистр можно сразу засунуть 32 разрадную константу в одну команду!!! т.к коду комады надо ведь тоже место в этих 16-ти битах, поэтому чтобы сформировать её надо пострадать, либо сохранить и загрузить, как это делается где-то в в дальнейшем ...
(Последний раз сообщение было отредактировано 21.03.2012 в 09:57, отредактировал пользователь cybdyn.)
21.03.2012 01:51
Найти все сообщения Цитировать это сообщение
SWAT Не на форуме
Администратор
*******

Сообщений: 7237
Зарегистрирован: 04.01.2005
Рейтинг: 30
Сказал спасибо: 149
Поблагодарили 1214 раз(а) в 762 сообщ.
Сообщение: #92
RE: BIOS Disassembling
1. Нет это не оптимизация, некоторые операции на Си написать нельзя, дрим будет ребутится, проверено.
2. Про начало он имеет ввиду операнд "nop", чтобы отличался биос от оригинала он его подставляет.
3. Так оно и есть.

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

Сообщений: 71
Зарегистрирован: 26.06.2011
Рейтинг: 1
Сказал спасибо: 2
Поблагодарили 8 раз(а) в 7 сообщ.
Сообщение: #93
RE: BIOS Disassembling
Цитата:... у SH4 команды 16 разрядные ...
Теперь понял

Цитата:...некоторые операции на Си написать нельзя, дрим будет ребутится, проверено.
А АСМ код в Си коде?
21.03.2012 13:37
Найти все сообщения Цитировать это сообщение
Rio Не на форуме
Продвинутый
***

Сообщений: 371
Зарегистрирован: 04.04.2009
Рейтинг: 2
Сказал спасибо: 1
Поблагодарили 4 раз(а) в 4 сообщ.
Сообщение: #94
RE: BIOS Disassembling
Цитата:... у SH4 команды 16 разрядные ...
Да все верно такой операнд просто бы в коде команды не поместился.
Цитата:mov.l r0,@(16,r3) ! 0 -> MMUCR (0xff000010)
Блин, чертовски сложный формат. Я так понимаю мы здесь в адрес, косвенно указываемый регистром r3 + 10h заносим значение регистра r0?
Цитата:Нет, всякие настройки контроллеров памяти и т.п. делается в биосе. DS работает так же как игры.
Разве не самой программой?
(Последний раз сообщение было отредактировано 22.03.2012 в 00:44, отредактировал пользователь Rio.)
22.03.2012 00:18
Найти все сообщения Цитировать это сообщение
developer Не на форуме
Пользователь
**

Сообщений: 71
Зарегистрирован: 26.06.2011
Рейтинг: 1
Сказал спасибо: 2
Поблагодарили 8 раз(а) в 7 сообщ.
Сообщение: #95
RE: BIOS Disassembling
В оригинальной документации говорится
PHP код:
MOV.L  |  Rm,@(disp,Rn)  |  Rm → (disp × 4 Rn

По факту получается, да записали данные по адресу записанному в Rn + смещение disp. х 4 если судить по возможным типам команды (mov.b, mov.w, mov.l) говорит о разрядности disp: byte, word и наверное long, т.е байт, два байта и четыре байта.
22.03.2012 00:55
Найти все сообщения Цитировать это сообщение
cybdyn Не на форуме
Ветеран
*****

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

да в р0, только ещё младшую часть или что там MOV.L означает....
22.03.2012 01:00
Найти все сообщения Цитировать это сообщение
Rio Не на форуме
Продвинутый
***

Сообщений: 371
Зарегистрирован: 04.04.2009
Рейтинг: 2
Сказал спасибо: 1
Поблагодарили 4 раз(а) в 4 сообщ.
Сообщение: #97
RE: BIOS Disassembling
Цитата:он имел ввиду, самы низкий уровень всех настроек в биосе... но биос это тоже програма, только самая первая)))
Вижу ты шаришь. Объясни мне следующую вещь. При включении питания, биос устанавливает какие-то напряжения на пинах процессора, устанавливает какие-либо вектора первоначальной загрузки? Или процессор по молчанию после power-up устанавливает CS0# и читает команды из первой попавшейся под руку микросхемы?
Цитата:если судить по возможным типам команды (mov.b, mov.w, mov.l) говорит о разрядности disp: byte, word и наверное long, т.е байт, два байта и четыре байта.
Да, все верно, видимо все так и есть. Спасибо за разъяснения.
22.03.2012 01:14
Найти все сообщения Цитировать это сообщение
cybdyn Не на форуме
Ветеран
*****

Сообщений: 1368
Зарегистрирован: 20.12.2011
Рейтинг: 8
Сказал спасибо: 4
Поблагодарили 98 раз(а) в 75 сообщ.
Сообщение: #98
RE: BIOS Disassembling
я только предположил, так как больше имел дело с MIPS (пс1, пс2)

нуууу... вообще в самом-самом начале чё делает проц только разработчику известно, часто выполняется какаянить проверка , какогонить магического адреса.
...или что типа того
...или ничего не выполняется...

ну, после всех неясностей, по идее проц стартует из вектора сброса, чем является адрес 0x0000000 или типа того, (в процах мипс это адрес 0xBFC00000) , а выставление этого на шине адреса, мультиплексирует -CS0 в ноль)) , ну или какойто другой прописаный аппаратно (в пс1 он называется почемуто -CS2), вообщем аппаратно выбор чипа биоса.
так что никаких случайностей..всё чётко...
(Последний раз сообщение было отредактировано 22.03.2012 в 01:29, отредактировал пользователь cybdyn.)
22.03.2012 01:28
Найти все сообщения Цитировать это сообщение
developer Не на форуме
Пользователь
**

Сообщений: 71
Зарегистрирован: 26.06.2011
Рейтинг: 1
Сказал спасибо: 2
Поблагодарили 8 раз(а) в 7 сообщ.
Сообщение: #99
RE: BIOS Disassembling
Нене

Я тут почитал, пипец просто. Оказывается х2, х4 - это множители для смещения. Т.е. само смещение представляется только одним байтом, что получается при использовании MOV.B Rm,@(disp,Rn) максимальный адрес можно представить как Rn + 255. В случае инструкций MOV.L и MOV.B - максимальное значение адреса становится 255 * 2 + Rn и 255 * 4 + Rn, соответственно.
Капец, я б такие инструкции врядли юзал))). Странно все это, но может я неправильно понял.
22.03.2012 01:42
Найти все сообщения Цитировать это сообщение
Rio Не на форуме
Продвинутый
***

Сообщений: 371
Зарегистрирован: 04.04.2009
Рейтинг: 2
Сказал спасибо: 1
Поблагодарили 4 раз(а) в 4 сообщ.
Сообщение: #100
RE: BIOS Disassembling
Цитата:Капец, я б такие инструкции врядли юзал))). Странно все это, но может я неправильно понял.
Полностью с тобой солидарен. Но, видать, у разработчиков RISC-процессоров, увы, есть свое, и явно превалирующее над нашим мнение на этот счет, так что мы, к сожалению, в проигрышеSmile
Конечно, существенное ограничение на функционал накладывает ограничение длины команды, равное 16 битам. Вот уж воистину, узкое пространство, где сильно не развернешься. А хочется ведь предоставить различные режимы адресации, сделать работу с процессором\микроконтроллером максимально удобной. Вот и извращаются, как могут.
Цитата:так что никаких случайностей..всё чётко...
Ну в-общем ясно, хотелось просто узнать от тебя именно, как разбирающегося во всем этом железячника, как конкретно в Дримкасте это все делается. Ну да ладно, видимо не судьбаSmile Общий принцип понятен, и на том спасибо, за разъяснения.
(Последний раз сообщение было отредактировано 22.03.2012 в 01:59, отредактировал пользователь Rio.)
22.03.2012 01:52
Найти все сообщения Цитировать это сообщение
Создать ответ 


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

Переход:


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