📄 ucos_ii.lis
字号:
030C 280E add R2,R24
030E 391E adc R3,R25
0310 4A1E adc R4,R26
0312 5B1E adc R5,R27
0314 30920501 sts _OSCtxSwCtr+1,R3
0318 20920401 sts _OSCtxSwCtr,R2
031C 50920701 sts _OSCtxSwCtr+2+1,R5
0320 40920601 sts _OSCtxSwCtr+2,R4
0324 .dbline 189
0324 ;
0324 00D0 rcall _OSCtxSw
0326 .dbline 190
0326 ;
0326 L32:
0326 .dbline 191
0326 ;
0326 L30:
0326 .dbline 192
0326 ;
0326 0A93 st -y,r16
0328 0F91 pop r16
032A 0FBF out 0x3F,r16
032C 0991 ld r16,y+
032E .dbline 192
032E .dbline -2
032E .dbline 193
032E ;
032E L29:
032E 00D0 rcall pop_gset3x
0330 .dbline 0 ; func end
0330 0895 ret
0332 .dbsym r y 10 c
0332 .dbend
0332 .dbfunc e OSStart _OSStart fV
0332 ; x -> R12
0332 ; y -> R10
.even
0332 _OSStart::
0332 00D0 rcall push_gset4x
0334 .dbline -1
0334 .dbline 214
0334 .dbline 219
0334 2090E600 lds R2,_OSRunning
0338 2220 tst R2
033A 09F0 breq X2
033C 38C0 rjmp L35
033E X2:
033E .dbline 219
033E .dbline 220
033E 80E0 ldi R24,<_OSUnMapTbl
0340 90E0 ldi R25,>_OSUnMapTbl
0342 E091E900 lds R30,_OSRdyGrp
0346 FF27 clr R31
0348 E80F add R30,R24
034A F91F adc R31,R25
034C A490 lpm R10,Z
034E .dbline 221
034E 80E0 ldi R24,<_OSRdyTbl
0350 90E0 ldi R25,>_OSRdyTbl
0352 EA2D mov R30,R10
0354 FF27 clr R31
0356 E80F add R30,R24
0358 F91F adc R31,R25
035A E081 ldd R30,z+0
035C FF27 clr R31
035E 80E0 ldi R24,<_OSUnMapTbl
0360 90E0 ldi R25,>_OSUnMapTbl
0362 E80F add R30,R24
0364 F91F adc R31,R25
0366 C490 lpm R12,Z
0368 .dbline 222
0368 2C2C mov R2,R12
036A 3324 clr R3
036C 4A2C mov R4,R10
036E 5524 clr R5
0370 440C lsl R4
0372 551C rol R5
0374 440C lsl R4
0376 551C rol R5
0378 440C lsl R4
037A 551C rol R5
037C 420C add R4,R2
037E 531C adc R5,R3
0380 4092EA00 sts _OSPrioHighRdy,R4
0384 .dbline 223
0384 242C mov R2,R4
0386 2092EB00 sts _OSPrioCur,R2
038A .dbline 224
038A 82E0 ldi R24,2
038C 829D mul R24,R2
038E F001 movw R30,R0
0390 80E0 ldi R24,<_OSTCBPrioTbl
0392 90E0 ldi R25,>_OSTCBPrioTbl
0394 E80F add R30,R24
0396 F91F adc R31,R25
0398 2080 ldd R2,z+0
039A 3180 ldd R3,z+1
039C 3092E000 sts _OSTCBHighRdy+1,R3
03A0 2092DF00 sts _OSTCBHighRdy,R2
03A4 .dbline 225
03A4 3092E400 sts _OSTCBCur+1,R3
03A8 2092E300 sts _OSTCBCur,R2
03AC .dbline 226
03AC 00D0 rcall _OSStartHighRdy
03AE .dbline 227
03AE L35:
03AE .dbline -2
03AE .dbline 228
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE ;
03AE L34:
03AE 00D0 rcall pop_gset4x
03B0 .dbline 0 ; func end
03B0 0895 ret
03B2 .dbsym r x 12 c
03B2 .dbsym r y 10 c
03B2 .dbend
03B2 .dbfunc e OSTaskIdle _OSTaskIdle fV
03B2 ; pdata -> R16,R17
.even
03B2 _OSTaskIdle::
03B2 .dbline -1
03B2 .dbline 244
03B2 ;
03B2 ;
03B2 ;
03B2 ;
03B2 ;
03B2 ;
03B2 ;
03B2 ;
03B2 ;
03B2 ;
03B2 ;
03B2 ;
03B2 ;
03B2 ;
03B2 ;
03B2 ;
03B2 .dbline 245
03B2 ;
03B2 .dbline 246
03B2 L38:
03B2 .dbline 246
03B2 .dbline 247
03B2 0A93 st -y,r16
03B4 0FB7 in r16,0x3F
03B6 F894 cli
03B8 0F93 push r16
03BA 0991 ld r16,y+
03BC .dbline 247
03BC .dbline 248
03BC 81E0 ldi R24,1
03BE 90E0 ldi R25,0
03C0 A0E0 ldi R26,0
03C2 B0E0 ldi R27,0
03C4 4090F000 lds R4,_OSIdleCtr+2
03C8 5090F100 lds R5,_OSIdleCtr+2+1
03CC 2090EE00 lds R2,_OSIdleCtr
03D0 3090EF00 lds R3,_OSIdleCtr+1
03D4 280E add R2,R24
03D6 391E adc R3,R25
03D8 4A1E adc R4,R26
03DA 5B1E adc R5,R27
03DC 3092EF00 sts _OSIdleCtr+1,R3
03E0 2092EE00 sts _OSIdleCtr,R2
03E4 5092F100 sts _OSIdleCtr+2+1,R5
03E8 4092F000 sts _OSIdleCtr+2,R4
03EC .dbline 249
03EC 0A93 st -y,r16
03EE 0F91 pop r16
03F0 0FBF out 0x3F,r16
03F2 0991 ld r16,y+
03F4 .dbline 249
03F4 .dbline 250
03F4 .dbline 246
03F4 .dbline 246
03F4 DECF rjmp L38
03F6 X3:
03F6 .dbline -2
03F6 L37:
03F6 .dbline 0 ; func end
03F6 0895 ret
03F8 .dbsym r pdata 16 pV
03F8 .dbend
03F8 .dbfunc e OSTCBInit _OSTCBInit fc
03F8 ; ptcb -> R10,R11
03F8 ; opt -> y+10
03F8 ; pext -> y+8
03F8 ; stk_size -> y+6
03F8 ; id -> y+4
03F8 ; pbos -> y+2
03F8 ; ptos -> R18,R19
03F8 ; prio -> R16
.even
03F8 _OSTCBInit::
03F8 00D0 rcall push_gset3x
03FA .dbline -1
03FA .dbline 297
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA ;
03FA .dbline 301
03FA ;
03FA ;
03FA ;
03FA ;
03FA 0A93 st -y,r16
03FC 0FB7 in r16,0x3F
03FE F894 cli
0400 0F93 push r16
0402 0991 ld r16,y+
0404 .dbline 301
0404 .dbline 302
0404 ;
0404 A090E100 lds R10,_OSTCBFreeList
0408 B090E200 lds R11,_OSTCBFreeList+1
040C .dbline 303
040C ;
040C AA20 tst R10
040E 19F4 brne X4
0410 BB20 tst R11
0412 09F4 brne X6
0414 73C0 rjmp L43
0416 X6:
0416 X4:
0416 .dbline 303
0416 .dbline 304
0416 ;
0416 F501 movw R30,R10
0418 2280 ldd R2,z+2
041A 3380 ldd R3,z+3
041C 3092E200 sts _OSTCBFreeList+1,R3
0420 2092E100 sts _OSTCBFreeList,R2
0424 .dbline 305
0424 ;
0424 0A93 st -y,r16
0426 0F91 pop r16
0428 0FBF out 0x3F,r16
042A 0991 ld r16,y+
042C .dbline 305
042C .dbline 306
042C ;
042C 2083 std z+0,R18
042E 3183 std z+1,R19
0430 .dbline 307
0430 ;
0430 0187 std z+9,R16
0432 .dbline 308
0432 ;
0432 2224 clr R2
0434 2086 std z+8,R2
0436 .dbline 309
0436 ;
0436 3324 clr R3
0438 2682 std z+6,R2
043A 3782 std z+7,R3
043C .dbline 311
043C ;
043C ;
043C .dbline 312
043C ;
043C .dbline 313
043C ;
043C .dbline 314
043C ;
043C .dbline 315
043C ;
043C .dbline 317
043C ;
043C ;
043C 202E mov R2,R16
043E 2694 lsr R2
0440 2694 lsr R2
0442 2694 lsr R2
0444 2386 std z+11,R2
0446 .dbline 318
0446 ;
0446 80E0 ldi R24,<_OSMapTbl
0448 90E0 ldi R25,>_OSMapTbl
044A E385 ldd R30,z+11
044C FF27 clr R31
044E E80F add R30,R24
0450 F91F adc R31,R25
0452 E491 lpm R30,Z
0454 D501 movw R26,R10
0456 1D96 adiw R26,13
0458 EC93 st x,R30
045A .dbline 319
045A ;
045A 802F mov R24,R16
045C 8770 andi R24,7
045E F501 movw R30,R10
0460 8287 std z+10,R24
0462 .dbline 320
0462 ;
0462 80E0 ldi R24,<_OSMapTbl
0464 90E0 ldi R25,>_OSMapTbl
0466 E285 ldd R30,z+10
0468 FF27 clr R31
046A E80F add R30,R24
046C F91F adc R31,R25
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -