📄 mifareprohost.src
字号:
INC DPTR
MOVX A,@DPTR
MOV R1,A
LCALL ?C?ILDPTR
ADD A,#0FCH
MOV R7,A
MOV A,B
ADDC A,#0FFH
MOV R6,A
MOV DPTR,#CmdBuf?754
MOVX A,@DPTR
MOV R3,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV R1,A
MOV DPL,R7
MOV DPH,R6
LCALL ?C?CLDOPTR
CJNE A,#090H,?C0031
MOV R7,#00H
RET
?C0031:
; else return (!MI_OK);
; SOURCE LINE # 99
MOV R7,#01H
;
; }
; SOURCE LINE # 101
?C0030:
RET
; END OF _MProCard153RdE2PROM
;
; char MProCard153VrfPswd(unsigned char *CmdBuf,unsigned int *len)
RSEG ?PR?_MProCard153VrfPswd?MIFAREPROHOST
_MProCard153VrfPswd:
USING 0
; SOURCE LINE # 103
MOV DPTR,#CmdBuf?856
MOV A,R3
MOVX @DPTR,A
INC DPTR
MOV A,R2
MOVX @DPTR,A
INC DPTR
MOV A,R1
MOVX @DPTR,A
; {
; SOURCE LINE # 104
; if((MProCommand(CmdBuf,9,CmdBuf,len,1,FWI))!= MI_OK) return (!MI_OK);
; SOURCE LINE # 105
MOV DPTR,#CmdBuf?856
MOVX A,@DPTR
MOV R1,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV DPTR,#?_MProCommand?BYTE+05H
XCH A,R1
MOVX @DPTR,A
INC DPTR
MOV A,R2
MOVX @DPTR,A
INC DPTR
MOV A,R1
MOVX @DPTR,A
MOV DPTR,#len?857
MOVX A,@DPTR
MOV R1,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV DPTR,#?_MProCommand?BYTE+08H
XCH A,R1
MOVX @DPTR,A
INC DPTR
MOV A,R2
MOVX @DPTR,A
INC DPTR
MOV A,R1
MOVX @DPTR,A
INC DPTR
MOV A,#01H
MOVX @DPTR,A
MOV DPTR,#FWI
MOVX A,@DPTR
MOV R7,A
MOV DPTR,#?_MProCommand?BYTE+0CH
CLR A
MOVX @DPTR,A
INC DPTR
MOV A,R7
MOVX @DPTR,A
MOV DPTR,#CmdBuf?856
MOVX A,@DPTR
MOV R3,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV R1,A
MOV R5,#09H
MOV R4,#00H
LCALL _MProCommand
MOV A,R7
JZ ?C0033
MOV R7,#01H
RET
?C0033:
; if(CmdBuf[*len-4] == 0x90) return (MI_OK);
; SOURCE LINE # 106
MOV DPTR,#len?857
MOVX A,@DPTR
MOV R3,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV R1,A
LCALL ?C?ILDPTR
ADD A,#0FCH
MOV R7,A
MOV A,B
ADDC A,#0FFH
MOV R6,A
MOV DPTR,#CmdBuf?856
MOVX A,@DPTR
MOV R3,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV R1,A
MOV DPL,R7
MOV DPH,R6
LCALL ?C?CLDOPTR
CJNE A,#090H,?C0035
MOV R7,#00H
RET
?C0035:
; else return (!MI_OK);
; SOURCE LINE # 107
MOV R7,#01H
;
; }
; SOURCE LINE # 109
?C0034:
RET
; END OF _MProCard153VrfPswd
;
; char MProCard153InitAuth(unsigned char*CmdBuf,unsigned int *len)
RSEG ?PR?_MProCard153InitAuth?MIFAREPROHOST
_MProCard153InitAuth:
USING 0
; SOURCE LINE # 111
MOV DPTR,#CmdBuf?958
MOV A,R3
MOVX @DPTR,A
INC DPTR
MOV A,R2
MOVX @DPTR,A
INC DPTR
MOV A,R1
MOVX @DPTR,A
; {
; SOURCE LINE # 112
; if((MProCommand(CmdBuf,9,CmdBuf,len,1,FWI))!= MI_OK) return (!MI_OK);
; SOURCE LINE # 113
MOV DPTR,#CmdBuf?958
MOVX A,@DPTR
MOV R1,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV DPTR,#?_MProCommand?BYTE+05H
XCH A,R1
MOVX @DPTR,A
INC DPTR
MOV A,R2
MOVX @DPTR,A
INC DPTR
MOV A,R1
MOVX @DPTR,A
MOV DPTR,#len?959
MOVX A,@DPTR
MOV R1,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV DPTR,#?_MProCommand?BYTE+08H
XCH A,R1
MOVX @DPTR,A
INC DPTR
MOV A,R2
MOVX @DPTR,A
INC DPTR
MOV A,R1
MOVX @DPTR,A
INC DPTR
MOV A,#01H
MOVX @DPTR,A
MOV DPTR,#FWI
MOVX A,@DPTR
MOV R7,A
MOV DPTR,#?_MProCommand?BYTE+0CH
CLR A
MOVX @DPTR,A
INC DPTR
MOV A,R7
MOVX @DPTR,A
MOV DPTR,#CmdBuf?958
MOVX A,@DPTR
MOV R3,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV R1,A
MOV R5,#09H
MOV R4,#00H
LCALL _MProCommand
MOV A,R7
JZ ?C0037
MOV R7,#01H
RET
?C0037:
; if(CmdBuf[*len-4] == 0x90) return (MI_OK);
; SOURCE LINE # 114
MOV DPTR,#len?959
MOVX A,@DPTR
MOV R3,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV R1,A
LCALL ?C?ILDPTR
ADD A,#0FCH
MOV R7,A
MOV A,B
ADDC A,#0FFH
MOV R6,A
MOV DPTR,#CmdBuf?958
MOVX A,@DPTR
MOV R3,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV R1,A
MOV DPL,R7
MOV DPH,R6
LCALL ?C?CLDOPTR
CJNE A,#090H,?C0039
MOV R7,#00H
RET
?C0039:
; else return (!MI_OK);
; SOURCE LINE # 115
MOV R7,#01H
;
; }
; SOURCE LINE # 117
?C0038:
RET
; END OF _MProCard153InitAuth
;
; char MProCard153VrfAuth(unsigned char *CmdBuf,unsigned int *len)
RSEG ?PR?_MProCard153VrfAuth?MIFAREPROHOST
_MProCard153VrfAuth:
USING 0
; SOURCE LINE # 119
MOV DPTR,#CmdBuf?1060
MOV A,R3
MOVX @DPTR,A
INC DPTR
MOV A,R2
MOVX @DPTR,A
INC DPTR
MOV A,R1
MOVX @DPTR,A
; {
; SOURCE LINE # 120
; if((MProCommand(CmdBuf,9,CmdBuf,len,1,FWI))!= MI_OK) return (!MI_OK);
; SOURCE LINE # 121
MOV DPTR,#CmdBuf?1060
MOVX A,@DPTR
MOV R1,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV DPTR,#?_MProCommand?BYTE+05H
XCH A,R1
MOVX @DPTR,A
INC DPTR
MOV A,R2
MOVX @DPTR,A
INC DPTR
MOV A,R1
MOVX @DPTR,A
MOV DPTR,#len?1061
MOVX A,@DPTR
MOV R1,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV DPTR,#?_MProCommand?BYTE+08H
XCH A,R1
MOVX @DPTR,A
INC DPTR
MOV A,R2
MOVX @DPTR,A
INC DPTR
MOV A,R1
MOVX @DPTR,A
INC DPTR
MOV A,#01H
MOVX @DPTR,A
MOV DPTR,#FWI
MOVX A,@DPTR
MOV R7,A
MOV DPTR,#?_MProCommand?BYTE+0CH
CLR A
MOVX @DPTR,A
INC DPTR
MOV A,R7
MOVX @DPTR,A
MOV DPTR,#CmdBuf?1060
MOVX A,@DPTR
MOV R3,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV R1,A
MOV R5,#09H
MOV R4,#00H
LCALL _MProCommand
MOV A,R7
JZ ?C0041
MOV R7,#01H
RET
?C0041:
; if(CmdBuf[*len-4] == 0x90) return (MI_OK);
; SOURCE LINE # 122
MOV DPTR,#len?1061
MOVX A,@DPTR
MOV R3,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV R1,A
LCALL ?C?ILDPTR
ADD A,#0FCH
MOV R7,A
MOV A,B
ADDC A,#0FFH
MOV R6,A
MOV DPTR,#CmdBuf?1060
MOVX A,@DPTR
MOV R3,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV R1,A
MOV DPL,R7
MOV DPH,R6
LCALL ?C?CLDOPTR
CJNE A,#090H,?C0043
MOV R7,#00H
RET
?C0043:
; else return (!MI_OK);
; SOURCE LINE # 123
MOV R7,#01H
;
; }
; SOURCE LINE # 125
?C0042:
RET
; END OF _MProCard153VrfAuth
;
; char MProCard153WrFuse(unsigned char *CmdBuf,unsigned int *len)
RSEG ?PR?_MProCard153WrFuse?MIFAREPROHOST
_MProCard153WrFuse:
USING 0
; SOURCE LINE # 127
MOV DPTR,#CmdBuf?1162
MOV A,R3
MOVX @DPTR,A
INC DPTR
MOV A,R2
MOVX @DPTR,A
INC DPTR
MOV A,R1
MOVX @DPTR,A
; {
; SOURCE LINE # 128
; if((MProCommand(CmdBuf,9,CmdBuf,len,1,FWI))!= MI_OK) return (!MI_OK);
; SOURCE LINE # 129
MOV DPTR,#CmdBuf?1162
MOVX A,@DPTR
MOV R1,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV DPTR,#?_MProCommand?BYTE+05H
XCH A,R1
MOVX @DPTR,A
INC DPTR
MOV A,R2
MOVX @DPTR,A
INC DPTR
MOV A,R1
MOVX @DPTR,A
MOV DPTR,#len?1163
MOVX A,@DPTR
MOV R1,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV DPTR,#?_MProCommand?BYTE+08H
XCH A,R1
MOVX @DPTR,A
INC DPTR
MOV A,R2
MOVX @DPTR,A
INC DPTR
MOV A,R1
MOVX @DPTR,A
INC DPTR
MOV A,#01H
MOVX @DPTR,A
MOV DPTR,#FWI
MOVX A,@DPTR
MOV R7,A
MOV DPTR,#?_MProCommand?BYTE+0CH
CLR A
MOVX @DPTR,A
INC DPTR
MOV A,R7
MOVX @DPTR,A
MOV DPTR,#CmdBuf?1162
MOVX A,@DPTR
MOV R3,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV R1,A
MOV R5,#09H
MOV R4,#00H
LCALL _MProCommand
MOV A,R7
JZ ?C0045
MOV R7,#01H
RET
?C0045:
; if(CmdBuf[*len-4] == 0x90) return (MI_OK);
; SOURCE LINE # 130
MOV DPTR,#len?1163
MOVX A,@DPTR
MOV R3,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV R1,A
LCALL ?C?ILDPTR
ADD A,#0FCH
MOV R7,A
MOV A,B
ADDC A,#0FFH
MOV R6,A
MOV DPTR,#CmdBuf?1162
MOVX A,@DPTR
MOV R3,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV R1,A
MOV DPL,R7
MOV DPH,R6
LCALL ?C?CLDOPTR
CJNE A,#090H,?C0047
MOV R7,#00H
RET
?C0047:
; else return (!MI_OK);
; SOURCE LINE # 131
MOV R7,#01H
;
; }
; SOURCE LINE # 133
?C0046:
RET
; END OF _MProCard153WrFuse
;
; char MProCard153RdFuse(unsigned char*CmdBuf,unsigned int *len)
RSEG ?PR?_MProCard153RdFuse?MIFAREPROHOST
_MProCard153RdFuse:
USING 0
; SOURCE LINE # 135
MOV DPTR,#CmdBuf?1264
MOV A,R3
MOVX @DPTR,A
INC DPTR
MOV A,R2
MOVX @DPTR,A
INC DPTR
MOV A,R1
MOVX @DPTR,A
; {
; SOURCE LINE # 136
; if((MProCommand(CmdBuf,9,CmdBuf,len,1,FWI))!= MI_OK) return (!MI_OK);
; SOURCE LINE # 137
MOV DPTR,#CmdBuf?1264
MOVX A,@DPTR
MOV R1,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV DPTR,#?_MProCommand?BYTE+05H
XCH A,R1
MOVX @DPTR,A
INC DPTR
MOV A,R2
MOVX @DPTR,A
INC DPTR
MOV A,R1
MOVX @DPTR,A
MOV DPTR,#len?1265
MOVX A,@DPTR
MOV R1,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV DPTR,#?_MProCommand?BYTE+08H
XCH A,R1
MOVX @DPTR,A
INC DPTR
MOV A,R2
MOVX @DPTR,A
INC DPTR
MOV A,R1
MOVX @DPTR,A
INC DPTR
MOV A,#01H
MOVX @DPTR,A
MOV DPTR,#FWI
MOVX A,@DPTR
MOV R7,A
MOV DPTR,#?_MProCommand?BYTE+0CH
CLR A
MOVX @DPTR,A
INC DPTR
MOV A,R7
MOVX @DPTR,A
MOV DPTR,#CmdBuf?1264
MOVX A,@DPTR
MOV R3,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV R1,A
MOV R5,#09H
MOV R4,#00H
LCALL _MProCommand
MOV A,R7
JZ ?C0049
MOV R7,#01H
RET
?C0049:
; if(CmdBuf[*len-4] == 0x90) return (MI_OK);
; SOURCE LINE # 138
MOV DPTR,#len?1265
MOVX A,@DPTR
MOV R3,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV R1,A
LCALL ?C?ILDPTR
ADD A,#0FCH
MOV R7,A
MOV A,B
ADDC A,#0FFH
MOV R6,A
MOV DPTR,#CmdBuf?1264
MOVX A,@DPTR
MOV R3,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV R1,A
MOV DPL,R7
MOV DPH,R6
LCALL ?C?CLDOPTR
CJNE A,#090H,?C0051
MOV R7,#00H
RET
?C0051:
; else return (!MI_OK);
; SOURCE LINE # 139
MOV R7,#01H
;
; }
; SOURCE LINE # 141
?C0050:
RET
; END OF _MProCard153RdFuse
;
;
; //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
;
; //这里必须特别注意!
;
;
; char MProCardSleRdMmem(unsigned char *CmdBuf,unsigned int *len)
RSEG ?PR?_MProCardSleRdMmem?MIFAREPROHOST
_MProCardSleRdMmem:
USING 0
; SOURCE LINE # 149
MOV DPTR,#CmdBuf?1366
MOV A,R3
MOVX @DPTR,A
INC DPTR
MOV A,R2
MOVX @DPTR,A
INC DPTR
MOV A,R1
MOVX @DPTR,A
; {
; SOURCE LINE # 150
; if((MProCommand(CmdBuf,9,CmdBuf,len,1,FWI))!= MI_OK) return (!MI_OK);
; SOURCE LINE # 151
MOV DPTR,#CmdBuf?1366
MOVX A,@DPTR
MOV R1,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV DPTR,#?_MProCommand?BYTE+05H
XCH A,R1
MOVX @DPTR,A
INC DPTR
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -