home *** CD-ROM | disk | FTP | other *** search
File List | 1992-08-25 | 22.3 KB | 522 lines |
- [This file was provided by Robin Walker. --Ralf]
- Last Update: 8/24/92
-
- Format of BIOS Data Segment at segment 40h:
- {items in curly braces not documented by IBM}
- Offset Size Description
- 00h WORD Base I/O address of 1st serial I/O port, zero if none
- 02h WORD Base I/O address of 2nd serial I/O port, zero if none
- 04h WORD Base I/O address of 3rd serial I/O port, zero if none
- 06h WORD Base I/O address of 4th serial I/O port, zero if none
- Note: Above fields filled in turn by POST as it finds serial
- ports. POST never leaves gaps. DOS and BIOS serial device
- numbers may be redefined by re-assigning these fields.
- 08h WORD Base I/O address of 1st parallel I/O port, zero if none
- 0Ah WORD Base I/O address of 2nd parallel I/O port, zero if none
- 0Ch WORD Base I/O address of 3rd parallel I/O port, zero if none
- 0Eh WORD [non-PS] Base I/O address of 4th parallel I/O port, zero if none
- [PS] Segment of Extended BIOS Data Segment
- Note: Above fields filled in turn by POST as it finds
- parallel ports. POST never leaves gaps. DOS and BIOS
- parallel device numbers may de redefined by re-assigning
- these fields.
- 10h WORD Installed hardware:
- bits 15-14: number of parallel devices
- bit 13: [Conv] Internal modem
- bit 12: reserved
- bits 11- 9: number of serial devices
- bit 8: reserved
- bits 7- 6: number of diskette drives minus one
- bits 5- 4: Initial video mode:
- 00b = EGA,VGA,PGA
- 01b = 40 x 25 color
- 10b = 80 x 25 color
- 11b = 80 x 25 mono
- bit 3: reserved
- bit 2: [PS] =1 if pointing device
- [non-PS] reserved
- bit 1: =1 if math co-processor
- bit 0: =1 if diskette available for boot
- 12h BYTE [Conv] POST status
- [AT] {Manufacturing test initialisation flags}
- 13h WORD Base memory size in kbytes (0-640)
- 15h BYTE [AT] {Manufacturing test scratch pad}
- 16h BYTE [AT] {Manufacturing test scratch pad}
- [PS/2 Mod 30] BIOS control flags
- 17h BYTE Keyboard status flags 1:
- bit 7 =1 INSert active
- bit 6 =1 Caps Lock active
- bit 5 =1 Num Lock active
- bit 4 =1 Scroll Lock active
- bit 3 =1 either Alt pressed
- bit 2 =1 either Ctrl pressed
- bit 1 =1 Left Shift pressed
- bit 0 =1 Right Shift pressed
- 18h BYTE Keyboard status flags 2:
- bit 7 =1 INSert pressed
- bit 6 =1 Caps Lock pressed
- bit 5 =1 Num Lock pressed
- bit 4 =1 Scroll Lock pressed
- bit 3 =1 Pause state active
- bit 2 =1 Sys Req pressed
- bit 1 =1 Left Alt pressed
- bit 0 =1 Left Ctrl pressed
- 19h BYTE Keyboard: Alt-nnn keypad workspace
- 1Ah WORD Keyboard: ptr to next character in keyboard buffer
- 1Ch WORD Keyboard: ptr to first free slot in keyboard buffer
- 1Eh 16 WORDs Keyboard circular buffer (but see 80h, 82h for override)
- 3Eh BYTE Diskette recalibrate status:
- bit 7 =1 Diskette hardware interrupt occurred
- bits 6-4 reserved
- bit 3 =1 Recalibrate diskette 3
- bit 2 =1 Recalibrate diskette 2
- bit 1 =1 Recalibrate diskette 1
- bit 0 =1 Recalibrate diskette 0
- 3Fh BYTE Diskette motor status:
- bit 7 =1 current operation is write or format
- =0 current operation is read or verify
- bit 6 reserved
- bits 5-4 diskette drive number selected (0-3)
- bit 3 =1 diskette 3 motor on
- bit 2 =1 diskette 2 motor on
- bit 1 =1 diskette 1 motor on
- bit 0 =1 diskette 0 motor on
- 40h BYTE Diskette motor turn-off time-out count
- 41h BYTE Diskette last operation status (0 = OK)
- bit 7 =1 drive not ready
- bit 6 =1 seek error
- bit 5 =1 general controller failure
- bits 4-0:
- 00h no error
- 01h invalid request
- 02h address mark not found
- 03h write-protect error
- 04h sector not found
- 06h diskette change line active
- 08h DMA overrun
- 09h DMA across 64k boundary
- 0Ch media type unknown
- 10h CRC error on read
- 42h 7 BYTEs Diskette/Fixed disk status/command bytes
- 49h BYTE Video current mode
- 4Ah WORD Video columns on screen
- 4Ch WORD Video page (regen buffer) size in bytes
- 4Eh WORD Video current page start address in regen buffer
- 50h 16 BYTEs Video cursor position (col, row) for eight pages, 0 based
- 60h WORD Video cursor type, 6845 compatible, hi=startline, lo=endline
- 62h BYTE Video current page number
- 63h WORD Video CRT controller base address: color=03D4h, mono=03B4h
- 65h BYTE Video current setting of mode select register 03D8h/03B8h
- 66h BYTE Video current setting of CGA palette register 03D9h
- 67h DWORD POST real mode re-entry point after certain resets
- 6Bh BYTE POST last unexpected interrupt
- 6Ch DWORD Timer ticks since midnight
- 70h BYTE Timer overflow, non-zero if has counted past midnight
- 71h BYTE Ctrl-Break flag: bit 7=1
- 72h WORD POST reset flag:
- = 1234h if to bypass memory test (warm boot)
- = 4321h [PS/2 MCA only] if to preserve memory
- = 5678h [Conv] system suspended
- = 9ABCh [Conv] manufacturing test mode
- = ABCDh [Conv] POST loop mode
- = 64h Burn-in mode
- 74h BYTE Fixed disk last operation status: {except ESDI drives}
- 00h no error
- 01h invalid function request
- 02h address mark not found
- 03h write protect error
- 04h sector not found
- 05h reset failed
- 07h drive parameter activity failed
- 08h DMA overrun
- 09h DMA data boundary error
- 0Ah bad sector flag detected
- 0Bh bad track detected
- 0Dh invalid number of sectors for Format
- 0Eh control data address mark detected
- 0Fh DMA arbitration level out of range
- 10h uncorrectable ECC or CRC error
- 11h ECC corrected data error
- 20h general controller failed
- 40h seek failed
- 80h time out
- AAh drive not ready
- BBh undefined error
- CCh write fault on selected drive
- E0h status error/error register is zero
- FFh sense failed
- 75h BYTE Fixed disk: number of fixed disk drives
- 76h BYTE Fixed disk: control byte {IBM document only for XT}
- 77h BYTE Fixed disk: I/O port offset {IBM document only for XT}
- 78h 3 BYTEs Parallel devices 1-3 time-out counters
- 7Bh BYTE parallel device 4 time-out counter [non-PS]
- bit 5 set if Virtual DMA Spec supported [PS] (see INT 4B)
- 7Ch 4 BYTEs Serial devices 1-4 time-out counters
- 80h WORD Keyboard buffer start as offset from segment 40h (normally 1Eh)
- 82h WORD Keyboard buffer end+1 as offset from segment 40h (normally 3Eh)
- [XT BIOS dated 11/08/82 ends here]
- 84h BYTE Video EGA/MCGA/VGA rows on screen minus one
- 85h WORD Video EGA/MCGA/VGA character height in scan-lines
- 87h BYTE Video EGA/VGA control: [MCGA: =00h]
- bit 7: =1 if not to clear RAM (see INT 10h, AH=00h)
- bits 6-5: RAM on adapter = (this field + 1) * 64K
- bit 4: reserved
- bit 3: =0 if EGA/VGA video system active, =1 if inactive
- bit 2: =1 if to wait for display enable (what means this?)
- bit 1: =0 for color or ECD monitor, =1 for mono monitor
- bit 0: =0 alphanumeric cursor emulation enabled, =1 not.
- When enabled, text mode cursor size (INT 10,AH=01h)
- settings looking like CGA ones are translated to
- equivalent EGA/VGA ones.
- 88h BYTE Video EGA/VGA switches: [MCGA: reserved]
- bits 7-4: power-on state of feature connector bits 3-0
- bits 3-0: configuration switches 4-1 (=0 on, =1 off)
- Values as read:
- 0h Pri MDA, Sec EGA+old color display 40 x 25
- 1h Pri MDA, Sec EGA+old color display 80 x 25
- 2h Pri MDA, Sec EGA+ECD normal mode (CGA emul)
- 3h Pri MDA, Sec EGA+ECD enhanced mode
- 4h Pri CGA 40 x 25, Sec EGA mono display
- 5h Pri CGA 80 x 25, Sec EGA mono display
- 6h Pri EGA+old color display 40 x 25, Sec MDA
- 7h Pri EGA+old color display 80 x 25, Sec MDA
- 8h Pri EGA+ECD normal mode (CGA emul), Sec MDA
- 9h Pri EGA+ECD enhanced mode, Sec MDA
- Ah Pri EGA mono display, Sec CGA 40 x 25
- Bh Pri EGA mono display, Sec CGA 80 x 25
- When bit4 of 40h:89h is 0, VGA emulates 350-line EGA if
- this byte is x3h or x9h, otherwise emulates 200-line CGA in
- 400-line double scan. VGA resets this byte to x9h after the
- mode set.
- See also note for next byte.
- 89h BYTE Video MCGA/VGA mode-set option control:
- bits 7 and 4:
- 0 0 350-line mode requested
- 0 1 400-line mode at next mode set
- 1 0 200-line mode requested
- 1 1 reserved
- Apparently VGA BIOS mode set disregards bit 7 and uses
- byte 40h:88h to determine 200/350 selection when bit 4
- is zero. Presumably bit 7 is a convenience for other
- purposes. Bit 7 is reset to zero after the mode set.
- bit 6: =1 if display switching enabled, =0 if disabled
- bit 5: reserved
- bit 4: [VGA] =1 if to use 400-line mode at next mode set
- =0 if to emulate EGA at next mode set
- This bit set to 1 after the mode set.
- [MCGA] =1 use 400-line mode at next mode set
- =0 emulate CGA, digital monitor, 200 lines,
- 8 x 8 text font at next mode set
- Bit unchanged by mode set.
- bit 3: =0 if default palette loading enabled at mode set
- bit 2: =1 if mono display, =0 if color display
- bit 1: =1 if gray scale summing enabled, =0 if disabled
- bit 0: [VGA] =1 if VGA active, =0 if not
- [MCGA] reserved, zero
- Note: the Tseng ET4000 BIOS v3.00 uses bits 6-4 of 88h and
- bits 6-5 of 89h to specify graphics-mode refresh
- rates as follows
- 88h/6 640x480: 1 for 72Hz, 0 for 60Hz
- 88h/5+89h/6 800x600: 00 60Hz
- 01 56Hz
- 11 72Hz
- 88h/4+89h/5 1024x768: 00 interlaced
- 01 60Hz
- 10 72Hz???
- 11 70Hz
- 8Ah BYTE Video [MCGA/VGA]: index into Display Combination Code table
- 8Bh BYTE Diskette media control [not XT]:
- bits 7-6: Last data rate set by controller:
- 00=500kbps, 01=300kbps, 10=250kbps, 11=reserved
- bits 5-4: Last diskette drive step rate selected
- bits 3-2: {Data rate at start of operation}
- bits 1-0: reserved
- 8Ch BYTE Fixed disk controller status [not XT]
- 8Dh BYTE Fixed disk controller Error Status [not XT]
- 8Eh BYTE Fixed disk Interrupt Control [not XT]
- 8Fh BYTE Diskette controller information [not XT]:
- bit 7: reserved
- bit 6: =1 drive 1 determined
- bit 5: =1 drive 1 is multi-rate, valid if drive determined
- bit 4: =1 drive 1 supports 80 tracks, always valid
- bit 3: reserved
- bit 2: =1 drive 0 determined
- bit 1: =1 drive 0 is multi-rate, valid if drive determined
- bit 0: =1 drive 0 supports 80 tracks, always valid
- 90h BYTE Diskette drive 0 media state
- 91h BYTE Diskette drive 1 media state
- bits 7-6: Data rate: 00=500kbps, 01=300kbps, 10=250kbps
- bit 5: =1 if double stepping reqd (e.g. 360kB in 1.2MB)
- bit 4: =1 if media established
- bit 3: reserved
- bits 2-0: on exit from BIOS, contain:
- 000 trying 360kB in 360kB
- 001 trying 360kB in 1.2MB
- 010 trying 1.2MB in 1.2MB
- 011 360kB in 360kB established
- 100 360kB in 1.2MB established
- 101 1.2MB in 1.2MB established
- 110 reserved
- 111 all other formats/drives
- 92h BYTE Diskette drive 0 media state at start of operation
- 93h BYTE Diskette drive 1 media state at start of operation
- 94h BYTE Diskette drive 0 current track number
- 95h BYTE Diskette drive 1 current track number
- 96h BYTE Keyboard status byte 1
- bit 7 =1 read-ID in progress
- bit 6 =1 last code read was first of two ID codes
- bit 5 =1 force Num Lock if read-ID and enhanced keyboard
- bit 4 =1 enhanced keyboard installed
- bit 3 =1 Right Alt pressed
- bit 2 =1 Right Ctrl pressed
- bit 1 =1 last code read was E0h
- bit 0 =1 last code read was E1h
- 97h BYTE Keyboard status byte 2
- bit 7 =1 keyboard transmit error flag
- bit 6 =1 LED update in progress
- bit 5 =1 RESEND received from keyboard
- bit 4 =1 ACK received from keyboard
- bit 3 reserved, must be zero
- bit 2 Caps Lock LED
- bit 1 Num Lock LED
- bit 0 Scroll Lock LED
- 98h DWORD Timer2: [AT, PS exc Mod 30] ptr to user wait-complete flag
- (see INT 15, AX=8300h)
- 9Ch DWORD Timer2: [AT, PS exc Mod 30] user wait count in microseconds
- A0h BYTE Timer2: [AT, PS exc Mod 30] Wait active flag:
- bit 7 =1 wait time elapsed
- bits 6-1 reserved
- bit 0 =1 INT 15h, AH=86h has occurred
- A1h 7 BYTEs reserved for network adapters (oh really?)
- A4h DWORD [PS/2 Mod 30] Saved Fixed Disk Interrupt Vector
- A8h DWORD Video: EGA/MCGA/VGA ptr to Video Save Pointer Table (see below)
- ACh-AFh reserved
- B0h BYTE (Phoenix 386 BIOS 1.10 10a) loop count for delaying when
- beeping due to full keyboard buffer
- B0h DWORD ptr to 3363 Optical disk driver or BIOS entry point.
- When 3363 BIOS present, the signature "OPTIC ",00h occurs 3
- bytes beyond this entry point.
- When 3363 BIOS and 3363 File System Driver present, the
- signature "FILE SYSTEM DRIVER",00h occurs 3 bytes beyond
- this entry point.
- B4h WORD reserved
- B6h 3 BYTEs reserved for POST?
- B9h 7 BYTEs ???
- C0h 14 BYTEs reserved
- CEh WORD count of days since last boot???
- D0h-EFh reserved
- D0h BYTE [Digiboard MV/4] length of data table
- D1h BYTE [Digiboard MV/4] product ID
- D2h WORD [Digiboard MV/4] base address found
- D4h BYTE [Digiboard MV/4] ports
- D5h BYTE [Digiboard MV/4] IRQ
- D6h WORD [Digiboard MV/4] keyboards found
- D8h WORD [Digiboard MV/4] mice found
- DAh BYTE [Digiboard MV/4] current port (used by VGA initialization only)
- DBh BYTE [Digiboard MV/4] master 8259 mask (used by VGA init only)
- DCh BYTE [Digiboard MV/4] slave 8259 mask (used by VGA init only)
- F0h-FFh reserved for user
- 100h BYTE Print Screen Status byte
- 10Eh BYTE state of BREAK at start of BASICA.COM execution
- 10Fh BYTE flag: 02h if BASICA v2.10 running
- 116h DWORD INT 1Bh at start of BASICA.COM execution
- 11Ah DWORD INT 24h at start of BASICA.COM execution
-
- Format of Extended BIOS Data Area (see 40:0Eh for ptr) [PS only]
- Offset Size Description
- 00h BYTE Length of EBDA in kilobytes
- 01h 15 BYTEs reserved
- 17h BYTE Number of entries in POST error log (0-5)
- 18h 5 WORDs POST error log (each word is a POST error number)
- 19h-21h reserved
- 22h DWORD Pointing Device Driver entry point
- 26h BYTE Pointing Device Flags 1
- bit 7: =1 command in progress
- bit 6: =1 resend
- bit 5: =1 acknowledge
- bit 4: =1 error
- bit 3: =0 reserved
- bits 2-0: index count
- 27h BYTE Pointing Device Flags 2
- bit 7: =1 device driver far call flag
- bits 6-3: reserved
- bits 2-0: package size
- 28h 7 BYTEs Pointing Device Auxiliary Device Data
- 2Fh BYTE reserved
- 30h DWORD Vector for INT 07h stored here during 80387 interrupt
- 34h DWORD Vector for INT 01h stored here during INT 07h emulation
- 38h BYTE Scratchpad for 80287/80387 interrupt code
- 39h WORD Timer3: Watchdog timer initial count
- 3Bh BYTE ??? seen non-zero on Model 30
- 3Ch BYTE ???
- 3Dh 16 BYTEs Fixed Disk parameter table for drive 0 (oh really?)
- 4Dh 16 BYTEs Fixed Disk parameter table for drive 1 (oh really?)
- Neither of above seen on any Model 30, 50, 60 yet.
- 5Dh-6Bh ???
- 6Ch BYTE Fixed disk: (=FFh on ESDI systems)
- bits 7-4: Channel number 00-0Fh
- bits 3-0: DMA arbitration level 00-0Eh
- 6Dh BYTE ???
- 6Eh WORD current typematic setting (see INT 16/AH=03h)
- 70h 167 BYTEs ???
- 117h WORD keyboard ID (see INT 16/AH=0Ah)
- 119h and up: ??? seen non-zero on Model 60
- 3F0h BYTE Fixed disk buffer (???!!!)
-
- Format of Video Save Pointer Table [EGA/VGA/MCGA only]:
- Offset Size Description
- 00h DWORD ptr to Video Parameter Table
- 04h DWORD ptr to Parameter Dynamic Save Area, else 0 [EGA/VGA only]
- 08h DWORD ptr to Alphanumeric Character Set Override, else 0
- 0Ch DWORD ptr to Graphics Character Set Override, else 0
- 10h DWORD [VGA only] ptr to Secondary Save Pointer Table, must be valid
- 14h DWORD reserved, zero
- 18h DWORD reserved, zero
- Note: table initially in ROM, copy to RAM to alter, then update 40h:A8h.
-
- Format of Secondary Video Save Pointer Table [VGA only]:
- Offset Size Description
- 00h WORD Length of this table in bytes, including this word (1Ah)
- 02h DWORD ptr to Display Combination Code Table, must be valid
- 06h DWORD ptr to second Alphanumeric Character Set Override, else 0
- 0Ah DWORD ptr to User Palette Profile Table, else 0
- 0Eh DWORD reserved, zero
- 12h DWORD reserved, zero
- 16h DWORD reserved, zero
- Note: table initially in ROM, copy to RAM to alter, then alter Save Ptr Table.
-
- Format of Video Parameter Table [EGA, VGA only]:
- An array of 23 [EGA] or 29 [VGA] elements, each element being 64 bytes long.
- Elements appear in the order:
- 00h-03h Modes 00h-03h in 200-line CGA emulation mode
- 04h-0Eh Modes 04h-0Eh
- 0Fh-10h Modes 0Fh-10h when only 64kB RAM on adapter
- 11h-12h Modes 0Fh-10h when >64kB RAM on adapter
- 13h-16h Modes 00h-03h in 350-line mode
- 17h VGA Modes 00h or 01h in 400-line mode
- 18h VGA Modes 02h or 03h in 400-line mode
- 19h VGA Mode 07h in 400-line mode
- 1Ah-1Ch VGA Modes 11h-13h
-
- Format of Video Parameter Table element [EGA, VGA only]:
- Offset Size Description
- 00h BYTE Columns on screen (see 40h:4Ah)
- 01h BYTE Rows on screen minus one (see 40h:84h)
- 02h BYTE Height of character in scan lines (see 40h:85h)
- 03h WORD Size of video buffer (see 40h:4Ch)
- 05h 4 BYTEs Values for Sequencer Registers 1-4
- 09h BYTE Value for Miscellaneous Output Register
- 0Ah 25 BYTEs Values for CRTC Registers 00h-18h
- 23h 20 BYTEs Values for Attribute Controller Registers 00h-13h
- 37h 9 BYTEs Values for Graphics Controller Registers 00h-08h
-
- Format of Video Parameter Table [MCGA only] {guesswork from inspection}:
- - 16 triplet BYTEs of R,G,B DAC info for 16 colors;
- - An array of 11 elements, each element being 32 bytes long.
- Elements appear in the order:
- Modes 00h,01h in 200-line mode for digital displays
- Modes 00h,01h in 400-line mode for analog displays
- Modes 02h,03h in 200-line mode for digital displays
- Modes 02h,03h in 400-line mode for analog displays
- Modes 04h,05h in 200-line mode for digital displays
- Modes 04h,05h in 400-line mode for analog displays
- Mode 06h in 200-line mode for digital displays
- Mode 06h in 400-line mode for analog displays
- Mode 11h
- Mode 13h in 200-line mode for digital displays
- Mode 13h in 400-line mode for analog displays
-
- Format of Video Parameter Table element [MCGA only]:
- Offset Size Description
- 00h BYTE Columns on screen (see 40h:4Ah)
- 01h BYTE Rows on screen minus one (see 40h:84h)
- 02h BYTE Height of character in scan lines (see 40h:85h)
- 03h WORD Size of video buffer (see 40h:4Ch)
- 05h WORD ??? always zero
- 07h 21 BYTEs Video data registers 00h-14h to port 3D5h indexed by 3D4h
- 1Ch BYTE PEL Mask to port 3C6h
- 1Dh BYTE CGA Mode Control to port 3D8h
- 1Eh BYTE CGA Border Control to port 3D9h
- 1Fh BYTE Extended Mode Control to port 3DDh
-
- Format of Video Parameter Dynamic Save Area [EGA, VGA only]:
- Offset Size Description
- 00h 16 BYTEs Last data written to Attribute Controller Palette Registers 0-15
- 10h BYTE Last data written to Attribute Controller Overscan Register
- 11h-FFh Reserved
- Note: Need for table was that EGA registers were write-only.
- Note: If default values (from the Video Parameter Table) are
- over-ridden at a mode set by the VGA User Palette Profile
- Table, then the Dynamic Save Area is updated with the
- default values, not the User Profile ones.
-
- Format of Alphanumeric Character Set Override:
- Offset Size Description
- 00h BYTE Length in bytes of each character in font table
- 01h BYTE Character generator RAM bank to load, 0=normal
- 02h WORD Number of characters in font table, normally 256
- 04h WORD Code of first character in font table, normally 0
- 06h DWORD ptr to font table
- 0Ah BYTE Displayable rows (FFh=use maximum calculated value)
- 0Bh BYTEs Array of mode values to which this font is to pertain
- BYTE FFh end of array
-
- Format of Second Alphanumeric Character Set Override:
- Authorities differ, some say same as first override above, but IBM say:
- Offset Size Description
- 00h BYTE Length in bytes of each character in font table
- 01h BYTE Character generator RAM bank to load, normally non-zero
- 02h BYTE reserved
- 03h DWORD ptr to font table
- 07h BYTEs Array of mode values to which this font is to pertain
- BYTE FFh end of array
-
- Format of Graphics Character Set Override:
- Offset Size Description
- 00h BYTE Number of displayable character rows
- 01h WORD Length in bytes of each character in font table
- 03h DWORD ptr to font table
- 07h BYTEs Array of mode values to which this font is to pertain
- BYTE FFh end of array
-
- Format of Display Combination Code Table [VGA only]:
- Offset Size Description
- 00h BYTE Number of entries in the DCC table at offset 04h
- 01h BYTE Version number
- 02h BYTE Maximum display type code that can appear in DCC table
- 03h BYTE reserved
- 04h ARRAY OF 2 BYTEs Each pair of bytes gives a valid display combination
- Meaning of each byte:
- 00h no display
- 01h MDA with mono display
- 02h CGA with color display
- 03h reserved
- 04h EGA with color display
- 05h EGA with mono display
- 06h Professional Graphics Controller
- 07h VGA with mono display
- 08h VGA with color display
- 09h reserved
- 0Ah MCGA with digital color display
- 0Bh MCGA with analog mono display
- 0Ch MCGA with analog color display
- FFh unrecognised video system
-
- Format of User Palette Profile Table [VGA only]:
- Offset Size Description
- 00h BYTE Underlining: 01h=enable in all alphanumeric modes
- 00h=enable in monochrome alphanumeric modes only
- FFh=disable in all alphanumeric modes
- 01h BYTE reserved
- 02h WORD reserved
- 04h WORD Number (0-17) of Attribute Controller registers in table
- 06h WORD Index (0-16) of first Attribute Controller register in table
- 08h DWORD ptr to table of Attribute Controller registers to override
- Table is an array of BYTEs.
- 0Ch WORD Number (0-256) of video DAC Color registers in table
- 0Eh WORD Index (0-255) of first video DAC Color register in table
- 10h DWORD ptr to table of video DAC Color registers to override
- Table is ??? triplets ??? of BYTEs???
- 14h BYTEs array of mode values to which this profile is to pertain
- BYTE FFh end of array
-