📄 ucos_ii.lis
字号:
0160 042F mov R16,R20
0162 0E940000 xcall _OS_CPU_SR_Restore
0166 .dbline 382
0166 L19:
0166 .dbline -2
0166 L18:
0166 0E940000 xcall pop_gset1
016A .dbline 0 ; func end
016A 0895 ret
016C .dbsym r cpu_sr 20 c
016C .dbend
016C .dbfunc e OSSchedUnlock _OSSchedUnlock fV
016C ; cpu_sr -> R20
.even
016C _OSSchedUnlock::
016C 0E940000 xcall push_gset1
0170 .dbline -1
0170 .dbline 404
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 .dbline 410
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 ; #include <os_time.c>
0170 80916D01 lds R24,_OSRunning
0174 8130 cpi R24,1
0176 09F5 brne L24
0178 .dbline 410
0178 .dbline 411
0178 ; #include <os_time.c>
0178 0E940000 xcall _OS_CPU_SR_Save
017C 402F mov R20,R16
017E .dbline 412
017E ; #include <os_time.c>
017E 2224 clr R2
0180 30907201 lds R3,_OSLockNesting
0184 2314 cp R2,R3
0186 B0F4 brsh L26
0188 .dbline 412
0188 .dbline 413
0188 ; #include <os_time.c>
0188 832D mov R24,R3
018A 8150 subi R24,1
018C 80937201 sts _OSLockNesting,R24
0190 .dbline 414
0190 ; #include <os_time.c>
0190 8823 tst R24
0192 61F4 brne L28
0194 .dbline 414
0194 .dbline 415
0194 ; #include <os_time.c>
0194 20907401 lds R2,_OSIntNesting
0198 2220 tst R2
019A 21F4 brne L30
019C .dbline 415
019C .dbline 416
019C ; #include <os_time.c>
019C 0E940000 xcall _OS_CPU_SR_Restore
01A0 .dbline 417
01A0 ; #include <os_time.c>
01A0 CED2 xcall _OS_Sched
01A2 .dbline 418
01A2 0BC0 xjmp L27
01A4 L30:
01A4 .dbline 418
01A4 ; #include <os_time.c>
01A4 .dbline 419
01A4 ; #include <os_time.c>
01A4 042F mov R16,R20
01A6 0E940000 xcall _OS_CPU_SR_Restore
01AA .dbline 420
01AA ; #include <os_time.c>
01AA .dbline 421
01AA 07C0 xjmp L27
01AC L28:
01AC .dbline 421
01AC ; #include <os_time.c>
01AC .dbline 422
01AC ; #include <os_time.c>
01AC 042F mov R16,R20
01AE 0E940000 xcall _OS_CPU_SR_Restore
01B2 .dbline 423
01B2 ; #include <os_time.c>
01B2 .dbline 424
01B2 03C0 xjmp L27
01B4 L26:
01B4 .dbline 424
01B4 ; #include <os_time.c>
01B4 .dbline 425
01B4 ; #include <os_time.c>
01B4 042F mov R16,R20
01B6 0E940000 xcall _OS_CPU_SR_Restore
01BA .dbline 426
01BA ; #include <os_time.c>
01BA L27:
01BA .dbline 427
01BA L24:
01BA .dbline -2
01BA L23:
01BA 0E940000 xcall pop_gset1
01BE .dbline 0 ; func end
01BE 0895 ret
01C0 .dbsym r cpu_sr 20 c
01C0 .dbend
01C0 .dbfunc e OSStart _OSStart fV
01C0 ; x -> R22
01C0 ; y -> R20
.even
01C0 _OSStart::
01C0 0E940000 xcall push_gset2
01C4 .dbline -1
01C4 .dbline 453
01C4 .dbline 458
01C4 20906D01 lds R2,_OSRunning
01C8 2220 tst R2
01CA 09F0 breq X4
01CC 39C0 xjmp L33
01CE X4:
01CE .dbline 458
01CE .dbline 459
01CE 80E0 ldi R24,<_OSUnMapTbl
01D0 90E0 ldi R25,>_OSUnMapTbl
01D2 E0916F01 lds R30,_OSRdyGrp
01D6 FF27 clr R31
01D8 E80F add R30,R24
01DA F91F adc R31,R25
01DC 4491 lpm R20,Z
01DE .dbline 460
01DE 80E0 ldi R24,<_OSRdyTbl
01E0 90E0 ldi R25,>_OSRdyTbl
01E2 E42F mov R30,R20
01E4 FF27 clr R31
01E6 E80F add R30,R24
01E8 F91F adc R31,R25
01EA E081 ldd R30,z+0
01EC FF27 clr R31
01EE 80E0 ldi R24,<_OSUnMapTbl
01F0 90E0 ldi R25,>_OSUnMapTbl
01F2 E80F add R30,R24
01F4 F91F adc R31,R25
01F6 6491 lpm R22,Z
01F8 .dbline 461
01F8 262E mov R2,R22
01FA 3324 clr R3
01FC 442E mov R4,R20
01FE 5524 clr R5
0200 440C lsl R4
0202 551C rol R5
0204 440C lsl R4
0206 551C rol R5
0208 440C lsl R4
020A 551C rol R5
020C 420C add R4,R2
020E 531C adc R5,R3
0210 40927001 sts _OSPrioHighRdy,R4
0214 .dbline 462
0214 242C mov R2,R4
0216 20927101 sts _OSPrioCur,R2
021A .dbline 463
021A 82E0 ldi R24,2
021C 829D mul R24,R2
021E F001 movw R30,R0
0220 80E0 ldi R24,<_OSTCBPrioTbl
0222 90E0 ldi R25,>_OSTCBPrioTbl
0224 E80F add R30,R24
0226 F91F adc R31,R25
0228 2080 ldd R2,z+0
022A 3180 ldd R3,z+1
022C 3092FF00 sts _OSTCBHighRdy+1,R3
0230 2092FE00 sts _OSTCBHighRdy,R2
0234 .dbline 464
0234 30920301 sts _OSTCBCur+1,R3
0238 20920201 sts _OSTCBCur,R2
023C .dbline 465
023C 0E940000 xcall _OSStartHighRdy
0240 .dbline 466
0240 L33:
0240 .dbline -2
0240 L32:
0240 0E940000 xcall pop_gset2
0244 .dbline 0 ; func end
0244 0895 ret
0246 .dbsym r x 22 c
0246 .dbsym r y 20 c
0246 .dbend
0246 .dbfunc e OSStatInit _OSStatInit fV
0246 ; cpu_sr -> R10
.even
0246 _OSStatInit::
0246 0E940000 xcall push_gset3
024A .dbline -1
024A .dbline 491
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A .dbline 497
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A ; #include <os_time.c>
024A 02E0 ldi R16,2
024C 10E0 ldi R17,0
024E CAD7 xcall _OSTimeDly
0250 .dbline 498
0250 ; #include <os_time.c>
0250 0E940000 xcall _OS_CPU_SR_Save
0254 .dbline 499
0254 ; #include <os_time.c>
0254 40E0 ldi R20,0
0256 50E0 ldi R21,0
0258 60E0 ldi R22,0
025A 70E0 ldi R23,0
025C 50936901 sts _OSIdleCtr+1,R21
0260 40936801 sts _OSIdleCtr,R20
0264 70936B01 sts _OSIdleCtr+2+1,R23
0268 60936A01 sts _OSIdleCtr+2,R22
026C .dbline 500
026C ; #include <os_time.c>
026C 0E940000 xcall _OS_CPU_SR_Restore
0270 .dbline 501
0270 ; #include <os_time.c>
0270 05E0 ldi R16,5
0272 10E0 ldi R17,0
0274 B7D7 xcall _OSTimeDly
0276 .dbline 502
0276 ; #include <os_time.c>
0276 0E940000 xcall _OS_CPU_SR_Save
027A A02E mov R10,R16
027C .dbline 503
027C ; #include <os_time.c>
027C 40906A01 lds R4,_OSIdleCtr+2
0280 50906B01 lds R5,_OSIdleCtr+2+1
0284 20906801 lds R2,_OSIdleCtr
0288 30906901 lds R3,_OSIdleCtr+1
028C 3092DF01 sts _OSIdleCtrMax+1,R3
0290 2092DE01 sts _OSIdleCtrMax,R2
0294 5092E101 sts _OSIdleCtrMax+2+1,R5
0298 4092E001 sts _OSIdleCtrMax+2,R4
029C .dbline 504
029C ; #include <os_time.c>
029C 81E0 ldi R24,1
029E 8093D901 sts _OSStatRdy,R24
02A2 .dbline 505
02A2 ; #include <os_time.c>
02A2 0E940000 xcall _OS_CPU_SR_Restore
02A6 .dbline -2
02A6 L35:
02A6 0E940000 xcall pop_gset3
02AA .dbline 0 ; func end
02AA 0895 ret
02AC .dbsym r cpu_sr 10 c
02AC .dbend
02AC .dbfunc e OSTimeTick _OSTimeTick fV
02AC .dbstruct 0 7 os_event
02AC .dbfield 0 OSEventType c
02AC .dbfield 1 OSEventGrp c
02AC .dbfield 2 OSEventCnt i
02AC .dbfield 4 OSEventPtr pV
02AC .dbfield 6 OSEventTbl A[1:1]c
02AC .dbend
02AC .dbstruct 0 34 os_tcb
02AC .dbfield 0 OSTCBStkPtr pc
02AC .dbfield 2 OSTCBNext pS[os_tcb]
02AC .dbfield 4 OSTCBPrev pS[os_tcb]
02AC .dbfield 6 OSTCBEventPtr pS[os_event]
02AC .dbfield 8 OSTCBDly i
02AC .dbfield 10 OSTCBStat c
02AC .dbfield 11 OSTCBPrio c
02AC .dbfield 12 OSTCBX c
02AC .dbfield 13 OSTCBY c
02AC .dbfield 14 OSTCBBitX c
02AC .dbfield 15 OSTCBBitY c
02AC .dbfield 16 OSTCBCtxSwCtr l
02AC .dbfield 20 OSTCBCyclesTot l
02AC .dbfield 24 OSTCBCyclesStart l
02AC .dbfield 28 OSTCBStkBase pc
02AC .dbfield 30 OSTCBStkUsed l
02AC .dbend
02AC ; step -> R20
02AC ; cpu_sr -> R20
02AC ; ptcb -> R22,R23
.even
02AC _OSTimeTick::
02AC 0E940000 xcall push_gset2
02B0 .dbline -1
02B0 .dbline 524
02B0 ;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -