www.delorie.com/djgpp/doc/rbinter/0.html   search  
Table 89

Format of VBE/AF v1.0P Device Context buffer:
Offset	Size	Description	)
 00h	WORD	maximum X coordinate in frame buffer (0 = left edge)
		Note:	application must never pass X coordinate greater than
			  this value to the SetClipRect function (values are
			  NOT range-checked!)
 02h	WORD	maximum Y coordinate in frame buffer (0 = top edge)
		Note:	application must never pass Y coordinate greater than
			  this value to the SetClipRect function
 04h	DWORD	-> "SetForeColor" to set foreground color/mix (see #00091)
 08h	DWORD	-> "SetBackColor" to set background color/mix (see #00092)
 0Ch	DWORD	-> "SetClipRect" set hardware clipping rectangle (see #00093)
 10h	DWORD	-> function "DrawScan" to draw a single scan line
 14h	DWORD	-> function "DrawScanList" to draw a list of scan lines
 18h	DWORD	-> function "DrawRect" to draw a solid rectangle
 1Ch	DWORD	-> function "DrawLine" to draw a solid line
 20h	DWORD	-> function "DrawPattScan" to draw a patterned scan line
 24h	DWORD	-> function "BitBlt" to perform screen-to-screen BitBLT
 28h	DWORD	-> "TransBitBlt" to perform transparent screen-to-screen BitBLT
 2Ch	DWORD	-> "MonoBitBlt" to monochrome expansion screen-to-screen BitBLT
 30h	DWORD	-> function "SetCursor" to download hardware cursor image
 34h	DWORD	-> function "SetCursorPos" to set hardware cursor position
 38h	DWORD	-> function "SetCursorColor" to set hardware cursor color
 3Ch	DWORD	-> function "ShowCursor" to show/hide hardware cursor
 40h	DWORD	-> function "WaitTillIdle" to wait until graphics engine idle
 44h	DWORD	-> "EnableDirectAccess" to enable direct framebuffer access
 48h	DWORD	-> "DisableDirectAccess" to disable direct framebuffer access
 4Ch	DWORD	-> "BankSwitchCB" bank-switching callback function
		(set by application, may simply point at 32-bit VBE 2.0 bank
		  switching entry point)
 50h	WORD	"VidMemSel" selector for video memory (must be set by app)
 52h	WORD	"IOPortsOff" offset of I/O ports table in context buffer
 54h	WORD	"IOMemoryOff" offset of I/O memory table in context buffer
 56h	WORD	"IOMemSel1" selector for first I/O memory area specified by
		  I/O memory table (must be set by application)
 58h	WORD	"IOMemSel2" selector for second I/O memory area
 5Ah	WORD	"IOMemSel3" selector for third I/O memory area
 5Ch	WORD	"IOMemSel4" selector for fourth I/O memory area
 5Eh  N BYTEs	device-specific state buffer
      N WORDs	I/O port access table (list of ports, last entry is FFFFh)
      N DWORDs	I/O memory access table (list of physical-address/length pairs,
		  last entry is FFFFFFFFh)
      N BYTEs	32-bit code for VBE/AF v1.0P function
Notes:	all function pointers are offsets into the 32-bit code within the
	  context buffer, and should be updated to point at the actual
	  functions after the application has copied the buffer from the
	  real-mode memory used for the interrupt call into its own flat-model
	  memory space
	any functions which are not supported by the hardware have function
	  pointers which are set to 00000000h initially


  webmaster   donations   bookstore     delorie software   privacy  
  Copyright 2000   by Ralf Brown     Updated Jul 2000