📄 main.lst
字号:
F2B9 500C 558 JNC Protect_Ret
F2BB 75F781 559 MOV ISPC, #0X81
F2BE 7500F7 F 560 MOV ?Debug_Str?BYTE+0, #HIGH(Str_Success)
F2C1 750009 F 561 MOV ?Debug_Str?BYTE+1, #LOW(Str_Success)
F2C4 12F43F 562 LCALL Debug_Str
F2C7 563 Protect_Ret:
F2C7 22 564 RET
565 ;================================================================================
F2C8 566 ShowRom:
F2C8 7500F6 F 567 MOV ?Debug_Str?BYTE+0, #HIGH(Str_ShowRom)
F2CB 7500EA F 568 MOV ?Debug_Str?BYTE+1, #LOW(Str_ShowRom)
F2CE 12F43F 569 LCALL Debug_Str
570
F2D1 12F345 571 LCALL AreYouSure
F2D4 5029 572 JNC ShowRom_Ret
F2D6 12F314 573 LCALL InputPageAddr
F2D9 7500F7 F 574 MOV ?Debug_Str?BYTE+0, #HIGH(Str_PageAddr)
F2DC 750033 F 575 MOV ?Debug_Str?BYTE+1, #LOW(Str_PageAddr)
F2DF 12F43F 576 LCALL Debug_Str
F2E2 E8 577 MOV A, R0
F2E3 12F41B 578 LCALL Debug_Byte_Hex
F2E6 7400 579 MOV A, #0X00
F2E8 12F41B 580 LCALL Debug_Byte_Hex
F2EB 7500F5 F 581 MOV ?Debug_Str?BYTE+0, #HIGH(Str_LF)
F2EE 750053 F 582 MOV ?Debug_Str?BYTE+1, #LOW(Str_LF)
F2F1 12F43F 583 LCALL Debug_Str
F2F4 8800 F 584 MOV ?Debug_Rom?BYTE+0, R0
F2F6 750000 F 585 MOV ?Debug_Rom?BYTE+1, #0X00
F2F9 750000 F 586 MOV ?Debug_Rom?BYTE+2, #0x00
F2FC 12F4D7 587 LCALL Debug_Rom
F2FF 588 ShowRom_Ret:
F2FF 22 589 RET
590 ;================================================================================
F300 591 Recv2Hex:
F300 12F403 592 LCALL Debug_In
F303 12F3B9 593 LCALL Ascii1ToHex
F306 C4 594 SWAP A
F307 F8 595 MOV R0, A
F308 12F403 596 LCALL Debug_In
F30B 12F3B9 597 LCALL Ascii1ToHex
F30E 28 598 ADD A, R0
F30F F8 599 MOV R0, A
600
F310 E9 601 MOV A, R1
F311 28 602 ADD A, R0
F312 F9 603 MOV R1, A
F313 22 604 RET
605 ;================================================================================
F314 606 InputPageAddr:
F314 607 InputPageAddr_L1:
F314 7500F7 F 608 MOV ?Debug_Str?BYTE+0, #HIGH(Str_InputPageAddr)
F317 75001F F 609 MOV ?Debug_Str?BYTE+1, #LOW(Str_InputPageAddr)
F31A 12F43F 610 LCALL Debug_Str
611
F31D 12F403 612 LCALL Debug_In
F320 12F40D 613 LCALL Debug_Byte
F323 12F3B9 614 LCALL Ascii1ToHex
615 $if 0
LCALL Debug_Byte_Hex
$endif
F326 C4 618 SWAP A
F327 F8 619 MOV R0, A
620 $if 0
LCALL Debug_Byte_Hex
$endif
F328 12F403 623 LCALL Debug_In
F32B 12F40D 624 LCALL Debug_Byte
F32E 12F3B9 625 LCALL Ascii1ToHex
F331 28 626 ADD A, R0
F332 F8 627 MOV R0, A
628 $if 0
LCALL Debug_Byte_Hex
$endif
F333 7500F5 F 631 MOV ?Debug_Str?BYTE+0, #HIGH(Str_LF)
F336 750053 F 632 MOV ?Debug_Str?BYTE+1, #LOW(Str_LF)
F339 12F43F 633 LCALL Debug_Str
F33C 12F345 634 LCALL AreYouSure
F33F 4003 635 JC InputPageAddr_Ret
F341 02F314 636 LJMP InputPageAddr_L1
F344 637 InputPageAddr_Ret:
F344 22 638 RET
639 ;================================================================================
F345 640 AreYouSure:
F345 7500F6 F 641 MOV ?Debug_Str?BYTE+0, #HIGH(Str_AreYouSure)
F348 7500F5 F 642 MOV ?Debug_Str?BYTE+1, #LOW(Str_AreYouSure)
F34B 12F43F 643 LCALL Debug_Str
644
F34E 12F403 645 LCALL Debug_In
F351 12F379 646 LCALL UpperChar
F354 F5F0 647 MOV B, A
F356 12F40D 648 LCALL Debug_Byte
F359 7500F5 F 649 MOV ?Debug_Str?BYTE+0, #HIGH(Str_LF)
F35C 750053 F 650 MOV ?Debug_Str?BYTE+1, #LOW(Str_LF)
F35F 12F43F 651 LCALL Debug_Str
F362 C3 652 CLR C
F363 E5F0 653 MOV A, B
F365 6459 654 XRL A, #'Y'
F367 7001 655 JNZ AreYouSure_RET
F369 D3 656 SETB C
F36A 657 AreYouSure_RET:
F36A 22 658 RET
659 ;================================================================================
F36B 660 IsInRange:
F36B C3 661 CLR C
F36C E8 662 MOV A, R0
F36D 99 663 SUBB A, R1
F36E 4007 664 JC IsInRange_RetF
F370 C3 665 CLR C
F371 EA 666 MOV A, R2
F372 98 667 SUBB A, R0
F373 4002 668 JC IsInRange_RetF
F375 D3 669 SETB C
F376 22 670 RET
F377 671 IsInRange_RetF:
F377 C3 672 CLR C
F378 22 673 RET
674 ;================================================================================
F379 675 UpperChar:
F379 C0F0 676 PUSH B
F37B 88F0 677 MOV B, R0
F37D C0F0 678 PUSH B
F37F 89F0 679 MOV B, R1
F381 C0F0 680 PUSH B
F383 8AF0 681 MOV B, R2
F385 C0F0 682 PUSH B
683
F387 F5F0 684 MOV B, A
F389 F8 685 MOV R0, A
F38A 7961 686 MOV R1, #'a'
F38C 7A7A 687 MOV R2, #'z'
F38E 12F36B 688 LCALL IsInRange
F391 5009 689 JNC UpperChar_RetF
F393 E5F0 690 MOV A, B
F395 C3 691 CLR C
F396 9461 692 SUBB A, #'a'
F398 2441 693 ADD A, #'A'
F39A F5F0 694 MOV B, A
F39C 695 UpperChar_RetF:
F39C E5F0 696 MOV A, B
697
F39E D0F0 698 POP B
F3A0 AAF0 699 MOV R2, B
F3A2 D0F0 700 POP B
F3A4 A9F0 701 MOV R1, B
F3A6 D0F0 702 POP B
F3A8 A8F0 703 MOV R0, B
F3AA D0F0 704 POP B
F3AC 22 705 RET
706 ;================================================================================
F3AD 707 HexToAscii:
F3AD C3 708 CLR C
F3AE 940A 709 SUBB A, #0x0A
F3B0 4002 710 JC HexToAscii_L1
F3B2 2407 711 ADD A, #0x07
F3B4 712 HexToAscii_L1:
F3B4 2430 713 ADD A, #0x30
F3B6 240A 714 ADD A, #0x0A
F3B8 22 715 RET
716 ;================================================================================
F3B9 717 Ascii1ToHex:
F3B9 C0F0 718 PUSH B
F3BB 88F0 719 MOV B, R0
F3BD C0F0 720 PUSH B
F3BF 89F0 721 MOV B, R1
F3C1 C0F0 722 PUSH B
F3C3 8AF0 723 MOV B, R2
F3C5 C0F0 724 PUSH B
725
F3C7 12F379 726 LCALL UpperChar
F3CA F5F0 727 MOV B, A
F3CC F8 728 MOV R0, A
F3CD 7941 729 MOV R1, #'A'
F3CF 7A5A 730 MOV R2, #'Z'
F3D1 12F36B 731 LCALL IsInRange
F3D4 5009 732 JNC Ascii1ToHex_L1
F3D6 E5F0 733 MOV A, B
F3D8 C3 734 CLR C
F3D9 9441 735 SUBB A, #'A'
F3DB 240A 736 ADD A, #10
F3DD 8015 737 SJMP Ascii1ToHex_RET
F3DF 738 Ascii1ToHex_L1:
F3DF E5F0 739 MOV A, B
F3E1 F8 740 MOV R0, A
F3E2 7930 741 MOV R1, #'0'
F3E4 7A39 742 MOV R2, #'9'
F3E6 12F36B 743 LCALL IsInRange
F3E9 5007 744 JNC Ascii1ToHex_L2
F3EB E5F0 745 MOV A, B
F3ED C3 746 CLR C
F3EE 9430 747 SUBB A, #30H
F3F0 8002 748 SJMP Ascii1ToHex_RET
F3F2 749 Ascii1ToHex_L2:
F3F2 7410 750 MOV A, #10H
F3F4 751 Ascii1ToHex_RET:
F3F4 D0F0 752 POP B
F3F6 AAF0 753 MOV R2, B
F3F8 D0F0 754 POP B
F3FA A9F0 755 MOV R1, B
F3FC D0F0 756 POP B
F3FE A8F0 757 MOV R0, B
F400 D0F0 758 POP B
F402 22 759 RET
760 ;================================================================================
F403 761 Debug_In:
F403 B2B5 762 CPL WatchDog
F405 3098FB 763 JNB RI, Debug_In
F408 C298 764 CLR RI
F40A E599 765 MOV A, SBUF
F40C 22 766 RET
767 ;================================================================================
F40D 768 Debug_Byte:
F40D C2AC 769 CLR ES
F40F F599 770 MOV SBUF, A
F411 771 Debug_Byte_L1:
F411 B2B5 772 CPL WatchDog
F413 3099FB 773 JNB TI, Debug_Byte_L1
F416 C299 774 CLR TI
F418 D2AC 775 SETB ES
F41A 22 776 RET
777 ;================================================================================
F41B 778 Debug_Byte_Hex:
F41B C0F0 779 PUSH B
780
F41D F5F0 781 MOV B, A
F41F 54F0 782 ANL A, #11110000B
F421 23 783 RL A
F422 23 784 RL A
F423 23 785 RL A
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -