📄 main.s
字号:
asl A
asl A
mov [__r0],A
and [__r0],32
mov REG[0xd0],>_KeyProStatus
mov A,[_KeyProStatus]
and A,-33
mov REG[0xd0],>__r0
or A,[__r0]
mov REG[0xd0],>_KeyProStatus
mov [_KeyProStatus],A
.dbline 323
; }
xjmp L47
L57:
.dbline 325
; }
; }
mov REG[0xd0],>_KeyProStatus
mov A,[_KeyProStatus]
mov REG[0xd0],>__r0
asr A
asr A
asr A
asr A
asr A
asr A
asr A
and A,1
mov [__r0],A
and [__r0],1
cmp [__r0],0
jz L59
mov [X+10],0
mov [X+9],0
xjmp L60
L59:
mov [X+10],1
mov [X+9],0
L60:
mov REG[0xd0],>__r0
mov A,[X+10]
mov [__r0],A
and [__r0],1
mov A,[__r0]
asl A
asl A
asl A
asl A
asl A
asl A
asl A
mov [__r0],A
and [__r0],-128
mov REG[0xd0],>_KeyProStatus
mov A,[_KeyProStatus]
and A,127
mov REG[0xd0],>__r0
or A,[__r0]
mov REG[0xd0],>_KeyProStatus
mov [_KeyProStatus],A
.dbline 327
; }
; }
xjmp L47
L61:
.dbline 329
; }
; }
mov REG[0xd0],>_KeyProStatus
mov A,[_KeyProStatus]
mov REG[0xd0],>__r0
asr A
asr A
asr A
asr A
and A,15
mov [__r0],A
and [__r0],1
cmp [__r0],0
jz L63
mov [X+12],0
mov [X+11],0
xjmp L64
L63:
mov [X+12],1
mov [X+11],0
L64:
mov REG[0xd0],>__r0
mov A,[X+12]
mov [__r0],A
and [__r0],1
mov A,[__r0]
asl A
asl A
asl A
asl A
mov [__r0],A
and [__r0],16
mov REG[0xd0],>_KeyProStatus
mov A,[_KeyProStatus]
and A,-17
mov REG[0xd0],>__r0
or A,[__r0]
mov REG[0xd0],>_KeyProStatus
mov [_KeyProStatus],A
.dbline 330
; }
xjmp L47
L65:
.dbline 332
; }
; }
mov REG[0xd0],>_KeyProStatus
mov A,[_KeyProStatus]
mov REG[0xd0],>__r0
asr A
asr A
asr A
and A,31
mov [__r0],A
and [__r0],1
cmp [__r0],0
jz L67
mov [X+14],0
mov [X+13],0
xjmp L68
L67:
mov [X+14],1
mov [X+13],0
L68:
mov REG[0xd0],>__r0
mov A,[X+14]
mov [__r0],A
and [__r0],1
mov A,[__r0]
asl A
asl A
asl A
mov [__r0],A
and [__r0],8
mov REG[0xd0],>_KeyProStatus
mov A,[_KeyProStatus]
and A,-9
mov REG[0xd0],>__r0
or A,[__r0]
mov REG[0xd0],>_KeyProStatus
mov [_KeyProStatus],A
.dbline 333
; }
mov A,[_KeyProStatus]
mov REG[0xd0],>__r0
asr A
asr A
asr A
and A,31
mov [__r0],A
and [__r0],1
push X
mov A,[__r0]
xcall _LED_ShiftCAP_Switch
pop X
.dbline 334
; }
L46:
L47:
.dbline -2
.dbline 336
; }
; }
L44:
add SP,-15
pop X
.dbline 0 ; func end
ret
.dbsym l ChrIndex 2 c
.dbsym l ch_str 0 A[2:2]c
.dbsym l C_Code -4 c
.dbend
.dbfunc e SearchKeyTab _SearchKeyTab fc
; TabIndex -> X+1
; ChrIndex -> X+0
; AppendKeycode -> X-6
; RealKeyNum -> X-4
_SearchKeyTab::
.dbline -1
push X
mov X,SP
add SP,4
.dbline 345
; }
; }
; }
; }
; }
; }
; }
; }
; }
.dbline 346
; }
mov [X+1],0
.dbline 349
; }
; }
; }
mov REG[0xd0],>__r0
mov A,[X-5]
mov [__r1],A
mov A,[X-6]
mov REG[0xd5],A
mov A,0
mvi [__r1],A
.dbline 351
; }
; }
mov REG[0xd0],>_KeyProStatus
mov A,[_KeyProStatus]
mov REG[0xd0],>__r0
asr A
asr A
asr A
asr A
asr A
asr A
and A,3
mov [__r0],A
and [__r0],1
mov A,[__r0]
mov [X+0],A
.dbline 352
; }
mov REG[0xd0],>_KeyProStatus
mov A,[_KeyProStatus]
mov REG[0xd0],>__r0
asr A
asr A
asr A
asr A
asr A
and A,7
mov [__r0],A
and [__r0],1
asl [__r0]
mov A,[X+0]
or A,[__r0]
mov [X+0],A
.dbline 353
; }
mov REG[0xd0],>_KeyProStatus
mov A,[_KeyProStatus]
mov REG[0xd0],>__r0
asr A
asr A
asr A
asr A
asr A
asr A
asr A
and A,1
mov [__r0],A
and [__r0],1
asl [__r0]
asl [__r0]
mov A,[X+0]
or A,[__r0]
mov [X+0],A
.dbline 354
; }
mov REG[0xd0],>_KeyProStatus
mov A,[_KeyProStatus]
mov REG[0xd0],>__r0
asr A
asr A
asr A
asr A
and A,15
mov [__r0],A
and [__r0],1
mov A,[__r0]
asl A
asl A
asl A
mov [__r0],A
mov A,[X+0]
or A,[__r0]
mov [X+0],A
.dbline 355
; }
mov REG[0xd0],>_KeyProStatus
mov A,[_KeyProStatus]
mov REG[0xd0],>__r0
asr A
asr A
asr A
and A,31
mov [__r0],A
and [__r0],1
mov A,[__r0]
asl A
asl A
asl A
asl A
mov [__r0],A
mov A,[X+0]
or A,[__r0]
mov [X+0],A
.dbline 356
; }
cmp [X+0],0
jnz L70
.dbline 357
; }
.dbline 358
; }
mov A,[X-4]
mov [__r1],A
mov A,0
push A
mov A,[__r1]
push A
mov A,0
push A
mov A,3
push A
xcall __mul16
add SP,-4
mov A,[__rX]
mov [__r1],A
mov A,[__rY]
mov [__r0],A
add [__r1],<_FirstKeyArray
adc [__r0],>_FirstKeyArray
mov A,[__r0]
push X
mov X,[__r1]
romx
pop X
cmp A,31
jnz L72
.dbline 359
; }
.dbline 360
; }
mov A,[X-5]
mov [__r1],A
mov A,[X-6]
mov REG[0xd5],A
mov A,2
mvi [__r1],A
.dbline 361
; }
mov A,[X-4]
mov [__r1],A
mov A,0
push A
mov A,[__r1]
push A
mov A,0
push A
mov A,3
push A
xcall __mul16
add SP,-4
mov A,[__rX]
mov [__r1],A
mov A,[__rY]
mov [__r0],A
add [__r1],<_FirstKeyArray
adc [__r0],>_FirstKeyArray
mov A,[__r0]
push X
mov X,[__r1]
romx
pop X
xjmp L69
L72:
.dbline 364
; }
; }
; }
mov REG[0xd0],>__r0
mov A,[X-4]
mov [__r1],A
mov A,0
push A
mov A,[__r1]
push A
mov A,0
push A
mov A,3
push A
xcall __mul16
add SP,-4
mov A,[__rX]
mov [__r1],A
mov A,[__rY]
mov [__r0],A
add [__r1],<_FirstKeyArray
adc [__r0],>_FirstKeyArray
mov A,[__r0]
push X
mov X,[__r1]
romx
pop X
xjmp L69
L70:
.dbline 367
; }
; }
; }
mov REG[0xd0],>__r0
mov A,[X-4]
mov [__r1],A
mov A,0
push A
mov A,[__r1]
push A
mov A,0
push A
mov A,3
push A
xcall __mul16
add SP,-4
mov A,[__rX]
mov [__r1],A
mov A,[__rY]
mov [__r0],A
add [__r1],<_FirstKeyArray
adc [__r0],>_FirstKeyArray
mov A,[__r0]
push X
mov X,[__r1]
romx
pop X
mov [__r0],A
mov A,-96
cmp A,[__r0]
jnc L74
X19:
.dbline 368
; }
mov REG[0xd0],>__r0
mov A,[X-4]
mov [__r1],A
mov A,0
push A
mov A,[__r1]
push A
mov A,0
push A
mov A,3
push A
xcall __mul16
add SP,-4
mov A,[__rX]
mov [__r1],A
mov A,[__rY]
mov [__r0],A
add [__r1],<_FirstKeyArray
adc [__r0],>_FirstKeyArray
mov A,[__r0]
push X
mov X,[__r1]
romx
pop X
xjmp L69
L74:
.dbline 370
; }
; }
mov REG[0xd0],>_KeyProStatus
mov A,[_KeyProStatus]
mov REG[0xd0],>__r0
asr A
asr A
asr A
and A,31
mov [__r0],A
and [__r0],1
cmp [__r0],1
jnz L76
mov REG[0xd0],>_KeyProStatus
mov A,[_KeyProStatus]
mov REG[0xd0],>__r0
asr A
asr A
asr A
asr A
asr A
asr A
asr A
and A,1
mov [__r0],A
and [__r0],1
cmp [__r0],0
jnz L76
.dbline 371
; }
.dbline 372
; }
mov A,[X-4]
mov [__r1],A
mov A,0
push A
mov A,[__r1]
push A
mov A,0
push A
mov A,3
push A
xcall __mul16
add SP,-4
mov A,[__rX]
mov [__r1],A
mov A,[__rY]
mov [__r0],A
add [__r1],<_FirstKeyArray
adc [__r0],>_FirstKeyArray
mov A,[__r0]
push X
mov X,[__r1]
romx
pop X
mov [__r1],A
mov [__r0],0
sub A,4
mov A,0
xor A,-128
sbb A,(0 ^ 0x80)
jc L78
X20:
mov REG[0xd0],>__r0
mov A,29
sub A,[__r1]
mov A,[__r0]
xor A,-128
mov [__rX],A
mov A,(0 ^ 0x80)
sbb A,[__rX]
jc L78
X21:
.dbline 373
; }
.dbline 374
; }
mov REG[0xd0],>__r0
mov A,[X-5]
mov [__r1],A
mov A,[X-6]
mov REG[0xd5],A
mov A,2
mvi [__r1],A
.dbline 375
; }
mov A,[X-4]
mov [__r1],A
mov A,0
push A
mov A,[__r1]
push A
mov A,0
push A
mov A,3
push A
xcall __mul16
add SP,-4
mov A,[__rX]
mov [__r1],A
mov A,[__rY]
mov [__r0],A
add [__r1],<_FirstKeyArray
adc [__r0],>_FirstKeyArray
mov A,[__r0]
push X
mov X,[__r1]
romx
pop X
xjmp L69
L78:
.dbline 378
; }
; }
; }
.dbline 379
; }
mov REG[0xd0],>__r0
mov A,[X-4]
mov [__r1],A
mov A,0
push A
mov A,[__r1]
push A
mov A,0
push A
mov A,3
push A
xcall __mul16
add SP,-4
mov A,[__rX]
mov [__r1],A
mov A,[__rY]
mov [__r0],A
add [__r1],<_FirstKeyArray
adc [__r0],>_FirstKeyArray
mov A,[__r0]
push X
mov X,[__r1]
romx
pop X
cmp A,31
jnz L80
.dbline 380
; }
mov A,[X-5]
mov [__r1],A
mov A,[X-6]
mov REG[0xd5],A
mov A,2
mvi [__r1],A
L80:
.dbline 381
; }
mov REG[0xd0],>__r0
mov A,[X-4]
mov [__r1],A
mov A,0
push A
mov A,[__r1]
push A
mov A,0
push A
mov A,3
push A
xcall __mul16
add SP,-4
mov A,[__rX]
mov [__r1],A
mov A,[__rY]
mov [__r0],A
add [__r1],<_FirstKeyArray
adc [__r0],>_FirstKeyArray
mov A,[__r0]
push X
mov X,[__r1]
romx
pop X
xjmp L69
L76:
.dbline 385
; }
; }
; }
; }
mov REG[0xd0],>_KeyProStatus
mov A,[_KeyProStatus]
mov REG[0xd0],>__r0
asr A
asr A
asr A
asr A
asr A
and A,7
mov [__r0],A
and [__r0],1
cmp [__r0],1
jnz L82
.dbline 386
; }
.dbline 387
; }
mov A,[X-5]
mov [__r1],A
mov A,[X-6]
mov REG[0xd5],A
mov A,1
mvi [__r1],A
.dbline 389
; }
; }
mov A,[X-4]
mov [__r1],A
mov A,0
push A
mov A,[__r1]
push A
mov A,0
push A
mov A,3
push A
xcall __mul16
add SP,-4
mov A,[__rX]
mov [__r1],A
mov A,[__rY]
mov [__r0],A
add [__r1],<_FirstKeyArray
adc [__r0],>_FirstKeyArray
mov A,[__r0]
push X
mov X,[__r1]
romx
pop X
xjmp L69
L82:
.dbline 392
; }
; }
; }
mov REG[0xd0],>_KeyProStatus
mov A,[_KeyProStatus]
mov REG[0xd0],>__r0
asr A
asr A
asr A
asr A
asr A
asr A
asr A
and A,1
mov [__r0],A
and [__r0],1
cmp [__r0],1
jnz L84
.dbline 393
; }
.dbline 396
; }
; }
; }
mov A,[X-4]
mov [__r1],A
mov A,0
push A
mov A,[__r1]
push A
mov A,0
push A
mov A,3
push A
xcall __mul16
add SP,-4
mov A,[__rX]
mov [__r1],A
mov A,[__rY]
mov [__r0],A
mov A,[__r1]
add A,<_FirstKeyArray+1
mov [__r3],A
mov A,[__r0]
adc A,>_FirstKeyArray+1
push X
mov X,[__r3]
romx
pop X
mov [__r2],A
tst [__r2],8
jnz L90
add [__r1],<_FirstKeyArray+1
adc [__r0],>_FirstKeyArray+1
mov A,[__r0]
push X
mov X,[__r1]
romx
pop X
mov [__r0],A
tst [__r0],4
jz L86
L90:
.dbline 397
; }
.dbline 399
; }
; }
mov REG[0xd0],>__r0
mov A,[X-4]
mov [__r1],A
mov A,0
push A
mov A,[__r1]
push A
mov A,0
push A
mov A,3
push A
xcall __mul16
add SP,-4
mov A,[__rX]
mov [__r1],A
mov A,[__rY]
mov [__r0],A
add [__r1],<_FirstKeyArray+1
adc [__r0],>_FirstKeyArray+1
mov A,[__r0]
push X
mov X,[__r1]
romx
pop X
asr A
asr A
asr A
asr A
and A,15
mov [__r0],A
mov A,[X-5]
mov [__r3],A
mov A,[X-6]
mov REG[0xd5],A
mov A,[__r0]
mvi [__r3],A
.dbline 401
; }
; }
mov A,[X-4]
mov [__r1],A
mov A,0
push A
mov A,[__r1]
push A
mov A,0
push A
mov A,3
push A
xcall __mul16
add SP,-4
mov A,[__rX]
mov [__r1],A
mov A,[__rY]
mov [__r0],A
add [__r1],<_FirstKeyArray+1
adc [__r0],>_FirstKeyArray+1
mov A,[__r0]
push X
mov X,[__r1]
romx
pop X
and A,15
mov [X+1],A
.dbline 402
; }
mov A,[X-4]
mov [__r1],A
mov A,0
push A
mov A,[__r1]
push A
mov A,0
push A
mov A,3
push A
xcall __mul16
add SP,-4
mov A,[__rX]
mov [__r1],A
mov A,[__rY]
mov [__r0],A
add [__r1],<_FirstKeyArray+2
adc [__r0],>_FirstKeyArray+2
mov A,[__r0]
push X
mov X,[__r1]
romx
pop X
mov [X+0],A
.dbline 403
; }
xjmp L87
L86:
.dbline 405
; }
; }
mov REG[0xd0],>__r0
mov A,[X-4]
mov [__r1],A
mov A,0
push A
mov A,[__r1]
push A
mov A,0
push A
mov A,3
push A
xcall __mul16
add SP,-4
mov A,[__rX]
mov [__r1],A
mov A,[__rY]
mov [__r0],A
add [__r1],<_FirstKeyArray
adc [__r0],>_FirstKeyArray
mov A,[__r0]
push X
mov X,[__r1]
romx
pop X
xjmp L69
L87:
.dbline 407
; }
; }
L84:
.dbline 409
; }
; }
mov REG[0xd0],>_KeyProStatus
mov A,[_KeyProStatus]
mov REG[0xd0],>__r0
asr A
asr A
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -