home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
QBasic & Borland Pascal & C
/
Delphi5.iso
/
C
/
Samples
/
C-ASM_VI.ARJ
/
PROGASM.ZIP
/
PROG024P.ASM
< prev
next >
Wrap
Assembly Source File
|
1988-06-29
|
1KB
|
39 lines
;************************************************************************
; 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