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

Сообщений: 63
Зарегистрирован: 19.12.2011
Рейтинг: 0
Сказал спасибо: 2
Поблагодарили 0 раз(а) в 0 сообщ.
Сообщение: #21
RE: BIOS Disassembling
Я тоже хотел бы подключить винт, но нифига не разбираюсь в драйверах, программы писать не умею Sad . Паять могу, телевизор там починить или другую технику. Но в подключении винта врятли помогу.

LEUMAS
"Не в обибу но я заманался ноющим лантухам что либо на эту тему обьяснять, хай сами мозгуют.
Поставить ведь элементарно, сравниваем по даташитам распиновку чипов и паяем"

Могли бы и посказать ноющему лонтуху Smile какую именно можно микруху припаять, по даташитам долго искать придется мне . Вам то хорошо, вы себе наверно биосмод уже замутили

"Ну погоди", GB, GBP, GBA, GBA SP, PSP, NDS, Subor, Sega Megadrive, PS One, Dreamcast, PS 2, Nintendo Gamecube, XBOX
23.12.2011 12:59
Найти все сообщения Цитировать это сообщение
cybdyn Не на форуме
Ветеран
*****

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

но в софт поддержке всё еще нуждаюсь))

неужто такая проблема читать/писать на шину?
23.12.2011 13:41
Найти все сообщения Цитировать это сообщение
SWAT Не на форуме
Администратор
*******

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

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

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

если я буду осваивать , это может затянуться... так как я в дриме неделю)))
(Последний раз сообщение было отредактировано 23.12.2011 в 17:30, отредактировал пользователь cybdyn.)
23.12.2011 15:54
Найти все сообщения Цитировать это сообщение
SWAT Не на форуме
Администратор
*******

Сообщений: 7236
Зарегистрирован: 04.01.2005
Рейтинг: 30
Сказал спасибо: 149
Поблагодарили 1214 раз(а) в 762 сообщ.
Сообщение: #25
RE: BIOS Disassembling
Ну ничего страшного, здесь люди терпеливые, ты главное сделай.

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

Сообщений: 1368
Зарегистрирован: 20.12.2011
Рейтинг: 8
Сказал спасибо: 4
Поблагодарили 98 раз(а) в 75 сообщ.
Сообщение: #26
RE: BIOS Disassembling
work in progress
24.12.2011 21:44
Найти все сообщения Цитировать это сообщение
cybdyn Не на форуме
Ветеран
*****

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

так же как вариант, возможнали официальная загрузка обновлений биоса или оболочка, по типу FREE-MC-BOOT для пс2. не хочется биос мод делать, хотелось бы кинуть пару -тройку адресных линий и залить прогу через это окно...
26.12.2011 18:16
Найти все сообщения Цитировать это сообщение
SWAT Не на форуме
Администратор
*******

Сообщений: 7236
Зарегистрирован: 04.01.2005
Рейтинг: 30
Сказал спасибо: 149
Поблагодарили 1214 раз(а) в 762 сообщ.
Сообщение: #28
RE: BIOS Disassembling
Родной биос софтварно не прошивается, так что только биос мод.
Чек сумму биоса проверяет сам гдром, если она не совпала он блокируется и все накрывается медным тазом.
Если ты будешь заменять гдром аппаратно, то тебе это в принципе пофиг, биос можно делать любой.

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

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

как это он её проверяет, он же SLAVE устройство, чёто непонятно...
во вторых у него нет достаточно ног. гдром же сидит как ата устройство (D0-D15) (A0-A2 + CS1, CS3) . эт я условно написал. или там ещё какоёто доступ. какойнить последователльный. тогда как он чип мод пропускает , обьсяни?

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

чек сумму обычно делает встроеный код в проц. если таковое вообще предусмотрено... и то он делает для того чтобы понять кореектная микруха/программа сидит на шине... иначе выходит в некое исключение.. так по край мере на моей памяти с другими процами..

ещё чек суму может проверить код в самом биосе , при старт-апе.
естестно при перекомпиляции биоса этого куска кода нет и ничего и не проверяется)))
эта проверка в основном нужна чтобы не дать комунить подменить отдельные ячейки.
27.12.2011 00:50
Найти все сообщения Цитировать это сообщение
alex Не на форуме
Ветеран
*****

Сообщений: 1276
Зарегистрирован: 11.07.2005
Рейтинг: 2
Сказал спасибо: 4
Поблагодарили 69 раз(а) в 53 сообщ.
Сообщение: #30
RE: BIOS Disassembling
Чек сумму биоса проверяет CPU, но там не совсем проверка чек суммы идет(алгоритм проверки неизвестен), иначе даже при изменении 1 байта в биосе он бы проверку не проходил, а есть версии измененного биоса (в том числе с отключенной проверкой на регион) которые проходят проверку на подлинность.
Если биос не прошел проверку на подлинность, то блокируется GD-ROM дрима, а возможно и вся шина G1.

