📄 uart.lst
字号:
02DA F431 BNE 0x02E1
02DB 20DD TST R13
02DC F421 BNE 0x02E1
02DD EE8D LDI R24,0xED
02DE E090 LDI R25,0
02DF 2EC8 MOV R12,R24
02E0 2ED9 MOV R13,R25
02E1 326D CPI R22,0x2D
02E2 F4E1 BNE 0x02FF
02E3 E20D LDI R16,0x2D
02E4 89EC LDD R30,Y+20
02E5 89FD LDD R31,Y+21
02E6 940E038C CALL xicall
02E8 818E LDD R24,Y+6
02E9 819F LDD R25,Y+7
02EA 9601 ADIW R24,1
02EB 839F STD Y+7,R25
02EC 838E STD Y+6,R24
02ED C011 RJMP 0x02FF
02EE 2DEC MOV R30,R12
02EF 2DFD MOV R31,R13
02F0 8100 LDD R16,Z+0
02F1 89EC LDD R30,Y+20
02F2 89FD LDD R31,Y+21
02F3 940E038C CALL xicall
02F5 818E LDD R24,Y+6
02F6 819F LDD R25,Y+7
02F7 9601 ADIW R24,1
02F8 839F STD Y+7,R25
02F9 838E STD Y+6,R24
02FA 2D8C MOV R24,R12
02FB 2D9D MOV R25,R13
02FC 9601 ADIW R24,1
02FD 2EC8 MOV R12,R24
02FE 2ED9 MOV R13,R25
02FF 2DEC MOV R30,R12
0300 2DFD MOV R31,R13
0301 8020 LDD R2,Z+0
0302 2022 TST R2
0303 F751 BNE 0x02EE
0304 C005 RJMP 0x030A
0305 E88A LDI R24,0x8A
0306 E090 LDI R25,0
0307 2EC8 MOV R12,R24
0308 2ED9 MOV R13,R25
0309 CFD7 RJMP 0x02E1
030A 898E LDD R24,Y+22
030B 899F LDD R25,Y+23
030C 9601 ADIW R24,1
030D 8B9F STD Y+23,R25
030E 8B8E STD Y+22,R24
030F 89EE LDD R30,Y+22
0310 89FF LDD R31,Y+23
0311 8020 LDD R2,Z+0
0312 2022 TST R2
0313 F009 BEQ 0x0315
0314 CE6B RJMP 0x0180
0315 810E LDD R16,Y+6
0316 811F LDD R17,Y+7
0317 962A ADIW R28,0xA
0318 940E036A CALL pop_gset5
031A 9624 ADIW R28,4
031B 9508 RET
_strcpy:
031C 2FA0 MOV R26,R16
031D 2FB1 MOV R27,R17
031E 2FE2 MOV R30,R18
031F 2FF3 MOV R31,R19
0320 9001 LD R0,Z+
0321 920D ST R0,X+
0322 2000 TST R0
0323 F7E1 BNE 0x0320
0324 9508 RET
push_arg4:
0325 933A ST R19,-Y
0326 932A ST R18,-Y
push_arg2:
0327 931A ST R17,-Y
0328 930A ST R16,-Y
0329 9508 RET
mod16s:
032A 9468 BSET 6
032B 92DA ST R13,-Y
032C 2ED1 MOV R13,R17
032D C004 RJMP 0x0332
div16s:
032E 94E8 BCLR 6
032F 92DA ST R13,-Y
0330 2ED1 MOV R13,R17
0331 26D3 EOR R13,R19
0332 FF17 SBRS R17,7
0333 C004 RJMP 0x0338
0334 9510 COM R17
0335 9500 COM R16
0336 5F0F SUBI R16,0xFF
0337 4F1F SBCI R17,0xFF
0338 FF37 SBRS R19,7
0339 C004 RJMP 0x033E
033A 9530 COM R19
033B 9520 COM R18
033C 5F2F SUBI R18,0xFF
033D 4F3F SBCI R19,0xFF
033E 940E034B CALL xdiv16u
0340 FED7 SBRS R13,7
0341 C004 RJMP 0x0346
0342 9510 COM R17
0343 9500 COM R16
0344 5F0F SUBI R16,0xFF
0345 4F1F SBCI R17,0xFF
0346 90D9 LD R13,Y+
0347 9508 RET
mod16u:
0348 9468 BSET 6
0349 C001 RJMP xdiv16u
div16u:
034A 94E8 BCLR 6
xdiv16u:
034B 92EA ST R14,-Y
034C 92FA ST R15,-Y
034D 938A ST R24,-Y
034E 24EE CLR R14
034F 24FF CLR R15
0350 E180 LDI R24,0x10
0351 0F00 LSL R16
0352 1F11 ROL R17
0353 1CEE ROL R14
0354 1CFF ROL R15
0355 16E2 CP R14,R18
0356 06F3 CPC R15,R19
0357 F018 BCS 0x035B
0358 1AE2 SUB R14,R18
0359 0AF3 SBC R15,R19
035A 9503 INC R16
035B 958A DEC R24
035C F7A1 BNE 0x0351
035D F416 BRTC 0x0360
035E 2D0E MOV R16,R14
035F 2D1F MOV R17,R15
0360 9189 LD R24,Y+
0361 90F9 LD R15,Y+
0362 90E9 LD R14,Y+
0363 9508 RET
pop_gset2:
0364 E0E2 LDI R30,2
0365 940C0379 JMP pop
pop_gset4:
0367 E0E8 LDI R30,0x8
0368 940C0379 JMP pop
pop_gset5:
036A 27EE CLR R30
036B 940C0379 JMP pop
push_gset5:
036D 92FA ST R15,-Y
036E 92EA ST R14,-Y
push_gset4:
036F 92DA ST R13,-Y
0370 92CA ST R12,-Y
push_gset3:
0371 92BA ST R11,-Y
0372 92AA ST R10,-Y
push_gset2:
0373 937A ST R23,-Y
0374 936A ST R22,-Y
push_gset1:
0375 935A ST R21,-Y
0376 934A ST R20,-Y
0377 9508 RET
pop_gset1:
0378 E0E1 LDI R30,1
pop:
0379 9149 LD R20,Y+
037A 9159 LD R21,Y+
037B FDE0 SBRC R30,0
037C 9508 RET
037D 9169 LD R22,Y+
037E 9179 LD R23,Y+
037F FDE1 SBRC R30,1
0380 9508 RET
0381 90A9 LD R10,Y+
0382 90B9 LD R11,Y+
0383 FDE2 SBRC R30,2
0384 9508 RET
0385 90C9 LD R12,Y+
0386 90D9 LD R13,Y+
0387 FDE3 SBRC R30,3
0388 9508 RET
0389 90E9 LD R14,Y+
038A 90F9 LD R15,Y+
038B 9508 RET
xicall:
038C 920A ST R0,-Y
038D 95C8 LPM
038E 920A ST R0,-Y
038F 9631 ADIW R30,1
0390 95C8 LPM
0391 2DF0 MOV R31,R0
0392 91E9 LD R30,Y+
0393 9009 LD R0,Y+
0394 9409 IJMP
_putchar:
0395 940E0375 CALL push_gset1
0397 2F40 MOV R20,R16
0398 90200162 LDS R2,_textmode
039A 90300163 LDS R3,_textmode+1
039C 2022 TST R2
039D F411 BNE 0x03A0
039E 2033 TST R3
039F F021 BEQ 0x03A4
03A0 304A CPI R20,0xA
03A1 F411 BNE 0x03A4
03A2 E00D LDI R16,0xD
03A3 DFF1 RCALL _putchar
03A4 9B5D SBIS 0x0B,5
03A5 CFFE RJMP 0x03A4
03A6 B94C OUT 0x0C,R20
03A7 2F04 MOV R16,R20
03A8 2711 CLR R17
03A9 940E0378 CALL pop_gset1
03AB 9508 RET
_getchar:
03AC 9B5F SBIS 0x0B,7
03AD CFFE RJMP _getchar
03AE B10C IN R16,0x0C
03AF 2711 CLR R17
03B0 9508 RET
__va_start:
03B1 2F82 MOV R24,R18
03B2 2F93 MOV R25,R19
03B3 9601 ADIW R24,1
03B4 7F8E ANDI R24,0xFE
03B5 0F80 ADD R24,R16
03B6 1F91 ADC R25,R17
03B7 2F08 MOV R16,R24
03B8 2F19 MOV R17,R25
03B9 9508 RET
_itoa:
03BA 940E036D CALL push_gset5
03BC 2EC2 MOV R12,R18
03BD 2ED3 MOV R13,R19
03BE 2F40 MOV R20,R16
03BF 2F51 MOV R21,R17
03C0 97A2 SBIW R28,0x22
03C1 A4AC LDD R10,Y+44
03C2 A4BD LDD R11,Y+45
03C3 2D8C MOV R24,R12
03C4 2D9D MOV R25,R13
03C5 3080 CPI R24,0
03C6 E0E0 LDI R30,0
03C7 079E CPC R25,R30
03C8 F444 BGE 0x03D1
03C9 E061 LDI R22,1
03CA 9580 COM R24
03CB 9590 COM R25
03CC 5F8F SUBI R24,0xFF
03CD 4F9F SBCI R25,0xFF
03CE 2EC8 MOV R12,R24
03CF 2ED9 MOV R13,R25
03D0 C001 RJMP 0x03D2
03D1 2766 CLR R22
03D2 2422 CLR R2
03D3 A229 STD Y+33,R2
03D4 2F8C MOV R24,R28
03D5 2F9D MOV R25,R29
03D6 9681 ADIW R24,0x21
03D7 2EE8 MOV R14,R24
03D8 2EF9 MOV R15,R25
03D9 2D8E MOV R24,R14
03DA 2D9F MOV R25,R15
03DB 9701 SBIW R24,1
03DC 2E28 MOV R2,R24
03DD 2E39 MOV R3,R25
03DE 2EE8 MOV R14,R24
03DF 2EF9 MOV R15,R25
03E0 2D2A MOV R18,R10
03E1 2D3B MOV R19,R11
03E2 2D0C MOV R16,R12
03E3 2D1D MOV R17,R13
03E4 940E032A CALL mod16s
03E6 2FE0 MOV R30,R16
03E7 2FF1 MOV R31,R17
03E8 EF8F LDI R24,0xFF
03E9 E090 LDI R25,0
03EA 0FE8 ADD R30,R24
03EB 1FF9 ADC R31,R25
03EC 8040 LDD R4,Z+0
03ED 2DE2 MOV R30,R2
03EE 2DF3 MOV R31,R3
03EF 8240 STD Z+0,R4
03F0 2D2A MOV R18,R10
03F1 2D3B MOV R19,R11
03F2 2D0C MOV R16,R12
03F3 2D1D MOV R17,R13
03F4 940E032E CALL div16s
03F6 2EC0 MOV R12,R16
03F7 2ED1 MOV R13,R17
03F8 20CC TST R12
03F9 F6F9 BNE 0x03D9
03FA 20DD TST R13
03FB F6E9 BNE 0x03D9
03FC 2366 TST R22
03FD F059 BEQ 0x0409
03FE 2D8E MOV R24,R14
03FF 2D9F MOV R25,R15
0400 9701 SBIW R24,1
0401 2E28 MOV R2,R24
0402 2E39 MOV R3,R25
0403 2EE8 MOV R14,R24
0404 2EF9 MOV R15,R25
0405 E28D LDI R24,0x2D
0406 2DE2 MOV R30,R2
0407 2DF3 MOV R31,R3
0408 8380 STD Z+0,R24
0409 2D2E MOV R18,R14
040A 2D3F MOV R19,R15
040B 2F04 MOV R16,R20
040C 2F15 MOV R17,R21
040D 940E031C CALL _strcpy
040F 96A2 ADIW R28,0x22
0410 940E036A CALL pop_gset5
0412 9508 RET
_utoa:
0413 940E036F CALL push_gset4
0415 2EA2 MOV R10,R18
0416 2EB3 MOV R11,R19
0417 2EC0 MOV R12,R16
0418 2ED1 MOV R13,R17
0419 97A2 SBIW R28,0x22
041A A56A LDD R22,Y+42
041B A57B LDD R23,Y+43
041C 2422 CLR R2
041D A229 STD Y+33,R2
041E 2F4C MOV R20,R28
041F 2F5D MOV R21,R29
0420 5D4F SUBI R20,0xDF
0421 4F5F SBCI R21,0xFF
0422 2F84 MOV R24,R20
0423 2F95 MOV R25,R21
0424 9701 SBIW R24,1
0425 2E28 MOV R2,R24
0426 2E39 MOV R3,R25
0427 2F48 MOV R20,R24
0428 2F59 MOV R21,R25
0429 2F26 MOV R18,R22
042A 2F37 MOV R19,R23
042B 2D0A MOV R16,R10
042C 2D1B MOV R17,R11
042D 940E0348 CALL mod16u
042F 2FE0 MOV R30,R16
0430 2FF1 MOV R31,R17
0431 E284 LDI R24,0x24
0432 E091 LDI R25,1
0433 0FE8 ADD R30,R24
0434 1FF9 ADC R31,R25
0435 8040 LDD R4,Z+0
0436 2DE2 MOV R30,R2
0437 2DF3 MOV R31,R3
0438 8240 STD Z+0,R4
0439 2F26 MOV R18,R22
043A 2F37 MOV R19,R23
043B 2D0A MOV R16,R10
043C 2D1B MOV R17,R11
043D 940E034A CALL div16u
043F 2EA0 MOV R10,R16
0440 2EB1 MOV R11,R17
0441 20AA TST R10
0442 F6F9 BNE 0x0422
0443 20BB TST R11
0444 F6E9 BNE 0x0422
0445 2F24 MOV R18,R20
0446 2F35 MOV R19,R21
0447 2D0C MOV R16,R12
0448 2D1D MOV R17,R13
0449 940E031C CALL _strcpy
044B 96A2 ADIW R28,0x22
044C 940E0367 CALL pop_gset4
044E 9508 RET
_islower:
044F E587 LDI R24,0x57
0450 E090 LDI R25,0
0451 2E20 MOV R2,R16
0452 2E31 MOV R3,R17
0453 0E28 ADD R2,R24
0454 1E39 ADC R3,R25
0455 2DE2 MOV R30,R2
0456 2DF3 MOV R31,R3
0457 95C8 LPM
0458 2D00 MOV R16,R0
0459 2711 CLR R17
045A 7002 ANDI R16,2
045B 7010 ANDI R17,0
045C 9508 RET
_toupper:
045D 940E0375 CALL push_gset1
045F 2F40 MOV R20,R16
0460 2F51 MOV R21,R17
0461 2F04 MOV R16,R20
0462 2F15 MOV R17,R21
0463 940E044F CALL _islower
0465 3000 CPI R16,0
0466 0701 CPC R16,R17
0467 F039 BEQ 0x046F
0468 2F04 MOV R16,R20
0469 2F15 MOV R17,R21
046A 5601 SUBI R16,0x61
046B 4010 SBCI R17,0
046C 5B0F SUBI R16,0xBF
046D 4F1F SBCI R17,0xFF
046E C002 RJMP 0x0471
046F 2F04 MOV R16,R20
0470 2F15 MOV R17,R21
0471 940E0378 CALL pop_gset1
0473 9508 RET
_printf:
0474 940E0325 CALL push_arg4
0476 940E0375 CALL push_gset1
0478 9722 SBIW R28,2
0479 E022 LDI R18,2
047A E030 LDI R19,0
047B 2F0C MOV R16,R28
047C 2F1D MOV R17,R29
047D 5F0C SUBI R16,0xFC
047E 4F1F SBCI R17,0xFF
047F 940E03B1 CALL __va_start
0481 2F40 MOV R20,R16
0482 2F51 MOV R21,R17
0483 8359 STD Y+1,R21
0484 8348 STD Y+0,R20
0485 812C LDD R18,Y+4
0486 813D LDD R19,Y+5
0487 E504 LDI R16,0x54
0488 E010 LDI R17,0
0489 940E0176 CALL __print
048B 2F40 MOV R20,R16
048C 2F51 MOV R21,R17
048D 9622 ADIW R28,2
048E 940E0378 CALL pop_gset1
0490 9624 ADIW R28,4
0491 9508 RET
_puts:
0492 940E0373 CALL push_gset2
0494 2F60 MOV R22,R16
0495 2F71 MOV R23,R17
0496 2744 CLR R20
0497 2755 CLR R21
0498 C009 RJMP 0x04A2
0499 2FE6 MOV R30,R22
049A 2FF7 MOV R31,R23
049B 8100 LDD R16,Z+0
049C 940E0395 CALL _putchar
049E 5F4F SUBI R20,0xFF
049F 4F5F SBCI R21,0xFF
04A0 5F6F SUBI R22,0xFF
04A1 4F7F SBCI R23,0xFF
04A2 2FE6 MOV R30,R22
04A3 2FF7 MOV R31,R23
04A4 8020 LDD R2,Z+0
04A5 2022 TST R2
04A6 F791 BNE 0x0499
04A7 E00A LDI R16,0xA
04A8 940E0395 CALL _putchar
04AA E001 LDI R16,1
04AB E010 LDI R17,0
04AC 940E0364 CALL pop_gset2
04AE 9508 RET
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -