Outils pour utilisateurs

Outils du site


Action unknown: copypageplugin__copy
back2root:ibm-pc-ms-dos:interrupts:int_10:int_10_1c

INT 0x10 - 0x1c - Save/Restore Video State (VGA only)

Request/Call:

reg value descr
AH 0x1c
AL 0x00
0x01
0x02
0x00 : Get Save buffer size
0x01 : Save requested states
0x02 : restore requested states

return

AL = 0x1C if function supported

AL = 0 : get save buffer size

CX bit requested state
0 video hardware states
1 video BIOS data areas
2 video DAC state

Return

reg descr
AL 0x1C
BX buffer size in 64 byte blocks

AL = 1 : save requested state

reg Descr
CX requested states (see AL = 0)
ES:BX pointer to buffer

Return

nothing

AL = 2 : restore requested state

reg Descr
CX requested states (see AL = 0)
ES:BX pointer to buffer

Return

nothing

Return informations

Bitfields for requested states

Bit(s) Description
0 video hardware (see bellow)
1 BIOS data areas
2 color registers and DAC state (see bellow)
3-15 unused (0)

Format of VGA video hardware state

Offset Size Description
00h BYTE sequencer index register
01h BYTE CRTC index register
02h BYTE graphics controller index register
03h BYTE attribute controller index register
04h BYTE feature controller register
05h 4 BYTEs sequencer registers
09h BYTE sequencer register 0
0Ah 25 BYTEs CRTC registers 0-8
23h 16 BYTEs palette registers 00h-0Fh
33h 4 BYTEs attribute registers 10h-13h
37h 9 BYTEs graphics controller registers 0-8
40h BYTE CRTC base address (low)
41h BYTE CRTC base address (high)
42h BYTE plane 0 latch
43h BYTE plane 1 latch
44h BYTE plane 2 latch
45h BYTE plane 3 latch

Format of VGA DAC state

Offset Size Description
00h BYTE read/write mode DAC
01h BYTE pixel address
02h BYTE pixel mask
03h 768 BYTES color data (256 triples)
303h BYTE color select register

Notes & Comments

  • many BIOSes corrupt the video registers when saving the state, so a program should restore the state immediately after saving it (the saved data is uncorrupted)
  • the BIOS data area consists of the 96 bytes from 040h:0049h-00A8h
  • this function is not supported when DOS/V is running
  • this function may be a better VGA installation check than the usual INT 10/AX=1A00h, since some late-model EGA cards (such as the ATI EGA Wonder) supported that call

Back

back2root/ibm-pc-ms-dos/interrupts/int_10/int_10_1c.txt · Dernière modification : de frater