home *** CD-ROM | disk | FTP | other *** search
-
- ;************************************************************************
- ; Get current size of the cursor from the BIOS data area *
- ; Entry: Start - Pointer to where to save the starting value *
- ; Stop - Pointer to where to save the ending value *
- ; Exit: Values at the pointers are set to proper values *
- ;************************************************************************
-
- start_seg EQU [BP+12]
- start_offset EQU [BP+10]
- stop_seg EQU [BP+8]
- stop_offset EQU [BP+6]
-
- PUBLIC Get_Cursor_Size
-
- Get_Cursor_Size PROC FAR
- PUSH BP
- MOV BP,SP
- PUSH SI
- PUSH DS
- PUSH ES ;Preserve ES
- XOR AX,AX ;Set ES to segment zero
- MOV ES,AX
- MOV BX,ES:[BIOS_Curs_Mode] ;Fetch cursor size
- MOV DS,start_seg
- MOV SI,start_offset ;Fetch pointer to save
- MOV AL,BH ;Fetch start value
- MOV [SI],AX ;Save starting value
- MOV DS,stop_seg
- MOV SI,stop_offset ;Fetch pointer to save
- MOV AL,BL ;Fetch stop value
- MOV [SI],AX ;Save ending value
- POP ES
- POP DS
- POP SI
- POP BP
- RET 8
- Get_Cursor_Size ENDP