?? 26_i.asm
字號:
mov di,pointer1
mov dh,line_on1
mov dl,col_on1
mov char,cx
jmp plot_next1
exit31: sub cx,cx
mov cx,char_cnt2
mov di,pointer2
mov dh,line_on2
mov dl,col_on2
mov char,cx
jmp plot_next1
;------------------------------------------
exit61: call dly_qrtr
mov char0,2
mov char01,2
mov col01,4
mov col,4
mov dl,col_on1
cmp dl,2
je exit71
cmp dl,8
je exit71
cmp dl,14
je exit71
cmp dl,20
je exit71
cmp dl,26
je exit71
cmp dl,32
je exit71
cmp dl,38
je exit71
cmp dl,38
ja exit72
exit75: call dly_qrtr
call dly_qrtr
call dly_qrtr
call dly_qrtr
call erase1
cmp col0,26
je exit81
cmp col0,24
je exit91
add col0,4
jmp exit41
exit91: add col0,2
exit81: jmp exit41
exit71:
add col_on1,2
sub col_on2,2
cmp col0,26
je exit81
add col0,4
jmp exit41
exit72: cmp dl,44
je exit71
cmp dl,50
je exit21
jmp exit75
exit01: mov line2,dh
mov col2,dl
add di,4
mov pot2,di
mov dl,col01
cmp col0,dl
je exit02
cmp col01,24
je exit73
add col01,4
jmp exit74
exit73: add col01,2
mov col,2
jmp exit70
exit74: mov col,4
exit70: mov char01,2
dec char01
jmp exit410
exit02: jmp exit61
exit21: pop di
pop dx
pop cx
pop bx
pop ax
ret
exit410: mov dh,line1
mov di,pot1
mov dl,col1
jmp plot_next1
exit310: mov dh,line2
mov di,pot2
mov dl,col2
jmp plot_next1
exit03: jmp exit01
;----------------------------------------
plot_next1: add dh,[di+2]
add dl,[di+3]
mov ah,2
int 10h
cmp char0,1
je exit77
cmp dl,39
ja exit76
jmp exit78
exit77: cmp char01,1
je exit79
cmp char01,0
je exit82
cmp dl,39
jb exit76
jmp exit78
exit79: cmp dl,39
ja exit76
jmp exit78
exit82: cmp dl,39
jb exit76
jmp exit78
exit78: mov al,[di]
mov bl,[di+1]
push cx
mov cx,1
mov ah,09
int 10h
pop cx
exit76:
dec col
je exit51
add di,4
jmp plot_next1
exit51: cmp char01,0
je exit03 ;-------------
cmp char01,1
je exit12
cmp char0,1
je exit03 ;--------------------
mov line1,dh
mov col1,dl
add di,4
mov pot1,di
mov col,4
dec char0
jmp exit31
exit12: mov line1,dh
mov col1,dl
add di,4
mov pot1,di
dec char01
cmp col01,26
je exit83
mov col,4
jmp exit310
exit83: mov col,2
jmp exit310
must_2 endp
;--------------------------------------------
erase proc near
cmp count0,4
jne exit6
add col_on1,2
jmp exit
exit6: cmp count0,3
jne exit7
sub col_on1,2
jmp exit
exit7: cmp count0,2
jne exit8
inc line_on1
jmp exit
exit8: cmp count0,1
jne exit
dec line_on1
exit: mov dh,line_on1
mov dl,col_on1
mov cx,char_cnt1
mov di,pointer1
ret
erase endp
;-----------------------------------------
erase1 proc near
sub cx,cx
mov cx,char_cnt1
mov di,pointer1
mov dh,line_on1
mov dl,col_on1
mov char,cx
jmp erase_next1
exit62: sub cx,cx
mov cx,char_cnt2
mov di,pointer2
mov dh,line_on2
mov dl,col_on2
mov char,cx
jmp erase_next1
exit011: mov line2,dh
mov col2,dl
add di,4
mov pot2,di
mov dl,col01
cmp col0,dl
je exit021
cmp col01,24
je exit013
add col01,4
jmp exit014
exit013: add col01,2
mov col,2
jmp exit015
exit014: mov col,4
exit015: mov char01,2
dec char01
jmp exit4101
exit021: jmp left
exit4101: mov dh,line1
mov di,pot1
mov dl,col1
jmp erase_next1
exit3101: mov dh,line2
mov di,pot2
mov dl,col2
jmp erase_next1
exit012: jmp exit011
erase_next1:
add dh,[di+2]
add dl,[di+3]
mov ah,2
int 10h
cmp char0,1
je exit770
cmp dl,39
ja exit760
jmp exit780
exit770: cmp char01,1
je exit790
cmp char01,0
je exit820
cmp dl,39
jb exit760
jmp exit780
exit790: cmp dl,39
ja exit760
jmp exit780
exit820: cmp dl,39
jb exit760
jmp exit780
exit780: mov al,'*'
mov bl,0
push cx
mov cx,1
mov ah,9
int 10h
pop cx
;-------------------------------------
exit760: dec col
je exit0
add di,4
jmp erase_next1
exit0: cmp char01,0
je exit012 ;-------------
cmp char01,1
je exit121
cmp char0,1
je exit012 ;--------------------
mov line1,dh
mov col1,dl
add di,4
mov pot1,di
mov col,4
dec char0
jmp exit62
exit121: mov line1,dh
mov col1,dl
add di,4
mov pot1,di
dec char01
cmp col01,26
je exit122
mov col,4
jmp exit3101
exit122: mov col,2
jmp exit3101
left: add col_on1,2
sub col_on2,2
ret
erase1 endp
;------------------------------------------
dly_qrtr proc near
push cx
push dx
mov dx,25
dll: mov cx,65530
dl2: loop dl2
dec dx
jnz dll
pop dx
pop cx
ret
dly_qrtr endp
;---------------------------------------
code_seg ends
end main
;---------------------------------
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -