main.lst
来自「ARP协议,含ARP」· LST 代码 · 共 1,926 行 · 第 1/5 页
LST
1,926 行
1215 04c8 9140 sbci r25,hi8(301)
1216 04ca 00F4 brsh .L137
1217 .LM206:
1218 04cc E091 0000 lds r30,mb_head
1219 04d0 F091 0000 lds r31,(mb_head)+1
1220 04d4 3097 sbiw r30,0
1221 04d6 01F0 breq .L137
1222 .LM207:
1223 04d8 8081 ld r24,Z
1224 04da 9181 ldd r25,Z+1
1225 .LVL43:
1226 04dc 9093 0000 sts (mb_head)+1,r25
1227 04e0 8093 0000 sts mb_head,r24
1228 .LM208:
1229 04e4 1182 std Z+1,__zero_reg__
1230 04e6 1082 st Z,__zero_reg__
1231 .LM209:
1232 04e8 1382 std Z+3,__zero_reg__
1233 04ea 1282 std Z+2,__zero_reg__
1234 .LM210:
1235 04ec 9F01 movw r18,r30
1236 04ee 2C5F subi r18,lo8(-(4))
1237 04f0 3F4F sbci r19,hi8(-(4))
1238 04f2 00C0 rjmp .L138
1239 .LVL44:
1240 .L137:
1241 04f4 20E0 ldi r18,lo8(0)
1242 04f6 30E0 ldi r19,hi8(0)
1243 .L138:
1244 .LM211:
1245 04f8 C901 movw r24,r18
1246 .LVL45:
1247 /* epilogue start */
1248 04fa 0895 ret
1249 .LFE30:
1251 .global free_mem
1253 free_mem:
1254 .LFB31:
1255 .LM212:
1256 .LVL46:
1257 /* prologue: function */
1258 /* frame size = 0 */
1259 .LM213:
1260 04fc FC01 movw r30,r24
1261 .LVL47:
1262 04fe 3497 sbiw r30,4
1263 .LM214:
1264 0500 8091 0000 lds r24,mb_head
1265 0504 9091 0000 lds r25,(mb_head)+1
1266 .LVL48:
1267 0508 9183 std Z+1,r25
1268 050a 8083 st Z,r24
1269 .LM215:
1270 050c 1382 std Z+3,__zero_reg__
1271 050e 1282 std Z+2,__zero_reg__
1272 .LM216:
1273 0510 F093 0000 sts (mb_head)+1,r31
1274 0514 E093 0000 sts mb_head,r30
1275 /* epilogue start */
1276 .LM217:
1277 0518 0895 ret
1278 .LFE31:
1280 .global alloc_mb
1282 alloc_mb:
1283 .LFB32:
1284 .LM218:
1285 /* prologue: function */
1286 /* frame size = 0 */
1287 .LM219:
1288 051a E091 0000 lds r30,mb_head
1289 051e F091 0000 lds r31,(mb_head)+1
1290 0522 3097 sbiw r30,0
1291 0524 01F4 brne .L143
1292 0526 20E0 ldi r18,lo8(0)
1293 0528 30E0 ldi r19,hi8(0)
1294 052a 00C0 rjmp .L144
1295 .L143:
1296 .LM220:
1297 052c 8081 ld r24,Z
1298 052e 9181 ldd r25,Z+1
1299 0530 9093 0000 sts (mb_head)+1,r25
1300 0534 8093 0000 sts mb_head,r24
1301 .LM221:
1302 0538 1182 std Z+1,__zero_reg__
1303 053a 1082 st Z,__zero_reg__
1304 .LM222:
1305 053c 1382 std Z+3,__zero_reg__
1306 053e 1282 std Z+2,__zero_reg__
1307 .LM223:
1308 0540 9F01 movw r18,r30
1309 .L144:
1310 .LM224:
1311 0542 C901 movw r24,r18
1312 /* epilogue start */
1313 0544 0895 ret
1314 .LFE32:
1316 .global free_mb
1318 free_mb:
1319 .LFB33:
1320 .LM225:
1321 .LVL49:
1322 /* prologue: function */
1323 /* frame size = 0 */
1324 0546 FC01 movw r30,r24
1325 .LM226:
1326 0548 8091 0000 lds r24,mb_head
1327 054c 9091 0000 lds r25,(mb_head)+1
1328 .LVL50:
1329 0550 9183 std Z+1,r25
1330 0552 8083 st Z,r24
1331 .LM227:
1332 0554 1382 std Z+3,__zero_reg__
1333 0556 1282 std Z+2,__zero_reg__
1334 .LM228:
1335 0558 F093 0000 sts (mb_head)+1,r31
1336 055c E093 0000 sts mb_head,r30
1337 /* epilogue start */
1338 .LM229:
1339 0560 0895 ret
1340 .LFE33:
1342 .global chk_mem
1344 chk_mem:
1345 .LFB34:
1346 .LM230:
1347 .LVL51:
1348 /* prologue: function */
1349 /* frame size = 0 */
1350 .LM231:
1351 0562 20E0 ldi r18,lo8(mbs)
1352 0564 30E0 ldi r19,hi8(mbs)
1353 .L151:
1354 .LM232:
1355 0566 8217 cp r24,r18
1356 0568 9307 cpc r25,r19
1357 056a 01F4 brne .L149
1358 056c 81E0 ldi r24,lo8(1)
1359 .LVL52:
1360 056e 0895 ret
1361 .LVL53:
1362 .L149:
1363 0570 205D subi r18,lo8(-(304))
1364 0572 3E4F sbci r19,hi8(-(304))
1365 .LM233:
1366 0574 40E0 ldi r20,hi8(mbs+2128)
1367 0576 2030 cpi r18,lo8(mbs+2128)
1368 0578 3407 cpc r19,r20
1369 057a 01F4 brne .L151
1370 057c 80E0 ldi r24,lo8(0)
1371 .LVL54:
1372 .LM234:
1373 057e 0895 ret
1374 .LFE34:
1376 .global free_msg
1378 free_msg:
1379 .LFB36:
1380 .LM235:
1381 .LVL55:
1382 /* prologue: function */
1383 /* frame size = 0 */
1384 0580 FC01 movw r30,r24
1385 .LM236:
1386 0582 4091 0000 lds r20,mb_head
1387 .LVL56:
1388 0586 5091 0000 lds r21,mb_head+1
1389 .LVL57:
1390 058a 00C0 rjmp .L155
1391 .LVL58:
1392 .L156:
1393 .LM237:
1394 058c 8081 ld r24,Z
1395 .LVL59:
1396 058e 9181 ldd r25,Z+1
1397 .LVL60:
1398 .LBB439:
1399 .LBB440:
1400 .LM238:
1401 0590 4083 st Z,r20
1402 0592 5183 std Z+1,r21
1403 .LM239:
1404 0594 1382 std Z+3,__zero_reg__
1405 0596 1282 std Z+2,__zero_reg__
1406 0598 AF01 movw r20,r30
1407 059a FC01 movw r30,r24
1408 .LVL61:
1409 .L155:
1410 .LBE440:
1411 .LBE439:
1412 .LM240:
1413 059c 3097 sbiw r30,0
1414 059e 01F4 brne .L156
1415 05a0 4093 0000 sts mb_head,r20
1416 05a4 5093 0000 sts mb_head+1,r21
1417 /* epilogue start */
1418 .LM241:
1419 05a8 0895 ret
1420 .LFE36:
1422 .global get_msg_len
1424 get_msg_len:
1425 .LFB37:
1426 .LM242:
1427 .LVL62:
1428 /* prologue: function */
1429 /* frame size = 0 */
1430 05aa FC01 movw r30,r24
1431 .LM243:
1432 05ac 20E0 ldi r18,lo8(0)
1433 05ae 30E0 ldi r19,hi8(0)
1434 .LVL63:
1435 05b0 00C0 rjmp .L159
1436 .LVL64:
1437 .L160:
1438 .LM244:
1439 05b2 8281 ldd r24,Z+2
1440 05b4 9381 ldd r25,Z+3
1441 05b6 280F add r18,r24
1442 05b8 391F adc r19,r25
1443 .LM245:
1444 05ba 0190 ld __tmp_reg__,Z+
1445 05bc F081 ld r31,Z
1446 05be E02D mov r30,__tmp_reg__
1447 .LVL65:
1448 .L159:
1449 .LM246:
1450 05c0 3097 sbiw r30,0
1451 05c2 01F4 brne .L160
1452 .LM247:
1453 05c4 C901 movw r24,r18
1454 .LVL66:
1455 /* epilogue start */
1456 05c6 0895 ret
1457 .LFE37:
1459 .global make_list_msg
1461 make_list_msg:
1462 .LFB40:
1463 .LM248:
1464 .LVL67:
1465 05c8 CF92 push r12
1466 05ca DF92 push r13
1467 05cc EF92 push r14
1468 05ce FF92 push r15
1469 05d0 0F93 push r16
1470 05d2 1F93 push r17
1471 05d4 CF93 push r28
1472 05d6 DF93 push r29
1473 /* prologue: function */
1474 /* frame size = 0 */
1475 05d8 7C01 movw r14,r24
1476 .LM249:
1477 05da 0097 sbiw r24,0
1478 05dc 01F0 breq .L178
1479 .L163:
1480 .LM250:
1481 05de 0197 sbiw r24,1
1482 .LVL68:
1483 05e0 6CE2 ldi r22,lo8(300)
1484 05e2 71E0 ldi r23,hi8(300)
1485 05e4 0E94 0000 call __udivmodhi4
1486 05e8 8B01 movw r16,r22
1487 .LVL69:
1488 05ea 0F5F subi r16,lo8(-(1))
1489 05ec 1F4F sbci r17,hi8(-(1))
1490 05ee C091 0000 lds r28,mb_head
1491 05f2 D091 0000 lds r29,(mb_head)+1
1492 .LVL70:
1493 05f6 A0E0 ldi r26,lo8(0)
1494 05f8 B0E0 ldi r27,hi8(0)
1495 .LVL71:
1496 05fa 60E0 ldi r22,lo8(0)
1497 05fc 70E0 ldi r23,hi8(0)
1498 .LVL72:
1499 .L170:
1500 .LBB441:
1501 .LBB442:
1502 .LM251:
1503 05fe 2097 sbiw r28,0
1504 0600 01F4 brne .L165
1505 .LVL73:
1506 0602 40E0 ldi r20,lo8(0)
1507 0604 50E0 ldi r21,hi8(0)
1508 .LVL74:
1509 0606 00C0 rjmp .L166
1510 .LVL75:
1511 .L165:
1512 .LM252:
1513 0608 8881 ld r24,Y
1514 .LVL76:
1515 060a 9981 ldd r25,Y+1
1516 .LM253:
1517 060c 1982 std Y+1,__zero_reg__
1518 060e 1882 st Y,__zero_reg__
1519 .LM254:
1520 0610 1B82 std Y+3,__zero_reg__
1521 0612 1A82 std Y+2,__zero_reg__
1522 .LM255:
1523 0614 AE01 movw r20,r28
1524 .LVL77:
1525 0616 EC01 movw r28,r24
1526 .LVL78:
1527 .L166:
1528 .LBE442:
1529 .LBE441:
1530 .LM256:
1531 0618 6A01 movw r12,r20
1532 .LM257:
1533 061a 4115 cp r20,__zero_reg__
1534 061c 5105 cpc r21,__zero_reg__
1535 061e 01F4 brne .L177
1536 .LVL79:
1537 0620 00C0 rjmp .L176
1538 .LVL80:
1539 .L169:
1540 .LBB443:
1541 .LBB444:
1542 .LM258:
1543 0622 8C91 ld r24,X
1544 .LVL81:
1545 0624 1196 adiw r26,1
1546 0626 9C91 ld r25,X
1547 0628 1197 sbiw r26,1
1548 .LVL82:
1549 .LBB445:
1550 .LBB446:
1551 .LM259:
1552 062a 1196 adiw r26,1
1553 062c DC93 st X,r29
1554 062e CE93 st -X,r28
1555 .LM260:
1556 0630 1396 adiw r26,2+1
1557 0632 1C92 st X,__zero_reg__
1558 0634 1E92 st -X,__zero_reg__
1559 0636 1297 sbiw r26,2
1560 0638 ED01 movw r28,r26
1561 063a DC01 movw r26,r24
1562 .LVL83:
1563 .L176:
1564 .LBE446:
1565 .LBE445:
1566 .LM261:
1567 063c 1097 sbiw r26,0
1568 063e 01F4 brne .L169
1569 0640 D093 0000 sts (mb_head)+1,r29
1570 0644 C093 0000 sts mb_head,r28
1571 .LVL84:
1572 .L178:
1573 0648 20E0 ldi r18,lo8(0)
1574 064a 30E0 ldi r19,hi8(0)
1575 064c 00C0 rjmp .L164
1576 .LVL85:
1577 .L177:
1578 .LBE444:
1579 .LBE443:
1580 .LM262:
1581 064e FA01 movw r30,r20
1582 .LVL86:
1583 0650 B183 std Z+1,r27
1584 0652 A083 st Z,r26
1585 .LM263:
1586 0654 6F5F subi r22,lo8(-(1))
1587 0656 7F4F sbci r23,hi8(-(1))
1588 0658 DA01 movw r26,r20
1589 .LVL87:
1590 065a 6017 cp r22,r16
1591 065c 7107 cpc r23,r17
1592 065e 00F0 brlo .L170
1593 .LVL88:
1594 0660 BA01 movw r22,r20
1595 .LVL89:
1596 0662 D093 0000 sts (mb_head)+1,r29
1597 0666 C093 0000 sts mb_head,r28
1598 .LM264:
1599 066a 81E0 ldi r24,lo8(1)
1600 066c 90E0 ldi r25,hi8(1)
1601 066e 801B sub r24,r16
1602 0670 910B sbc r25,r17
1603 0672 2CE2 ldi r18,lo8(300)
1604 0674 31E0 ldi r19,hi8(300)
1605 0676 829F mul r24,r18
1606 0678 A001 movw r20,r0
1607 067a 839F mul r24,r19
1608 067c 500D add r21,r0
1609 067e 929F mul r25,r18
1610 0680 500D add r21,r0
1611 0682 1124 clr r1
1612 0684 4E0D add r20,r14
1613 0686 5F1D adc r21,r15
1614 .LVL90:
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?