⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vbufwin.cod

📁 汇编源代码大全4
💻 COD
字号:
;	Static Name Aliases
;
	TITLE   vbufwin
;	NAME    vbufwin.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	_vidmode:NEAR
EXTRN	_inp:NEAR
EXTRN	__chkstk:NEAR
_TEXT      SEGMENT
; Line 8
	PUBLIC	_vbufwin
_vbufwin	PROC NEAR
	*** 000000	55 			push	bp
	*** 000001	8b ec 			mov	bp,sp
	*** 000003	b8 0a 00 		mov	ax,10
	*** 000006	e8 00 00 		call	__chkstk
	*** 000009	56 			push	si
; Line 10
;	buffer = 4
;	row = 6
;	col = 8
;	width = 10
;	height = 12
;	direction = 14
;	retrace = 16
;	scr_ofs = -4
;	vstart = -8
;	times = -10
; Line 14
	*** 00000a	e8 00 00 		call	_vidmode
	*** 00000d	3d 07 00 		cmp	ax,7
	*** 000010	75 11 			jne	$I22
; Line 15
; Line 16
	*** 000012	c7 46 f8 00 00 		mov	WORD PTR [bp-8],0	;vstart
	*** 000017	c7 46 fa 00 b0 		mov	WORD PTR [bp-6],-20480
; Line 17
	*** 00001c	c7 46 10 00 00 		mov	WORD PTR [bp+16],0	;retrace
; Line 18
; Line 19
	*** 000021	eb 0a 			jmp	SHORT $I23
					$I22:
; Line 20
	*** 000023	c7 46 f8 00 00 		mov	WORD PTR [bp-8],0	;vstart
	*** 000028	c7 46 fa 00 b8 		mov	WORD PTR [bp-6],-18432
					$I23:
; Line 22
	*** 00002d	b8 a0 00 		mov	ax,160
	*** 000030	f7 6e 06 		imul	WORD PTR [bp+6]	;row
	*** 000033	01 46 f8 		add	[bp-8],ax	;vstart
; Line 24
	*** 000036	eb 76 			jmp	SHORT $L20002
					$WC24:
; Line 25
; Line 26
	*** 000038	8b 46 08 		mov	ax,[bp+8]	;col
	*** 00003b	d1 e0 			shl	ax,1
	*** 00003d	03 46 f8 		add	ax,[bp-8]	;vstart
	*** 000040	8b 56 fa 		mov	dx,[bp-6]
	*** 000043	89 46 fc 		mov	[bp-4],ax	;scr_ofs
	*** 000046	89 56 fe 		mov	[bp-2],dx
; Line 28
	*** 000049	8b 46 0a 		mov	ax,[bp+10]	;width
	*** 00004c	89 46 f6 		mov	[bp-10],ax	;times
; Line 29
	*** 00004f	eb 4f 			jmp	SHORT $L20001
					$WC26:
; Line 30
; Line 31
	*** 000051	83 7e 10 00 		cmp	WORD PTR [bp+16],0	;retrace
	*** 000055	74 20 			je	$I28
; Line 32
; Line 33
					$WC30:
	*** 000057	b8 da 03 		mov	ax,986
	*** 00005a	50 			push	ax
	*** 00005b	e8 00 00 		call	_inp
	*** 00005e	83 c4 02 		add	sp,2
	*** 000061	24 01 			and	al,1
	*** 000063	3c 01 			cmp	al,1
	*** 000065	74 f0 			je	$WC30
; Line 34
					$WC32:
	*** 000067	b8 da 03 		mov	ax,986
	*** 00006a	50 			push	ax
	*** 00006b	e8 00 00 		call	_inp
	*** 00006e	83 c4 02 		add	sp,2
	*** 000071	24 01 			and	al,1
	*** 000073	3c 01 			cmp	al,1
	*** 000075	75 f0 			jne	$WC32
; Line 35
; Line 36
					$I28:
	*** 000077	83 7e 0e 00 		cmp	WORD PTR [bp+14],0	;direction
	*** 00007b	75 0d 			jne	$I34
; Line 37
	*** 00007d	8b 5e 04 		mov	bx,[bp+4]	;buffer
	*** 000080	c4 76 fc 		les	si,[bp-4]	;scr_ofs
	*** 000083	26 8b 04 		mov	ax,es:[si]
	*** 000086	89 07 			mov	[bx],ax
; Line 38
	*** 000088	eb 0b 			jmp	SHORT $I35
					$I34:
; Line 39
	*** 00008a	c4 5e fc 		les	bx,[bp-4]	;scr_ofs
	*** 00008d	8b 76 04 		mov	si,[bp+4]	;buffer
	*** 000090	8b 04 			mov	ax,[si]
	*** 000092	26 89 07 		mov	es:[bx],ax
					$I35:
; Line 40
	*** 000095	83 46 04 02 		add	WORD PTR [bp+4],2	;buffer
	*** 000099	83 46 fc 02 		add	WORD PTR [bp-4],2	;scr_ofs
	*** 00009d	ff 4e f6 		dec	WORD PTR [bp-10]	;times
; Line 41
					$L20001:
	*** 0000a0	83 7e f6 00 		cmp	WORD PTR [bp-10],0	;times
	*** 0000a4	75 ab 			jne	$WC26
; Line 42
	*** 0000a6	ff 4e 0c 		dec	WORD PTR [bp+12]	;height
; Line 43
	*** 0000a9	81 46 f8 a0 00 		add	WORD PTR [bp-8],160	;vstart
; Line 44
					$L20002:
	*** 0000ae	83 7e 0c 00 		cmp	WORD PTR [bp+12],0	;height
	*** 0000b2	75 84 			jne	$WC24
; Line 45
	*** 0000b4	5e 			pop	si
	*** 0000b5	8b e5 			mov	sp,bp
	*** 0000b7	5d 			pop	bp
	*** 0000b8	c3 			ret	

_vbufwin	ENDP
_TEXT	ENDS
END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -