📄 mifareprohost.src
字号:
MOV A,R2
MOVX @DPTR,A
INC DPTR
MOV A,R1
MOVX @DPTR,A
MOV DPTR,#len?1367
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?1366
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 ?C0053
MOV R7,#01H
RET
?C0053:
; if(CmdBuf[*len-4] == 0x90) return (MI_OK);
; SOURCE LINE # 152
MOV DPTR,#len?1367
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?1366
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,?C0055
MOV R7,#00H
RET
?C0055:
; else return (!MI_OK);
; SOURCE LINE # 153
MOV R7,#01H
;
; }
; SOURCE LINE # 155
?C0054:
RET
; END OF _MProCardSleRdMmem
;
; char MProCardSleUpdMmem(unsigned char *CmdBuf,unsigned int *len)
RSEG ?PR?_MProCardSleUpdMmem?MIFAREPROHOST
_MProCardSleUpdMmem:
USING 0
; SOURCE LINE # 157
MOV DPTR,#CmdBuf?1468
MOV A,R3
MOVX @DPTR,A
INC DPTR
MOV A,R2
MOVX @DPTR,A
INC DPTR
MOV A,R1
MOVX @DPTR,A
; {
; SOURCE LINE # 158
; if((MProCommand(CmdBuf,9,CmdBuf,len,1,FWI))!= MI_OK) return (!MI_OK);
; SOURCE LINE # 159
MOV DPTR,#CmdBuf?1468
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?1469
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?1468
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 ?C0057
MOV R7,#01H
RET
?C0057:
; if(CmdBuf[*len-4] == 0x90) return (MI_OK);
; SOURCE LINE # 160
MOV DPTR,#len?1469
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?1468
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,?C0059
MOV R7,#00H
RET
?C0059:
; else return (!MI_OK);
; SOURCE LINE # 161
MOV R7,#01H
;
; }
; SOURCE LINE # 163
?C0058:
RET
; END OF _MProCardSleUpdMmem
; /**
; char MProCardSleRdPmem(unsigned *CmdBuf,unsigned int *len)
; {
; if((MProCommand(CmdBuf,9,CmdBuf,len,1,FWI))!= MI_OK) return (!MI_OK);
; if(cmdBuf[*len-4] == 0x90) return (MI_OK);
; else return (!MI_OK);
;
; }
;
;
;
; char MProCardSleUpdPmem(unsigned *CmdBuf,unsigned int *len)
; {
; if((MProCommand(CmdBuf,9,CmdBuf,len,1,FWI))!= MI_OK) return (!MI_OK);
; if(cmdBuf[*len-4] == 0x90) return (MI_OK);
; else return (!MI_OK);
;
; }
;
;
; char MProCardSleRdPmem(unsigned *CmdBuf,unsigned int *len)
; {
; if((MProCommand(CmdBuf,9,CmdBuf,len,1,FWI))!= MI_OK) return (!MI_OK);
; if(cmdBuf[*len-4] == 0x90) return (MI_OK);
; else return (!MI_OK);
;
; }
;
; char MProCardSleUpdPmem(unsigned *CmdBuf,unsigned int *len)
; {
; if((MProCommand(CmdBuf,9,CmdBuf,len,1,FWI))!= MI_OK) return (!MI_OK);
; if(cmdBuf[*len-4] == 0x90) return (MI_OK);
; else return (!MI_OK);
;
; }**/
;
;
;
; //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
;
;
;
;
; char MProCardSLeVerify(unsigned char *CmdBuf,unsigned int *len)
RSEG ?PR?_MProCardSLeVerify?MIFAREPROHOST
_MProCardSLeVerify:
USING 0
; SOURCE LINE # 207
MOV DPTR,#CmdBuf?1570
MOV A,R3
MOVX @DPTR,A
INC DPTR
MOV A,R2
MOVX @DPTR,A
INC DPTR
MOV A,R1
MOVX @DPTR,A
; {
; SOURCE LINE # 208
; if((MProCommand(CmdBuf,9,CmdBuf,len,1,FWI))!= MI_OK) return (!MI_OK);
; SOURCE LINE # 209
MOV DPTR,#CmdBuf?1570
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?1571
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?1570
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 ?C0061
MOV R7,#01H
RET
?C0061:
; if(CmdBuf[*len-4] == 0x90) return (MI_OK);
; SOURCE LINE # 210
MOV DPTR,#len?1571
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?1570
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,?C0063
MOV R7,#00H
RET
?C0063:
; else return (!MI_OK);
; SOURCE LINE # 211
MOV R7,#01H
;
; }
; SOURCE LINE # 213
?C0062:
RET
; END OF _MProCardSLeVerify
;
;
;
;
; //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
;
;
;
;
; char EvalOS_GetRomInfo(unsigned char *CmdBuf, unsigned int *len)
RSEG ?PR?_EvalOS_GetRomInfo?MIFAREPROHOST
_EvalOS_GetRomInfo:
USING 0
; SOURCE LINE # 223
MOV DPTR,#CmdBuf?1672
MOV A,R3
MOVX @DPTR,A
INC DPTR
MOV A,R2
MOVX @DPTR,A
INC DPTR
MOV A,R1
MOVX @DPTR,A
; {
; SOURCE LINE # 224
;
;
; /* CmdBuf[0]=0x0A|GBLK;// I-block PCB with CID
; GBLK ^= 1; // Toggle block number
; CmdBuf[1]=CID; // CID
; CmdBuf[2]=0xb8; // INF:CLA
; CmdBuf[3]=0x00; // INF:INS
; CmdBuf[4]=0x03; // INF:P1
; CmdBuf[5]=0x00; // INF:P2
; CmdBuf[6]=0x00; // INF:Le */
;
; if((MProCommand(CmdBuf,9,CmdBuf,len,1,FWI))!=MI_OK) return(!MI_OK);
; SOURCE LINE # 236
MOV DPTR,#CmdBuf?1672
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?1673
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?1672
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 ?C0065
MOV R7,#01H
RET
?C0065:
; if(CmdBuf[*len-4]==0x90) return(MI_OK);
; SOURCE LINE # 237
MOV DPTR,#len?1673
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?1672
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,?C0067
MOV R7,#00H
RET
?C0067:
; else return(!MI_OK);
; SOURCE LINE # 238
MOV R7,#01H
; }
; SOURCE LINE # 239
?C0066:
RET
; END OF _EvalOS_GetRomInfo
;
; char EvalOS_GetUID(unsigned char *CmdBuf, unsigned int *len)
RSEG ?PR?_EvalOS_GetUID?MIFAREPROHOST
_EvalOS_GetUID:
USING 0
; SOURCE LINE # 241
MOV DPTR,#CmdBuf?1774
MOV A,R3
MOVX @DPTR,A
INC DPTR
MOV A,R2
MOVX @DPTR,A
INC DPTR
MOV A,R1
MOVX @DPTR,A
; {
; SOURCE LINE # 242
;
;
; /* CmdBuf[0]=0x0A|GBLK;// I-block PCB with CID
; GGBLK ^= 1; // Toggle block number
; CmdBuf[1]=CID; // CID
; CmdBuf[2]=0xb8; // INF:CLA
; CmdBuf[3]=0x00; // INF:INS
; CmdBuf[4]=0x01; // INF:P1
; CmdBuf[5]=0x00; // INF:P2
; CmdBuf[6]=0x00; // INF:Le */
;
; if(MProCommand(CmdBuf,9,CmdBuf,len,1,FWI)!=MI_OK) return(!MI_OK);
; SOURCE LINE # 254
MOV DPTR,#CmdBuf?1774
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?1775
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?1774
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 ?C0069
MOV R7,#01H
RET
?C0069:
; if(CmdBuf[*len-4]==0x90) return(MI_OK);
; SOURCE LINE # 255
MOV DPTR,#len?1775
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?1774
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,?C0071
MOV R7,#00H
RET
?C0071:
; else return(!MI_OK);
; SOURCE LINE # 256
MOV R7,#01H
; }
; SOURCE LINE # 257
?C0070:
RET
; END OF _EvalOS_GetUID
;
; char EvalOS_GetChipInfo(unsigned char *CmdBuf, unsigned int *len)
RSEG ?PR?_EvalOS_GetChipInfo?MIFAREPROHOST
_EvalOS_GetChipInfo:
USING 0
; SOURCE LINE # 259
MOV DPTR,#CmdBuf?1876
MOV A,R3
MOVX @DPTR,A
INC DPTR
MOV A,R2
MOVX @DPTR,A
INC DPTR
MOV A,R1
MOVX @DPTR,A
; {
; SOURCE LINE # 260
;
; /* CmdBuf[0]=0x0A|GBLK;// I-block PCB with CID
; GBLK ^= 1; // Toggle block number
; CmdBuf[1]=CID; // CID
; CmdBuf[2]=0xb8; // INF:CLA
; CmdBuf[3]=0x00; // INF:INS
; CmdBuf[4]=0x02; // INF:P1
; CmdBuf[5]=0x00; // INF:P2
; CmdBuf[6]=0x00; // INF:Le */
;
; if(MProCommand(CmdBuf,9,CmdBuf,len,1,FWI)!=MI_OK) return(!MI_OK);
; SOURCE LINE # 271
MOV DPTR,#CmdBuf?1876
MOVX A,@DPTR
MOV R1,A
INC DPTR
MOVX A,@DPTR
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -