Specifications
MICROPROCESSADORES
INTERRUPÇÕES
5
Luís Miguel Charrua Figueiredo 5 - 3 E.N.I.D.H.
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
INT 10 - VIDEO - PCjr, Tandy 1000 - SET CRT/CPU PAGE REGISTERS
AH = 05h
AL = subfunction
81h set CPU page register
BL = CPU page
82h set CRT page register
BH = CRT page
83h set both CPU and CRT page registers
BL = CPU page
BH = CRT page
Return
: nothing
Notes
: the CPU page determines which 16K block of the first 128K of
physical memory will be mapped at B800h by the hardware the CRT page
determines the start address of the memory used by the video controller
SeeAlso
: AX=0580h
INT 10 - VIDEO - SCROLL UP WINDOW
AH = 06h
AL = number of lines by which to scroll up (00h = clear entire window)
BH = attribute used to write blank lines at bottom of window
CH,CL = row,column of window's upper left corner
DH,DL = row,column of window's lower right corner
Return
: nothing
Note
: affects only the currently active page (see AH=05h)
BUGS
: some implementations (including the original IBM PC) have a bug
which destroys BP the Trident TVGA8900CL (BIOS dated 1992/9/8) clears DS to
0000h when scrolling in an SVGA mode (800x600 or higher)
SeeAlso
: AH=07h,AH=12h"Tandy 2000",AH=72h,AH=73h,AX=7F07h,INT
50/AX=0014h
INT 10 - VIDEO - SCROLL DOWN WINDOW
AH = 07h
AL = number of lines by which to scroll down (00h=clear entire
window)
BH = attribute used to write blank lines at top of window
CH,CL = row,column of window's upper left corner
DH,DL = row,column of window's lower right corner
Return
: nothing
Note
: affects only the currently active page (see AH=05h)
BUGS
: some implementations (including the original IBM PC) have a bug
which destroys BP the Trident TVGA8900CL (BIOS dated 1992/9/8) clears DS to
0000h when scrolling in an SVGA mode (800x600 or higher)
SeeAlso
: AH=06h,AH=12h"Tandy 2000",AH=72h,AH=73h,INT 50/AX=0014h
INT 10 - VIDEO - READ CHARACTER AND ATTRIBUTE AT CURSOR
POSITION
AH = 08h
BH = page number (00h to number of pages - 1) (see #00010)
Return
: AH = character's attribute (text mode only) (see #00014)
AH = character's color (Tandy 2000 graphics mode only)
AL = character
Notes
: for monochrome displays, a foreground of 1 with background 0 is
Underlined the blink bit may be reprogrammed to enable intense background
colors using AX=1003h or by programming the CRT controller the foreground
intensity bit (3) can be programmed to switch between character sets A and B on
EGA and VGA cards, thus enabling 512 simultaneous characters on screen. In
this case the bit's usual function (intensity) is regularly turned off. In graphics
modes, only characters drawn with white foreground pixels are matched by the
pattern-comparison routine on the Tandy 2000, BH=FFh specifies that the current
page should be used because of the IBM BIOS specifications, there may exist
some clone BIOSes which do not preserve SI or DI; the Novell DOS kernel
preserves SI, DI, and BP before many INT 10h calls to avoid problems due to
those registers not being preserved by the BIOS.
BUG
: some IBM PC ROM BIOSes destroy BP when in graphics modes
SeeAlso
: AH=09h,AX=1003h,AX=1103h,AH=12h/BL=37h,AX=5001h
Bitfields for character's display attribute:
Bit(s) Description (Table 00014)
7 foreground blink or (alternate) background bright (see also
AX=1003h)
6-4 background color (see #00015)
3 foreground bright or (alternate) alternate character set (see
AX=1103h)
2-0 foreground color (see #00015)
SeeAlso
: #00026
(Table 00015)
Values for character color:
Normal Bright
000b black dark gray
001b blue light blue
010b green light green
011b cyan light cyan
100b red light red
101b magenta light magenta
110b brown yellow
111b light gray white
INT 10 - VIDEO - WRITE CHARACTER AND ATTRIBUTE AT CURSOR
POSITION
AH = 09h
AL = character to display
BH = page number (00h to number of pages - 1) (see #00010)
background color in 256-color graphics modes (ET4000)
BL = attribute (text mode) or color (graphics mode)
if bit 7 set in <256-color graphics mode, character is XOR'ed
onto screen
CX = number of times to write character
Return
: nothing
Notes
: all characters are displayed, including CR, LF, and BS replication
count in CX may produce an unpredictable result in graphics modes if it is greater
than the number of positions remaining in the current row With PhysTechSoft's
PTS ROM-DOS the BH, BL, and CX values are ignored on entry.
SeeAlso
: AH=08h,AH=0Ah,AH=4Bh"GRAFIX",INT 17/AH=60h,INT 1F"SYSTEM
DATA"
SeeAlso
: INT 43"VIDEO DATA",INT 44"VIDEO DATA"
INT 10 - VIDEO - WRITE CHARACTER ONLY AT CURSOR POSITION
AH = 0Ah
AL = character to display
BH = page number (00h to number of pages - 1) (see #00010)
background color in 256-color graphics modes (ET4000)
BL = attribute (PCjr, Tandy 1000 only) or color (graphics mode)
if bit 7 set in <256-color graphics mode, character is XOR'ed
onto screen
CX = number of times to write character
Return
: nothing
Notes
: all characters are displayed, including CR, LF, and BS replication
count in CX may produce an unpredictable result in graphics modes if it is greater
than the number of positions remaining in the current row With PhysTechSoft's
PTS ROM-DOS the BH and CX values are ignored on entry.
SeeAlso
: AH=08h,AH=09h,AH=11h"Tandy 2000",AH=4Bh,INT 17/AH=60h
SeeAlso
: INT 1F"SYSTEM DATA",INT 43"VIDEO DATA",INT 44"VIDEO DATA"
INT 10 - VIDEO - SET BACKGROUND/BORDER COLOR










