[OpenBIOS] Video

James jvh at uclink4.berkeley.edu
Thu Feb 17 15:55:35 CET 2000


Ron,
  Everything I can find tells me that we should let the video card
initialize itself.  It looks like we should scan C0000 through E0000 for
the video cards signature and then call its code..  The problem is that I
think we may have to do this in 16 bit mode.
  Can't we get a 16-bit mode C compiler (or even better, a 16-bit mode
gnu assembler)?
	- James


>>>>>> http://members.xoom.com/cattaghia/Tuts/biosstrt.txt

The ROM BIOS, on a system startup, executes the POST (power-on self-test)
routine which usually checks memory, establishes devices etc.  The POST
routine also fills in the BIOS memory area at 0000:0040h and sets up the
real mode interrupt handlers (those connected to IRQ lines are set to
dummy handlers which simply acknowledge the interrupt with the PIC and
return, those assigned to BIOS services are set to the appropriate
address, which may vary with the BIOS manufacturer and revision).  The
POST then checks for extensions ROMs at this point (for example the video
card).  Absolute addresses C0000h through E0000h are searched in 2KB
increments for the signature 55h 0AAh.  If the signature is found, the
next byte is a length indicator for the ROM (in 512 byte blocks) and the
next bytes contain a FAR CALLable address (it should be called as an
empirical address, with the lowest possible offset value.  For example,
absolute address C0003h is called as C000:0003h).  The extension BIOSes
perform initialization and then return. On entry, SS:SP must be set up as
a valid stack.

-
To unsubscribe: send mail to majordomo at freiburg.linux.de
with 'unsubscribe openbios' in the body of the message



More information about the openbios mailing list