📄 avr_gy-29.lst
字号:
35D 06F3 CPC R15,R19
35E F018 BCS 0x0362
35F 1AE2 SUB R14,R18
360 0AF3 SBC R15,R19
361 9503 INC R16
362 958A DEC R24
363 F7A1 BNE 0x0358
364 F416 BRTC 0x0367
365 2D0E MOV R16,R14
366 2D1F MOV R17,R15
367 9189 LD R24,Y+
368 90F9 LD R15,Y+
369 90E9 LD R14,Y+
36A 9508 RET
elpm32:
36B 93EA ST R30,-Y
36C 93FA ST R31,-Y
36D 920A ST R0,-Y
36E 2FE0 MOV R30,R16
36F 2FF1 MOV R31,R17
370 95D8 ELPM
371 2D00 MOV R16,R0
372 9631 ADIW R30,1
373 95D8 ELPM
374 2D10 MOV R17,R0
375 9631 ADIW R30,1
376 95D8 ELPM
377 2D20 MOV R18,R0
378 9631 ADIW R30,1
379 95D8 ELPM
37A 2D30 MOV R19,R0
37B 9009 LD R0,Y+
37C 91F9 LD R31,Y+
37D 91E9 LD R30,Y+
37E 9508 RET
push_xgset300C:
37F 935A ST R21,-Y
380 934A ST R20,-Y
381 92BA ST R11,-Y
382 92AA ST R10,-Y
383 9508 RET
pop_xgset300C:
384 90A9 LD R10,Y+
385 90B9 LD R11,Y+
386 9149 LD R20,Y+
387 9159 LD R21,Y+
388 9508 RET
push_xgsetF00C:
389 937A ST R23,-Y
38A 936A ST R22,-Y
38B 935A ST R21,-Y
38C 934A ST R20,-Y
38D 92BA ST R11,-Y
38E 92AA ST R10,-Y
38F 9508 RET
pop_xgsetF00C:
390 90A9 LD R10,Y+
391 90B9 LD R11,Y+
392 9149 LD R20,Y+
393 9159 LD R21,Y+
394 9169 LD R22,Y+
395 9179 LD R23,Y+
396 9508 RET
push_xgset303C:
397 935A ST R21,-Y
398 934A ST R20,-Y
399 92DA ST R13,-Y
39A 92CA ST R12,-Y
39B 92BA ST R11,-Y
39C 92AA ST R10,-Y
39D 9508 RET
pop_xgset303C:
39E 90A9 LD R10,Y+
39F 90B9 LD R11,Y+
3A0 90C9 LD R12,Y+
3A1 90D9 LD R13,Y+
3A2 9149 LD R20,Y+
3A3 9159 LD R21,Y+
3A4 9508 RET
neg32:
3A5 9500 COM R16
3A6 9510 COM R17
3A7 9520 COM R18
3A8 9530 COM R19
3A9 5F0F SUBI R16,0xFF
3AA 4F1F SBCI R17,0xFF
3AB 4F2F SBCI R18,0xFF
3AC 4F3F SBCI R19,0xFF
3AD 9508 RET
fpint:
3AE 934A ST R20,-Y
3AF 935A ST R21,-Y
3B0 936A ST R22,-Y
3B1 940E 040A CALL unpacku
3B3 F0F1 BEQ 0x03D2
3B4 2355 TST R21
3B5 F0C2 BMI 0x03CE
3B6 314F CPI R20,0x1F
3B7 F4A8 BCC 0x03CD
3B8 3147 CPI R20,0x17
3B9 F0C1 BEQ 0x03D2
3BA F450 BCC 0x03C5
3BB 9541 NEG R20
3BC 5E49 SUBI R20,0xE9
3BD C005 RJMP 0x03C3
3BE 9535 ASR R19
3BF 9527 ROR R18
3C0 9517 ROR R17
3C1 9507 ROR R16
3C2 954A DEC R20
3C3 F7D1 BNE 0x03BE
3C4 C00D RJMP 0x03D2
3C5 5147 SUBI R20,0x17
3C6 0F00 LSL R16
3C7 1F11 ROL R17
3C8 1F22 ROL R18
3C9 1F33 ROL R19
3CA 954A DEC R20
3CB F7D1 BNE 0x03C6
3CC C005 RJMP 0x03D2
3CD E73F LDI R19,0x7F
3CE 2F23 MOV R18,R19
3CF 2F13 MOV R17,R19
3D0 2F03 MOV R16,R19
3D1 C004 RJMP 0x03D6
3D2 2366 TST R22
3D3 F011 BEQ 0x03D6
3D4 940E 03A5 CALL neg32
3D6 9169 LD R22,Y+
3D7 9159 LD R21,Y+
3D8 9149 LD R20,Y+
3D9 9508 RET
uint2fp:
3DA 9468 BSET 6
3DB C001 RJMP 0x03DD
int2fp:
3DC 94E8 BCLR 6
3DD 2722 CLR R18
3DE 2733 CLR R19
3DF F046 BRTS 0x03E8
3E0 FD17 SBRC R17,7
3E1 9520 COM R18
3E2 FD17 SBRC R17,7
3E3 9530 COM R19
3E4 C003 RJMP 0x03E8
ulong2fp:
3E5 9468 BSET 6
3E6 C001 RJMP 0x03E8
long2fp:
3E7 94E8 BCLR 6
3E8 934A ST R20,-Y
3E9 935A ST R21,-Y
3EA 936A ST R22,-Y
3EB E147 LDI R20,0x17
3EC 2766 CLR R22
3ED 2755 CLR R21
3EE F02E BRTS 0x03F4
3EF 2333 TST R19
3F0 F41A BPL 0x03F4
3F1 940E 03A5 CALL neg32
3F3 E860 LDI R22,0x80
3F4 940E 041F CALL normalize_and_pack
3F6 9169 LD R22,Y+
3F7 9159 LD R21,Y+
3F8 9149 LD R20,Y+
3F9 9508 RET
unpacks:
3FA D00F RCALL unpacku
3FB F029 BEQ 0x0401
3FC 2366 TST R22
3FD F011 BEQ 0x0400
3FE 940E 03A5 CALL neg32
400 9498 BCLR 1
401 9508 RET
tstR16_R19:
402 2300 TST R16
403 F429 BNE 0x0409
404 2311 TST R17
405 F419 BNE 0x0409
406 2322 TST R18
407 F409 BNE 0x0409
408 2333 TST R19
409 9508 RET
unpacku:
40A DFF7 RCALL tstR16_R19
40B F079 BEQ 0x041B
40C 2F63 MOV R22,R19
40D 7860 ANDI R22,0x80
40E 0F22 LSL R18
40F 1F33 ROL R19
410 2F43 MOV R20,R19
411 E75F LDI R21,0x7F
412 1B45 SUB R20,R21
413 2755 CLR R21
414 4050 SBCI R21,0
415 9526 LSR R18
416 E830 LDI R19,0x80
417 2B23 OR R18,R19
418 2733 CLR R19
419 9498 BCLR 1
41A 9508 RET
41B 2744 CLR R20
41C 2755 CLR R21
41D 2766 CLR R22
41E 9508 RET
normalize_and_pack:
41F DFE2 RCALL tstR16_R19
420 F121 BEQ 0x0445
421 939A ST R25,-Y
422 938A ST R24,-Y
423 E78E LDI R24,0x7E
424 E090 LDI R25,0
425 2333 TST R19
426 F051 BEQ 0x0431
427 9536 LSR R19
428 9527 ROR R18
429 9517 ROR R17
42A 9507 ROR R16
42B 1748 CP R20,R24
42C 0759 CPC R21,R25
42D F4C4 BGE 0x0446
42E 5F4F SUBI R20,0xFF
42F 4F5F SBCI R21,0xFF
430 CFF4 RJMP 0x0425
431 9580 COM R24
432 9590 COM R25
433 9601 ADIW R24,1
434 2322 TST R18
435 F0AA BMI 0x044B
436 0F00 LSL R16
437 1F11 ROL R17
438 1F22 ROL R18
439 1748 CP R20,R24
43A 0759 CPC R21,R25
43B F01C BLT 0x043F
43C 5041 SUBI R20,1
43D 4050 SBCI R21,0
43E CFF5 RJMP 0x0434
43F 2700 CLR R16
440 2711 CLR R17
441 2722 CLR R18
442 2733 CLR R19
443 9189 LD R24,Y+
444 9199 LD R25,Y+
445 9508 RET
446 2733 CLR R19
447 EF0F LDI R16,0xFF
448 2F10 MOV R17,R16
449 E72F LDI R18,0x7F
44A 2F32 MOV R19,R18
44B 9189 LD R24,Y+
44C 9199 LD R25,Y+
pack:
44D DFB4 RCALL tstR16_R19
44E F039 BEQ 0x0456
44F 5841 SUBI R20,0x81
450 4F5F SBCI R21,0xFF
451 2F34 MOV R19,R20
452 0F22 LSL R18
453 9536 LSR R19
454 9527 ROR R18
455 2B36 OR R19,R22
456 9508 RET
fpneg:
457 DFAA RCALL tstR16_R19
458 F021 BEQ 0x045D
459 930F PUSH R16
45A E800 LDI R16,0x80
45B 2730 EOR R19,R16
45C 910F POP R16
45D 9508 RET
fpneg2:
45E DFF8 RCALL fpneg
45F 933A ST R19,-Y
460 932A ST R18,-Y
461 931A ST R17,-Y
462 930A ST R16,-Y
463 9508 RET
saveR8toR25:
464 928A ST R8,-Y
465 929A ST R9,-Y
466 92AA ST R10,-Y
467 92BA ST R11,-Y
468 92CA ST R12,-Y
469 92DA ST R13,-Y
46A 92EA ST R14,-Y
46B 92FA ST R15,-Y
46C 934A ST R20,-Y
46D 935A ST R21,-Y
46E 936A ST R22,-Y
46F 937A ST R23,-Y
470 938A ST R24,-Y
471 939A ST R25,-Y
472 9508 RET
restoreR8toR25:
473 9199 LD R25,Y+
474 9189 LD R24,Y+
475 9179 LD R23,Y+
476 9169 LD R22,Y+
477 9159 LD R21,Y+
478 9149 LD R20,Y+
479 90F9 LD R15,Y+
47A 90E9 LD R14,Y+
47B 90D9 LD R13,Y+
47C 90C9 LD R12,Y+
47D 90B9 LD R11,Y+
47E 90A9 LD R10,Y+
47F 9099 LD R9,Y+
480 9089 LD R8,Y+
481 9508 RET
fpmule:
482 940E 0464 CALL saveR8toR25
484 93AA ST R26,-Y
485 93BA ST R27,-Y
486 940E 040A CALL unpacku
488 F1D1 BEQ 0x04C3
489 2EE6 MOV R14,R22
48A 2ED5 MOV R13,R21
48B 2EC4 MOV R12,R20
48C 2EB3 MOV R11,R19
48D 2EA2 MOV R10,R18
48E 2E91 MOV R9,R17
48F 2E80 MOV R8,R16
490 8100 LDD R16,Z+0
491 8111 LDD R17,Z+1
492 8122 LDD R18,Z+2
493 8133 LDD R19,Z+3
494 940E 040A CALL unpacku
496 F161 BEQ 0x04C3
497 256E EOR R22,R14
498 0D4C ADD R20,R12
499 1D5D ADC R21,R13
49A 3840 CPI R20,0x80
49B 0753 CPC R21,R19
49C F55C BGE 0x04C8
49D 3841 CPI R20,0x81
49E EF7F LDI R23,0xFF
49F 0757 CPC R21,R23
4A0 F164 BLT 0x04CD
4A1 9EA2 MUL R10,R18
4A2 2DB1 MOV R27,R1
4A3 2DA0 MOV R26,R0
4A4 9E91 MUL R9,R17
4A5 2D91 MOV R25,R1
4A6 2D80 MOV R24,R0
4A7 9EA0 MUL R10,R16
4A8 0D80 ADD R24,R0
4A9 1D91 ADC R25,R1
4AA 1FA3 ADC R26,R19
4AB 1FB3 ADC R27,R19
4AC 9E82 MUL R8,R18
4AD 0D80 ADD R24,R0
4AE 1D91 ADC R25,R1
4AF 1FA3 ADC R26,R19
4B0 1FB3 ADC R27,R19
4B1 9E92 MUL R9,R18
4B2 0D90 ADD R25,R0
4B3 1DA1 ADC R26,R1
4B4 1FB3 ADC R27,R19
4B5 9EA1 MUL R10,R17
4B6 0D90 ADD R25,R0
4B7 1DA1 ADC R26,R1
4B8 1FB3 ADC R27,R19
4B9 2F2B MOV R18,R27
4BA 2F1A MOV R17,R26
4BB 2F09 MOV R16,R25
4BC 0F88 LSL R24
4BD 1F00 ROL R16
4BE 1F11 ROL R17
4BF 1F22 ROL R18
4C0 1F33 ROL R19
4C1 940E 041F CALL normalize_and_pack
4C3 91B9 LD R27,Y+
4C4 91A9 LD R26,Y+
4C5 940E 0473 CALL restoreR8toR25
4C7 9508 RET
4C8 EF0F LDI R16,0xFF
4C9 2F10 MOV R17,R16
4CA E72F LDI R18,0x7F
4CB E74F LDI R20,0x7F
4CC CFF6 RJMP 0x04C3
4CD 2700 CLR R16
4CE 2F10 MOV R17,R16
4CF 2F20 MOV R18,R16
4D0 2F30 MOV R19,R16
4D1 CFF1 RJMP 0x04C3
fpmule2:
4D2 93FA ST R31,-Y
4D3 93EA ST R30,-Y
4D4 2FEC MOV R30,R28
4D5 2FFD MOV R31,R29
4D6 9632 ADIW R30,2
4D7 940E 0482 CALL fpmule
4D9 91E9 LD R30,Y+
4DA 91F9 LD R31,Y+
4DB 9624 ADIW R28,4
4DC 9508 RET
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -