BIOS

Loading thread data ...

Radoo:

jak nic nie będzie wyświetlać na ekranie, to po grzyba driver TFT do biosa?

Jak to mawiano: przed laaty robiłem coś takiego, ale na symulatorze. Znaczy drivery do RSa, drukarki, CRT z generatorem znaków (na Motorole

68000). Zrobić BIOSA to nie jest zabawa na tydzień, tylko raczej na rok. W razięco mam listing BIOSA do IBM-XT, niestety tylko na papierze i dość kiepska kopia. Wszystkiego 100 stron assemblera, ale dobrze skomentowane.

Waldek

Reply to
Waldemar Krzok

oglądnąłem PDFa. To robota na lata. Nie możesz podejść do problemu pragmatycznie? Choćby załączanie monitora dopiero w aplikacji? Rozumiem, że denerwuje litania startowa BIOSa? Może istnieje możliwość wyłączenia tego w oryginalnym BIOSie lub dorobienie własnego logo, które "zasłaniałoby" oryginalny listing. Takowe możliwości istnieją w większości embedded computer. Pisanie BIOSa od małego to naprawdę cholerna robota i znaczne koszty (ludzie, nerwy i telefon). Wiele firm nie zdradza detali hardware, a tu musisz zejść robaczkom na nogi. Tak dla informacji dla ciebie: pisałem kiedyś protected mode driver do karty graficznej i musiałem ominąć cały BIOS. Pisanie zajęło mi 3 miesiące. A to tylko dlatego, że nie miałem paru "drobnych" informacji chipseta (które rejestry do czego służą). Na szczęście firma była amerykańska i można było sobie z nimi pogadać, na nieszczęście zbyt hojni informacyjnie nie byli. W sumie robiłem reverse engeneering biosa karty. Nie życzę wrogowi takiej zabawy, szczególnie jak szef nad głową siedzi wkurwion, że jeszcze nie gotowe.

Waldek

Reply to
Waldemar Krzok

Hi Radoo!

Ja nie pisalem, ani nie znam osobiscie nikogo, kto pisal. Ale jest taki sobie projekt ...

formatting link
ktos tam cos wie.

Reply to
medenes

pogadaj (choćby emailowo) z firmą. Może ma jakieś firm-logo albo podobne. Ewentualnie zrób pseudo-hardware, czyli eprom z driverem w przestrzeni adresowej > 0xA0000 i starcie mod 0x400, jak np. stare karty ISA mają, wgrywającym logo twojej firmy na ekran i już masz cusik lepszejszego ;-) Ale mnie tam wsio rawno. Sprzedajemy urządzenia za 50kEUR i meldują się one jako Windows 2000 Professional ;-) Nawet na stacji ISS. Różnią się od innych PCtów na stacji tym, że jest na nich naklejka: It is not PC! For ETD purpose only! Może lipa, ale ważne, że działa ;-)

Waldek

Reply to
Waldemar Krzok

ja pisałem kiedyś ćwiczebnie taki mały kod, który odpala się podczas POST - cos takiego jak BIOS na karcie grafiki czy kontrolerze SCSI.

Reply to
Jarek Andrzejewski

ja wiem? Chyba wszyscy nabywcy hafciarek ZSK tak mają: Amd K100, LCD, Win 3.11de :-) A chyba kosztują więcej niż 50k

Reply to
Jarek Andrzejewski

A aplikacja korzysta z funkcji BIOS czy nie ?

Generalnie - BIOS to dzis ze 128KB kodu. Sam od poczatku, bez dokumentacji, szybko tego nie napiszesz.

Sugeruje wyszukac to co sie na ekranie pojawia ... i wyspacjowac. Albo przesledzic start i wywali procedury drukowania tych tekstow.

A moze .. wiele wspolczesnych biosow ma miejsce na wgranie logo producenta .. wrzuc tam pusta bitmape. Zaleta ze w razie klopotow mozna ja wylaczyc i ogladac komunikaty ..

J.

Reply to
J.F.

da się, ale to robota głupiego. Idziesz do adresu zawartego w wektorze przerwań reset i masz adres bootstrap loadera. Inne funkcje BIOSa też tak znajdziesz. Wektory przerwań są na początku przestrzeni adresowej.

Radzę ci, zostaw BIOSa i zrób swój własny, dodatkowy BIOS. Jak to się robi? Tu krótki opis (z IBM-XT reference manual):

During the POST interrupt vectors are established for the BIOS calls. After the default vector are in place, a scan for additional ROM modules takes place. At this point a ROM routine on the adapter card may gain control. The routine may establish or intercept interrupt vectors to hook themselves into the system. The absolute adresses 0xC8000 through 0xF4000 are scanned in 2K blocks in search for a valid adapter card ROM. A valid ROM is defined as follows: Byte 0: 0x55 Byte 1: 0xAA Byte 2: length of the ROM in 512 bytes blocks The checksum of the ROM (modulo 0x100) must be 0

When the POST identifies a valid ROM, it does a far call to byte 3 of the ROM....The feature ROM should return control to BIOS routines by executing a far return.

Jak widać, nie musisz nic mieszać w oryginalnym BIOSie, tylko dodajesz swój. Jak swój dodasz po adapterze TFT, to możesz przemapować jego wektor przerwań na siebie i dopiero w swojej aplikacji go przegiąć z powrotem.

Waldek

Reply to
Waldemar Krzok

chyba mam jeszcze mały programik liczący tę sumę

Reply to
Jarek Andrzejewski

Nobla za niego nie dostaniesz ;-)

Sumujesz wszystkie bajty olewając przeniesienie i już jest wynik.

Waldek

Reply to
Waldemar Krzok

[...]

Jest maly problem - czy pozniejsza czesc bios korzysta z przerwan-funkcji, czy wali prosto do pamieci video :-)

No chyba zeby wygasic ekran i moze podmienic procedure inicjacji ..

J.

Reply to
J.F.

ino wypróbować.

na przykład. Albo jakieś logo wstawić.

Waldek

Reply to
Waldemar Krzok

Wiekszosc nowych komputerow ma opcje wyswietlania pelnoekranowego logo (zamiast komunikatow), przewaznie jest to logo producenta plyty glownej. Mozna to logo podmienic, mozna tez wstawic czarna bitmape a w biosie ustawic, zeby pokazywal logo. A jak ktos bedzie chcial zobaczyc komunikaty to wtedy wcisnie przy starcie [TAB]. :-) Przynajmnie ja mam takie duze logo na plytach MSI, bios AMI.

Reply to
nom

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.