;	Static Name Aliases
;
	TITLE   cursor
;	NAME    cursor.C

	.287
_TEXT	SEGMENT  BYTE PUBLIC 'CODE'
_TEXT	ENDS
_DATA	SEGMENT  WORD PUBLIC 'DATA'
_DATA	ENDS
CONST	SEGMENT  WORD PUBLIC 'CONST'
CONST	ENDS
_BSS	SEGMENT  WORD PUBLIC 'BSS'
_BSS	ENDS
DGROUP	GROUP	CONST,	_BSS,	_DATA
	ASSUME  CS: _TEXT, DS: DGROUP, SS: DGROUP, ES: DGROUP
EXTRN	__chkstk:NEAR
EXTRN	_int86:NEAR
EXTRN	_vidmode:NEAR
_TEXT      SEGMENT
; Line 4
	PUBLIC	_cursor
_cursor	PROC NEAR
	*** 000000	55 			push	bp
	*** 000001	8b ec 			mov	bp,sp
	*** 000003	b8 0e 00 		mov	ax,14
	*** 000006	e8 00 00 		call	__chkstk
; Line 5
;	mode = 4
;	regs = -14
; Line 8
	*** 000009	83 7e 04 00 		cmp	WORD PTR [bp+4],0	;mode
	*** 00000d	75 07 			jne	$I48
; Line 9
	*** 00000f	c7 46 04 00 20 		mov	WORD PTR [bp+4],8192	;mode
; Line 10
	*** 000014	eb 14 			jmp	SHORT $I52
					$I48:
; Line 11
	*** 000016	e8 00 00 		call	_vidmode
	*** 000019	3d 07 00 		cmp	ax,7
	*** 00001c	75 07 			jne	$I51
; Line 12
	*** 00001e	c7 46 04 0d 0c 		mov	WORD PTR [bp+4],3085	;mode
; Line 13
	*** 000023	eb 05 			jmp	SHORT $I52
					$I51:
; Line 14
	*** 000025	c7 46 04 07 06 		mov	WORD PTR [bp+4],1543	;mode
					$I52:
; Line 15
	*** 00002a	c6 46 f3 01 		mov	BYTE PTR [bp-13],1
; Line 16
	*** 00002e	8b 46 04 		mov	ax,[bp+4]	;mode
	*** 000031	89 46 f6 		mov	[bp-10],ax
; Line 17
	*** 000034	8d 46 f2 		lea	ax,[bp-14]	;regs
	*** 000037	16 			push	ss
	*** 000038	50 			push	ax
	*** 000039	8d 46 f2 		lea	ax,[bp-14]	;regs
	*** 00003c	16 			push	ss
	*** 00003d	50 			push	ax
	*** 00003e	b8 10 00 		mov	ax,16
	*** 000041	50 			push	ax
	*** 000042	e8 00 00 		call	_int86
; Line 18
	*** 000045	8b e5 			mov	sp,bp
	*** 000047	5d 			pop	bp
	*** 000048	c3 			ret	

_cursor	ENDP
_TEXT	ENDS
END
