📄 main.lst
字号:
0347 2962 OR R22,R2
0348 2973 OR R23,R3
0349 3060 CPI R22,0
034A E0E8 LDI R30,0x8
034B 077E CPC R23,R30
034C F079 BEQ 0x035C
034D 3060 CPI R22,0
034E E0E8 LDI R30,0x8
034F 077E CPC R23,R30
0350 F40C BGE 0x0352
0351 C044 RJMP 0x0396
0352 3066 CPI R22,6
0353 E0E8 LDI R30,0x8
0354 077E CPC R23,R30
0355 F009 BEQ 0x0357
0356 C03F RJMP 0x0396
0357 E104 LDI R16,0x14
0358 E012 LDI R17,2
0359 940E0437 CALL _arp_response
035B C03A RJMP 0x0396
035C E104 LDI R16,0x14
035D E012 LDI R17,2
035E 940E0513 CALL _ip_packhandle
0360 2F60 MOV R22,R16
0361 2777 CLR R23
0362 3061 CPI R22,1
0363 E0E0 LDI R30,0
0364 077E CPC R23,R30
0365 F049 BEQ 0x036F
0366 3061 CPI R22,1
0367 E0E0 LDI R30,0
0368 077E CPC R23,R30
0369 F164 BLT 0x0396
036A 3161 CPI R22,0x11
036B E0E0 LDI R30,0
036C 077E CPC R23,R30
036D F141 BEQ 0x0396
036E C027 RJMP 0x0396
036F 802D LDD R2,Y+5
0370 92200206 STS 0x206,R2
0372 802C LDD R2,Y+4
0373 92200207 STS 0x207,R2
0375 802B LDD R2,Y+3
0376 92200208 STS 0x208,R2
0378 802A LDD R2,Y+2
0379 92200209 STS 0x209,R2
037B 8029 LDD R2,Y+1
037C 9220020A STS 0x20A,R2
037E 8028 LDD R2,Y+0
037F 9220020B STS 0x20B,R2
0381 842B LDD R2,Y+11
0382 9220020C STS 0x20C,R2
0384 842A LDD R2,Y+10
0385 9220020D STS 0x20D,R2
0387 8429 LDD R2,Y+9
0388 9220020E STS 0x20E,R2
038A 8428 LDD R2,Y+8
038B 9220020F STS 0x20F,R2
038D 802F LDD R2,Y+7
038E 92200210 STS 0x210,R2
0390 802E LDD R2,Y+6
0391 92200211 STS 0x211,R2
0393 E024 LDI R18,4
0394 018A MOVW R16,R20
0395 DF07 RCALL _rtl8019_sendpack
0396 962C ADIW R28,0xC
0397 940E0822 CALL pop_gset3
0399 9508 RET
_tsum:
tempp --> R10
cksum --> Y+0
size --> R18
buffer --> R16
039A 940E082F CALL push_gset3
039C 9724 SBIW R28,4
039D E040 LDI R20,0
039E E050 LDI R21,0
039F E060 LDI R22,0
03A0 E070 LDI R23,0
03A1 01FE MOVW R30,R28
03A2 8340 STD Z+0,R20
03A3 8351 STD Z+1,R21
03A4 8362 STD Z+2,R22
03A5 8373 STD Z+3,R23
03A6 FF20 SBRS R18,0
03A7 C01F RJMP 0x03C7
03A8 0158 MOVW R10,R16
03A9 0EA2 ADD R10,R18
03AA 1EB3 ADC R11,R19
03AB 5F2F SUBI R18,0xFF
03AC 4F3F SBCI R19,0xFF
03AD 2422 CLR R2
03AE 01F5 MOVW R30,R10
03AF 8220 STD Z+0,R2
03B0 C016 RJMP 0x03C7
03B1 01F8 MOVW R30,R16
03B2 9021 LD R2,Z+
03B3 9031 LD R3,Z+
03B4 018F MOVW R16,R30
03B5 2444 CLR R4
03B6 2455 CLR R5
03B7 01FE MOVW R30,R28
03B8 8060 LDD R6,Z+0
03B9 8071 LDD R7,Z+1
03BA 8082 LDD R8,Z+2
03BB 8093 LDD R9,Z+3
03BC 0C62 ADD R6,R2
03BD 1C73 ADC R7,R3
03BE 1C84 ADC R8,R4
03BF 1C95 ADC R9,R5
03C0 01FE MOVW R30,R28
03C1 8260 STD Z+0,R6
03C2 8271 STD Z+1,R7
03C3 8282 STD Z+2,R8
03C4 8293 STD Z+3,R9
03C5 5022 SUBI R18,2
03C6 4030 SBCI R19,0
03C7 3020 CPI R18,0
03C8 0723 CPC R18,R19
03C9 F739 BNE 0x03B1
03CA 01FE MOVW R30,R28
03CB 8020 LDD R2,Z+0
03CC 8031 LDD R3,Z+1
03CD 8042 LDD R4,Z+2
03CE 8053 LDD R5,Z+3
03CF 0112 MOVW R2,R4
03D0 2444 CLR R4
03D1 2455 CLR R5
03D2 01FE MOVW R30,R28
03D3 8060 LDD R6,Z+0
03D4 8071 LDD R7,Z+1
03D5 2488 CLR R8
03D6 2499 CLR R9
03D7 0C62 ADD R6,R2
03D8 1C73 ADC R7,R3
03D9 1C84 ADC R8,R4
03DA 1C95 ADC R9,R5
03DB 01FE MOVW R30,R28
03DC 8260 STD Z+0,R6
03DD 8271 STD Z+1,R7
03DE 8282 STD Z+2,R8
03DF 8293 STD Z+3,R9
03E0 01FE MOVW R30,R28
03E1 8100 LDD R16,Z+0
03E2 8111 LDD R17,Z+1
03E3 9500 COM R16
03E4 9510 COM R17
03E5 9624 ADIW R28,4
03E6 940E0822 CALL pop_gset3
03E8 9508 RET
_send_ippack:
protocol --> Y+26
packtype --> R22
len --> R20
03E9 940E0831 CALL push_gset2
03EB 01B9 MOVW R22,R18
03EC 01A8 MOVW R20,R16
03ED 9766 SBIW R28,0x16
03EE 8B7D STD Y+21,R23
03EF 8B6C STD Y+20,R22
03F0 E485 LDI R24,0x45
03F1 8B8A STD Y+18,R24
03F2 E483 LDI R24,0x43
03F3 8B88 STD Y+16,R24
03F4 E489 LDI R24,0x49
03F5 878E STD Y+14,R24
03F6 E486 LDI R24,0x46
03F7 878C STD Y+12,R24
03F8 878A STD Y+10,R24
03F9 E48F LDI R24,0x4F
03FA 8788 STD Y+8,R24
03FB 90201101 LDS R2,tempmac_d0
03FD 822E STD Y+6,R2
03FE 90201102 LDS R2,tempmac_d1
0400 822C STD Y+4,R2
0401 90201103 LDS R2,tempmac_d2
0403 822A STD Y+2,R2
0404 90201104 LDS R2,tempmac_d3
0406 8228 STD Y+0,R2
0407 91201105 LDS R18,tempmac_d4
0409 91001106 LDS R16,tempmac_d5
040B DEB7 RCALL _buildpack
040C 90201109 LDS R2,tempip_d0
040E 862A STD Y+10,R2
040F 9020110A LDS R2,tempip_d1
0411 8628 STD Y+8,R2
0412 9020110B LDS R2,tempip_d2
0414 822E STD Y+6,R2
0415 9020110C LDS R2,tempip_d3
0417 822C STD Y+4,R2
0418 8C0A LDD R0,Y+26
0419 820A STD Y+2,R0
041A 90200200 LDS R2,0x200
041C 90300201 LDS R3,0x201
041E 8239 STD Y+1,R3
041F 8228 STD Y+0,R2
0420 019A MOVW R18,R20
0421 502E SUBI R18,0xE
0422 4030 SBCI R19,0
0423 E100 LDI R16,0x10
0424 E012 LDI R17,2
0425 940E0612 CALL _ip_buildpack
0427 3440 CPI R20,0x40
0428 E0E0 LDI R30,0
0429 075E CPC R21,R30
042A F428 BCC 0x0430
042B 2722 CLR R18
042C E400 LDI R16,0x40
042D E010 LDI R17,0
042E DE6E RCALL _rtl8019_sendpack
042F C003 RJMP 0x0433
0430 2722 CLR R18
0431 018A MOVW R16,R20
0432 DE6A RCALL _rtl8019_sendpack
0433 9666 ADIW R28,0x16
0434 940E081F CALL pop_gset2
0436 9508 RET
_arp_response:
ip_sou3 --> R14
ip_sou2 --> R12
ip_sou1 --> R10
ip_sou0 --> R20
mac_sou5 --> R22
mac_sou4 --> Y+28
mac_sou3 --> Y+27
mac_sou2 --> Y+26
mac_sou1 --> Y+25
mac_sou0 --> Y+24
arpbegin --> R4
0437 940E082B CALL push_gset5
0439 0128 MOVW R4,R16
043A 976D SBIW R28,0x1D
043B 2400 CLR R0
043C 8E08 STD Y+24,R0
043D 8E09 STD Y+25,R0
043E 8E0A STD Y+26,R0
043F 8E0B STD Y+27,R0
0440 8E0C STD Y+28,R0
0441 2766 CLR R22
0442 2744 CLR R20
0443 24AA CLR R10
0444 24CC CLR R12
0445 24EE CLR R14
0446 01F2 MOVW R30,R4
0447 8020 LDD R2,Z+0
0448 2022 TST R2
0449 F009 BEQ 0x044B
044A C0C4 RJMP 0x050F
044B 8181 LDD R24,Z+1
044C 3081 CPI R24,1
044D F009 BEQ 0x044F
044E C0C0 RJMP 0x050F
044F 01F2 MOVW R30,R4
0450 8182 LDD R24,Z+2
0451 3088 CPI R24,0x8
0452 F009 BEQ 0x0454
0453 C0BB RJMP 0x050F
0454 01F2 MOVW R30,R4
0455 8023 LDD R2,Z+3
0456 2022 TST R2
0457 F009 BEQ 0x0459
0458 C0B6 RJMP 0x050F
0459 01F2 MOVW R30,R4
045A 8D80 LDD R24,Z+24
045B 3C80 CPI R24,0xC0
045C F461 BNE 0x0469
045D 01F2 MOVW R30,R4
045E 8D81 LDD R24,Z+25
045F 3A88 CPI R24,0xA8
0460 F441 BNE 0x0469
0461 01F2 MOVW R30,R4
0462 8C22 LDD R2,Z+26
0463 2022 TST R2
0464 F421 BNE 0x0469
0465 01F2 MOVW R30,R4
0466 8D83 LDD R24,Z+27
0467 3683 CPI R24,0x63
0468 F009 BEQ 0x046A
0469 C0A5 RJMP 0x050F
046A 01F2 MOVW R30,R4
046B 8027 LDD R2,Z+7
046C 2433 CLR R3
046D 8A3F STD Y+23,R3
(0208) ".org 0x01F0\n"
(0209) " _key1_ok:: .blkb 1\n"
(0210) );
(0211)
(0212) asm( ".area memory(abs)\n"
(0213) ".org 0x01F4\n"
(0214) " _udpbuffer_in_rp:: .blkb 2\n"
(0215) );
(0216)
(0217) asm( ".area memory(abs)\n"
(0218) ".org 0x01F6\n"
(0219) " _udpbuffer_in_p:: .blkb 2\n"
(0220) );
(0221)
(0222) asm( ".area memory(abs)\n"
(0223) ".org 0x01F8\n"
(0224) " _udpdatalen:: .blkb 2\n"
(0225) );
(0226)
(0227) asm( ".area memory(abs)\n"
(0228) ".org 0x01FA\n"
(0229) " _to_udpport:: .blkb 2\n"
(0230) );
(0231)
(0232) asm( ".area memory(abs)\n"
(0233) ".org 0x01FC\n"
(0234) " _curr_temp:: .blkb 2\n"
(0235) );
(0236) asm( ".area memory(abs)\n"
(0237) ".org 0x01FE\n"
(0238) " _curr:: .blkb 2\n"
(0239) );
(0240)
(0241) asm( ".area memory(abs)\n"
(0242) ".org 0x0200\n"
(0243) " _ip_id:: .blkb 2\n"
(0244) );
(0245)
(0246) asm(".area memory(abs)\n"
(0247) ".org 0x0202\n"
(0248) " _buffer:: .blkb 1536\n"
(0249) );
(0250)
(0251) asm( ".area memory(abs)\n"
046E 8A2E STD Y+22,R2
046F 01C1 MOVW R24,R2
0470 3081 CPI R24,1
0471 E0E0 LDI R30,0
0472 079E CPC R25,R30
0473 F081 BEQ 0x0484
0474 3082 CPI R24,2
0475 E0E0 LDI R30,0
0476 079E CPC R25,R30
0477 F409 BNE 0x0479
0478 C096 RJMP 0x050F
0479 3083 CPI R24,3
047A E0E0 LDI R30,0
047B 079E CPC R25,R30
047C F409 BNE 0x047E
047D C091 RJMP 0x050F
047E 3084 CPI R24,4
047F E0E0 LDI R30,0
0480 079E CPC R25,R30
0481 F409 BNE 0x0483
0482 C08C RJMP 0x050F
0483 C08B RJMP 0x050F
0484 01F2 MOVW R30,R4
0485 8560 LDD R22,Z+8
0486 01F2 MOVW R30,R4
0487 8421 LDD R2,Z+9
0488 8E2C STD Y+28,R2
0489 01F2 MOVW R30,R4
048A 8422 LDD R2,Z+10
048B 8E2B STD Y+27,R2
048C 01F2 MOVW R30,R4
048D 8423 LDD R2,Z+11
048E 8E2A STD Y+26,R2
048F 01F2 MOVW R30,R4
0490 8424 LDD R2,Z+12
0491 8E29 STD Y+25,R2
0492 01F2 MOVW R30,R4
0493 8425 LDD R2,Z+13
0494 8E28 STD Y+24,R2
0495 01F2 MOVW R30,R4
0496 84E6 LDD R14,Z+14
0497 01F2 MOVW R30,R4
0498 84C7 LDD R12,Z+15
0499 01F2 MOVW R30,R4
049A 88A0 LDD R10,Z+16
049B 01F2 MOVW R30,R4
049C 8941 LDD R20,Z+17
049D E086 LDI R24,6
049E E098 LDI R25,0x8
049F 8B9D STD Y+21,R25
04A0 8B8C STD Y+20,R24
04A1 E485 LDI R24,0x45
04A2 8B8A STD Y+18,R24
04A3 E483 LDI R24,0x43
04A4 8B88 STD Y+16,R24
04A5 E489 LDI R24,0x49
04A6 878E STD Y+14,R24
04A7 E486 LDI R24,0x46
04A8 878C STD Y+12,R24
04A9 878A STD Y+10,R24
04AA E48F LDI R24,0x4F
04AB 8788 STD Y+8,R24
04AC 2C02 MOV R0,R2
04AD 820E STD Y+6,R0
04AE 8C09 LDD R0,Y+25
04AF 820C STD Y+4,R0
04B0 8C0A LDD R0,Y+26
04B1 820A STD Y+2,R0
04B2 8C0B LDD R0,Y+27
04B3 8208 STD Y+0,R0
04B4 8D2C LDD R18,Y+28
04B5 2F06 MOV R16,R22
04B6 924F PUSH R4
04B7 925F PUSH R5
04B8 940E02C3 CALL _buildpack
04BA 905F POP R5
04BB 904F POP R4
04BC 2422 CLR R2
04BD 01F2 MOVW R30,R4
04BE 9734 SBIW R30,4
04BF 8220 STD Z+0,R2
04C0 E081 LDI R24,1
04C1 01F2 MOVW R30,R4
04C2 9733 SBIW R30,3
04C3 8380 STD Z+0,R24
04C4 E088 LDI R24,0x8
04C5 01F2 MOVW R30,R4
04C6 9732 SBIW R30,2
04C7 8380 STD Z+0,R24
04C8 01F2 MOVW R30,R4
04C9 9731 SBIW R30,1
04CA 8220 STD Z+0,R2
04CB E086 LDI R24,6
04CC 01F2 MOVW R30,R4
04CD 8380 STD Z+0,R24
04CE E084 LDI R24,4
04CF 8381 STD Z+1,R24
04D0 01F2 MOVW R30,R4
04D1 8222 STD Z+2,R2
04D2 E082 LDI R24,2
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -