INT 33H 000fH: Set Pointer Speed
Expects: AX 000fH
CX desired horizontal mickeys per 8 pixels
DX desired vertical mickeys per 8 pixels
──────────────────────────────────────────────────────────────────
Returns: none
──────────────────────────────────────────────────────────────────
Info: This sets the base speed at which the pointer moves around the
screen, compared to the distance actually moved by the mouse.
The mickey-to-pixel ratio is used to convert distance values,
such as INT 33H 000bH and values obtained in SI and DI by custom
event handlers (see INT 33H 000cH), to pixels or character cells.
The pointer may actually move much farther/faster than the
base speed specified in this call. When the mouse is moved
quickly, the mouse support automatically doubles the ratio
(moving the pointer exponentially more quickly). See
INT 33H 0013H.
1 mickey = 1/200th of an inch = 0.005 inch.
Note that the values for CX and DX are in character cells
(8-pixel units). The default settings are CX=8 and DX=16. This
means that the pointer moves twice as fast horizontally as it
does vertically. It also means that a slow, steady 1-inch mouse
motion moves the pointer by 25 characters horizontally or 12
vertical lines. The calculation goes as follows:
desiredCharsPerInch = 200 / CX
...so...
CX = 200 / desiredCharsPerInch (thus, CX=8 moves 25 chars)
For graphics mode (i.e., pixel measurements) use:
CX = 25 / desiredPixelsPerInch (thus, CX=8 moves 200 pixels)
Notes: INT 33H 001aH is an updated version of this call and
INT 33H 001bH provides a way to query the current settings.
See Also: INT 33H: Mouse Support
Interrupts and BIOS Services
-♦-