Здесь была подпись.
27.12.2011 02:07
Найти все сообщения Цитировать это сообщение
cybdyn Не на форуме
Ветеран
*****

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

но, вопрос по биос моду, тогда как? там это предусмотрено при компиляции?

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

на счёт блокирования чего либо там, это не факт, достаточно просто не выходить на исполнение инсрукций...

и как вариант мот всё таки есть окно, как в пс1 взломщик кодов загружался или как в пс2 фри-мак-бут, у дрима есть чтонить подобное?
(Последний раз сообщение было отредактировано 27.12.2011 в 02:25, отредактировал пользователь cybdyn.)
27.12.2011 02:24
Найти все сообщения Цитировать это сообщение
alex Не на форуме
Ветеран
*****

Сообщений: 1276
Зарегистрирован: 11.07.2005
Рейтинг: 2
Сказал спасибо: 4
Поблагодарили 69 раз(а) в 53 сообщ.
Сообщение: #32
RE: BIOS Disassembling
Цитата:как вариант мот всё таки есть окно, как в пс1 взломщик кодов загружался или как в пс2 фри-мак-бут, у дрима есть чтонить подобное?

В дриме нет ничего подобного, только с GD-rom дрим грузит.

Здесь была подпись.
27.12.2011 03:24
Найти все сообщения Цитировать это сообщение
SWAT Не на форуме
Администратор
*******

Сообщений: 7236
Зарегистрирован: 04.01.2005
Рейтинг: 30
Сказал спасибо: 149
Поблагодарили 1214 раз(а) в 762 сообщ.
Сообщение: #33
RE: BIOS Disassembling
Я не правильно выразился.

PHP код:
register unsigned long px;
*((
volatile unsigned long *)0xa05f74e4) = 0x1fffff;

for(
p=0p<0x200000/4p++)
     
= ((volatile unsigned long *)0xa0000000)[p]; 

Вот так происходит проверка биоса. Это не алгоритм проверки, а то как она запускается.
Т.е. есть некий секретный регистр: 0xa05f74e4, отправив которому размер биоса, необходимо прогнать его весь по рабочему регистру.
И регистр этот находится в интерфейсе для гдрома, если судить по адресам:

PHP код:
/* IDE interface registers */
    
uint8_t status;  /* A05F709C + A05F7018 Read-only */
    
uint8_t control/* A05F7018 Write-only 01110 */
    
uint8_t error;   /* A05F7084 Read-only  10001 */
    
uint8_t feature/* A05F7084 Write-only 10001 */
    
uint8_t count;   /* A05F7088 Read/Write 10010 */
    
uint8_t disc;    /* A05F708C Read-only 10011 */
    
uint8_t lba0;    /* A05F708C Write-only 10011 (NB: Presumed, TBV */
    
uint8_t lba1;    /* A05F7090 Read/Write 10100 */
    
uint8_t lba2;    /* A05F7094 Read/Write 10101 */
    
uint8_t device;  /* A05F7098 Read/Write 10110 */
    
uint8_t command/* A05F709C Write-only 10111 */ 

По поводу переключения биоса, мне кажется это реально сделать, нужно просто сделать какой нить регистр новый (т.е. повесить его на шину какую нибудь), с помощью которого можно будет переключать биос. Схема я думаю должна быть простой. Далее повесить break handler на запись по адресу 0xa05f74e4 регистра и переключать в тот момент, когда в него отправляют размер. Потом правда нужно как то обратно это сделать, иначе зависнет Smile

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

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

$005F7400 - $005F74FF область G1 Control Reg

0xa05f74e4 - регистр управления шиной г1. связанный вероятно именно с биосом, точнее с областью памяти 0x1f0000
он задаёт окно, широной в размер биоса, чтобы при копировании его в 0xa0000000 , он мог нормально прочитаться по 8 бит.

0xa0000000 - известно что за адрес, это память? когда в неё передаётся управление?

ещё, по какому адресу пристарте проца передаётся управлние какой первй адрес. у пс1 и пс2 процов мипс первй адрес

0xBFC0000 , но реально верно будет и по 0x1FC0000 0xАFC0000 , т.к последние разряды выбирают режим кэша,

- приведённый код должен храниться в коде нового биоса? в самом начале вызывается?
- биос компилиться под 0x1f0000 или 0xa0000000 ?
- бинарник биоса есть гденить?? можно скачать?
и неплохобы дисассемблер или прогу с визуальным интерфейсом..
(Последний раз сообщение было отредактировано 27.12.2011 в 14:48, отредактировал пользователь cybdyn.)
27.12.2011 12:50
Найти все сообщения Цитировать это сообщение
SWAT Не на форуме
Администратор
*******

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

0xa0000000 - это чип биоса с маппингом в адресное пространство CPU. С этого адреса дрим начинает свою работу.
Скачать bios

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

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

