?? window.asm
字號:
title wdex---variable_size video window
dseg segment
cury db 15
curx db 50
lluy db 5
llux db 10
lrdy db 15
lrdx db 30
rluy db 5
rlux db 50
rrdy db 15
rrdx db 70
dluy db 18
dlux db 15
drdy db 22
drdx db 65
lx db 10
ly db 15
rx db 50
ry db 15
dwx db 15
dwy db 22
ulrow db 0
ulcol db 0
lrrow db 0
lrcol db 0
dseg ends
clear macro a,b,c,d
mov ah,6
mov al,0
mov ch,a
mov cl,b
mov dh,c
mov dl,d
mov bh,7
int 10h
endm
scroll macro cont,ulrow,ulcol,lrrow,lrcol
mov ah,6
mov al,cont
mov ch,ulrow
mov cl,ulcol
mov dh,lrrow
mov dl,lrcol
mov bh,70h
int 10h
endm
postc macro y,x
mov ah,2
mov dh,y
mov dl,x
mov bh,0
int 10h
endm
cseg segment
assume cs:cseg,ds:dseg
main proc far
push ds
sub ax,ax
push ax
mov ax,dseg
mov ds,ax
clear 0,0,24,79
scroll 10,5,10,15,30
scroll 10,5,50,15,70
scroll 4,18,15,22,65
postc cury,curx
input:
mov ah,0
int 16h
cmp ah,4bh
jnz no_left
push ax
mov al,cury
mov ry,al
mov al,curx
mov rx,al
mov al,ly
mov cury,al
mov al,lx
mov curx,al
pop ax
postc cury,curx
jmp input
no_left:
cmp ah,4dh
jnz no_right
push ax
mov al,cury
mov ly,al
mov al,curx
mov lx,al
mov al,ry
mov cury,al
mov al,rx
mov curx,al
pop ax
postc cury,curx
jmp input
no_right:
cmp ah,01
jnz display
ret
display:
mov ah,0ah
mov bh,0
mov cx,1
int 10h
inc curx
postc dwy,dwx
mov ah,0ah
mov bh,0
mov cx,1
int 10h
inc dwx
cmp dwx,65
ja down
postc cury,curx
mov al,curx
cmp al,30
jle next
cmp al,50
jle next2
cmp al,70
jle next
ja next3
next2:
scroll 1,5,10,15,30
mov cury,15
mov curx,10
jmp next
next3:
scroll 1,5,50,15,70
mov cury,15
mov curx,50
next:
postc cury,curx
jmp input
down:
scroll 1,18,15,22,65
mov dwx,15
postc cury,curx
jmp input
main endp
cseg ends
end main
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -