📄 sim340.lst
字号:
chrTemp --> R22
nLen --> R10
Out --> R18
nInPut --> R16
04F3 940E09D9 CALL push_gset3
04F5 80AE LDD R10,Y+6
04F6 80BF LDD R11,Y+7
04F7 2744 CLR R20
04F8 2755 CLR R21
04F9 C030 RJMP 0x052A
04FA 01FA MOVW R30,R20
04FB 0FE0 ADD R30,R16
04FC 1FF1 ADC R31,R17
04FD 8160 LDD R22,Z+0
04FE 2777 CLR R23
04FF 9575 ASR R23
0500 9567 ROR R22
0501 9575 ASR R23
0502 9567 ROR R22
0503 9575 ASR R23
0504 9567 ROR R22
0505 9575 ASR R23
0506 9567 ROR R22
0507 706F ANDI R22,0xF
0508 7070 ANDI R23,0
0509 3060 CPI R22,0
050A F028 BCS 0x0510
050B E089 LDI R24,0x9
050C 1786 CP R24,R22
050D F010 BCS 0x0510
050E 5D60 SUBI R22,0xD0
050F C001 RJMP 0x0511
0510 5C69 SUBI R22,0xC9
0511 01FA MOVW R30,R20
0512 0FE2 ADD R30,R18
0513 1FF3 ADC R31,R19
0514 8360 STD Z+0,R22
0515 01FA MOVW R30,R20
0516 0FE0 ADD R30,R16
0517 1FF1 ADC R31,R17
0518 8160 LDD R22,Z+0
0519 2777 CLR R23
051A 706F ANDI R22,0xF
051B 7070 ANDI R23,0
051C 3060 CPI R22,0
051D F028 BCS 0x0523
051E E089 LDI R24,0x9
051F 1786 CP R24,R22
0520 F010 BCS 0x0523
0521 5D60 SUBI R22,0xD0
0522 C001 RJMP 0x0524
0523 5C69 SUBI R22,0xC9
0524 01FA MOVW R30,R20
0525 0FE2 ADD R30,R18
0526 1FF3 ADC R31,R19
0527 8360 STD Z+0,R22
0528 5F4F SUBI R20,0xFF
0529 4F5F SBCI R21,0xFF
052A 154A CP R20,R10
052B 055B CPC R21,R11
052C F40C BGE 0x052E
052D CFCC RJMP 0x04FA
052E 940E09CC CALL pop_gset3
0530 9508 RET
_IntToChar:
i --> Y+1
nLen --> R20
chrTemp3 --> R10
chrTemp2 --> R12
chrTemp1 --> R14
Out --> R22
n --> R20
0531 940E09D5 CALL push_gset5
0533 01B9 MOVW R22,R18
0534 01A8 MOVW R20,R16
0535 E624 LDI R18,0x64
0536 E030 LDI R19,0
0537 018A MOVW R16,R20
0538 940E0983 CALL div16s
053A 2EE0 MOV R14,R16
053B E684 LDI R24,0x64
053C 9D8E MUL R24,R14
053D 018A MOVW R16,R20
053E 1900 SUB R16,R0
053F 0911 SBC R17,R1
0540 E02A LDI R18,0xA
0541 E030 LDI R19,0
0542 940E0983 CALL div16s
0544 2EC0 MOV R12,R16
0545 E684 LDI R24,0x64
0546 9D8E MUL R24,R14
0547 2EA4 MOV R10,R20
0548 18A0 SUB R10,R0
0549 08B1 SBC R11,R1
054A E08A LDI R24,0xA
054B 9D8C MUL R24,R12
054C 18A0 SUB R10,R0
054D 08B1 SBC R11,R1
054E 20EE TST R14
054F F071 BEQ 0x055E
0550 E043 LDI R20,3
0551 E050 LDI R21,0
0552 2D8E MOV R24,R14
0553 5D80 SUBI R24,0xD0
0554 01FB MOVW R30,R22
0555 8380 STD Z+0,R24
0556 2D8C MOV R24,R12
0557 5D80 SUBI R24,0xD0
0558 8381 STD Z+1,R24
0559 2D8A MOV R24,R10
055A 5D80 SUBI R24,0xD0
055B 01FB MOVW R30,R22
055C 8382 STD Z+2,R24
055D C012 RJMP 0x0570
055E 20CC TST R12
055F F051 BEQ 0x056A
0560 E042 LDI R20,2
0561 E050 LDI R21,0
0562 2D8C MOV R24,R12
0563 5D80 SUBI R24,0xD0
0564 01FB MOVW R30,R22
0565 8380 STD Z+0,R24
0566 2D8A MOV R24,R10
0567 5D80 SUBI R24,0xD0
0568 8381 STD Z+1,R24
0569 C006 RJMP 0x0570
056A E041 LDI R20,1
056B E050 LDI R21,0
056C 2D8A MOV R24,R10
056D 5D80 SUBI R24,0xD0
056E 01FB MOVW R30,R22
056F 8380 STD Z+0,R24
0570 018A MOVW R16,R20
0571 940E09D2 CALL pop_gset5
0573 9508 RET
_Encode:
nDst --> Y+1
nLeft --> R22
nChar --> R10
nSrc --> R20
nLen --> R14
out --> R6
in --> R12
0574 940E09D5 CALL push_gset5
0576 0139 MOVW R6,R18
0577 0168 MOVW R12,R16
0578 84EA LDD R14,Y+10
0579 84FB LDD R15,Y+11
057A 2744 CLR R20
057B 2755 CLR R21
057C C029 RJMP 0x05A6
057D 01CA MOVW R24,R20
057E 7087 ANDI R24,7
057F 7090 ANDI R25,0
0580 015C MOVW R10,R24
0581 3080 CPI R24,0
0582 0789 CPC R24,R25
0583 F419 BNE 0x0587
0584 01F6 MOVW R30,R12
0585 8160 LDD R22,Z+0
0586 C01A RJMP 0x05A1
0587 E028 LDI R18,0x8
0588 E030 LDI R19,0
0589 192A SUB R18,R10
058A 093B SBC R19,R11
058B 01F6 MOVW R30,R12
058C 8100 LDD R16,Z+0
058D 2711 CLR R17
058E 940E0A22 CALL lsl16
0590 0118 MOVW R2,R16
0591 2E46 MOV R4,R22
0592 2455 CLR R5
0593 2824 OR R2,R4
0594 2835 OR R3,R5
0595 01F3 MOVW R30,R6
0596 8220 STD Z+0,R2
0597 01F6 MOVW R30,R12
0598 8100 LDD R16,Z+0
0599 2711 CLR R17
059A 0195 MOVW R18,R10
059B 940E0978 CALL asr16
059D 2F60 MOV R22,R16
059E 01C3 MOVW R24,R6
059F 9601 ADIW R24,1
05A0 013C MOVW R6,R24
05A1 01C6 MOVW R24,R12
05A2 9601 ADIW R24,1
05A3 016C MOVW R12,R24
05A4 5F4F SUBI R20,0xFF
05A5 4F5F SBCI R21,0xFF
05A6 154E CP R20,R14
05A7 055F CPC R21,R15
05A8 F40C BGE 0x05AA
05A9 CFD3 RJMP 0x057D
05AA 940E09D2 CALL pop_gset5
05AC 9508 RET
_FindERROR:
nOffset --> R20
i --> R22
nLen --> R18
in --> R16
05AD 940E09DB CALL push_gset2
05AF EF4F LDI R20,0xFF
05B0 EF5F LDI R21,0xFF
05B1 3025 CPI R18,5
05B2 E0E0 LDI R30,0
05B3 073E CPC R19,R30
05B4 F414 BGE 0x05B7
05B5 018A MOVW R16,R20
05B6 C030 RJMP 0x05E7
05B7 2766 CLR R22
05B8 2777 CLR R23
05B9 C028 RJMP 0x05E2
05BA 01FB MOVW R30,R22
05BB 0FE0 ADD R30,R16
05BC 1FF1 ADC R31,R17
05BD 8180 LDD R24,Z+0
05BE 3582 CPI R24,0x52
05BF F501 BNE 0x05E0
05C0 01FB MOVW R30,R22
05C1 9731 SBIW R30,1
05C2 0FE0 ADD R30,R16
05C3 1FF1 ADC R31,R17
05C4 8180 LDD R24,Z+0
05C5 348F CPI R24,0x4F
05C6 F4C9 BNE 0x05E0
05C7 01FB MOVW R30,R22
05C8 9732 SBIW R30,2
05C9 0FE0 ADD R30,R16
05CA 1FF1 ADC R31,R17
05CB 8180 LDD R24,Z+0
05CC 3582 CPI R24,0x52
05CD F491 BNE 0x05E0
05CE 01FB MOVW R30,R22
05CF 9733 SBIW R30,3
05D0 0FE0 ADD R30,R16
05D1 1FF1 ADC R31,R17
05D2 8180 LDD R24,Z+0
05D3 3582 CPI R24,0x52
05D4 F459 BNE 0x05E0
05D5 01FB MOVW R30,R22
05D6 9734 SBIW R30,4
05D7 0FE0 ADD R30,R16
05D8 1FF1 ADC R31,R17
05D9 8180 LDD R24,Z+0
05DA 3485 CPI R24,0x45
05DB F421 BNE 0x05E0
05DC 01AB MOVW R20,R22
05DD 5044 SUBI R20,4
05DE 4050 SBCI R21,0
05DF C006 RJMP 0x05E6
05E0 5F6F SUBI R22,0xFF
05E1 4F7F SBCI R23,0xFF
05E2 1762 CP R22,R18
05E3 0773 CPC R23,R19
05E4 F40C BGE 0x05E6
05E5 CFD4 RJMP 0x05BA
05E6 018A MOVW R16,R20
05E7 940E09C9 CALL pop_gset2
05E9 9508 RET
_FindCMGR:
nOffset --> R20
i --> R22
nLen --> R18
in --> R16
05EA 940E09DB CALL push_gset2
05EC EF4F LDI R20,0xFF
05ED EF5F LDI R21,0xFF
05EE 3025 CPI R18,5
05EF E0E0 LDI R30,0
05F0 073E CPC R19,R30
05F1 F414 BGE 0x05F4
05F2 018A MOVW R16,R20
05F3 C030 RJMP 0x0624
05F4 2766 CLR R22
05F5 2777 CLR R23
05F6 C028 RJMP 0x061F
05F7 01FB MOVW R30,R22
05F8 0FE0 ADD R30,R16
05F9 1FF1 ADC R31,R17
05FA 8180 LDD R24,Z+0
05FB 3582 CPI R24,0x52
05FC F501 BNE 0x061D
05FD 01FB MOVW R30,R22
05FE 9731 SBIW R30,1
05FF 0FE0 ADD R30,R16
0600 1FF1 ADC R31,R17
0601 8180 LDD R24,Z+0
0602 3487 CPI R24,0x47
0603 F4C9 BNE 0x061D
0604 01FB MOVW R30,R22
0605 9732 SBIW R30,2
0606 0FE0 ADD R30,R16
0607 1FF1 ADC R31,R17
0608 8180 LDD R24,Z+0
0609 348D CPI R24,0x4D
060A F491 BNE 0x061D
060B 01FB MOVW R30,R22
060C 9733 SBIW R30,3
060D 0FE0 ADD R30,R16
060E 1FF1 ADC R31,R17
060F 8180 LDD R24,Z+0
0610 3483 CPI R24,0x43
0611 F459 BNE 0x061D
0612 01FB MOVW R30,R22
0613 9734 SBIW R30,4
0614 0FE0 ADD R30,R16
0615 1FF1 ADC R31,R17
0616 8180 LDD R24,Z+0
0617 328B CPI R24,0x2B
0618 F421 BNE 0x061D
0619 01AB MOVW R20,R22
061A 5044 SUBI R20,4
061B 4050 SBCI R21,0
061C C006 RJMP 0x0623
061D 5F6F SUBI R22,0xFF
061E 4F7F SBCI R23,0xFF
061F 1762 CP R22,R18
0620 0773 CPC R23,R19
0621 F40C BGE 0x0623
0622 CFD4 RJMP 0x05F7
0623 018A MOVW R16,R20
0624 940E09C9 CALL pop_gset2
0626 9508 RET
_FindOK:
nOffset --> R20
i --> R22
nLen --> R18
in --> R16
0627 940E09DB CALL push_gset2
0629 EF4F LDI R20,0xFF
062A EF5F LDI R21,0xFF
062B 3022 CPI R18,2
062C E0E0 LDI R30,0
062D 073E CPC R19,R30
062E F414 BGE 0x0631
062F 018A MOVW R16,R20
0630 C01A RJMP 0x064B
0631 2766 CLR R22
0632 2777 CLR R23
0633 C013 RJMP 0x0647
0634 01FB MOVW R30,R22
0635 0FE0 ADD R30,R16
0636 1FF1 ADC R31,R17
0637 8180 LDD R24,Z+0
0638 348B CPI R24,0x4B
0639 F459 BNE 0x0645
063A 01FB MOVW R30,R22
063B 9731 SBIW R30,1
063C 0FE0 ADD R30,R16
063D 1FF1 ADC R31,R17
063E 8180 LDD R24,Z+0
063F 348B CPI R24,0x4B
0640 F421 BNE 0x0645
0641 01AB MOVW R20,R22
0642 5041 SUBI R20,1
0643 4050 SBCI R21,0
0644 C005 RJMP 0x064A
0645 5F6F SUBI R22,0xFF
0646 4F7F SBCI R23,0xFF
0647 1762 CP R22,R18
0648 0773 CPC R23,R19
0649 F354 BLT 0x0634
064A 018A MOVW R16,R20
064B 940E09C9 CALL pop_gset2
064D 9508 RET
_CharToByte:
i --> R20
chrLow --> R22
chrHi --> R10
nLen --> R12
out --> R14
in --> R6
064E 940E09D5 CALL push_gset5
0650 0179 MOVW R14,R18
0651 0138 MOVW R6,R16
0652 84CA LDD R12,Y+10
0653 84DB LDD R13,Y+11
0654 2744 CLR R20
0655 2755 CLR R21
0656 C05A RJMP 0x06B1
0657 E002 LDI R16,2
0658 E010 LDI R17,0
0659 019A MOVW R18,R20
065A 940E09B9 CALL empy16s
065C 01F8 MOVW R30,R16
065D 0DE6 ADD R30,R6
065E 1DF7 ADC R31,R7
065F 80A0 LDD R10,Z+0
0660 2D8A MOV R24,R10
0661 3380 CPI R24,0x30
0662 F040 BCS 0x066B
0663 E389 LDI R24,0x39
0664 158A CP R24,R10
0665 F028 BCS 0x066B
0666 2D8A MOV R24,R10
0667 2799 CLR R25
0668 97C0 SBIW R24,0x30
0669 2EA8 MOV R10,R24
066A C016 RJMP 0x0681
066B 2D8A MOV R24,R10
066C 3481 CPI R24,0x41
066D F040 BCS 0x0676
066E E486 LDI R24,0x46
066F 158A CP R24,R10
0670 F028 BCS 0x0676
0671 2D8A MOV R24,R10
0672 2799 CLR R25
0673 97C7 SBIW R24,0x37
0674 2EA8 MOV R10,R24
0675 C00B RJMP 0x0681
0676 2D8A MOV R24,R10
0677 3681 CPI R24,0x61
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -