Function 1Bh Functionality/State Information (MCGA, VGA)
entry AH 1Bh
BX implementation type
0000h return funtionality/state information
ES:DI pointer to 64 byte buffer
return AL 1Bh if function supported
ES:DI buffer filled
00h address of functionality table
01h unknown
02h unknown
03h unknown
04h current video mode
05h number of columns
06h unknown
07h length of regen buffer in bytes
09h starting address of regen buffer
0Bh cursor position for page 0
0Dh cursor position for page 1
0Fh cursor position for page 2
11h cursor position for page 3
13h cursor position for page 4
15h cursor position for page 5
17h cursor position for page 6
19h cursor position for page 7
1Bh cursor type
1Dh active display page
1Eh CRTC port address
20h current setting of register (3?8)
21h current setting of register (3?9)
22h number of rows
23h bytes/character
25h DCC of active display
26h DCC of alternate display
27h number of colors supported in current mode
29h number of pages supported in current mode
2Ah number of scan lines active
(0,1,2,3) = (200,350,400,480)
2Bh primary character block
2Ch secondary character block
2Dh miscellaneous flags byte
bit 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 reserved
7 reserved
2Eh to 30h reserved
31h video memory available
00h=64K, 01h=128K, 02h=192K, 03h=256K
32h save pointer state flags byte
bit 0 512 character set active
1 dynamic save area present
2 alphanumeric font override active
3 graphics font override active
4 palette override active
5 DCC override active
6 reserved
7 reserved
33h to 3Fh reserved
note State Functionality Table format (16 bytes)
00h modes supported #1
bit 0 to bit 7 = 1 modes 0,1,2,3,4,5,6 supported
01h modes supported #2
bit 0 to bit 7 = 1 modes 8,9,A,B,C,D,E,F supported
02h modes supported #3
bit 0 to bit 3 = 1 modes 10,11,12,13 supported
bit 4 to bit 7 reserved
03h to 06h reserved
07h scan lines supported
bit 0 to bit 2 = 1 if scan lines 200,350,400 supported
08h total number of character blocks available in text modes
09h maximum number of active character blocks in text modes
0Ah miscellaneous function flags #1
bit 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 paging function supported
0Bh miscellaneous function flags #2
bit 0 light pen supported
1 save/restore state function 1Ch supported
2 intensity blinking function supported
3 Display Combination Code supported
4-7 reserved
0Ch to 0Dh reserved
0Eh Save pointer function flags
bit 0 512 character set supported
1 dynamic save area supported
2 text font override supported
3 graphics font override supported
4 palette override supported
5 DCC extension supported
6 reserved
7 reserved
0Fh reserved