так же возможно это рег задаём маску адресов.

*((volatile unsigned long *)0xa05f74e4) = 0x1fffff;

а вот для чего вычиывать его не знаю.


повторю:
- приведённый код должен храниться в коде нового биоса? в самом начале вызывается?
- биос компилиться под 0x1f0000 или 0xa0000000 ?
- в чём разница обращения по адрксам 0x1f0000 или 0xa0000000 ?
28.12.2011 10:41
Найти все сообщения Цитировать это сообщение
SWAT Не на форуме
Администратор
*******

Сообщений: 7236
Зарегистрирован: 04.01.2005
Рейтинг: 30
Сказал спасибо: 149
Поблагодарили 1214 раз(а) в 762 сообщ.
Сообщение: #37
RE: BIOS Disassembling
Этот код может быть где угодно. Биос компилится под нулевой адрес.
0x1f0000 - это не адрес вообще!
0x1fffff - Это размер биоса, 2 мб. В регистр 0xa05f74e4 передается размер!

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

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

вот задизасемблил, есть в этом коде смысл, или чёт нето. и что примерно на атрте происходит?

H'8c010000: H'e3ff .. mov H'ffffffff, R3
H'8c010002: H'4328 (C shll16 R3
H'8c010004: H'6439 9d swap.w R3, R4
H'8c010006: H'4318 .C shll8 R3
H'8c010008: H'4409 .D shlr2 R4
H'8c01000a: H'4409 .D shlr2 R4
H'8c01000c: H'5039 9P mov.l @(9, R3), R0
H'8c01000e: H'240a .$ xor R0, R4
H'8c010010: H'204e N mulu.w R4, R0
H'8c010012: H'001a .. sts MACL, R0
H'8c010014: H'2008 . tst R0, R0
H'8c010016: H'8b77 w. bf H'8c010108
H'8c010018: H'1304 .. mov.l R0, @(4, R3)
H'8c01001a: H'e109 .. mov H'09, R1
H'8c01001c: H'4118 .A shll8 R1
H'8c01001e: H'7129 )q add H'29, R1
H'8c010020: H'1317 .. mov.l R1, @(7, R3)
H'8c010022: H'4321 !C shar R3
H'8c010024: H'e001 .. mov H'01, R0
H'8c010026: H'8132 2. mov.w R0, @(2, R3)
H'8c010028: H'e0c3 .. mov H'ffffffc3, R0
H'8c01002a: H'4028 (@ shll16 R0
H'8c01002c: H'cbcd .. or H'cd, R0
H'8c01002e: H'4018 .@ shll8 R0
H'8c010030: H'cbb0 .. or H'b0, R0
H'8c010032: H'4001 .@ shlr R0
H'8c010034: H'1303 .. mov.l R0, @(3, R3)
H'8c010036: H'e501 .. mov H'01, R5
H'8c010038: H'4505 .E rotr R5
H'8c01003a: H'7560 `u add H'60, R5
H'8c01003c: H'6653 Sf mov R5, R6
H'8c01003e: H'7620 v add H'20, R6
H'8c010040: H'c800 .. tst H'00, R0
H'8c010042: H'0583 .. pref @R5
H'8c010044: H'462b +F jmp @R6
H'8c010046: H'0009 .. nop
28.12.2011 12:43
Найти все сообщения Цитировать это сообщение
SWAT Не на форуме
Администратор
*******

Сообщений: 7236
Зарегистрирован: 04.01.2005
Рейтинг: 30
Сказал спасибо: 149
Поблагодарили 1214 раз(а) в 762 сообщ.
Сообщение: #39
RE: BIOS Disassembling
http://www.ludd.luth.se/~jlo/dc/bootROM.c
http://www.ludd.luth.se/~jlo/dc/bootROM.h
http://www.ludd.luth.se/~jlo/dc/security_stuff.c

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

Сообщений: 1368
Зарегистрирован: 20.12.2011
Рейтинг: 8
Сказал спасибо: 4
Поблагодарили 98 раз(а) в 75 сообщ.
Сообщение: #40
RE: BIOS Disassembling
(SWAT) ".. есть некий секретный регистр: 0xa05f74e4, отправив которому размер биоса, необходимо прогнать его весь по рабочему регистру." -

я всётки так и не понял?
ну допусти этот так, но новый биос (к примеру в том что в биос-моде используется) уже имеет не ту чек сумму. есть ли проверка на некую чексумму при компиляции или это предусмотрено той прогой которая собирает образ биоса.

и при сборке нового меняется только область кода в которй сидит ОС?

к примеру в пс1, старт идёт с нуля биоса (0хBFC0-0000), инициализируется железо, различние подсистемы обработки прерываний, а в конце ос переписывается в память и стратует уже с адресов памяти. (0х80030000)

?
30.01.2012 12:21
Найти все сообщения Цитировать это сообщение
Создать ответ 


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

Переход:


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