Int 10 Fn 1B - Video - Functionality/state Information (ps,vga/mcga) [V]

AH = 1Bh
BX = implementation type
0000h return funtionality/state information
ES:DI -> 64-byte buffer for state information (see #0038)

Return: AL = 1Bh if function supported
ES:DI buffer filled with state information
BUG: Trident 8900 (BIOS D3.0 11/12/91) and Trident 9000 (C3.0 10/25/91)
do not correctly set the fields at offsets 27h and 29h of the
state information

See Also: AH=15h,AX=1A00h,AX=1F01h

Format of MCGA+ state information:
Offset Size Description (Table 0038)
00h DWORD address of static funtionality table (see #0043)
04h BYTE video mode in effect
05h WORD number of columns
07h WORD length of regen buffer in bytes
09h WORD starting address of regen buffer
0Bh WORD cursor position for page 0
0Dh WORD cursor position for page 1
0Fh WORD cursor position for page 2
11h WORD cursor position for page 3
13h WORD cursor position for page 4
15h WORD cursor position for page 5
17h WORD cursor position for page 6
19h WORD cursor position for page 7
1Bh WORD cursor "type" (start/stop scan lines)
1Dh BYTE active display page
1Eh WORD CRTC port address
20h BYTE current setting of PORT 03x8h
21h BYTE current setting of PORT 03x9h
22h BYTE number of rows - 1
23h WORD bytes/character
25h BYTE display combination code of active display
26h BYTE DCC of alternate display
27h WORD number of colors supported in current mode (0000h = mono)
29h BYTE number of pages supported in current mode
2Ah BYTE number of scan lines active
(0,1,2,3) = (200,350,400,480)
Tseng ET3000: (4,5,6 = 512,600,768)
2Bh BYTE primary character block
2Ch BYTE secondary character block
2Dh BYTE miscellaneous flags (see #0039)
2Eh BYTE non-VGA mode support (see #0040)
2Fh 2 BYTEs reserved (00h)
31h BYTE video memory available
00h = 64K, 01h = 128K, 02h = 192K, 03h = 256K
32h BYTE save pointer state flags (see #0041)
33h BYTE display information and status (see #0042)
34h 12 BYTEs reserved (00h)

Bitfields for miscellaneous flags:
Bit(s) Description (Table 0039)
0 all modes on all displays on
1 gray summing on
2 monochrome display attached
3 default palette loading disabled
4 cursor emulation enabled
5 0 = intensity; 1 = blinking
6 flat-panel display is active
7 unused (0)

See Also: #0038

Bitfields for non-VGA mode support:
Bit(s) Description (Table 0040)
7-5 reserved
4 132-column mode supported
3 =1 MFI attributes enabled (see AH=12h/BL=37h)
=0 VGA attributes
2 16-bit VGA graphics present
1 adapter interface driver required
0 BIOS supports information return for adapter interface

See Also: #0038

Bitfields for save pointer state flags:
Bit(s) Description (Table 0041)
0 512 character set active
1 dynamic save area present
2 alpha font override active
3 graphics font override active
4 palette override active
5 DCC override active
6-7 unused (0)

See Also: #0038

Bitfields for display information and status:
Bit(s) Description (Table 0042)
7 640x480 flat-panel can be used simultaneously with CRT controller
6-3 reserved
2 color display
1 flat-panel display active
0 flat-panel display attached

See Also: #0038

Format of Static Functionality Table:
Offset Size Description (Table 0043)
00h BYTE modes supported 1
bit 0 to bit 7 = 1 modes 0,1,2,3,4,5,6,7 supported
01h BYTE modes supported 2
bit 0 to bit 7 = 1 modes 8,9,0Ah,0Bh,0Ch,0Dh,0Eh,0Fh supported
02h BYTE modes supported 3
bit 0 to bit 3 = 1 modes 10h,11h,12h,13h supported
bit 4 to bit 7 unused (0)
03h BYTE (IBM) reserved
(Tseng ET3000/4000) modes supported 4
bit 0 to bit 7 = modes 18h-1Fh supported
04h BYTE (IBM) reserved
(Tseng ET3000/4000) modes supported 5
bit 0 to bit 7 = modes 20h-27h supported
05h BYTE (IBM) reserved
(Tseng ET3000/4000) modes supported 6
bit 0 to bit 7 = modes 28h-2Fh supported
06h BYTE (IBM) reserved
(Tseng ET3000/4000) modes supported 7
bit 0 to bit 7 = modes 30h-37h supported
07h BYTE scan lines supported
bit 0 to bit 2 = 1 if scan lines 200,350,400 supported
bits 3-7 = unused (0)
08h BYTE total number of character blocks available in text modes
09h BYTE maximum number of active character blocks in text modes
0Ah WORD miscellaneous function support flags (see #0044)
0Ch WORD reserved
0Eh BYTE save pointer function flags (see #0045)
0Fh BYTE reserved

See Also: #0038

Bitfields for miscellaneous function support flags:
Bit(s) Description (Table 0044)
0 all modes on all displays function supported
1 gray summing function supported
2 character font loading function supported
3 default palette loading enable/disable supported
4 cursor emulation function supported
5 EGA palette present
6 color palette present
7 color-register paging function supported
8 light pen supported (see AH=04h)
9 save/restore state function 1Ch supported
10 intensity/blinking function supported (see AX=1003h)
11 Display Combination Code supported (see #0037)
12-15 unused (0)

See Also: #0038

Bitfields for save pointer function flags:
Bit(s) Description (Table 0045)
0 512 character set supported
1 dynamic save area supported
2 alpha font override supported
3 graphics font override supported
4 palette override supported
5 DCC extension supported
6-7 unused (0)

See Also: #0038