Specifications
MICROPROCESSADORES
INTERRUPÇÕES
5
Luís Miguel Charrua Figueiredo 5 - 2 E.N.I.D.H.
= G . . 640x350 16 . A000 256k EGA,VGA
11h = G 80x30 8x16 640x480 mono . A000
VGA,MCGA,ATI EGA,ATI VIP
12h = G 80x30 8x16 640x480 16/256K . A000 VGA,ATI VIP
= G 80x30 8x16 640x480 16/64 . A000 ATI EGA
Wonder
= G . . 640x480 16 . . UltraVision+256K
EGA
13h = G 40x25 8x8 320x200 256/256K . A000
VGA,MCGA,ATI VIP
14h = T 132x25 Nx16 . 16 . B800 XGA, IBM
Enhanced VGA [3]
= T 132x25 8x16 1056x400 16/256K . . Cirrus CL-
GD5420/5422/5426
= G 80x25 8x8 640x200 . . . Lava
Chrome II EGA
= G . . 640x400 16 . . Tecmar VGA/AD
15h = G 80x25 8x14 640x350 . . . Lava
Chrome II EGA
16h = G 80x25 8x14 640x350 . . . Lava
Chrome II EGA
= G . . 800x600 16 . . Tecmar VGA/AD
Notes:
[1] interlaced only
[2] for ATI EGA Wonder, mode 08h is only valid if SMS.COM is loaded resident.
SMS maps mode 08h to mode 27h if the byte at location 0040:0063 is 0B4h,
otherwise to mode 23h, thus selecting the appropriate (monochrome or color)
132x25 character mode. for ATI VGA Wonder, mode 08h is the same, and only
valid if VCONFIG loaded resident
[3] early XGA boards support 132-column text but do not have this BIOS mode
[4] DESQview intercepts calls to change into these two modes (21h is page 0, 22h
is page 1) even if there is no Hercules graphics board installed
[5] ATI BIOS v4-1.00 has a text-scrolling bug in this mode
[6] for AT&T VDC overlay modes, BL contains the DEB mode, which may be 06h,
40h, or 44h
[7] BIOS text support is broken in this undocumented mode; scrolling moves only
about 1/3 of the screen (and does even that portion incorrectly), while screen
clears only clear about 3/4.
[8] The Oak OTI-037/067/077 modes are present in the Oak VGA BIOS, which
OEMs may choose to use only partially or not at all; thus, not all Oak boards
support all "Oak" modes listed here
[9] this card uses the full 128K A000h-BFFFh range for the video buffer,
precluding the use of a monochrome adapter in the same system
[10] mode 17h supported by Tseng ET4000 BIOS 8.01X dated 1990/09/14, but not
v8.01X dated 1992/02/28; mode 21h supported by 1992/02/28 version but not
1990/09/14 version
[11] HERKULES simulates a 90x45 text mode in Hercules graphics mode; the
installation check for HERKULES.COM is the signature "Herkules" two bytes
beyond the INT 10 handler
[12] The Realtek RTVGA BIOS v3.C10 crashes when attempting to switch into
modes 21h or 27h; this version of the BIOS also sets the BIOS data area
incorrectly for extended text modes, resulting in scrolling after only 24 lines (the
VMODE.EXE utility does set the data area correctly)
[13] The Tandy 1000SL/TL BIOS does not actually support this mode
[14] HERCULES.COM is a graphics-mode BIOS extension for Hercules-
compatible graphics cards by Soft Warehouse, Inc. Its installation check is to test
whether the word preceding the INT 10 handler is 4137h.
[15] The Hercules-graphics video modes for HERCBIOS (shareware by Dave
Tutelman) may be changed by a command-line switch; the 90x43 character-cell
mode's number is always one higher than the 90x29 mode (whose default is mode
08h)
[16] Stealth64 Video 2001-series BIOS v1.03 reports 76 lines for mode 7Ch,
resulting in incorrect scrolling for TTY output (scrolling occurs only after the end of
the 76th line, which is not displayed)
[17] For 43-line text on EGA or 43/50-line text on VGA, you must load an 8x8 font
using AX=1102h after switching to mode 3; VGA may also require using INT
10/AH=12h/BL=30h
SeeAlso
: #00011,#00083,#00191
Index
: video modes
Index
: installation check;HERKULES|installation check;HERCULES.COM
INT 10 - VIDEO - SET TEXT-MODE CURSOR SHAPE
AH = 01h
CH = cursor start and options (see #00013)
CL = bottom scan line containing cursor (bits 0-4)
Return
: nothing
Desc
: specify the starting and ending scan lines to be occupied by the
hardware cursor in text modes
Notes
: buggy on EGA systems--BIOS remaps cursor shape in 43 line modes,
but returns unmapped cursor shape UltraVision scales size to the current font
height by assuming 14-line monochrome and 8-line color fonts; this call is not valid
if cursor emulation has been disabled applications which wish to change the
cursor by programming the hardware directly on EGA or above should call INT
10/AX=1130h or read 0040h:0085h first to determine the current font height in
some adapters, setting the end line greater than the number of lines in the font will
result in the cursor extending to the top of the next character cell on the right
BUG
: AMI 386 BIOS and AST Premier 386 BIOS will lock up the system if
AL is not equal to the current video mode
SeeAlso
: AH=03h,AX=CD05h,AH=12h/BL=34h,#03885
Bitfields for cursor start and options:
Bit(s) Description (Table 00013)
7 should be zero
6,5 cursor blink
(00=normal, 01=invisible, 10=erratic, 11=slow)
(00=normal, other=invisible on EGA/VGA)
4-0 topmost scan line containing cursor
INT 10 - VIDEO - SET CURSOR POSITION
AH = 02h
BH = page number
0-3 in modes 2&3
0-7 in modes 0&1
0 in graphics modes
DH = row (00h is top)
DL = column (00h is left)
Return
: nothing
SeeAlso
: AH=03h,AH=05h,INT 60/DI=030Bh,MEM 0040h:0050h
INT 10 - VIDEO - GET CURSOR POSITION AND SIZE
AH = 03h
BH = page number
0-3 in modes 2&3
0-7 in modes 0&1
0 in graphics modes
Return
: AX = 0000h (Phoenix BIOS)
CH = start scan line
CL = end scan line
DH = row (00h is top)
DL = column (00h is left)
Notes
: a separate cursor is maintained for each of up to 8 display pages
many ROM BIOSes incorrectly return the default size for a color display (start 06h,
end 07h) when a monochrome display is attached With PhysTechSoft's PTS
ROM-DOS the BH value is ignored on entry.
SeeAlso
: AH=01h,AH=02h,AH=12h/BL=34h,MEM 0040h:0050h,MEM
0040h:0060h
INT 10 - VIDEO - READ LIGHT PEN POSITION (except VGA)
AH = 04h
Return
: AH = light pen trigger flag
00h not down/triggered
01h down/triggered
DH,DL = row,column of character light pen is on
CH = pixel row (graphics modes 04h-06h)
CX = pixel row (graphics modes with >200 rows)
BX = pixel column
Desc
: determine the current position and status of the light pen (if present)
Notes
: on a CGA, returned column numbers are always multiples of 2 (320-
column modes) or 4 (640-column modes) returned row numbers are only accurate
to two lines










