?? zuhe.lst
字號:
035F F7D0 BCC 0x035A
0360 23BB TST R27
0361 F031 BEQ 0x0368
0362 9536 LSR R19
0363 9527 ROR R18
0364 9517 ROR R17
0365 9507 ROR R16
0366 95BA DEC R27
0367 F7D1 BNE 0x0362
0368 9508 RET
int2fp:
0369 2722 CLR R18
036A FD17 SBRC R17,7
036B 9520 COM R18
036C 2733 CLR R19
036D FD27 SBRC R18,7
036E 9530 COM R19
long2fp:
036F D16F RCALL savfacc1
0370 D001 RCALL ITOF
0371 C170 RJMP restorefacc1
ITOF:
0372 2788 CLR R24
0373 2333 TST R19
0374 F412 BPL 0x0377
0375 DF98 RCALL neg32
0376 9580 COM R24
0377 2FB0 MOV R27,R16
0378 2BB1 OR R27,R17
0379 2BB2 OR R27,R18
037A 2BB3 OR R27,R19
037B F409 BNE 0x037D
037C C17E RJMP minres
037D E1B6 LDI R27,0x16
037E C005 RJMP 0x0384
037F 95B3 INC R27
0380 9536 LSR R19
0381 9527 ROR R18
0382 9517 ROR R17
0383 9507 ROR R16
0384 2333 TST R19
0385 F7C9 BNE 0x037F
0386 2322 TST R18
0387 F449 BNE 0x0391
0388 50B8 SUBI R27,0x8
0389 2F21 MOV R18,R17
038A 2F10 MOV R17,R16
038B E000 LDI R16,0
038C CFF9 RJMP 0x0386
038D 95BA DEC R27
038E 0F00 LSL R16
038F 1F11 ROL R17
0390 1F22 ROL R18
0391 F7DA BPL 0x038D
0392 2F3B MOV R19,R27
0393 C191 RJMP repack
save_floatregs:
0394 92DA ST R13,-Y
0395 92EA ST R14,-Y
0396 92FA ST R15,-Y
0397 938A ST R24,-Y
0398 922A ST R2,-Y
0399 923A ST R3,-Y
039A 924A ST R4,-Y
039B 939A ST R25,-Y
039C 93AA ST R26,-Y
039D 93BA ST R27,-Y
039E 9508 RET
restore_floatregs:
039F 91B9 LD R27,Y+
03A0 91A9 LD R26,Y+
03A1 9199 LD R25,Y+
03A2 9049 LD R4,Y+
03A3 9039 LD R3,Y+
03A4 9029 LD R2,Y+
03A5 9189 LD R24,Y+
03A6 90F9 LD R15,Y+
03A7 90E9 LD R14,Y+
03A8 90D9 LD R13,Y+
03A9 9508 RET
stk2arg1:
03AA 842A LDD R2,Y+10
03AB 843B LDD R3,Y+11
03AC 844C LDD R4,Y+12
03AD 859D LDD R25,Y+13
03AE 9508 RET
stk2arg0:
03AF 850E LDD R16,Y+14
03B0 851F LDD R17,Y+15
03B1 8928 LDD R18,Y+16
03B2 8939 LDD R19,Y+17
03B3 9508 RET
float_epilog:
03B4 DFEA RCALL restore_floatregs
03B5 920F PUSH R0
03B6 B60F IN R0,0x3F
03B7 9628 ADIW R28,0x8
03B8 BE0F OUT 0x3F,R0
03B9 900F POP R0
03BA 9508 RET
float_prolog:
03BB DFD8 RCALL save_floatregs
03BC DFF2 RCALL stk2arg0
03BD CFEC RJMP stk2arg1
add32fs:
03BE D001 RCALL add32f
03BF CEF4 RJMP push_arg4
add32f:
03C0 DFFA RCALL float_prolog
03C1 D00D RCALL FADD
03C2 CFF1 RJMP float_epilog
sub32fs:
03C3 D001 RCALL sub32f
03C4 CEEF RJMP push_arg4
sub32f:
03C5 DFF5 RCALL float_prolog
03C6 D007 RCALL FSUB
03C7 CFEC RJMP float_epilog
fret2:
03C8 2F8A MOV R24,R26
03C9 2F39 MOV R19,R25
03CA 2D24 MOV R18,R4
03CB 2D13 MOV R17,R3
03CC 2D02 MOV R16,R2
03CD C157 RJMP repack
FSUB:
03CE 5890 SUBI R25,0x80
FADD:
03CF D143 RCALL unpack
03D0 3890 CPI R25,0x80
03D1 F3D9 BEQ 0x03CD
03D2 3830 CPI R19,0x80
03D3 F3A1 BEQ 0x03C8
03D4 2FB3 MOV R27,R19
03D5 1BB9 SUB R27,R25
03D6 F3B3 BVS 0x03CD
03D7 F02A BMI 0x03DD
03D8 F431 BNE 0x03DF
03D9 1502 CP R16,R2
03DA 0513 CPC R17,R3
03DB 0524 CPC R18,R4
03DC F410 BCC 0x03DF
03DD D129 RCALL swapacc
03DE CFF5 RJMP 0x03D4
03DF 31B8 CPI R27,0x18
03E0 F018 BCS 0x03E4
03E1 2422 CLR R2
03E2 2433 CLR R3
03E3 2444 CLR R4
03E4 30B8 CPI R27,0x8
03E5 F028 BCS 0x03EB
03E6 2C23 MOV R2,R3
03E7 2C34 MOV R3,R4
03E8 2444 CLR R4
03E9 50B8 SUBI R27,0x8
03EA CFF9 RJMP 0x03E4
03EB 23BB TST R27
03EC F029 BEQ 0x03F2
03ED 9446 LSR R4
03EE 9437 ROR R3
03EF 9427 ROR R2
03F0 95BA DEC R27
03F1 F7D9 BNE 0x03ED
03F2 2FB8 MOV R27,R24
03F3 27BA EOR R27,R26
03F4 F042 BMI 0x03FD
03F5 D014 RCALL 0x040A
03F6 F6B0 BCC 0x03CD
03F7 9527 ROR R18
03F8 9517 ROR R17
03F9 9507 ROR R16
03FA 5F3F SUBI R19,0xFF
03FB F68B BVC 0x03CD
03FC C0F7 RJMP maxres
03FD D010 RCALL usub24
03FE F409 BNE 0x0400
03FF C0FB RJMP minres
0400 F408 BCC 0x0402
0401 D0EC RCALL negmant
0402 2322 TST R18
0403 F24A BMI 0x03CD
0404 0F00 LSL R16
0405 1F11 ROL R17
0406 1F22 ROL R18
0407 5031 SUBI R19,1
0408 F7CB BVC 0x0402
0409 C0EA RJMP maxres
040A 0D02 ADD R16,R2
040B 1D13 ADC R17,R3
040C 1D24 ADC R18,R4
040D 9508 RET
usub24:
040E 1902 SUB R16,R2
040F 0913 SBC R17,R3
0410 0924 SBC R18,R4
0411 9508 RET
div32fs:
0412 D001 RCALL div32f
0413 CEA0 RJMP push_arg4
div32f:
0414 DFA6 RCALL float_prolog
0415 D022 RCALL FDIV
0416 CF9D RJMP float_epilog
0417 93BA ST R27,-Y
0418 24DD CLR R13
0419 24EE CLR R14
041A 24FF CLR R15
041B E1B8 LDI R27,0x18
041C 1502 CP R16,R2
041D 0513 CPC R17,R3
041E 0524 CPC R18,R4
041F F028 BCS 0x0425
0420 1902 SUB R16,R2
0421 0913 SBC R17,R3
0422 0924 SBC R18,R4
0423 9408 BSET 0
0424 C001 RJMP 0x0426
0425 9488 BCLR 0
0426 1CDD ROL R13
0427 1CEE ROL R14
0428 1CFF ROL R15
0429 0F00 LSL R16
042A 1F11 ROL R17
042B 1F22 ROL R18
042C 95BA DEC R27
042D F771 BNE 0x041C
042E 2D0D MOV R16,R13
042F 2D1E MOV R17,R14
0430 2D2F MOV R18,R15
0431 91B9 LD R27,Y+
0432 9508 RET
fdiv10:
0433 2422 CLR R2
0434 2433 CLR R3
0435 E2B0 LDI R27,0x20
0436 2E4B MOV R4,R27
0437 E491 LDI R25,0x41
FDIV:
0438 2399 TST R25
0439 F119 BEQ 0x045D
043A 2333 TST R19
043B F141 BEQ 0x0464
043C D0D6 RCALL unpack
043D F131 BEQ 0x0464
043E 278A EOR R24,R26
043F 9408 BSET 0
0440 0B39 SBC R19,R25
0441 F0E3 BVS 0x045E
0442 9446 LSR R4
0443 9437 ROR R3
0444 9427 ROR R2
0445 9526 LSR R18
0446 9517 ROR R17
0447 9507 ROR R16
0448 DFCE RCALL 0x0417
0449 2322 TST R18
044A F02A BMI 0x0450
044B 0F00 LSL R16
044C 1F11 ROL R17
044D 1F22 ROL R18
044E 5031 SUBI R19,1
044F F073 BVS 0x045E
0450 2FB0 MOV R27,R16
0451 95B6 LSR R27
0452 F048 BCS 0x045C
0453 2300 TST R16
0454 F43A BPL 0x045C
0455 2311 TST R17
0456 F42A BPL 0x045C
0457 E0B1 LDI R27,1
0458 0F0B ADD R16,R27
0459 27BB CLR R27
045A 1F1B ADC R17,R27
045B 1F2B ADC R18,R27
045C C0C8 RJMP repack
045D C006 RJMP 0x0464
045E E7BF LDI R27,0x7F
045F 2F3B MOV R19,R27
0460 2B2B OR R18,R27
0461 EF0F LDI R16,0xFF
0462 EF1F LDI R17,0xFF
0463 9508 RET
0464 2700 CLR R16
0465 2711 CLR R17
0466 2722 CLR R18
0467 2733 CLR R19
0468 2788 CLR R24
0469 9508 RET
cmp32f:
046A DF50 RCALL float_prolog
046B D001 RCALL FLTCP
046C CF47 RJMP float_epilog
FLTCP:
046D D002 RCALL 0x0470
046E 23BB TST R27
046F 9508 RET
0470 2333 TST R19
0471 F082 BMI 0x0482
0472 2399 TST R25
0473 F042 BMI 0x047C
0474 1739 CP R19,R25
0475 F040 BCS 0x047E
0476 F429 BNE 0x047C
0477 1502 CP R16,R2
0478 0513 CPC R17,R3
0479 0524 CPC R18,R4
047A F018 BCS 0x047E
047B F021 BEQ 0x0480
047C E0B1 LDI R27,1
047D 9508 RET
047E EFBF LDI R27,0xFF
047F 9508 RET
0480 27BB CLR R27
0481 9508 RET
0482 2399 TST R25
0483 F7D2 BPL 0x047E
0484 1739 CP R19,R25
0485 F3B0 BCS 0x047C
0486 F7B9 BNE 0x047E
0487 1502 CP R16,R2
0488 0513 CPC R17,R3
0489 0524 CPC R18,R4
048A F388 BCS 0x047C
048B F3A1 BEQ 0x0480
048C CFF1 RJMP 0x047E
048D E7BF LDI R27,0x7F
048E 2F3B MOV R19,R27
048F 2B2B OR R18,R27
0490 EF0F LDI R16,0xFF
0491 EF1F LDI R17,0xFF
0492 9508 RET
0493 2700 CLR R16
0494 2711 CLR R17
0495 2722 CLR R18
0496 2733 CLR R19
0497 2788 CLR R24
0498 9508 RET
empy32fs:
0499 D001 RCALL empy32f
049A CE19 RJMP push_arg4
empy32f:
049B DF1F RCALL float_prolog
049C 920F PUSH R0
049D 92CF PUSH R12
049E D003 RCALL eFMUL
049F 90CF POP R12
04A0 900F POP R0
04A1 CF12 RJMP float_epilog
eFMUL:
04A2 D070 RCALL unpack
04A3 F379 BEQ 0x0493
04A4 3890 CPI R25,0x80
04A5 F369 BEQ 0x0493
04A6 278A EOR R24,R26
04A7 9408 BSET 0
04A8 1F39 ADC R19,R25
04A9 F31B BVS 0x048D
04AA D00D RCALL eumul24
04AB 2D2F MOV R18,R15
04AC 2D1E MOV R17,R14
04AD 2D0D MOV R16,R13
04AE 2322 TST R18
04AF F02A BMI 0x04B5
04B0 953A DEC R19
04B1 0CCC LSL R12
04B2 1F00 ROL R16
04B3 1F11 ROL R17
04B4 1F22 ROL R18
04B5 5F3F SUBI R19,0xFF
04B6 F2B3 BVS 0x048D
04B7 C06D RJMP repack
eumul24:
04B8 9D22 MUL R18,R2
04B9 2CC0 MOV R12,R0
04BA 2CD1 MOV R13,R1
04BB 9D24 MUL R18,R4
04BC 2CE0 MOV R14,R0
04BD 2CF1 MOV R15,R1
04BE 9D14 MUL R17,R4
04BF 0CC1 ADD R12,R1
04C0 1EDB ADC R13,R27
04C1 1EEB ADC R14,R27
04C2 1EFB ADC R15,R27
04C3 9D03 MUL R16,R3
04C4 0CC1 ADD R12,R1
04C5 1EDB ADC R13,R27
04C6 1EEB ADC R14,R27
04C7 1EFB ADC R15,R27
04C8 9D13 MUL R17,R3
04C9 0CC0 ADD R12,R0
04CA 1CD1 ADC R13,R1
04CB 1EEB ADC R14,R27
04CC 1EFB ADC R15,R27
04CD 9D04 MUL R16,R4
04CE 0CC0 ADD R12,R0
04CF 1CD1 ADC R13,R1
04D0 1EEB ADC R14,R27
04D1 1EFB ADC R15,R27
04D2 9D23 MUL R18,R3
04D3 0CD0 ADD R13,R0
04D4 1CE1 ADC R14,R1
04D5 1EFB ADC R15,R27
04D6 9D14 MUL R17,R4
04D7 0CD0 ADD R13,R0
04D8 1CE1 ADC R14,R1
04D9 1EFB ADC R15,R27
04DA F41A BPL 0x04DE
04DB 94D3 INC R13
04DC 1EEB ADC R14,R27
04DD 1EFB ADC R15,R27
04DE 9508 RET
savfacc1:
04DF 938A ST R24,-Y
04E0 93BA ST R27,-Y
04E1 9508 RET
restorefacc1:
04E2 91B9 LD R27,Y+
04E3 9189 LD R24,Y+
04E4 9508 RET
unpackfacc1:
04E5 2F83 MOV R24,R19
04E6 7880 ANDI R24,0x80
04E7 0F22 LSL R18
04E8 1F33 ROL R19
04E9 5830 SUBI R19,0x80
04EA 9408 BSET 0
04EB 9527 ROR R18
04EC 3830 CPI R19,0x80
04ED 9508 RET
negmant:
04EE 9510 COM R17
04EF 9520 COM R18
04F0 9501 NEG R16
04F1 4F1F SBCI R17,0xFF
04F2 4F2F SBCI R18,0xFF
04F3 9508 RET
maxres:
04F4 E7BF LDI R27,0x7F
04F5 2F3B MOV R19,R27
04F6 2B2B OR R18,R27
04F7 EFBF LDI R27,0xFF
04F8 2F0B MOV R16,R27
04F9 2F1B MOV R17,R27
04FA 9508 RET
minres:
04FB 2700 CLR R16
04FC 2711 CLR R17
04FD 2722 CLR R18
04FE 2733 CLR R19
04FF 2788 CLR R24
0500 9508 RET
ac1toac2:
0501 2F93 MOV R25,R19
0502 2E20 MOV R2,R16
0503 2E31 MOV R3,R17
0504 2E42 MOV R4,R18
0505 2FA8 MOV R26,R24
0506 9508 RET
swapacc:
0507 922A ST R2,-Y
0508 923A ST R3,-Y
0509 924A ST R4,-Y
050A 939A ST R25,-Y
050B 93AA ST R26,-Y
050C DFF4 RCALL ac1toac2
050D 9189 LD R24,Y+
050E 9139 LD R19,Y+
050F 9129 LD R18,Y+
0510 9119 LD R17,Y+
0511 9109 LD R16,Y+
0512 9508 RET
unpack:
0513 2F83 MOV R24,R19
0514 E8B0 LDI R27,0x80
0515 0F22 LSL R18
0516 1F33 ROL R19
0517 273B EOR R19,R27
0518 0FBB LSL R27
0519 9527 ROR R18
051A 7880 ANDI R24,0x80
051B 2FA9 MOV R26,R25
051C E8B0 LDI R27,0x80
051D 0C44 LSL R4
051E 1F99 ROL R25
051F 279B EOR R25,R27
0520 0FBB LSL R27
0521 9447 ROR R4
0522 78A0 ANDI R26,0x80
0523 3830 CPI R19,0x80
0524 9508 RET
repack:
0525 0F22 LSL R18
0526 E8B0 LDI R27,0x80
0527 27B3 EOR R27,R19
0528 0F88 LSL R24
0529 95B7 ROR R27
052A 9527 ROR R18
052B 2F3B MOV R19,R27
052C 9508 RET
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -