[OpenBIOS] BIOS extensions are pointless (was: More comments...)

David Woodhouse Dave at imladris.demon.co.uk
Sat Feb 21 19:56:04 CET 1998


hawk at ttlc.net said:
> 
>   Could someone please tell me where protected-mode code will be
> useful in the BIOS firmware?

Initial memory and other hardware checks, and then some of the INT 15h 
functions for copying memory around above 1Mb. Oh, and of course the BIOS 
function to switch into protected-mode :)
Also PCI and APM BIOS32 functions.


Other than that, I don't see any point in extra protected-mode functionality - 
as you rightly say, anything running in protected mode is going to have its 
own drivers already.


>  I believe the single most important goal of this effort should be
> modular design.  If we make the design modular, most everyone can be
> happy. 

Agreed. Most of the things we've been talking about recently have been 
proposed extensions which would be separate modules, so those who don't see 
the point don't have to use them. We have very little dispute about the core 
of the project, other than the fact that we're not entirely happy about LPGL 
but it seems to be the best option so far suggested.


Regarding the module support:

 We can either link them at flash time, or have the BIOS search through the
available modules when it boots. I prefer the latter, because it doesn't
involve any intelligence on the part of the linker, and the extra headers 
required won't take up a significant amount of space

Each module object needs a header, much like the existing BIOS extensions have.
In it we need to store: length, checksum, entry point. We could also do with a 
flag indicating the invokation order, and whether it needs to remain in memory 
when it's done (for when we've uncompressed into RAM).

For example, a chipset optimisation module would be loaded early, and not 
remain in memory. An IDE disk driver providing INT 13h functions could be 
loaded later, and will remain in memory. A boot loader will be loaded last.
The power-up vector will point to a routine which does an inventory of the 
available modules, and invokes them in the correct order, uncompressing them 
from flash into RAM as required. This boot loader will provide certain basic 
functions for reading data from the CMOS and other things that a number of 
other modules will require.


----                              ----                              ----
David Woodhouse, Robinson College, CB3 9AN, England.   (+44) 0976 658355
    Dave at imladris.demon.co.uk        http://dwmw2.robinson.cam.ac.uk
	    finger pgp at dwmw2.robinson.cam.ac.uk for PGP key.



---
OpenBIOS -- http://www.linkscape.net/openbios/
openbios-request at linkscape.net   Body: un/subscribe
Problems?  dcinege at psychosis.com



More information about the openbios mailing list