📄 1820.lst
字号:
268 16E2 CP R14,R18
269 06F3 CPC R15,R19
26A F018 BCS 0x026E
26B 1AE2 SUB R14,R18
26C 0AF3 SBC R15,R19
26D 9503 INC R16
26E 958A DEC R24
26F F7A1 BNE 0x0264
270 F416 BRTC 0x0273
271 2D0E MOV R16,R14
272 2D1F MOV R17,R15
273 9189 LD R24,Y+
274 90F9 LD R15,Y+
275 90E9 LD R14,Y+
276 9508 RET
pop_xgset003C:
277 90A9 LD R10,Y+
278 90B9 LD R11,Y+
279 90C9 LD R12,Y+
27A 90D9 LD R13,Y+
27B 9508 RET
pop_xgset00FC:
27C 90A9 LD R10,Y+
27D 90B9 LD R11,Y+
27E 90C9 LD R12,Y+
27F 90D9 LD R13,Y+
280 90E9 LD R14,Y+
281 90F9 LD R15,Y+
282 9508 RET
pop_xgsetF0FC:
283 90A9 LD R10,Y+
284 90B9 LD R11,Y+
285 90C9 LD R12,Y+
286 90D9 LD R13,Y+
287 90E9 LD R14,Y+
288 90F9 LD R15,Y+
289 9149 LD R20,Y+
28A 9159 LD R21,Y+
28B 9169 LD R22,Y+
28C 9179 LD R23,Y+
28D 9508 RET
push_xgsetF0FC:
28E 937A ST R23,-Y
28F 936A ST R22,-Y
push_xgset30FC:
290 935A ST R21,-Y
291 934A ST R20,-Y
push_xgset00FC:
292 92FA ST R15,-Y
293 92EA ST R14,-Y
push_xgset003C:
294 92DA ST R13,-Y
295 92CA ST R12,-Y
296 92BA ST R11,-Y
297 92AA ST R10,-Y
298 9508 RET
push_xgset300C:
299 935A ST R21,-Y
29A 934A ST R20,-Y
29B 92BA ST R11,-Y
29C 92AA ST R10,-Y
29D 9508 RET
pop_xgset300C:
29E 90A9 LD R10,Y+
29F 90B9 LD R11,Y+
2A0 9149 LD R20,Y+
2A1 9159 LD R21,Y+
2A2 9508 RET
push_xgsetF00C:
2A3 937A ST R23,-Y
2A4 936A ST R22,-Y
2A5 935A ST R21,-Y
2A6 934A ST R20,-Y
2A7 92BA ST R11,-Y
2A8 92AA ST R10,-Y
2A9 9508 RET
pop_xgsetF00C:
2AA 90A9 LD R10,Y+
2AB 90B9 LD R11,Y+
2AC 9149 LD R20,Y+
2AD 9159 LD R21,Y+
2AE 9169 LD R22,Y+
2AF 9179 LD R23,Y+
2B0 9508 RET
push_xgset303C:
2B1 935A ST R21,-Y
2B2 934A ST R20,-Y
2B3 92DA ST R13,-Y
2B4 92CA ST R12,-Y
2B5 92BA ST R11,-Y
2B6 92AA ST R10,-Y
2B7 9508 RET
pop_xgset303C:
2B8 90A9 LD R10,Y+
2B9 90B9 LD R11,Y+
2BA 90C9 LD R12,Y+
2BB 90D9 LD R13,Y+
2BC 9149 LD R20,Y+
2BD 9159 LD R21,Y+
2BE 9508 RET
neg32:
2BF 9500 COM R16
2C0 9510 COM R17
2C1 9520 COM R18
2C2 9530 COM R19
2C3 5F0F SUBI R16,0xFF
2C4 4F1F SBCI R17,0xFF
2C5 4F2F SBCI R18,0xFF
2C6 4F3F SBCI R19,0xFF
2C7 9508 RET
lpm32:
2C8 93EA ST R30,-Y
2C9 93FA ST R31,-Y
2CA 920A ST R0,-Y
2CB 2FE0 MOV R30,R16
2CC 2FF1 MOV R31,R17
2CD 95C8 LPM
2CE 2D00 MOV R16,R0
2CF 9631 ADIW R30,1
2D0 95C8 LPM
2D1 2D10 MOV R17,R0
2D2 9631 ADIW R30,1
2D3 95C8 LPM
2D4 2D20 MOV R18,R0
2D5 9631 ADIW R30,1
2D6 95C8 LPM
2D7 2D30 MOV R19,R0
2D8 9009 LD R0,Y+
2D9 91F9 LD R31,Y+
2DA 91E9 LD R30,Y+
2DB 9508 RET
lsr8:
2DC 2311 TST R17
2DD F019 BEQ 0x02E1
2DE 9506 LSR R16
2DF 951A DEC R17
2E0 CFFB RJMP lsr8
2E1 9508 RET
fpint:
2E2 934A ST R20,-Y
2E3 935A ST R21,-Y
2E4 936A ST R22,-Y
2E5 940E 033E CALL unpacku
2E7 F0F1 BEQ 0x0306
2E8 2355 TST R21
2E9 F0C2 BMI 0x0302
2EA 314F CPI R20,0x1F
2EB F4A8 BCC 0x0301
2EC 3147 CPI R20,0x17
2ED F0C1 BEQ 0x0306
2EE F450 BCC 0x02F9
2EF 9541 NEG R20
2F0 5E49 SUBI R20,0xE9
2F1 C005 RJMP 0x02F7
2F2 9535 ASR R19
2F3 9527 ROR R18
2F4 9517 ROR R17
2F5 9507 ROR R16
2F6 954A DEC R20
2F7 F7D1 BNE 0x02F2
2F8 C00D RJMP 0x0306
2F9 5147 SUBI R20,0x17
2FA 0F00 LSL R16
2FB 1F11 ROL R17
2FC 1F22 ROL R18
2FD 1F33 ROL R19
2FE 954A DEC R20
2FF F7D1 BNE 0x02FA
300 C005 RJMP 0x0306
301 E73F LDI R19,0x7F
302 2F23 MOV R18,R19
303 2F13 MOV R17,R19
304 2F03 MOV R16,R19
305 C004 RJMP 0x030A
306 2366 TST R22
307 F011 BEQ 0x030A
308 940E 02BF CALL neg32
30A 9169 LD R22,Y+
30B 9159 LD R21,Y+
30C 9149 LD R20,Y+
30D 9508 RET
uint2fp:
30E 9468 BSET 6
30F C001 RJMP 0x0311
int2fp:
310 94E8 BCLR 6
311 2722 CLR R18
312 2733 CLR R19
313 F046 BRTS 0x031C
314 FD17 SBRC R17,7
315 9520 COM R18
316 FD17 SBRC R17,7
317 9530 COM R19
318 C003 RJMP 0x031C
ulong2fp:
319 9468 BSET 6
31A C001 RJMP 0x031C
long2fp:
31B 94E8 BCLR 6
31C 934A ST R20,-Y
31D 935A ST R21,-Y
31E 936A ST R22,-Y
31F E147 LDI R20,0x17
320 2766 CLR R22
321 2755 CLR R21
322 F02E BRTS 0x0328
323 2333 TST R19
324 F41A BPL 0x0328
325 940E 02BF CALL neg32
327 E860 LDI R22,0x80
328 940E 0353 CALL normalize_and_pack
32A 9169 LD R22,Y+
32B 9159 LD R21,Y+
32C 9149 LD R20,Y+
32D 9508 RET
unpacks:
32E D00F RCALL unpacku
32F F029 BEQ 0x0335
330 2366 TST R22
331 F011 BEQ 0x0334
332 940E 02BF CALL neg32
334 9498 BCLR 1
335 9508 RET
tstR16_R19:
336 2300 TST R16
337 F429 BNE 0x033D
338 2311 TST R17
339 F419 BNE 0x033D
33A 2322 TST R18
33B F409 BNE 0x033D
33C 2333 TST R19
33D 9508 RET
unpacku:
33E DFF7 RCALL tstR16_R19
33F F079 BEQ 0x034F
340 2F63 MOV R22,R19
341 7860 ANDI R22,0x80
342 0F22 LSL R18
343 1F33 ROL R19
344 2F43 MOV R20,R19
345 E75F LDI R21,0x7F
346 1B45 SUB R20,R21
347 2755 CLR R21
348 4050 SBCI R21,0
349 9526 LSR R18
34A E830 LDI R19,0x80
34B 2B23 OR R18,R19
34C 2733 CLR R19
34D 9498 BCLR 1
34E 9508 RET
34F 2744 CLR R20
350 2755 CLR R21
351 2766 CLR R22
352 9508 RET
normalize_and_pack:
353 DFE2 RCALL tstR16_R19
354 F121 BEQ 0x0379
355 939A ST R25,-Y
356 938A ST R24,-Y
357 E78E LDI R24,0x7E
358 E090 LDI R25,0
359 2333 TST R19
35A F051 BEQ 0x0365
35B 9536 LSR R19
35C 9527 ROR R18
35D 9517 ROR R17
35E 9507 ROR R16
35F 1748 CP R20,R24
360 0759 CPC R21,R25
361 F4C4 BGE 0x037A
362 5F4F SUBI R20,0xFF
363 4F5F SBCI R21,0xFF
364 CFF4 RJMP 0x0359
365 9580 COM R24
366 9590 COM R25
367 9601 ADIW R24,1
368 2322 TST R18
369 F0AA BMI 0x037F
36A 0F00 LSL R16
36B 1F11 ROL R17
36C 1F22 ROL R18
36D 1748 CP R20,R24
36E 0759 CPC R21,R25
36F F01C BLT 0x0373
370 5041 SUBI R20,1
371 4050 SBCI R21,0
372 CFF5 RJMP 0x0368
373 2700 CLR R16
374 2711 CLR R17
375 2722 CLR R18
376 2733 CLR R19
377 9189 LD R24,Y+
378 9199 LD R25,Y+
379 9508 RET
37A 2733 CLR R19
37B EF0F LDI R16,0xFF
37C 2F10 MOV R17,R16
37D E72F LDI R18,0x7F
37E 2F32 MOV R19,R18
37F 9189 LD R24,Y+
380 9199 LD R25,Y+
pack:
381 DFB4 RCALL tstR16_R19
382 F039 BEQ 0x038A
383 5841 SUBI R20,0x81
384 4F5F SBCI R21,0xFF
385 2F34 MOV R19,R20
386 0F22 LSL R18
387 9536 LSR R19
388 9527 ROR R18
389 2B36 OR R19,R22
38A 9508 RET
fpneg:
38B DFAA RCALL tstR16_R19
38C F021 BEQ 0x0391
38D 930F PUSH R16
38E E800 LDI R16,0x80
38F 2730 EOR R19,R16
390 910F POP R16
391 9508 RET
fpneg2:
392 DFF8 RCALL fpneg
393 933A ST R19,-Y
394 932A ST R18,-Y
395 931A ST R17,-Y
396 930A ST R16,-Y
397 9508 RET
saveR8toR25:
398 928A ST R8,-Y
399 929A ST R9,-Y
39A 92AA ST R10,-Y
39B 92BA ST R11,-Y
39C 92CA ST R12,-Y
39D 92DA ST R13,-Y
39E 92EA ST R14,-Y
39F 92FA ST R15,-Y
3A0 934A ST R20,-Y
3A1 935A ST R21,-Y
3A2 936A ST R22,-Y
3A3 937A ST R23,-Y
3A4 938A ST R24,-Y
3A5 939A ST R25,-Y
3A6 9508 RET
restoreR8toR25:
3A7 9199 LD R25,Y+
3A8 9189 LD R24,Y+
3A9 9179 LD R23,Y+
3AA 9169 LD R22,Y+
3AB 9159 LD R21,Y+
3AC 9149 LD R20,Y+
3AD 90F9 LD R15,Y+
3AE 90E9 LD R14,Y+
3AF 90D9 LD R13,Y+
3B0 90C9 LD R12,Y+
3B1 90B9 LD R11,Y+
3B2 90A9 LD R10,Y+
3B3 9099 LD R9,Y+
3B4 9089 LD R8,Y+
3B5 9508 RET
fpmule:
3B6 940E 0398 CALL saveR8toR25
3B8 93AA ST R26,-Y
3B9 93BA ST R27,-Y
3BA 940E 033E CALL unpacku
3BC F1D1 BEQ 0x03F7
3BD 2EE6 MOV R14,R22
3BE 2ED5 MOV R13,R21
3BF 2EC4 MOV R12,R20
3C0 2EB3 MOV R11,R19
3C1 2EA2 MOV R10,R18
3C2 2E91 MOV R9,R17
3C3 2E80 MOV R8,R16
3C4 8100 LDD R16,Z+0
3C5 8111 LDD R17,Z+1
3C6 8122 LDD R18,Z+2
3C7 8133 LDD R19,Z+3
3C8 940E 033E CALL unpacku
3CA F161 BEQ 0x03F7
3CB 256E EOR R22,R14
3CC 0D4C ADD R20,R12
3CD 1D5D ADC R21,R13
3CE 3840 CPI R20,0x80
3CF 0753 CPC R21,R19
3D0 F55C BGE 0x03FC
3D1 3841 CPI R20,0x81
3D2 EF7F LDI R23,0xFF
3D3 0757 CPC R21,R23
3D4 F164 BLT 0x0401
3D5 9EA2 MUL R10,R18
3D6 2DB1 MOV R27,R1
3D7 2DA0 MOV R26,R0
3D8 9E91 MUL R9,R17
3D9 2D91 MOV R25,R1
3DA 2D80 MOV R24,R0
3DB 9EA0 MUL R10,R16
3DC 0D80 ADD R24,R0
3DD 1D91 ADC R25,R1
3DE 1FA3 ADC R26,R19
3DF 1FB3 ADC R27,R19
3E0 9E82 MUL R8,R18
3E1 0D80 ADD R24,R0
3E2 1D91 ADC R25,R1
3E3 1FA3 ADC R26,R19
3E4 1FB3 ADC R27,R19
3E5 9E92 MUL R9,R18
3E6 0D90 ADD R25,R0
3E7 1DA1 ADC R26,R1
3E8 1FB3 ADC R27,R19
3E9 9EA1 MUL R10,R17
3EA 0D90 ADD R25,R0
3EB 1DA1 ADC R26,R1
3EC 1FB3 ADC R27,R19
3ED 2F2B MOV R18,R27
3EE 2F1A MOV R17,R26
3EF 2F09 MOV R16,R25
3F0 0F88 LSL R24
3F1 1F00 ROL R16
3F2 1F11 ROL R17
3F3 1F22 ROL R18
3F4 1F33 ROL R19
3F5 940E 0353 CALL normalize_and_pack
3F7 91B9 LD R27,Y+
3F8 91A9 LD R26,Y+
3F9 940E 03A7 CALL restoreR8toR25
3FB 9508 RET
3FC EF0F LDI R16,0xFF
3FD 2F10 MOV R17,R16
3FE E72F LDI R18,0x7F
3FF E74F LDI R20,0x7F
400 CFF6 RJMP 0x03F7
401 2700 CLR R16
402 2F10 MOV R17,R16
403 2F20 MOV R18,R16
404 2F30 MOV R19,R16
405 CFF1 RJMP 0x03F7
fpmule2:
406 93FA ST R31,-Y
407 93EA ST R30,-Y
408 2FEC MOV R30,R28
409 2FFD MOV R31,R29
40A 9632 ADIW R30,2
40B 940E 03B6 CALL fpmule
40D 91E9 LD R30,Y+
40E 91F9 LD R31,Y+
40F 9624 ADIW R28,4
410 9508 RET
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -