📄 ppp.lis
字号:
026E ; else
026E ; strcpy((char*)ScratchPad, "\nR");
026E 20E0 ldi R18,<L44
0270 30E0 ldi R19,>L44
0272 00E0 ldi R16,<_ScratchPad
0274 10E0 ldi R17,>_ScratchPad
0276 0E940000 xcall _strcpy
027A L42:
027A .dbline 239
027A ; strcat((char*)ScratchPad, "X: Protocol: ");
027A 20E0 ldi R18,<L45
027C 30E0 ldi R19,>L45
027E 00E0 ldi R16,<_ScratchPad
0280 10E0 ldi R17,>_ScratchPad
0282 0E940000 xcall _strcat
0286 .dbline 240
0286 ; switch (Protocol)
0286 C701 movw R24,R14
0288 8132 cpi R24,33
028A E0E8 ldi R30,128
028C 9E07 cpc R25,R30
028E D9F0 breq L49
0290 8132 cpi R24,33
0292 E0E8 ldi R30,128
0294 9E07 cpc R25,R30
0296 8CF1 brlt L46
0298 L52:
0298 C701 movw R24,R14
029A 8132 cpi R24,33
029C E0EC ldi R30,192
029E 9E07 cpc R25,R30
02A0 29F0 breq L48
02A2 8332 cpi R24,35
02A4 E0EC ldi R30,192
02A6 9E07 cpc R25,R30
02A8 D9F0 breq L50
02AA 27C0 xjmp L46
02AC X0:
02AC .dbline 241
02AC ; {
02AC L48:
02AC .dbline 242
02AC ; case PPP_LCP : rstrcpy((char*)ScratchPad + strlen((char*)ScratchPad), LCPStr);
02AC 00E0 ldi R16,<_ScratchPad
02AE 10E0 ldi R17,>_ScratchPad
02B0 0E940000 xcall _strlen
02B4 20E0 ldi R18,<_LCPStr
02B6 30E0 ldi R19,>_LCPStr
02B8 80E0 ldi R24,<_ScratchPad
02BA 90E0 ldi R25,>_ScratchPad
02BC 080F add R16,R24
02BE 191F adc R17,R25
02C0 0E940000 xcall _rstrcpy
02C4 .dbline 243
02C4 ; break;
02C4 2DC0 xjmp L47
02C6 L49:
02C6 .dbline 244
02C6 ; case PPP_IPCP : rstrcpy((char*)ScratchPad + strlen((char*)ScratchPad), IPCPStr);
02C6 00E0 ldi R16,<_ScratchPad
02C8 10E0 ldi R17,>_ScratchPad
02CA 0E940000 xcall _strlen
02CE 20E0 ldi R18,<_IPCPStr
02D0 30E0 ldi R19,>_IPCPStr
02D2 80E0 ldi R24,<_ScratchPad
02D4 90E0 ldi R25,>_ScratchPad
02D6 080F add R16,R24
02D8 191F adc R17,R25
02DA 0E940000 xcall _rstrcpy
02DE .dbline 245
02DE ; break;
02DE 20C0 xjmp L47
02E0 L50:
02E0 .dbline 246
02E0 ; case PPP_PAP : rstrcpy((char*)ScratchPad + strlen((char*)ScratchPad), PAPStr);
02E0 00E0 ldi R16,<_ScratchPad
02E2 10E0 ldi R17,>_ScratchPad
02E4 0E940000 xcall _strlen
02E8 20E0 ldi R18,<_PAPStr
02EA 30E0 ldi R19,>_PAPStr
02EC 80E0 ldi R24,<_ScratchPad
02EE 90E0 ldi R25,>_ScratchPad
02F0 080F add R16,R24
02F2 191F adc R17,R25
02F4 0E940000 xcall _rstrcpy
02F8 .dbline 247
02F8 ; break;
02F8 13C0 xjmp L47
02FA L46:
02FA .dbline 248
02FA ; default : sprintf((char*)ScratchPad + strlen((char*)ScratchPad), "%04x\n", Protocol);
02FA 00E0 ldi R16,<_ScratchPad
02FC 10E0 ldi R17,>_ScratchPad
02FE 0E940000 xcall _strlen
0302 F982 std y+1,R15
0304 E882 std y+0,R14
0306 20E0 ldi R18,<L51
0308 30E0 ldi R19,>L51
030A 80E0 ldi R24,<_ScratchPad
030C 90E0 ldi R25,>_ScratchPad
030E 080F add R16,R24
0310 191F adc R17,R25
0312 0E940000 xcall _sprintf
0316 .dbline 249
0316 ; return SendDebugStr((char*)ScratchPad);
0316 00E0 ldi R16,<_ScratchPad
0318 10E0 ldi R17,>_ScratchPad
031A 0E940000 xcall _SendDebugStr
031E 8BC2 xjmp L34
0320 L47:
0320 .dbline 251
0320 ; }
0320 ; sprintf((char*)ScratchPad + strlen((char*)ScratchPad), " [%04x]", Protocol);
0320 00E0 ldi R16,<_ScratchPad
0322 10E0 ldi R17,>_ScratchPad
0324 0E940000 xcall _strlen
0328 F982 std y+1,R15
032A E882 std y+0,R14
032C 20E0 ldi R18,<L53
032E 30E0 ldi R19,>L53
0330 80E0 ldi R24,<_ScratchPad
0332 90E0 ldi R25,>_ScratchPad
0334 080F add R16,R24
0336 191F adc R17,R25
0338 0E940000 xcall _sprintf
033C .dbline 252
033C ; if (!SendDebugStr((char*)ScratchPad)) return false;
033C 00E0 ldi R16,<_ScratchPad
033E 10E0 ldi R17,>_ScratchPad
0340 0E940000 xcall _SendDebugStr
0344 0023 tst R16
0346 11F4 brne L54
0348 .dbline 252
0348 0027 clr R16
034A 75C2 xjmp L34
034C L54:
034C .dbline 257
034C ;
034C ; // ********************
034C ; // display the code header
034C ;
034C ; CodeHeader = (T_CodeHeader *)(MainBuffer + i);
034C 80E0 ldi R24,<_MainBuffer
034E 90E0 ldi R25,>_MainBuffer
0350 4A85 ldd R20,y+10
0352 5B85 ldd R21,y+11
0354 480F add R20,R24
0356 591F adc R21,R25
0358 .dbline 258
0358 ; i += sizeof(T_CodeHeader);
0358 8A85 ldd R24,y+10
035A 9B85 ldd R25,y+11
035C 0496 adiw R24,4
035E 9B87 std y+11,R25
0360 8A87 std y+10,R24
0362 .dbline 260
0362 ;
0362 ; if (!SendDebugRStr(CodeStr)) return false;
0362 00E0 ldi R16,<_CodeStr
0364 10E0 ldi R17,>_CodeStr
0366 0E940000 xcall _SendDebugRStr
036A 0023 tst R16
036C 11F4 brne L56
036E .dbline 260
036E 0027 clr R16
0370 62C2 xjmp L34
0372 L56:
0372 .dbline 261
0372 ; switch (CodeHeader->Code)
0372 FA01 movw R30,R20
0374 A080 ldd R10,z+0
0376 BB24 clr R11
0378 C501 movw R24,R10
037A 8130 cpi R24,1
037C E0E0 ldi R30,0
037E 9E07 cpc R25,R30
0380 09F4 brne X3
0382 2EC0 xjmp L61
0384 X3:
0384 8230 cpi R24,2
0386 E0E0 ldi R30,0
0388 9E07 cpc R25,R30
038A 09F4 brne X4
038C 30C0 xjmp L62
038E X4:
038E 8330 cpi R24,3
0390 E0E0 ldi R30,0
0392 9E07 cpc R25,R30
0394 09F4 brne X5
0396 32C0 xjmp L63
0398 X5:
0398 8430 cpi R24,4
039A E0E0 ldi R30,0
039C 9E07 cpc R25,R30
039E 09F4 brne X6
03A0 34C0 xjmp L64
03A2 X6:
03A2 8530 cpi R24,5
03A4 E0E0 ldi R30,0
03A6 9E07 cpc R25,R30
03A8 09F4 brne X7
03AA 36C0 xjmp L65
03AC X7:
03AC 8630 cpi R24,6
03AE E0E0 ldi R30,0
03B0 9E07 cpc R25,R30
03B2 09F4 brne X8
03B4 38C0 xjmp L66
03B6 X8:
03B6 8730 cpi R24,7
03B8 E0E0 ldi R30,0
03BA 9E07 cpc R25,R30
03BC 09F4 brne X9
03BE 3AC0 xjmp L67
03C0 X9:
03C0 8830 cpi R24,8
03C2 E0E0 ldi R30,0
03C4 9E07 cpc R25,R30
03C6 09F4 brne X10
03C8 3CC0 xjmp L68
03CA X10:
03CA 8930 cpi R24,9
03CC E0E0 ldi R30,0
03CE 9E07 cpc R25,R30
03D0 09F4 brne X11
03D2 3EC0 xjmp L69
03D4 X11:
03D4 8A30 cpi R24,10
03D6 E0E0 ldi R30,0
03D8 9E07 cpc R25,R30
03DA 09F4 brne X12
03DC 40C0 xjmp L70
03DE X12:
03DE 46C0 xjmp L58
03E0 X1:
03E0 .dbline 262
03E0 ; {
03E0 L61:
03E0 .dbline 263
03E0 ; case PPP_CREQ : rstrcpy((char*)ScratchPad, CREQStr);
03E0 20E0 ldi R18,<_CREQStr
03E2 30E0 ldi R19,>_CREQStr
03E4 00E0 ldi R16,<_ScratchPad
03E6 10E0 ldi R17,>_ScratchPad
03E8 0E940000 xcall _rstrcpy
03EC .dbline 264
03EC ; break;
03EC 45C0 xjmp L59
03EE L62:
03EE .dbline 265
03EE ; case PPP_CACK : rstrcpy((char*)ScratchPad, CACKStr);
03EE 20E0 ldi R18,<_CACKStr
03F0 30E0 ldi R19,>_CACKStr
03F2 00E0 ldi R16,<_ScratchPad
03F4 10E0 ldi R17,>_ScratchPad
03F6 0E940000 xcall _rstrcpy
03FA .dbline 266
03FA ; break;
03FA 3EC0 xjmp L59
03FC L63:
03FC .dbline 267
03FC ; case PPP_CNAK : rstrcpy((char*)ScratchPad, CNAKStr);
03FC 20E0 ldi R18,<_CNAKStr
03FE 30E0 ldi R19,>_CNAKStr
0400 00E0 ldi R16,<_ScratchPad
0402 10E0 ldi R17,>_ScratchPad
0404 0E940000 xcall _rstrcpy
0408 .dbline 268
0408 ; break;
0408 37C0 xjmp L59
040A L64:
040A .dbline 269
040A ; case PPP_CREJ : rstrcpy((char*)ScratchPad, CREJStr);
040A 20E0 ldi R18,<_CREJStr
040C 30E0 ldi R19,>_CREJStr
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -