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