INT 10h, 03h (3) Read Cursor Position and Size
Reports the cursor position (row and column) and size for a specified
display page.
On entry: AH 03h
BH Display page number
Returns: CH Cursor start line
CL Cursor end line
DH Row
DL Column
Registers destroyed: AX, SP, BP, SI, DI
--------------------------------------------------------------------------
Cursor Start and End line values (CH and CL)
Legal Default
Adapter Start End Start End
CGA 0 7 6 7
MDA 0 13 11 12
EGA 0 13 6(11) 7(12) Depends on mode
--------------------------------------------------------------------------
Notes: This service can report the position of the cursor
on the active display page or on an inactive page.
Since there is only one hardware cursor, the cursor
start line (CH) and cursor end line (CL) (and hence
the size of the cursor) will be the same no matter
what page number is specified.
In graphics modes, this service reports the logical
position of the cursor, even though the cursor
itself is not displayed.
The upper left corner of the display is DH = 0h,
DL = 0h, while the lower right corner is DH = 18h
(24), DL = 27h (39) for 40-column mode or 4Fh (79)
for 80-column mode.
See Service 05h for a list of legal page numbers for
the different display modes. Because the service
does no value checking, erratic results can occur if
you specify an illegal page number. The page number
for graphics modes is 0.
Use Service 02h to set the current cursor position.
Use Service 01h to set the current cursor size.
Early versions of the Monochrome Display Adapter
(MDA) and the Compaq display adapter had a bug. They
incorrectly reported the cursor start and end scan
lines after the video adapters were initialized (the
mode had changed or the machine was powered on). The
MDA would report the cursor size as CH = 06h, CL =
07h, instead of CH = 0Bh, CL = 0Ch. The Compaq
reported the cursor size as CH = 00h, CL = 67h, for
any display mode. Note that this is a problem only
after the mode has changed or after power-up. Once
the cursor size is set (using service 01h), then
this service will report the correct cursor size.
Seealso:
This page last updated on Fri Nov 30 10:49:50 MSK 2001
Copyright © 1992-2001, Vitaly Filatov, Moscow, Russia
Webmaster