📄 subcmd.asm
字号:
??CLINE 856
MOV.W @(-4,ER6),R0
PUSH.W R0
MOV.L #_str00005,ER1
PUSH.L ER1
MOV.L #_g_RsRecv_Bf+2,ER2
PUSH.L ER2
JSR @_strcopm
ADD.L #H'0000000A,ER7
MOV.W R0,@(-2,ER6)
??CLINE 857
CMP.W #H'0001,R0
BNE ?00142:8
??BEGINBLOCK(857)
??CLINE 858
MOV.W #H'0006,R0
MOV.W R0,@(-2,ER6)
??CLINE 859
JMP @_change_cmd2no_end
??ENDBLOCK(860)
?00142:
??CLINE 861
MOV.W @(-4,ER6),R0
PUSH.W R0
MOV.L #_str00006,ER1
PUSH.L ER1
MOV.L #_g_RsRecv_Bf+2,ER2
PUSH.L ER2
JSR @_strcopm
ADD.L #H'0000000A,ER7
MOV.W R0,@(-2,ER6)
??CLINE 862
CMP.W #H'0001,R0
BNE ?00143:8
??BEGINBLOCK(862)
??CLINE 863
MOV.W #H'0007,R0
MOV.W R0,@(-2,ER6)
??CLINE 864
JMP @_change_cmd2no_end
??ENDBLOCK(865)
?00143:
??CLINE 866
MOV.W @(-4,ER6),R0
PUSH.W R0
MOV.L #_str00007,ER1
PUSH.L ER1
MOV.L #_g_RsRecv_Bf+2,ER2
PUSH.L ER2
JSR @_strcopm
ADD.L #H'0000000A,ER7
MOV.W R0,@(-2,ER6)
??CLINE 867
CMP.W #H'0001,R0
BNE ?00144:8
??BEGINBLOCK(867)
??CLINE 868
MOV.W #H'0008,R0
MOV.W R0,@(-2,ER6)
??CLINE 869
JMP @_change_cmd2no_end
??ENDBLOCK(870)
?00144:
??CLINE 871
MOV.W @(-4,ER6),R0
PUSH.W R0
MOV.L #_str00008,ER1
PUSH.L ER1
MOV.L #_g_RsRecv_Bf+2,ER2
PUSH.L ER2
JSR @_strcopm
ADD.L #H'0000000A,ER7
MOV.W R0,@(-2,ER6)
??CLINE 872
CMP.W #H'0001,R0
BNE ?00145:8
??BEGINBLOCK(872)
??CLINE 873
MOV.W #H'0009,R0
MOV.W R0,@(-2,ER6)
??CLINE 874
JMP @_change_cmd2no_end
??ENDBLOCK(875)
?00145:
??CLINE 876
MOV.W @(-4,ER6),R0
PUSH.W R0
MOV.L #_str00009,ER1
PUSH.L ER1
MOV.L #_g_RsRecv_Bf+2,ER2
PUSH.L ER2
JSR @_strcopm
ADD.L #H'0000000A,ER7
MOV.W R0,@(-2,ER6)
??CLINE 877
CMP.W #H'0001,R0
BNE ?00146:8
??BEGINBLOCK(877)
??CLINE 878
MOV.W #H'000A,R0
MOV.W R0,@(-2,ER6)
??CLINE 879
JMP @_change_cmd2no_end
??ENDBLOCK(880)
?00146:
??CLINE 881
MOV.W @(-4,ER6),R0
PUSH.W R0
MOV.L #_str00010,ER1
PUSH.L ER1
MOV.L #_g_RsRecv_Bf+2,ER2
PUSH.L ER2
JSR @_strcopm
ADD.L #H'0000000A,ER7
MOV.W R0,@(-2,ER6)
??CLINE 882
CMP.W #H'0001,R0
BNE ?00147:8
??BEGINBLOCK(882)
??CLINE 883
MOV.W #H'000B,R0
MOV.W R0,@(-2,ER6)
??CLINE 884
JMP @_change_cmd2no_end
??ENDBLOCK(885)
?00147:
??CLINE 886
MOV.W @(-4,ER6),R0
PUSH.W R0
MOV.L #_str00011,ER1
PUSH.L ER1
MOV.L #_g_RsRecv_Bf+2,ER2
PUSH.L ER2
JSR @_strcopm
ADD.L #H'0000000A,ER7
MOV.W R0,@(-2,ER6)
??CLINE 887
CMP.W #H'0001,R0
BNE ?00148:8
??BEGINBLOCK(887)
??CLINE 888
MOV.W #H'000C,R0
MOV.W R0,@(-2,ER6)
??CLINE 889
JMP @_change_cmd2no_end
??ENDBLOCK(890)
?00148:
??CLINE 891
MOV.W @(-4,ER6),R0
PUSH.W R0
MOV.L #_str00012,ER1
PUSH.L ER1
MOV.L #_g_RsRecv_Bf+2,ER2
PUSH.L ER2
JSR @_strcopm
ADD.L #H'0000000A,ER7
MOV.W R0,@(-2,ER6)
??CLINE 892
CMP.W #H'0001,R0
BNE ?00149:8
??BEGINBLOCK(892)
??CLINE 893
MOV.W #H'000D,R0
MOV.W R0,@(-2,ER6)
??CLINE 894
JMP @_change_cmd2no_end
??ENDBLOCK(895)
?00149:
??CLINE 896
MOV.W @(-4,ER6),R0
PUSH.W R0
MOV.L #_str00013,ER1
PUSH.L ER1
MOV.L #_g_RsRecv_Bf+2,ER2
PUSH.L ER2
JSR @_strcopm
ADD.L #H'0000000A,ER7
MOV.W R0,@(-2,ER6)
??CLINE 897
CMP.W #H'0001,R0
BNE ?00150:8
??BEGINBLOCK(897)
??CLINE 898
MOV.W #H'000E,R0
MOV.W R0,@(-2,ER6)
??CLINE 899
JMP @_change_cmd2no_end
??ENDBLOCK(900)
?00150:
??CLINE 901
MOV.W @(-4,ER6),R0
PUSH.W R0
MOV.L #_str00014,ER1
PUSH.L ER1
MOV.L #_g_RsRecv_Bf+2,ER2
PUSH.L ER2
JSR @_strcopm
ADD.L #H'0000000A,ER7
MOV.W R0,@(-2,ER6)
??CLINE 902
CMP.W #H'0001,R0
BNE ?00151:8
??BEGINBLOCK(902)
??CLINE 903
MOV.W #H'000F,R0
MOV.W R0,@(-2,ER6)
??CLINE 904
BRA _change_cmd2no_end:8
??ENDBLOCK(905)
?00151:
??CLINE 906
MOV.W @(-4,ER6),R0
PUSH.W R0
MOV.L #_str00015,ER1
PUSH.L ER1
MOV.L #_g_RsRecv_Bf+2,ER2
PUSH.L ER2
JSR @_strcopm
ADD.L #H'0000000A,ER7
MOV.W R0,@(-2,ER6)
??CLINE 907
CMP.W #H'0001,R0
BNE ?00152:8
??BEGINBLOCK(907)
??CLINE 908
MOV.W #H'0010,R0
MOV.W R0,@(-2,ER6)
??CLINE 909
BRA _change_cmd2no_end:8
??ENDBLOCK(910)
?00152:
??CLINE 912
MOV.W @(-2,ER6),R0
??ENDBLOCK(913)
??CLINE 913
_change_cmd2no_end:
MOV.L ER6,ER7
POP.L ER6
RTS
segment TEXT ATR_CODE
public _strcopm
_strcopm:
PUSH.L ER6
MOV.L ER7,ER6
SUB.L #8,ER7
??FUNCDEF(???strcopm) ??USHORT
??VAR ??POINTER ??UCHAR ??SYMBOL(???str1) ??OFFSET(8)
??VAR ??POINTER ??UCHAR ??SYMBOL(???str2) ??OFFSET(12)
??VAR ??USHORT ??SYMBOL(???size) ??OFFSET(16)
??FUNCEND
??BEGINBLOCK(917)
??VAR ??USHORT ??SYMBOL(???i) ??OFFSET(-2)
??VAR ??USHORT ??SYMBOL(???ret) ??OFFSET(-4)
??VAR ??USHORT ??SYMBOL(???slen) ??OFFSET(-6)
??VAR ??UCHAR ??SYMBOL(???ch1) ??OFFSET(-7)
??VAR ??UCHAR ??SYMBOL(???ch2) ??OFFSET(-8)
??CLINE 922
MOV.W @(+16,ER6),R0
CMP.W #H'0002,R0
BCC ?00153:8
??BEGINBLOCK(922)
??CLINE 923
XOR.W R0,R0
MOV.W R0,@(-4,ER6)
??CLINE 924
BRA _strcopm_end:8
??ENDBLOCK(925)
?00153:
??CLINE 927
MOV.W #H'0001,R0
MOV.W R0,@(-4,ER6)
??CLINE 929
MOV.W @(+16,ER6),R1
MOV.W R1,@(-6,ER6)
??CLINE 930
XOR.W R2,R2
MOV.W R2,@(-2,ER6)
BRA ?00155:8
?00154:
MOV.W @(-2,ER6),R0
INC.W #H'0001,R0
MOV.W R0,@(-2,ER6)
?00155:
MOV.W @(-2,ER6),R0
MOV.W @(-6,ER6),R1
CMP.W R1,R0
BCC ?00156:8
??BEGINBLOCK(931)
??CLINE 932
MOV.W @(-2,ER6),R0
EXTU.L ER0
MOV.L @(+8,ER6),ER1
ADD.L ER0,ER1
MOV.B @ER1,R1L
MOV.B R1L,@(-7,ER6)
??CLINE 933
MOV.L @(+12,ER6),ER2
ADD.L ER0,ER2
MOV.B @ER2,R0L
MOV.B R0L,@(-8,ER6)
??CLINE 934
MOV.B R0L,R2L
EXTU.W R2
MOV.B R1L,R3L
EXTU.W R3
CMP.W R2,R3
BEQ ?00157:8
??BEGINBLOCK(934)
??CLINE 935
XOR.W R0,R0
MOV.W R0,@(-4,ER6)
??CLINE 936
BRA ?00156:8
??ENDBLOCK(937)
?00157:
??ENDBLOCK(938)
BRA ?00154:8
?00156:
??CLINE 939
MOV.W @(-4,ER6),R0
??ENDBLOCK(940)
??CLINE 940
_strcopm_end:
MOV.L ER6,ER7
POP.L ER6
RTS
segment TEXT ATR_CODE
public _bitohex
_bitohex:
PUSH.L ER6
MOV.L ER7,ER6
SUB.L #12,ER7
??FUNCDEF(???bitohex) ??VOID
??VAR ??USHORT ??SYMBOL(???data) ??OFFSET(8)
??VAR ??POINTER ??SCHAR ??SYMBOL(???bi_data) ??OFFSET(10)
??FUNCEND
??BEGINBLOCK(945)
??VAR ??USHORT ??SYMBOL(???i) ??OFFSET(-2)
??VAR ??USHORT ??SYMBOL(???j) ??OFFSET(-4)
??VAR ??USHORT ??SYMBOL(???k) ??OFFSET(-6)
??VAR ??SCHAR ??SYMBOL(???ich) ??OFFSET(-7)
??VAR ??POINTER ??SCHAR ??SYMBOL(???ipt) ??OFFSET(-12)
??CLINE 949
MOV.L @(+10,ER6),ER0
MOV.L ER0,@(-12,ER6)
??CLINE 950
XOR.W R1,R1
MOV.W R1,@(-4,ER6)
??CLINE 951
MOV.W #H'F000,R2
MOV.W R2,@(-6,ER6)
??CLINE 952
MOV.W R1,@(-2,ER6)
BRA ?00159:8
?00158:
MOV.W @(-2,ER6),R0
INC.W #H'0001,R0
MOV.W R0,@(-2,ER6)
?00159:
MOV.W @(-2,ER6),R0
CMP.W #H'0002,R0
BCC ?00160
??BEGINBLOCK(952)
??CLINE 953
MOV.W #H'0001,R0
MOV.W @(-2,ER6),R1
SUB.W R1,R0
OR.W R0,R0
BEQ ?00161:8
??BEGINBLOCK(953)
??CLINE 954
MOV.W #H'0001,R0
MOV.W @(-2,ER6),R1
SUB.W R1,R0
SHLL.W #H'0002,R0
MOV.W @(+8,ER6),R2
PUSH.W R0
PUSH.W R2
JSR @__w_shift_ur
ADDS.L #H'00000002,ER7
POP.W R2
MOV.W R2,@(-4,ER6)
??ENDBLOCK(955)
BRA ?00162:8
?00161:
??BEGINBLOCK(956)
??CLINE 957
MOV.W @(+8,ER6),R0
MOV.W R0,@(-4,ER6)
??ENDBLOCK(958)
?00162:
??CLINE 959
MOV.W @(-4,ER6),R0
AND.W #H'000F,R0
MOV.W R0,@(-4,ER6)
??CLINE 960
MOV.W R0,R1
MOV.B R1L,@(-7,ER6)
??CLINE 961
MOV.B R1L,R2L
EXTS.W R2
CMP.W #H'0009,R2
BLE ?00163:8
??BEGINBLOCK(961)
??CLINE 962
MOV.B @(-7,ER6),R0L
ADD.B #H'37,R0L
MOV.B R0L,@(-7,ER6)
??ENDBLOCK(963)
BRA ?00164:8
?00163:
??BEGINBLOCK(964)
??CLINE 965
MOV.B @(-7,ER6),R0L
OR.B #H'30,R0L
MOV.B R0L,@(-7,ER6)
??ENDBLOCK(966)
?00164:
??CLINE 967
MOV.W @(-6,ER6),R0
SHLR.W #H'0002,R0
SHLR.W #H'0002,R0
MOV.W R0,@(-6,ER6)
??CLINE 969
MOV.L @(-12,ER6),ER1
MOV.B @(-7,ER6),R2L
MOV.B R2L,@ER1
??CLINE 970
MOV.L @(-12,ER6),ER0
INC.L #H'00000001,ER0
MOV.L ER0,@(-12,ER6)
??ENDBLOCK(971)
JMP @?00158
?00160:
??ENDBLOCK(972)
??CLINE 972
_bitohex_end:
MOV.L ER6,ER7
POP.L ER6
RTS
segment TEXT ATR_CODE
public _hextobi
_hextobi:
PUSH.L ER6
MOV.L ER7,ER6
SUB.L #10,ER7
??FUNCDEF(???hextobi) ??VOID
??VAR ??POINTER ??SCHAR ??SYMBOL(???data_adr) ??OFFSET(8)
??VAR ??SSHORT ??SYMBOL(???size) ??OFFSET(12)
??VAR ??POINTER ??SSHORT ??SYMBOL(???bi_data) ??OFFSET(14)
??FUNCEND
??BEGINBLOCK(974)
??VAR ??USHORT ??SYMBOL(???i) ??OFFSET(-2)
??VAR ??USHORT ??SYMBOL(???j) ??OFFSET(-4)
??VAR ??UCHAR ??SYMBOL(???ich) ??OFFSET(-5)
??VAR ??POINTER ??SCHAR ??SYMBOL(???ipt) ??OFFSET(-10)
??CLINE 978
MOV.L @(+8,ER6),ER0
MOV.L ER0,@(-10,ER6)
??CLINE 979
MOV.W @(+12,ER6),R1
CMP.W #H'0002,R1
BEQ ?00165:8
??BEGINBLOCK(979)
??CLINE 980
MOV.L @(+14,ER6),ER0
XOR.W R1,R1
MOV.W R1,@ER0
??CLINE 981
JMP @_hextobi_end
??ENDBLOCK(982)
?00165:
??CLINE 984
XOR.W R0,R0
MOV.W R0,@(-4,ER6)
??CLINE 985
MOV.L @(-10,ER6),ER1
MOV.B @ER1,R2L
MOV.B R2L,@(-5,ER6)
??CLINE 986
MOV.B R2L,R3L
EXTU.W R3
CMP.W #H'0030,R3
BLT ?00166:8
MOV.B @(-5,ER6),R0L
EXTU.W R0
CMP.W #H'0039,R0
BGT ?00166:8
??BEGINBLOCK(986)
??CLINE 987
MOV.B @(-5,ER6),R0L
EXTU.W R0
SUB.W #H'0030,R0
MOV.W R0,@(-2,ER6)
??ENDBLOCK(988)
BRA ?00167:8
?00166:
??BEGINBLOCK(989)
??CLINE 990
MOV.B @(-5,ER6),R0L
EXTU.W R0
SUB.W #H'0037,R0
MOV.W R0,@(-2,ER6)
??ENDBLOCK(991)
?00167:
??CLINE 992
MOV.W @(-2,ER6),R0
MOV.W #H'000A,R1
MULXU.W R1,ER0
MOV.W R0,@(-4,ER6)
??CLINE 994
MOV.L @(-10,ER6),ER2
ADDS.L #H'00000001,ER2
MOV.B @ER2,R2L
MOV.B R2L,@(-5,ER6)
??CLINE 995
MOV.B R2L,R3L
EXTU.W R3
CMP.W #H'0030,R3
BLT ?00168:8
MOV.B @(-5,ER6),R0L
EXTU.W R0
CMP.W #H'0039,R0
BGT ?00168:8
??BEGINBLOCK(995)
??CLINE 996
MOV.B @(-5,ER6),R0L
EXTU.W R0
SUB.W #H'0030,R0
MOV.W R0,@(-2,ER6)
??ENDBLOCK(997)
BRA ?00169:8
?00168:
??BEGINBLOCK(998)
??CLINE 999
MOV.B @(-5,ER6),R0L
EXTU.W R0
SUB.W #H'0037,R0
MOV.W R0,@(-2,ER6)
??ENDBLOCK(1000)
?00169:
??CLINE 1001
MOV.W @(-2,ER6),R0
MOV.W @(-4,ER6),R1
ADD.W R0,R1
MOV.W R1,@(-4,ER6)
??CLINE 1003
MOV.L @(+14,ER6),ER0
MOV.W R1,@ER0
??ENDBLOCK(1004)
??CLINE 1004
_hextobi_end:
MOV.L ER6,ER7
POP.L ER6
RTS
segment TEXT ATR_CODE
public _rs_returnOK
_rs_returnOK:
PUSH.L ER6
MOV.L ER7,ER6
SUBS #2,ER7
??FUNCDEF(???rs_returnOK) ??VOID
??FUNCEND
??BEGINBLOCK(1008)
??VAR ??SSHORT ??SYMBOL(???i) ??OFFSET(-2)
??CLINE 1010
XOR.W R0,R0
MOV.W R0,@(-2,ER6)
BRA ?00171:8
?00170:
MOV.W @(-2,ER6),R0
INC.W #H'0001,R0
MOV.W R0,@(-2,ER6)
?00171:
MOV.W @(-2,ER6),R0
CMP.W #H'0004,R0
BGE ?00172:8
??BEGINBLOCK(1011)
??CLINE 1012
MOV.W @(-2,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(1013)
BRA ?00170:8
?00172:
??CLINE 1014
MOV.B #H'4F,R0L
MOV.L #_g_RsSend_Bf+4,ER1
MOV.B R0L,@ER1
??CLINE 1015
MOV.B #H'4B,R2L
MOV.L #_g_RsSend_Bf+5,ER3
MOV.B R2L,@ER3
??CLINE 1016
MOV.B #H'0D,R4L
MOV.L #_g_RsSend_Bf+6,ER0
MOV.B R4L,@ER0
??CLINE 1017
MOV.W #H'0007,R0
MOV.W R0,@_g_RsSend_CT
??ENDBLOCK(1018)
??CLINE 1018
_rs_returnOK_end:
MOV.L ER6,ER7
POP.L ER6
RTS
segment TEXT ATR_CODE
public _rs_returnNG
_rs_returnNG:
PUSH.L ER6
MOV.L ER7,ER6
SUBS #2,ER7
??FUNCDEF(???rs_returnNG) ??VOID
??FUNCEND
??BEGINBLOCK(1021)
??VAR ??SSHORT ??SYMBOL(???i) ??OFFSET(-2)
??CLINE 1023
XOR.W R0,R0
MOV.W R0,@(-2,ER6)
BRA ?00174:8
?00173:
MOV.W @(-2,ER6),R0
INC.W #H'0001,R0
MOV.W R0,@(-2,ER6)
?00174:
MOV.W @(-2,ER6),R0
CMP.W #H'0004,R0
BGE ?00175:8
??BEGINBLOCK(1024)
??CLINE 1025
MOV.W @(-2,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(1026)
BRA ?00173:8
?00175:
??CLINE 1027
MOV.B #H'4E,R0L
MOV.L #_g_RsSend_Bf+4,ER1
MOV.B R0L,@ER1
??CLINE 1028
MOV.B #H'47,R2L
MOV.L #_g_RsSend_Bf+5,ER3
MOV.B R2L,@ER3
??CLINE 1029
MOV.B #H'0D,R4L
MOV.L #_g_RsSend_Bf+6,ER0
MOV.B R4L,@ER0
??CLINE 1030
MOV.W #H'0007,R0
MOV.W R0,@_g_RsSend_CT
??ENDBLOCK(1031)
??CLINE 1031
_rs_returnNG_end:
MOV.L ER6,ER7
POP.L ER6
RTS
segment TEXT ATR_CODE
public _check_driverAddr
_check_driverAddr:
PUSH.L ER6
MOV.L ER7,ER6
SUBS #4,ER7
??FUNCDEF(???check_driverAddr) ??SSHORT
??FUNCEND
??BEGINBLOCK(1035)
??VAR ??USHORT ??SYMBOL(???data) ??OFFSET(-2)
??VAR ??USHORT ??SYMBOL(???addr) ??OFFSET(-4)
??CLINE 1043
MOV.B @H'00FFFFBE:8,R0L
EXTU.W R0
AND.W #H'00FF,R0
MOV.W R0,@(-4,ER6)
??CLINE 1047
??ENDBLOCK(1048)
??CLINE 1048
_check_driverAddr_end:
MOV.L ER6,ER7
POP.L ER6
RTS
segment TEXT ATR_CODE
public _hextobi5
_hextobi5:
PUSH.L ER6
MOV.L ER7,ER6
SUB.L #10,ER7
??FUNCDEF(???hextobi5) ??VOID
??VAR ??POINTER ??SCHAR ??SYMBOL(???data_adr) ??OFFSET(8)
??VAR ??SSHORT ??SYMBOL(???size) ??OFFSET(12)
??VAR ??POINTER ??S
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -