Дизассемблирование BIOS...

Используя великий и могучий IDAPro5. + скрипты:)

Начну эту тему (кстати по просьбе уважаемого Романа), для всех тех кому интересно раскопать, как работает БИОС.

Дано: человек имеет опыт обращения c IDA Pro.

Решение №1: Award Bios script by
Alexey Kulentsov (old.idapalace.net/idc/award450.rar)

!!! не путать с award450.idc входящим в состав idapro5!!! который более старый - 1996 г.вып.

Решение №2 (pre-alpha, моё): rapidshare.com/files/28170560/ami.idc.html

Комментарии, советы и предложения в студию.

PS скрипты разрабатывались под 64K BIOS.:)

Прохожий
По поводу физической модификации - делать ее все равно придется. А шанс, что заработает только при физ. модификации, все-таки есть. Ну это ваша мать, вам виднее;).

Цитата:
с какого момента БИОС знает о стеке ?

Не раньше, чем будет будет признано дееспособным ОЗУ.

P.S. А что по поводу вопросов о выкладке дампа и наличия незадействованной разводки под DIP/PLCC на плате?

Аватар пользователя Baza

Двойной разводки под флэш на чистых Интелах я не встречал:(



Поэтому запасаемся лазерным утюгом и делаем переходник из 2х половинок

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



на половинках шаг 0.5мм преобразуется в удобоваримый к распайке (например 2,54:) )

после сравниваются даташиты и проводки припаиваются к  линейкам с шагом 2.54 .



Переходник под DIP32 готов.

Либо нечему гореть, либо нечем поджечь!

maco слил.


Шанса нету. Другие об этом писали.
Когда ОЗУ признаётся дееспособным ?
Baza разводка как раз двойная, но хитрая. Есть площадки для другого чипа с большим количеством ног такого же формфактора, но часть из них находятся под уже установленным чипом. Вероятно думали пользовать 4Мбитки.
ТоварищЪ кто такой "наш брат" ?

Прохожий
Спасибо за дамп.


По поводу ОЗУ - скорее всего выполняется какой-нибудь тест работоспособности в пределах необходимого адресного пространства. Я с этим не разбирался.
Цитата:
Есть площадки для другого чипа с большим количеством ног такого же формфактора, но часть из них находятся под уже установленным чипом. Вероятно думали пользовать 4Мбитки.

У вас стоит TSOP44, а доп. разводка под TSOP48? Это просто разная корпусировка одних и тех же микросхем (для всего семейства 2, 4, 8 Мбит). Из этого семейства были еще 4-мегабитки в TSOP40, но у них шина данных 8 бит, а в TSOP44\48 - 16 бит. Это еще одно препятствие на пути к подключению другой микросхемы. Но не очень большое;). Так что можно задумываться о переходнике на 2 DIP32;).

 

Цитата:
там еще свободное место есть :)
Ухты, так что же это за версия БИОСа?

 
Цитата:
Прохожий
ТоварищЪ кто такой "наш брат" ?
Так называют соотечественников, их в АМИ, по крайней мере 7.

maco таки да, на 48. О переходе на дип32 даже не буду задумываться :)

Аватар пользователя Santa

Во! Накрапал чуть-чуть для совсем начинающих (таких как я) пару советов по AWARDу.
Ссылку поправил с учетом смены движка.
Просьба ногами не пинать а дописать что-нибудь полезное.

ЗЫ Как к AMI подступаться я не знаю..

-=Кто сказал что бесполезно биться головой об стену...=- (НП)
Пх’нглуи мглв’нафх Ктулху Р’льех вгах’нагл фхтагн
Хочешь сделать хорошо - сделай это сам

Santa ...Накрапал чуть-чуть для совсем начинающих...

Очень хорошо! Побольше об ИДЕ. Дюже мощный инструмент, но дюже капризный. Толи драйвера кривые ?
Весь биос гружу - создаёт 1 сегмент. Такой себе сегмент на 256к!
Гружу без сегментов и начинаю их потом делать руками - появляются дыры в адресном пространстве... 
Только если один бутблок загнать всё идёт более-менее...
Очень полезные статейки в одном месте.

Аватар пользователя Santa

Там в двух местах написано одно и то-же: здесь и здесь. Почитайте еще раз как нужно загружать модули...

Кстати - упомянутый в начале топика новый модуль award450.idc прекрасно работает в правильно загруженной прошивке..

-=Кто сказал что бесполезно биться головой об стену...=- (НП)
Пх’нглуи мглв’нафх Ктулху Р’льех вгах’нагл фхтагн
Хочешь сделать хорошо - сделай это сам

Цитата:

Когда ОЗУ признаётся дееспособным ?

Например в АМИ:
F000:C0D0 ; ---------------------------------------------------------------------------
F000:C0D0
F000:C0D0 loc_FC0D0: ; DATA XREF: seg000:C0CAo
F000:C0D0 xor ax, ax

F000:C0D2 mov es, ax
F000:C0D4 mov bx, es:472h
F000:C0D9 mov eax, 5AA5A55Ah
F000:C0DF mov edx, eax
F000:C0E2
F000:C0E2 loc_FC0E2: ; CODE XREF: seg000:C104j
F000:C0E2 xor edi, edi
F000:C0E5 mov ecx, 20000h ; write 128K dwords = 512 KB
F000:C0EB rep stos dword ptr es:[edi] ; memtest?
F000:C0EF xor edi, edi
F000:C0F2 mov ecx, 20000h
F000:C0F8 repe scas dword ptr es:[edi]
F000:C0FC jz short POST_D5
F000:C0FE jmp halt
F000:C101 ; ---------------------------------------------------------------------------

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
  • Разрешённые HTML-теги: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img>
  • You can use BBCode tags in the text. URLs will automatically be converted to links.

Подробнее о форматировании текста

Антибот - введите цифру.
Ленты новостей