📄 196s17.asm
字号:
$INCLUDE(8096.INC)
CSEG AT 2B40H
LD 18H,#00E0H
LD 1CH,#0FFFFH
LOOP0: DEC 1CH
JNE LOOP0
LDB 2FH,#10H
LDB 30H,#79H
LDB 1CH,#05H
LDB 1AH,#10H
LOOP1: STB 1AH,[30H]+
DJNZ 1CH,LOOP1
LDB 1AH,#12H
STB 1AH,[30H]
KEYSM: LCALL DISP
LCALL KEYSM0
LDB 30H,#7EH
STB 2FH,[30H]
SJMP KEYSM
KEYSM0: LDB 1AH,#0FFH ;OFFDISP
LD 22H,#0FF22H
STB 1AH,[22H]
LDB 1AH,#0FEH
LDB 1CH,#08H
LDB 2EH,#00H
KEYSM1: LD 20H,#0FF21H
STB 1AH,[20H]
NOP
NOP
NOP
NOP
SHLB 1AH,#01H
LD 24H,#0FF23H
LDB 1BH,[24H]
NOTB 1BH
ANDB 1BH,#0FH
LDB 1FH,1BH
CMPB 1FH,#00H
JNE YKEY
NKEY: INCB 2EH
DJNZ 1CH,KEYSM1
RET
YKEY: NOTB 1BH
JBS 1BH,0,YKEY1
LDB 1AH,#00H
SJMP YKEY5
YKEY1: JBS 1BH,1,YKEY2
LDB 1AH,#08H
SJMP YKEY5
YKEY2: JBS 1BH,2,YKEY3
LDB 1AH,#10H
SJMP YKEY5
YKEY3: JBS 1BH,3,YKEY4
LDB 1AH,#18H
SJMP YKEY5
YKEY5: ADDB 1AH,2EH
CMPB 1AH,#10H
JC YKEY6
LD 28H,#DATA1
ADDB 28H,1AH
YKEY8: LDB 1BH,[28H]+
LDB 2FH,1BH
LDB 42H,#0FEH
LD 20H,#0FF21H
STB 42H,[20H]
LOOP2: LD 24H,#0FF23H
LDB 1BH,[24H]
ANDB 1BH,#0FH
CMPB 1BH,#0FH
JNE LOOP2
YKEY4: RET
YKEY6: LDB 2FH,#11H
LJMP LOOP2
DISP: LD 30H,#79H
LDB 1EH,#20H
LDB 29H,#06H
LDB 28H,#30H
DISP1: LD 20H,#0FF22H
LD 22H,#0FF21H
STB 1EH,[22H]
CLRB 1BH
LDB 1AH,[30H]
LD 1CH,#DATA0
ADD 1CH,1AH
LDB 1AH,[1CH]
STB 1AH,[20H]
INCB 30H
SHRB 1EH,#01H
LOOP4: DJNZ 28H,LOOP4
DJNZ 29H,DISP1
LDB 1AH,#0FFH
LD 1EH,#0FF22H
STB 1AH,[1EH]
RET
DATA0: DCB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
DCB 88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,89H,0DEH
DATA1: DCB 07H,04H,08H,05H,09H,06H,0AH,0BH
DCB 01H,00H,02H,0FH,03H,0EH,0CH,0DH
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -