INT 33H 0009H: Set Graphics Pointer Shape
Expects: AX 0009H
BX pointer hot spot (horizontal)
CX pointer hot spot (vertical)
ES:DX address of pointer shape bit field (64 byte data area)
Info: This defines the appearance of the mouse pointer when functioning
on a graphics-mode screen and it selects which part of that
pointer will identify the specific pixel at which the mouse is
pointed. The default graphics cursor is a left-leaning, upward-
pointing arrow with the hot spot at 0,0 (in the top left corner).
To modify the pointer for text-mode screens, see INT 33H 000aH.
The data at ES:BX is 64 bytes long; two sets of 32. Each set of
32 bytes is organized as 16x16 bits; i.e., 16 rows of 2-byte
The first set of 32 bytes defines the "AND mask"; that is, the
background will show through wherever there is a 1-bit in that
The second set defines the "XOR mask"; that is, after the "AND
mask" has cleared out some of the background, the pixels matching
the 1-bits in this data set are toggled.
The BX and CX values specify the "hot spot" for instance, if BX=0
and CX=0, then a button click it taken to mean a selection of the
pixel in the top left corner of the pointer rectangle. If BX=15
and CX=15, a click will select the pixel at the bottom/right
corner of the pointer.
See Also: INT 33H: Mouse Support
Interrupts and BIOS Services