📄 subcmd.asm
字号:
MOV.W @_g_RsRecv_CT,R0
CMP.W #H'0004,R0
BEQ ?00066:8
??BEGINBLOCK(492)
??CLINE 493
JSR @_rs_returnNG
??CLINE 494
MOV.W #H'FFFF,R0
BRA _set_e2p_end:8
??ENDBLOCK(495)
?00066:
??CLINE 496
JSR @_e2prom_wt_pro
??CLINE 497
JSR @_rs_returnOK
??CLINE 498
XOR.W R0,R0
??ENDBLOCK(499)
??CLINE 499
_set_e2p_end:
RTS
segment TEXT ATR_CODE
public _CH_clear
_CH_clear:
PUSH.L ER6
MOV.L ER7,ER6
SUBS #2,ER7
??FUNCDEF(???CH_clear) ??SSHORT
??FUNCEND
??BEGINBLOCK(502)
??VAR ??UCHAR ??SYMBOL(???chr) ??OFFSET(-1)
??CLINE 504
XOR.B R0L,R0L
MOV.L #H'00080000,ER1
MOV.B R0L,@ER1
??CLINE 505
MOV.B @H'00FFFFC1:8,R2L
MOV.B R2L,@(-1,ER6)
??CLINE 506
MOV.B R2L,R3L
EXTU.W R3
AND.W #H'00FB,R3
MOV.L #H'00FFFFC1,ER4
MOV.B R3L,@ER4
??CLINE 508
JSR @_rs_returnOK
??CLINE 509
XOR.W R0,R0
??ENDBLOCK(510)
??CLINE 510
_CH_clear_end:
MOV.L ER6,ER7
POP.L ER6
RTS
segment TEXT ATR_CODE
public _get_if
_get_if:
PUSH.L ER6
MOV.L ER7,ER6
SUB.L #22,ER7
??FUNCDEF(???get_if) ??SSHORT
??FUNCEND
??BEGINBLOCK(513)
??VAR ??USHORT ??SYMBOL(???ch) ??OFFSET(-2)
??VAR ??USHORT ??SYMBOL(???pixel) ??OFFSET(-4)
??VAR ??USHORT ??SYMBOL(???range) ??OFFSET(-6)
??VAR ??SSHORT ??SYMBOL(???ret) ??OFFSET(-8)
??VAR ??SSHORT ??SYMBOL(???data) ??OFFSET(-10)
??VAR ??SSHORT ??SYMBOL(???i) ??OFFSET(-12)
??VAR ??ARRAY(10) ??SCHAR ??SYMBOL(???datstr) ??OFFSET(-22)
??CLINE 519
MOV.W @_g_RsRecv_CT,R0
CMP.W #H'0008,R0
BEQ ?00067:8
??BEGINBLOCK(519)
??CLINE 520
JSR @_rs_returnNG
??CLINE 521
MOV.W #H'FFFF,R0
JMP @_get_if_end
??ENDBLOCK(522)
?00067:
??CLINE 524
MOV.L ER6,ER0
ADD.L #H'FFFFFFFA,ER0
PUSH.L ER0
MOV.L ER6,ER0
ADD.L #H'FFFFFFFC,ER0
PUSH.L ER0
MOV.L ER6,ER0
ADD.L #H'FFFFFFFE,ER0
PUSH.L ER0
MOV.W #H'0001,R0
PUSH.W R0
JSR @_check_CH
ADD.L #H'0000000E,ER7
MOV.W R0,@(-8,ER6)
??CLINE 525
OR.W R0,R0
BEQ ?00068:8
??BEGINBLOCK(525)
??CLINE 526
JSR @_rs_returnNG
??CLINE 527
MOV.W #H'FFFF,R0
JMP @_get_if_end
??ENDBLOCK(528)
?00068:
??CLINE 530
XOR.W R0,R0
MOV.W R0,@(-12,ER6)
BRA ?00070:8
?00069:
MOV.W @(-12,ER6),R0
INC.W #H'0001,R0
MOV.W R0,@(-12,ER6)
?00070:
MOV.W @(-12,ER6),R0
CMP.W #H'0004,R0
BGE ?00071:8
??BEGINBLOCK(531)
??CLINE 532
MOV.W @(-12,ER6),R0
EXTS.L ER0
MOV.L #_g_RsRecv_Bf,ER1
ADD.L ER0,ER1
MOV.B @ER1,R1L
MOV.L #_g_RsSend_Bf,ER2
ADD.L ER0,ER2
MOV.B R1L,@ER2
??ENDBLOCK(533)
BRA ?00069:8
?00071:
??CLINE 537
MOV.L ER6,ER0
ADD.L #H'FFFFFFEA,ER0
PUSH.L ER0
MOV.W @(-2,ER6),R0
SUBS.L #H'00000001,ER0
EXTU.L ER0
SHLL.L ER0
MOV.L #_g_Range,ER1
ADD.L ER0,ER1
MOV.W @ER1,R0
PUSH.W R0
JSR @_bitohex
ADDS.L #H'00000002,ER7
ADDS.L #H'00000004,ER7
??CLINE 538
MOV.L ER6,ER0
ADD.L #H'FFFFFFEA,ER0
MOV.B @ER0,R0L
MOV.L #_g_RsSend_Bf+4,ER1
MOV.B R0L,@ER1
??CLINE 539
MOV.L ER6,ER0
ADD.L #H'FFFFFFEA,ER0
MOV.B @(+1,ER0),R0L
MOV.L #_g_RsSend_Bf+5,ER2
MOV.B R0L,@ER2
??CLINE 543
MOV.W @(-2,ER6),R0
SUBS.L #H'00000001,ER0
EXTU.L ER0
SHLL.L #H'00000002,ER0
SHLL.L ER0
MOV.L #_g_SetIf,ER3
ADD.L ER0,ER3
MOV.W @(-4,ER6),R0
SUBS.L #H'00000001,ER0
EXTU.L ER0
SHLL.L ER0
ADD.L ER0,ER3
MOV.W @ER3,R0
MOV.W R0,@(-10,ER6)
??CLINE 545
MOV.L ER6,ER3
ADD.L #H'FFFFFFEA,ER3
PUSH.L ER3
PUSH.W R0
JSR @_cnv_bta5
ADDS.L #H'00000002,ER7
ADDS.L #H'00000004,ER7
??CLINE 546
MOV.B #H'20,R0L
MOV.L #_g_RsSend_Bf+6,ER1
MOV.B R0L,@ER1
??CLINE 547
XOR.W R2,R2
MOV.W R2,@(-12,ER6)
BRA ?00073:8
?00072:
MOV.W @(-12,ER6),R0
INC.W #H'0001,R0
MOV.W R0,@(-12,ER6)
?00073:
MOV.W @(-12,ER6),R0
CMP.W #H'0004,R0
BGE ?00074:8
??BEGINBLOCK(548)
??CLINE 549
MOV.W @(-12,ER6),R0
EXTS.L ER0
MOV.L ER6,ER1
ADD.L #H'FFFFFFEA,ER1
ADD.L ER0,ER1
MOV.B @ER1,R0L
MOV.W #H'0007,R1
MOV.W @(-12,ER6),R2
ADD.W R2,R1
EXTS.L ER1
MOV.L #_g_RsSend_Bf,ER3
ADD.L ER1,ER3
MOV.B R0L,@ER3
??ENDBLOCK(550)
BRA ?00072:8
?00074:
??CLINE 552
MOV.B #H'0D,R0L
MOV.L #_g_RsSend_Bf+11,ER1
MOV.B R0L,@ER1
??CLINE 553
MOV.W #H'000C,R2
MOV.W R2,@_g_RsSend_CT
??CLINE 555
XOR.W R0,R0
??ENDBLOCK(556)
??CLINE 556
_get_if_end:
MOV.L ER6,ER7
POP.L ER6
RTS
segment TEXT ATR_CODE
public _get_duty
_get_duty:
PUSH.L ER6
MOV.L ER7,ER6
SUB.L #22,ER7
??FUNCDEF(???get_duty) ??SSHORT
??FUNCEND
??BEGINBLOCK(558)
??VAR ??USHORT ??SYMBOL(???ch) ??OFFSET(-2)
??VAR ??USHORT ??SYMBOL(???pixel) ??OFFSET(-4)
??VAR ??USHORT ??SYMBOL(???range) ??OFFSET(-6)
??VAR ??SSHORT ??SYMBOL(???ret) ??OFFSET(-8)
??VAR ??SSHORT ??SYMBOL(???data) ??OFFSET(-10)
??VAR ??SSHORT ??SYMBOL(???i) ??OFFSET(-12)
??VAR ??ARRAY(10) ??SCHAR ??SYMBOL(???datstr) ??OFFSET(-22)
??CLINE 564
MOV.W @_g_RsRecv_CT,R0
CMP.W #H'0008,R0
BEQ ?00075:8
??BEGINBLOCK(564)
??CLINE 565
JSR @_rs_returnNG
??CLINE 566
MOV.W #H'FFFF,R0
JMP @_get_duty_end
??ENDBLOCK(567)
?00075:
??CLINE 569
MOV.L ER6,ER0
ADD.L #H'FFFFFFFA,ER0
PUSH.L ER0
MOV.L ER6,ER0
ADD.L #H'FFFFFFFC,ER0
PUSH.L ER0
MOV.L ER6,ER0
ADD.L #H'FFFFFFFE,ER0
PUSH.L ER0
MOV.W #H'0001,R0
PUSH.W R0
JSR @_check_CH
ADD.L #H'0000000E,ER7
MOV.W R0,@(-8,ER6)
??CLINE 570
OR.W R0,R0
BEQ ?00076:8
??BEGINBLOCK(570)
??CLINE 571
JSR @_rs_returnNG
??CLINE 572
MOV.W #H'FFFF,R0
JMP @_get_duty_end
??ENDBLOCK(573)
?00076:
??CLINE 575
XOR.W R0,R0
MOV.W R0,@(-12,ER6)
BRA ?00078:8
?00077:
MOV.W @(-12,ER6),R0
INC.W #H'0001,R0
MOV.W R0,@(-12,ER6)
?00078:
MOV.W @(-12,ER6),R0
CMP.W #H'0004,R0
BGE ?00079:8
??BEGINBLOCK(576)
??CLINE 577
MOV.W @(-12,ER6),R0
EXTS.L ER0
MOV.L #_g_RsRecv_Bf,ER1
ADD.L ER0,ER1
MOV.B @ER1,R1L
MOV.L #_g_RsSend_Bf,ER2
ADD.L ER0,ER2
MOV.B R1L,@ER2
??ENDBLOCK(578)
BRA ?00077:8
?00079:
??CLINE 580
MOV.W @(-2,ER6),R0
SUBS.L #H'00000001,ER0
EXTU.L ER0
SHLL.L #H'00000002,ER0
SHLL.L ER0
MOV.L #_g_Duty,ER1
ADD.L ER0,ER1
MOV.W @(-4,ER6),R0
SUBS.L #H'00000001,ER0
EXTU.L ER0
SHLL.L ER0
ADD.L ER0,ER1
MOV.W @ER1,R0
MOV.W R0,@(-10,ER6)
??CLINE 582
MOV.L ER6,ER1
ADD.L #H'FFFFFFEA,ER1
PUSH.L ER1
PUSH.W R0
JSR @_cnv_bta5
ADDS.L #H'00000002,ER7
ADDS.L #H'00000004,ER7
??CLINE 583
MOV.B #H'20,R0L
MOV.L #_g_RsSend_Bf+4,ER1
MOV.B R0L,@ER1
??CLINE 584
XOR.W R2,R2
MOV.W R2,@(-12,ER6)
BRA ?00081:8
?00080:
MOV.W @(-12,ER6),R0
INC.W #H'0001,R0
MOV.W R0,@(-12,ER6)
?00081:
MOV.W @(-12,ER6),R0
CMP.W #H'0004,R0
BGE ?00082:8
??BEGINBLOCK(585)
??CLINE 586
MOV.W @(-12,ER6),R0
EXTS.L ER0
MOV.L ER6,ER1
ADD.L #H'FFFFFFEA,ER1
ADD.L ER0,ER1
MOV.B @ER1,R0L
MOV.W #H'0005,R1
MOV.W @(-12,ER6),R2
ADD.W R2,R1
EXTS.L ER1
MOV.L #_g_RsSend_Bf,ER3
ADD.L ER1,ER3
MOV.B R0L,@ER3
??ENDBLOCK(587)
BRA ?00080:8
?00082:
??CLINE 589
MOV.B #H'0D,R0L
MOV.L #_g_RsSend_Bf+9,ER1
MOV.B R0L,@ER1
??CLINE 590
MOV.W #H'000A,R2
MOV.W R2,@_g_RsSend_CT
??CLINE 592
XOR.W R0,R0
??ENDBLOCK(593)
??CLINE 593
_get_duty_end:
MOV.L ER6,ER7
POP.L ER6
RTS
segment TEXT ATR_CODE
public _get_ab
_get_ab:
PUSH.L ER6
MOV.L ER7,ER6
SUB.L #24,ER7
??FUNCDEF(???get_ab) ??SSHORT
??FUNCEND
??BEGINBLOCK(595)
??VAR ??USHORT ??SYMBOL(???ch) ??OFFSET(-2)
??VAR ??USHORT ??SYMBOL(???pixel) ??OFFSET(-4)
??VAR ??USHORT ??SYMBOL(???range) ??OFFSET(-6)
??VAR ??SSHORT ??SYMBOL(???ret) ??OFFSET(-8)
??VAR ??SSHORT ??SYMBOL(???ifdata) ??OFFSET(-10)
??VAR ??SSHORT ??SYMBOL(???ifdatb) ??OFFSET(-12)
??VAR ??SSHORT ??SYMBOL(???i) ??OFFSET(-14)
??VAR ??ARRAY(10) ??SCHAR ??SYMBOL(???datstr) ??OFFSET(-24)
??CLINE 601
MOV.W @_g_RsRecv_CT,R0
CMP.W #H'000A,R0
BEQ ?00083:8
??BEGINBLOCK(601)
??CLINE 602
JSR @_rs_returnNG
??CLINE 603
MOV.W #H'FFFF,R0
JMP @_get_ab_end
??ENDBLOCK(604)
?00083:
??CLINE 606
MOV.L ER6,ER0
ADD.L #H'FFFFFFFA,ER0
PUSH.L ER0
MOV.L ER6,ER0
ADD.L #H'FFFFFFFC,ER0
PUSH.L ER0
MOV.L ER6,ER0
ADD.L #H'FFFFFFFE,ER0
PUSH.L ER0
XOR.W R0,R0
PUSH.W R0
JSR @_check_CH
ADD.L #H'0000000E,ER7
MOV.W R0,@(-8,ER6)
??CLINE 607
OR.W R0,R0
BEQ ?00084:8
??BEGINBLOCK(607)
??CLINE 608
JSR @_rs_returnNG
??CLINE 609
MOV.W #H'FFFF,R0
JMP @_get_ab_end
??ENDBLOCK(610)
?00084:
??CLINE 612
XOR.W R0,R0
MOV.W R0,@(-14,ER6)
BRA ?00086:8
?00085:
MOV.W @(-14,ER6),R0
INC.W #H'0001,R0
MOV.W R0,@(-14,ER6)
?00086:
MOV.W @(-14,ER6),R0
CMP.W #H'0004,R0
BGE ?00087:8
??BEGINBLOCK(613)
??CLINE 614
MOV.W @(-14,ER6),R0
EXTS.L ER0
MOV.L #_g_RsRecv_Bf,ER1
ADD.L ER0,ER1
MOV.B @ER1,R1L
MOV.L #_g_RsSend_Bf,ER2
ADD.L ER0,ER2
MOV.B R1L,@ER2
??ENDBLOCK(615)
BRA ?00085:8
?00087:
??CLINE 617
MOV.W @(-6,ER6),R0
MOV.W #3,R1
MOV.L #?00089,ER2
?00198:
OR.W R1,R1
BEQ ?00200:8
MOV.W @ER2+,R3
CMP.W R3,R0
BNE ?00199:8
MOV.L @ER2,ER3
JMP @ER3
?00199:
ADDS #4,ER2
DEC.W #1,R1
BRA ?00198:8
?00200:
MOV.L @ER2,ER3
JMP @ER3
??BEGINBLOCK(617)
?00092:
??CLINE 619
MOV.W @(-2,ER6),R0
SUBS.L #H'00000001,ER0
EXTU.L ER0
SHLL.L #H'00000002,ER0
SHLL.L ER0
MOV.L #_g_CalIfaR1,ER1
ADD.L ER0,ER1
MOV.W @(-4,ER6),R2
SUBS.L #H'00000001,ER2
EXTU.L ER2
SHLL.L ER2
ADD.L ER2,ER1
MOV.W @ER1,R1
MOV.W R1,@(-10,ER6)
??CLINE 620
MOV.L #_g_CalIfbR1,ER3
ADD.L ER0,ER3
ADD.L ER2,ER3
MOV.W @ER3,R0
MOV.W R0,@(-12,ER6)
??CLINE 621
JMP @?00090
?00093:
??CLINE 623
MOV.W @(-2,ER6),R0
SUBS.L #H'00000001,ER0
EXTU.L ER0
SHLL.L #H'00000002,ER0
SHLL.L ER0
MOV.L #_g_CalIfaR2,ER1
ADD.L ER0,ER1
MOV.W @(-4,ER6),R2
SUBS.L #H'00000001,ER2
EXTU.L ER2
SHLL.L ER2
ADD.L ER2,ER1
MOV.W @ER1,R1
MOV.W R1,@(-10,ER6)
??CLINE 624
MOV.L #_g_CalIfbR2,ER3
ADD.L ER0,ER3
ADD.L ER2,ER3
MOV.W @ER3,R0
MOV.W R0,@(-12,ER6)
??CLINE 625
BRA ?00090:8
?00094:
??CLINE 627
MOV.W @(-2,ER6),R0
SUBS.L #H'00000001,ER0
EXTU.L ER0
SHLL.L #H'00000002,ER0
SHLL.L ER0
MOV.L #_g_CalIfaR3,ER1
ADD.L ER0,ER1
MOV.W @(-4,ER6),R2
SUBS.L #H'00000001,ER2
EXTU.L ER2
SHLL.L ER2
ADD.L ER2,ER1
MOV.W @ER1,R1
MOV.W R1,@(-10,ER6)
??CLINE 628
MOV.L #_g_CalIfbR3,ER3
ADD.L ER0,ER3
ADD.L ER2,ER3
MOV.W @ER3,R0
MOV.W R0,@(-12,ER6)
??CLINE 629
BRA ?00090:8
??ENDBLOCK(630)
?00091:
??CLINE 630
BRA ?00090:8
?00089:
DC.W H'0001
DC.L ?00092
DC.W H'0002
DC.L ?00093
DC.W H'0003
DC.L ?00094
DC.L ?00091
?00090:
??CLINE 632
MOV.L ER6,ER0
ADD.L #H'FFFFFFE8,ER0
PUSH.L ER0
MOV.W @(-10,ER6),R0
PUSH.W R0
JSR @_cnv_bta5
ADDS.L #H'00000002,ER7
ADDS.L #H'00000004,ER7
??CLINE 633
MOV.B #H'20,R0L
MOV.L #_g_RsSend_Bf+4,ER1
MOV.B R0L,@ER1
??CLINE 634
XOR.W R2,R2
MOV.W R2,@(-14,ER6)
BRA ?00096:8
?00095:
MOV.W @(-14,ER6),R0
INC.W #H'0001,R0
MOV.W R0,@(-14,ER6)
?00096:
MOV.W @(-14,ER6),R0
CMP.W #H'0004,R0
BGE ?00097:8
??BEGINBLOCK(635)
??CLINE 636
MOV.W @(-14,ER6),R0
EXTS.L ER0
MOV.L ER6,ER1
ADD.L #H'FFFFFFE8,ER1
ADD.L ER0,ER1
MOV.B @ER1,R0L
MOV.W #H'0005,R1
MOV.W @(-14,ER6),R2
ADD.W R2,R1
EXTS.L ER1
MOV.L #_g_RsSend_Bf,ER3
ADD.L ER1,ER3
MOV.B R0L,@ER3
??ENDBLOCK(637)
BRA ?00095:8
?00097:
??CLINE 639
MOV.L ER6,ER0
ADD.L #H'FFFFFFE8,ER0
PUSH.L ER0
MOV.W @(-12,ER6),R0
PUSH.W R0
JSR @_cnv_bta5
ADDS.L #H'00000002,ER7
ADDS.L #H'00000004,ER7
??CLINE 640
MOV.B #H'20,R0L
MOV.L #_g_RsSend_Bf+9,ER1
MOV.B R0L,@ER1
??CLINE 641
XOR.W R2,R2
MOV.W R2,@(-14,ER6)
BRA ?00099:8
?00098:
MOV.W @(-14,ER6),R0
INC.W #H'0001,R0
MOV.W R0,@(-14,ER6)
?00099:
MOV.W @(-14,ER6),R0
CMP.W #H'0004,R0
BGE ?00100:8
??BEGINBLOCK(642)
??CLINE 643
MOV.W @(-14,ER6),R0
EXTS.L ER0
MOV.L ER6,ER1
ADD.L #H'FFFFFFE8,ER1
ADD.L ER0,ER1
MOV.B @ER1,R0L
MOV.W #H'000A,R1
MOV.W @(-14,ER6),R2
ADD.W R2,R1
EXTS.L ER1
MOV.L #_g_RsSend_Bf,ER3
ADD.L ER1,ER3
MOV.B R0L,@ER3
??ENDBLOCK(644)
BRA ?00098:8
?00100:
??CLINE 645
MOV.B #H'0D,R0L
MOV.L #_g_RsSend_Bf+14,ER1
MOV.B R0L,@ER1
??CLINE 646
MOV.W #H'000F,R2
MOV.W R2,@_g_RsSend_CT
??CLINE 647
XOR.W R0,R0
??ENDBLOCK(648)
??CLINE 648
_get_ab_end:
MOV.L ER6,ER7
POP.L ER6
RTS
segment TEXT ATR_CODE
public _get_cwpls
_get_cwpls:
PUSH.L ER6
MOV.L ER7,ER6
SUB.L #10,ER7
??FUNCDEF(???get_cwpls) ??SSHORT
??FUNCEND
??BEGINBLOCK(651)
??VAR ??USHORT ??SYMBOL(???ch) ??OFFSET(-2)
??VAR ??USHORT ??SYMBOL(???pixel) ??OFFSET(-4)
??VAR ??USHORT ??SYMBOL(???range) ??OFFSET(-6)
??VAR ??SSHORT ??SYMBOL(???ret) ??OFFSET(-8)
??VAR ??SSHORT ??SYMBOL(???i) ??OFFSET(-10)
??CLINE 656
MOV.W @_g_RsRecv_CT,R0
CMP.W #H'0008,R0
BEQ ?00101:8
??BEGINBLOCK(656)
??CLINE 657
JSR @_rs_returnNG
??CLINE 658
MOV.W #H'FFFF,R0
JMP @_get_cwpls_end
??ENDBLOCK(659)
?00101:
??CLINE 661
MOV.L ER6,ER0
ADD.L #H'FFFFFFFA,ER0
PUSH.L ER0
MOV.L ER6,ER0
ADD.L #H'FFFFFFFC,ER0
PUSH.L ER0
MOV.L ER6,ER0
ADD.L #H'FFFFFFFE,ER0
PUSH.L ER0
MOV.W #H'0001,R0
PUSH.W R0
JSR @_check_CH
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -