📄 fm1702.lst
字号:
00E0 200C05 531 jb FLAG_CARDSN,sp0_2
00E3 1206CA 532 lcall SendCardSN
00E6 800E 533 sjmp sp_1
00E8 C20C 534 sp0_2: clr FLAG_CARDSN
00EA C210 535 clr FLAG_IDLE
00EC C212 536 clr FLAG_CSTART
00EE A20B 537 mov c,FLAG_HAVECARD
00F0 9211 538 mov FLAG_CARD,c
00F2 8002 539 sjmp sp_1
540
00F4 D212 541 sp0_3: setb FLAG_CSTART
542
00F6 543 sp_1:
544
00F6 22 545 ret
546
00F7 547 LEDOn:
00F7 C2A0 548 clr LED
00F9 C206 549 clr LED_BIT
00FB 22 550 ret
551
00FC 552 LEDOff:
00FC D2A0 553 setb LED
00FE D206 554 setb LED_BIT
0100 22 555 ret
556
0101 557 ResetWDT:
0101 C2A6 558 clr RESET_WDT
0103 00 559 nop
A51 MACRO ASSEMBLER FM1702 10/31/2007 17:04:16 PAGE 12
0104 00 560 nop
0105 00 561 nop
0106 00 562 nop
0107 D2A6 563 setb RESET_WDT
0109 22 564 ret
565
010A 566 CheckCard:
010A 7426 567 mov a,#PICC_REQIDL
010C 7825 568 mov r0,#ATQ_BUF
010E 120EE1 569 lcall Mf500PiccCommonRequest
0111 B40014 570 cjne a,#MI_OK,cc_ex
571
0114 7493 572 mov a,#PICC_ANTICOLL1
0116 75F000 573 mov b,#0
0119 7834 574 mov r0,#SNR_BUF
011B 120F47 575 lcall Mf500PiccCascAnticoll
011E B40007 576 cjne a,#MI_OK,cc_ex
577
0121 7493 578 mov a,#PICC_ANTICOLL1
0123 7834 579 mov r0,#SNR_BUF
0125 1210BE 580 lcall Mf500PiccCascSelect
0128 22 581 cc_ex: ret
582
583
0129 584 CMDExecute:
0129 200901 585 jb FLAG_RCV,scc_00
012C 22 586 ret
012D C209 587 scc_00: clr FLAG_RCV
012F E540 588 mov a,RCV_LEN
0131 6019 589 jz scc_ex
590
0133 1207CF 591 lcall SRDecode
0136 7870 592 mov r0,#RCV_BUF
0138 1540 593 dec RCV_LEN
013A AF40 594 mov r7,RCV_LEN
013C 120846 595 lcall GetChecksum
013F F5F0 596 mov b,a
0141 7470 597 mov a,#RCV_BUF
0143 2540 598 add a,RCV_LEN
0145 F8 599 mov r0,a
0146 E6 600 mov a,@r0
0147 B5F002 601 cjne a,b,scc_ex
014A 8007 602 sjmp scc_0
014C 603 scc_ex:
014C 754200 604 mov SR_MODE,#SR_IDLE
014F 754000 605 mov RCV_LEN,#0
0152 22 606 ret
607
0153 608 scc_0:
0153 7870 609 mov r0,#RCV_BUF
0155 E6 610 mov a,@r0
0156 08 611 inc r0
0157 B4010E 612 cjne a,#CMD_IDLE,scc_1
015A E540 613 mov a,RCV_LEN
015C B401ED 614 cjne a,#RNUM_CMD_IDLE,scc_ex
015F D210 615 setb FLAG_IDLE
0161 754200 616 mov SR_MODE,#SR_IDLE
0164 754000 617 mov RCV_LEN,#0
0167 22 618 ret
619
0168 B4020E 620 scc_1: cjne a,#CMD_CARDSN,scc_2
016B E540 621 mov a,RCV_LEN
016D B401DC 622 cjne a,#RNUM_CMD_CARDSN,scc_ex
0170 D20C 623 setb FLAG_CARDSN
A51 MACRO ASSEMBLER FM1702 10/31/2007 17:04:16 PAGE 13
0172 754200 624 mov SR_MODE,#SR_IDLE
0175 754000 625 mov RCV_LEN,#0
0178 22 626 ret
627
0179 B4031A 628 scc_2: cjne a,#CMD_KEY,scc_3
017C E540 629 mov a,RCV_LEN
017E B4070B 630 cjne a,#RNUM_CMD_KEY,scc2_ex
631 ; mov r0,#SR_BUF+1
0181 79B0 632 mov r1,#KEYS_BUF
0183 121144 633 lcall Mf500HostCodeKey
0186 754200 634 mov SR_MODE,#SR_IDLE
0189 120683 635 lcall SendKeysOK
636
018C 637 scc2_ex:
018C 754200 638 mov SR_MODE,#SR_IDLE
018F 754000 639 mov RCV_LEN,#0
0192 22 640 ret
641
0193 020214 642 scc__3: ljmp scc_4
0196 B405FA 643 scc_3: cjne a,#CMD_READBLOCK,scc__3
0199 200B05 644 jb FLAG_HAVECARD,scc3_000
019C 753CFF 645 mov STATUS,#MI_NOTAGERR
019F 8063 646 sjmp scc3_ex
01A1 647 scc3_000:
01A1 E540 648 mov a,RCV_LEN
01A3 B4045E 649 cjne a,#RNUM_CMD_READBLOCK,scc3_ex
01A6 E6 650 mov a,@r0
01A7 08 651 inc r0
01A8 75F004 652 mov b,#4
01AB A4 653 mul ab
01AC F544 654 mov BLOCK,a
01AE E6 655 mov a,@r0
01AF F5F0 656 mov b,a
01B1 2544 657 add a,BLOCK
01B3 F544 658 mov BLOCK,a
01B5 E5F0 659 mov a,b
01B7 B40300 660 cjne a,#3,scc3_00
01BA 4005 661 scc3_00:jc scc3_0
01BC 753CE9 662 mov STATUS,#MI_UNKNOWN_COMMAND
01BF 8043 663 sjmp scc3_ex
01C1 664 scc3_0:
01C1 08 665 inc r0
01C2 E6 666 mov a,@r0
01C3 B4000A 667 cjne a,#KEY_A,scc3_1
01C6 752460 668 mov AUTH_MODE,#PICC_AUTHENT1A
01C9 800B 669 sjmp scc3_2
670
01CB 753CFC 671 scc30_0:mov STATUS,#MI_AUTHERR
01CE 8034 672 sjmp scc3_ex
673
01D0 B401F8 674 scc3_1: cjne a,#KEY_B,scc30_0
01D3 752461 675 mov AUTH_MODE,#PICC_AUTHENT1B
01D6 7F0A 676 scc3_2: mov r7,#10
01D8 7830 677 scc3_3: mov r0,#MLastSelectedSnr
01DA 79B0 678 mov r1,#KEYS_BUF
01DC E524 679 mov a,AUTH_MODE
01DE 8544F0 680 mov b,BLOCK
01E1 1211DC 681 lcall Mf500PiccAuthKey
01E4 F53C 682 mov STATUS,a
01E6 B40002 683 cjne a,#MI_OK,scc33_err
01E9 8007 684 sjmp scc3_4
01EB 685 scc33_err:
01EB 12010A 686 lcall CheckCard
687
A51 MACRO ASSEMBLER FM1702 10/31/2007 17:04:16 PAGE 14
01EE DFE8 688 djnz r7,scc3_3
01F0 8012 689 sjmp scc3_ex
690
01F2 7F05 691 scc3_4: mov r7,#5
01F4 E544 692 scc3_5: mov a,BLOCK
01F6 7871 693 mov r0,#RCV_BUF+1
01F8 121278 694 lcall Mf500PiccRead
01FB F53C 695 mov STATUS,a
01FD B40002 696 cjne a,#MI_OK,scc35_err
0200 8002 697 sjmp scc3_ex
698
0202 699 scc35_err:
0202 DFF0 700 djnz r7,scc3_5
0204 701 scc3_ex:
0204 754200 702 mov SR_MODE,#SR_IDLE
0207 120649 703 lcall SendReadBlock
020A 754200 704 mov SR_MODE,#SR_IDLE
020D 754000 705 mov RCV_LEN,#0
0210 22 706 ret
707
0211 02028F 708 scc__4: ljmp scc_5
0214 B407FA 709 scc_4: cjne a,#CMD_WRITEBLOCK,scc__4
0217 200B05 710 jb FLAG_HAVECARD,scc4_000
021A 753CFF 711 mov STATUS,#MI_NOTAGERR
021D 8063 712 sjmp scc4_ex
021F 713 scc4_000:
021F E540 714 mov a,RCV_LEN
0221 B4145E 715 cjne a,#RNUM_CMD_WRITEBLOCK,scc4_ex
0224 E6 716 mov a,@r0
0225 75F004 717 mov b,#4
0228 A4 718 mul ab
0229 F544 719 mov BLOCK,a
022B 08 720 inc r0
022C E6 721 mov a,@r0
022D F5F0 722 mov b,a
022F 2544 723 add a,BLOCK
0231 F544 724 mov BLOCK,a
0233 E5F0 725 mov a,b
0235 B40300 726 cjne a,#3,scc4_00
0238 4005 727 scc4_00:jc scc4_0
023A 753CE9 728 mov STATUS,#MI_UNKNOWN_COMMAND
023D 8043 729 sjmp scc4_ex
023F 730 scc4_0:
023F 08 731 inc r0
0240 E6 732 mov a,@r0
0241 B4000A 733 cjne a,#KEY_A,scc4_1
0244 752460 734 mov AUTH_MODE,#PICC_AUTHENT1A
0247 800B 735 sjmp scc4_2
736
0249 753CFC 737 scc40_0:mov STATUS,#MI_AUTHERR
024C 8034 738 sjmp scc4_ex
739
024E B401F8 740 scc4_1: cjne a,#KEY_B,scc40_0
0251 752461 741 mov AUTH_MODE,#PICC_AUTHENT1B
0254 7F0A 742 scc4_2: mov r7,#10
0256 7830 743 scc4_3: mov r0,#MLastSelectedSnr
0258 79B0 744 mov r1,#KEYS_BUF
025A E524 745 mov a,AUTH_MODE
025C 8544F0 746 mov b,BLOCK
025F 1211DC 747 lcall Mf500PiccAuthKey
0262 F53C 748 mov STATUS,a
0264 B40002 749 cjne a,#MI_OK,scc43_err
0267 8007 750 sjmp scc4_4
751
A51 MACRO ASSEMBLER FM1702 10/31/2007 17:04:16 PAGE 15
0269 752 scc43_err:
0269 12010A 753 lcall CheckCard
026C DFE8 754 djnz r7,scc4_3
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -