📄 ucos_ii.lis
字号:
0156 8F5F subi R24,255 ; addi 1
0158 80931302 sts _OSLockNesting,R24
015C .dbline 380
015C ; #include <os_time.c>
015C L21:
015C .dbline 381
015C 042F mov R16,R20
015E 0E940000 xcall _OS_CPU_SR_Restore
0162 .dbline 382
0162 L19:
0162 .dbline -2
0162 .dbline 383
0162 ; #include <os_time.c>
0162 ; #include <os_time.c>
0162 ; #include <os_time.c>
0162 L18:
0162 0E940000 xcall pop_gset1
0166 .dbline 0 ; func end
0166 0895 ret
0168 .dbsym r cpu_sr 20 c
0168 .dbend
0168 .dbfunc e OSSchedUnlock _OSSchedUnlock fV
0168 ; cpu_sr -> R20
.even
0168 _OSSchedUnlock::
0168 0E940000 xcall push_gset1
016C .dbline -1
016C .dbline 404
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C .dbline 410
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C ; #include <os_time.c>
016C 80910D02 lds R24,_OSRunning
0170 8130 cpi R24,1
0172 09F5 brne L24
0174 .dbline 410
0174 .dbline 411
0174 ; #include <os_time.c>
0174 0E940000 xcall _OS_CPU_SR_Save
0178 402F mov R20,R16
017A .dbline 412
017A ; #include <os_time.c>
017A 2224 clr R2
017C 30901302 lds R3,_OSLockNesting
0180 2314 cp R2,R3
0182 B0F4 brsh L26
0184 .dbline 412
0184 .dbline 413
0184 ; #include <os_time.c>
0184 832D mov R24,R3
0186 8150 subi R24,1
0188 80931302 sts _OSLockNesting,R24
018C .dbline 414
018C ; #include <os_time.c>
018C 8823 tst R24
018E 61F4 brne L28
0190 .dbline 414
0190 .dbline 415
0190 ; #include <os_time.c>
0190 20901502 lds R2,_OSIntNesting
0194 2220 tst R2
0196 21F4 brne L30
0198 .dbline 415
0198 .dbline 416
0198 ; #include <os_time.c>
0198 0E940000 xcall _OS_CPU_SR_Restore
019C .dbline 417
019C ; #include <os_time.c>
019C 7CD2 xcall _OS_Sched
019E .dbline 418
019E 0BC0 xjmp L27
01A0 L30:
01A0 .dbline 418
01A0 ; #include <os_time.c>
01A0 .dbline 419
01A0 ; #include <os_time.c>
01A0 042F mov R16,R20
01A2 0E940000 xcall _OS_CPU_SR_Restore
01A6 .dbline 420
01A6 ; #include <os_time.c>
01A6 .dbline 421
01A6 07C0 xjmp L27
01A8 L28:
01A8 .dbline 421
01A8 ; #include <os_time.c>
01A8 .dbline 422
01A8 ; #include <os_time.c>
01A8 042F mov R16,R20
01AA 0E940000 xcall _OS_CPU_SR_Restore
01AE .dbline 423
01AE ; #include <os_time.c>
01AE .dbline 424
01AE 03C0 xjmp L27
01B0 L26:
01B0 .dbline 424
01B0 ; #include <os_time.c>
01B0 .dbline 425
01B0 ; #include <os_time.c>
01B0 042F mov R16,R20
01B2 0E940000 xcall _OS_CPU_SR_Restore
01B6 .dbline 426
01B6 ; #include <os_time.c>
01B6 L27:
01B6 .dbline 427
01B6 L24:
01B6 .dbline -2
01B6 .dbline 428
01B6 ; #include <os_time.c>
01B6 ; #include <os_time.c>
01B6 L23:
01B6 0E940000 xcall pop_gset1
01BA .dbline 0 ; func end
01BA 0895 ret
01BC .dbsym r cpu_sr 20 c
01BC .dbend
01BC .dbfunc e OSStart _OSStart fV
01BC ; x -> R22
01BC ; y -> R20
.even
01BC _OSStart::
01BC 0E940000 xcall push_gset2
01C0 .dbline -1
01C0 .dbline 453
01C0 .dbline 458
01C0 20900D02 lds R2,_OSRunning
01C4 2220 tst R2
01C6 09F0 breq X4
01C8 39C0 xjmp L33
01CA X4:
01CA .dbline 458
01CA .dbline 459
01CA 80E0 ldi R24,<_OSUnMapTbl
01CC 90E0 ldi R25,>_OSUnMapTbl
01CE E0911002 lds R30,_OSRdyGrp
01D2 FF27 clr R31
01D4 E80F add R30,R24
01D6 F91F adc R31,R25
01D8 4491 lpm R20,Z
01DA .dbline 460
01DA 80E0 ldi R24,<_OSRdyTbl
01DC 90E0 ldi R25,>_OSRdyTbl
01DE E42F mov R30,R20
01E0 FF27 clr R31
01E2 E80F add R30,R24
01E4 F91F adc R31,R25
01E6 E081 ldd R30,z+0
01E8 FF27 clr R31
01EA 80E0 ldi R24,<_OSUnMapTbl
01EC 90E0 ldi R25,>_OSUnMapTbl
01EE E80F add R30,R24
01F0 F91F adc R31,R25
01F2 6491 lpm R22,Z
01F4 .dbline 461
01F4 262E mov R2,R22
01F6 3324 clr R3
01F8 442E mov R4,R20
01FA 5524 clr R5
01FC 440C lsl R4
01FE 551C rol R5
0200 440C lsl R4
0202 551C rol R5
0204 440C lsl R4
0206 551C rol R5
0208 420C add R4,R2
020A 531C adc R5,R3
020C 40921102 sts _OSPrioHighRdy,R4
0210 .dbline 462
0210 242C mov R2,R4
0212 20921202 sts _OSPrioCur,R2
0216 .dbline 463
0216 82E0 ldi R24,2
0218 829D mul R24,R2
021A F001 movw R30,R0
021C 80E0 ldi R24,<_OSTCBPrioTbl
021E 90E0 ldi R25,>_OSTCBPrioTbl
0220 E80F add R30,R24
0222 F91F adc R31,R25
0224 2080 ldd R2,z+0
0226 3180 ldd R3,z+1
0228 30920301 sts _OSTCBHighRdy+1,R3
022C 20920201 sts _OSTCBHighRdy,R2
0230 .dbline 464
0230 30920701 sts _OSTCBCur+1,R3
0234 20920601 sts _OSTCBCur,R2
0238 .dbline 465
0238 0E940000 xcall _OSStartHighRdy
023C .dbline 466
023C L33:
023C .dbline -2
023C .dbline 467
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C ; #include <os_time.c>
023C L32:
023C 0E940000 xcall pop_gset2
0240 .dbline 0 ; func end
0240 0895 ret
0242 .dbsym r x 22 c
0242 .dbsym r y 20 c
0242 .dbend
0242 .dbfunc e OSTimeTick _OSTimeTick fV
0242 ; step -> R20
0242 ; cpu_sr -> R20
0242 ; ptcb -> R22,R23
.even
0242 _OSTimeTick::
0242 0E940000 xcall push_gset2
0246 .dbline -1
0246 .dbline 524
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 .dbline 533
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 ; p
0246 0E940000 xcall _OSTimeTickHook
024A .dbline 540
024A ; p
024A ; p
024A ; p
024A ; p
024A ; p
024A ; p
024A ; p
024A 80910D02 lds R24,_OSRunning
024E 8130 cpi R24,1
0250 09F0 breq X7
0252 46C0 xjmp L36
0254 X7:
0254 .dbline 540
0254 .dbline 562
0254 ; p
0254 ; p
0254 ; p
0254 ; p
0254 ; p
0254 ; p
0254 ; p
0254 ; p
0254 ; p
0254 ; p
0254 ; p
0254 ; p
0254 ; p
0254 ; p
0254 ; p
0254 ; p
0254 ; p
0254 ; p
0254 ; p
0254 ; p
0254 ; p
0254 ; p
0254 41E0 ldi R20,1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -