📄 ucos_ii.asm
字号:
LAC _OSPrioHighRdy
ADLK _OSTCBPrioTbl+0,0
MAR * ,AR0
SACL *
LAR AR3,* ,AR3
BLDD * ,#_OSTCBHighRdy,AR1
.line 9
ZALS _OSCtxSwCtr
ADDH _OSCtxSwCtr+1
ADDK 1
SACL _OSCtxSwCtr
SACH _OSCtxSwCtr+1
.line 10
CALL _OSIntCtxSw
L15:
.line 13
CLRC INTM
EPI0_7:
.line 14
MAR * ,AR1
SBRK 2
LAR AR0,*-
PSHD *
RET
.endfunc 410,000000000H,1
.sym _OSSched,_OSSched,32,2,0
.globl _OSSched
.func 429
******************************************************
* FUNCTION DEF : _OSSched
******************************************************
_OSSched:
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,2
LAR AR0,*0+
.line 6
SETC INTM
.sym _y,1,12,1,16
.line 7
LDPK _OSIntNesting
ZALS _OSIntNesting
OR _OSLockNesting
BNZ L17
.line 8
LAC _OSRdyGrp
ADLK _OSUnMapTbl+0,0
MAR * ,AR0
SACL *
LAR AR3,* ,AR3
LAC * ,AR2
LARK AR2,1
MAR *0+
SACL *
.line 9
LAC * ,AR0
ADLK _OSRdyTbl+0,0
SACL *
LAR AR3,* ,AR3
LAC * ,AR0
ADLK _OSUnMapTbl+0,0
SACL *
LAR AR3,* ,AR3
LAC * ,AR2
ADD * ,3
SACL _OSPrioHighRdy
.line 10
LAC _OSPrioHighRdy
SUB _OSPrioCur
BZ L17
.line 11
LAC _OSPrioHighRdy
ADLK _OSTCBPrioTbl+0,0
MAR * ,AR0
SACL *
LAR AR3,* ,AR3
BLDD * ,#_OSTCBHighRdy
.line 12
ZALS _OSCtxSwCtr
ADDH _OSCtxSwCtr+1
ADDK 1
SACL _OSCtxSwCtr
SACH _OSCtxSwCtr+1
.line 13
INTR 31
L17:
.line 16
CLRC INTM
EPI0_8:
.line 17
MAR * ,AR1
SBRK 3
LAR AR0,*-
PSHD *
RET
.endfunc 445,000000000H,2
.sym _OSSchedLock,_OSSchedLock,32,2,0
.globl _OSSchedLock
.func 463
******************************************************
* FUNCTION DEF : _OSSchedLock
******************************************************
_OSSchedLock:
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,1
LAR AR0,*0+
.line 3
LDPK _OSRunning
LAC _OSRunning
SUBK 1
BNZ L19
.line 4
SETC INTM
.line 5
LAC _OSLockNesting
ADDK 1
SACL _OSLockNesting
.line 6
CLRC INTM
L19:
EPI0_9:
.line 8
SBRK 2
LAR AR0,*-
PSHD *
RET
.endfunc 470,000000000H,1
.sym _OSSchedUnlock,_OSSchedUnlock,32,2,0
.globl _OSSchedUnlock
.func 487
******************************************************
* FUNCTION DEF : _OSSchedUnlock
******************************************************
_OSSchedUnlock:
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,1
LAR AR0,*0+
.line 3
LDPK _OSRunning
LAC _OSRunning
SUBK 1
BNZ L20
.line 4
SETC INTM
.line 5
LAC _OSLockNesting
BZ L21
.line 6
SUBK 1
SACL _OSLockNesting
.line 7
ZALS _OSIntNesting
OR _OSLockNesting
BNZ L22
.line 8
CLRC INTM
.line 9
CALL _OSSched
B L20
L22:
.line 11
CLRC INTM
B L20
L21:
.line 14
CLRC INTM
L20:
EPI0_10:
.line 17
SBRK 2
LAR AR0,*-
PSHD *
RET
.endfunc 503,000000000H,1
.sym _OSStart,_OSStart,32,2,0
.globl _OSStart
.func 523
******************************************************
* FUNCTION DEF : _OSStart
******************************************************
_OSStart:
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,3
LAR AR0,*0+
.sym _y,1,12,1,16
.sym _x,2,12,1,16
.line 7
LDPK _OSRunning
LAC _OSRunning
BNZ L25
.line 8
LAC _OSRdyGrp
ADLK _OSUnMapTbl+0,0
MAR * ,AR0
SACL *
LAR AR3,* ,AR3
LAC * ,AR2
LARK AR2,1
MAR *0+
SACL *
.line 9
LAC *+,AR0
ADLK _OSRdyTbl+0,0
SACL *
LAR AR3,* ,AR3
LAC * ,AR0
ADLK _OSUnMapTbl+0,0
SACL *
LAR AR3,* ,AR3
LAC * ,AR2
SACL *
.line 10
LAC *-
ADD * ,3,AR0
SACL _OSPrioHighRdy
.line 11
BLKD #_OSPrioHighRdy,_OSPrioCur
.line 12
LAC _OSPrioHighRdy
ADLK _OSTCBPrioTbl+0,0
SACL *
LAR AR3,* ,AR3
BLDD * ,#_OSTCBHighRdy,AR1
.line 13
BLKD #_OSTCBHighRdy,_OSTCBCur
.line 14
CALL _OSStartHighRdy
L25:
EPI0_11:
.line 17
SBRK 4
LAR AR0,*-
PSHD *
RET
.endfunc 539,000000000H,3
.sym _OSStatInit,_OSStatInit,32,2,0
.globl _OSStatInit
.func 562
******************************************************
* FUNCTION DEF : _OSStatInit
******************************************************
_OSStatInit:
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,1
LAR AR0,*0+
.line 3
LACK 2
SACL *+
CALL _OSTimeDly
MAR *-
.line 4
SETC INTM
.line 5
LACK 0
LDPK _OSIdleCtr
SACL _OSIdleCtr
SACH _OSIdleCtr+1
.line 6
CLRC INTM
.line 7
LACK 3000
SACL *+
CALL _OSTimeDly
MAR *-
.line 8
SETC INTM
.line 9
LDPK _OSIdleCtr
ZALS _OSIdleCtr
ADDH _OSIdleCtr+1
SACL _OSIdleCtrMax
SACH _OSIdleCtrMax+1
.line 10
LACK 1
SACL _OSStatRdy
.line 11
CLRC INTM
EPI0_12:
.line 12
SBRK 2
LAR AR0,*-
PSHD *
RET
.endfunc 573,000000000H,1
.sym _OSTaskIdle,_OSTaskIdle,32,2,0
.globl _OSTaskIdle
.func 589
******************************************************
* FUNCTION DEF : _OSTaskIdle
******************************************************
_OSTaskIdle:
LF13 .set 0
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,1
LAR AR0,*0+
.sym _pdata,-3+LF13,16,9,16
.line 2
.line 3
L26:
.line 5
SETC INTM
.line 6
LDPK _OSIdleCtr
ZALS _OSIdleCtr
ADDH _OSIdleCtr+1
ADDK 1
SACL _OSIdleCtr
SACH _OSIdleCtr+1
.line 7
CLRC INTM
.line 8
B L26
.endfunc 597,000000000H,1
.sym _OSTaskStat,_OSTaskStat,32,2,0
.globl _OSTaskStat
.func 626
******************************************************
* FUNCTION DEF : _OSTaskStat
******************************************************
_OSTaskStat:
LF14 .set 0
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,6
LAR AR0,*0+
.sym _pdata,-3+LF14,16,9,16
.sym _run,1,15,1,32
.sym _usage,3,2,1,16
.line 2
.line 7
.line 8
LDPK _OSStatRdy
LAC _OSStatRdy
BNZ L28
L27:
.line 9
LACK 6000
SACL *+
CALL _OSTimeDly
MAR *-
.line 8
LDPK _OSStatRdy
LAC _OSStatRdy
BZ L27
L28:
L29:
.line 12
SETC INTM
.line 13
LDPK _OSIdleCtr
ZALS _OSIdleCtr
ADDH _OSIdleCtr+1
SACL _OSIdleCtrRun
SACH _OSIdleCtrRun+1
.line 14
MAR * ,AR2
LARK AR2,1
MAR *0+
SACL *+
SACH *
.line 15
LACK 0
SACL _OSIdleCtr
SACH _OSIdleCtr+1
.line 16
.bss CONST,1,1
.line 17
LDP #10CH
.line 18
SPLK #0FFFH,CONST
.line 19
OUT CONST,0000H
.line 20
OUT CONST,0004H
.line 21
RPT #255
.line 22
NOP
.line 23
RPT #255
.line 24
NOP
.line 25
RPT #255
.line 26
NOP
.line 27
RPT #255
.line 28
NOP
.line 29
RPT #255
.line 30
NOP
.line 31
RPT #255
.line 32
NOP
.line 33
RPT #255
.line 34
NOP
.line 35
RPT #255
.line 36
NOP
.line 37
RPT #255
.line 38
NOP
.line 39
RPT #255
.line 40
NOP
.line 41
RPT #255
.line 42
NOP
.line 43
RPT #255
.line 44
NOP
.line 45
RPT #255
.line 46
NOP
.line 47
RPT #255
.line 48
NOP
.line 49
SPLK #0H,CONST
.line 50
OUT CONST,0000H
.line 51
OUT CONST,0004H
.line 52
CLRC INTM
.line 53
ZALS _OSIdleCtrMax
ADDH _OSIdleCtrMax+1
BZ L30
.line 54
LACK 100
MAR *-,AR1
SACL *+
SACH *+
SACL *+,AR2
ZALS *+
ADDH * ,AR1
MAR *-
CALL L$$MPY
MAR * ,AR2
ADRK 2
SACL *+
SACH *-,AR1
ZALS _OSIdleCtrMax
ADDH _OSIdleCtrMax+1
SACL *+
SACH *+,AR2
ZALS *+
ADDH * ,AR1
CALL L$$DIVU
NEG
ADDK 100
MAR * ,AR2
SBRK 2
SACL *
.line 55
SSXM
LAC *
SUBK 100
BLEZ L31
.line 56
LACK 100
SACL _OSCPUUsage
B L34
L31:
.line 57
LAC *
BGEZ L33
.line 58
LACK 0
SACL _OSCPUUsage
B L34
L33:
.line 60
SACL _OSCPUUsage
B L34
L30:
.line 63
LACK 0
SACL _OSCPUUsage
L34:
.line 65
CALL _OSTaskStatHook,AR1
.line 66
LACK 3000
SACL *+
CALL _OSTimeDly
MAR *-,AR2
.line 67
B L29
.endfunc 693,000000000H,6
.sym _OSTCBInit,_OSTCBInit,44,2,0
.globl _OSTCBInit
.func 739
******************************************************
* FUNCTION DEF : _OSTCBInit
******************************************************
_OSTCBInit:
LF15 .set 0
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,2
LAR AR0,*0+
.sym _prio,-3+LF15,12,9,16
.sym _ptos,-4+LF15,30,9,16
.sym _pbos,-5+LF15,30,9,16
.sym _id,-6+LF15,14,9,16
.sym _stk_size,-7+LF15,14,9,16
.sym _pext,-8+LF15,16,9,16
.sym _opt,-9+LF15,14,9,16
.sym _ptcb,1,24,1,16,_os_tcb
.line 2
.line 6
SETC INTM
.line 7
MAR * ,AR2
LARK AR2,1
MAR *0+
BLKD #_OSTCBFreeList,*
.line 8
LAC *
BZ L35
.line 9
LAR AR3,* ,AR3
MAR *+
BLDD * ,#_OSTCBFreeList
.line 10
CLRC INTM
.line 11
MAR * ,AR2
SBRK 5-LF15
LAC *+,AR3
MAR *-
SACL * ,AR2
.line 12
LAC * ,AR3
ADRK 6
SACL *-
.line 13
LACK 0
SACL *-
.line 14
SACL * ,AR2
.line 23
.line 24
.line 25
.line 26
.line 27
.line 34
RSXM
LAC * ,12,AR3
ADRK 4
SACH * ,1
.line 35
LAC * ,AR0
ADLK _OSMapTbl+0,0
SACL *
LAR AR4,* ,AR4
LAC * ,AR3
ADRK 2
SACL * ,AR2
.line 36
LACK 7
AND * ,AR3
SBRK 3
SACL *
.line 37
LAC * ,AR0
ADLK _OSMapTbl+0,0
SACL *
LAR AR4,* ,AR4
LAC * ,AR3
ADRK 2
SACL *
.line 40
LACK 0
SBRK 6
SACL *
.line 47
SETC INTM
.line 48
MAR * ,AR2
LAC * ,AR0
ADLK _OSTCBPrioTbl+0,0
SACL *
LAR AR4,* ,AR3
SBRK 3
MAR * ,AR4
SAR AR3,* ,AR3
.line 49
MAR *+
BLKD #_OSTCBList,*+
.line 50
LACK 0
SACL *
.line 51
LDPK _OSTCBList
LAC _OSTCBList
BZ L36
.line 52
LAR AR4,_OSTCBList
SBRK 2
MAR * ,AR4
ADRK 2
SAR AR3,*
L36:
.line 54
MAR * ,AR2
ADRK 4-LF15
BLDD * ,#_OSTCBList
.line 55
LAR AR3,* ,AR3
LAC _OSRdyGrp
ADRK 10
OR * ,AR2
SACL _OSRdyGrp
.line 56
LAR AR4,* ,AR4
ADRK 8
LAC * ,AR0
ADLK _OSRdyTbl+0,0
SACL *
LAR AR5,* ,AR5
LAC * ,AR3
MAR *-
OR * ,AR5
SACL *
.line 57
CLRC INTM
.line 58
LACK 0
B EPI0_15
L35:
.line 60
CLRC INTM
.line 61
LACK 70
EPI0_15:
.line 63
MAR * ,AR1
SBRK 3
LAR AR0,*-
PSHD *
RET
.endfunc 801,000000000H,2
.sym _OSTimeTick,_OSTimeTick,32,2,0
.globl _OSTimeTick
.func 817
******************************************************
* FUNCTION DEF : _OSTimeTick
******************************************************
_OSTimeTick:
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,2
LAR AR0,*0+
.sym _ptcb,1,24,1,16,_os_tcb
.line 6
CALL _OSTimeTickHook
.line 7
MAR * ,AR2
LARK AR2,1
MAR *0+
BLKD #_OSTCBList,*
.line 8
LAR AR3,* ,AR3
ADRK 6
LAC *
SUBK 33
BZ L38
MAR * ,AR2
L37:
.line 9
SETC INTM
.line 10
LAR AR3,* ,AR3
ADRK 4
LAC *
BZ L39
.line 11
ZALS *
SUBK 1
SACL *
ANDK 0FFFFh
BNZ L39
.line 12
MAR *+
BIT * ,12
BBNZ L41
.line 13
LDPK _OSRdyGrp
LAC _OSRdyGrp
ADRK 5
OR * ,AR2
SACL _OSRdyGrp
.line 14
LAR AR4,* ,AR4
ADRK 8
LAC * ,AR0
ADLK _OSRdyTbl+0,0
SACL *
LAR AR5,* ,AR5
LAC * ,AR3
MAR *-
OR * ,AR5
SACL *
B L39
L41:
.line 16
LACK 1
MAR *-
SACL *
L39:
.line 20
MAR * ,AR2
LAR AR3,* ,AR3
MAR *+
LAC * ,AR2
SACL *
.line 21
CLRC INTM
.line 8
LAR AR3,* ,AR3
ADRK 6
LAC * ,AR2
SUBK 33
BNZ L37
L38:
.line 23
SETC INTM
.line 24
LDPK _OSTime
ZALS _OSTime
ADDH _OSTime+1
ADDK 1
SACL _OSTime
SACH _OSTime+1
.line 25
CLRC INTM
EPI0_16:
.line 26
MAR * ,AR1
SBRK 3
LAR AR0,*-
PSHD *
RET
.endfunc 842,000000000H,2
.sym _OSVersion,_OSVersion,46,2,0
.globl _OSVersion
.func 858
******************************************************
* FUNCTION DEF : _OSVersion
******************************************************
_OSVersion:
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,1
LAR AR0,*0+
.line 3
LACK 200
EPI0_17:
.line 4
SBRK 2
LAR AR0,*-
PSHD *
RET
.endfunc 861,000000000H,1
.file "os_sem.c"
.sym _OSSemAccept,_OSSemAccept,46,2,0
.globl _OSSemAccept
.func 39
******************************************************
* FUNCTION DEF : _OSSemAccept
******************************************************
_OSSemAccept:
LF18 .set 0
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,2
LAR AR0,*0+
.sym _pevent,-3+LF18,24,9,16,.fake0
.sym _cnt,1,14,1,16
.line 2
.line 6
SETC INTM
.line 7
MAR * ,AR2
LARK AR2,-3+LF18
MAR *0+
LAR AR3,* ,AR3
ADRK 7
LAC *
SUBK 3
BZ L43
.line 8
CLRC INTM
.line 9
LACK 0
B EPI0_18
L43:
.line 11
MAR *-
LAC * ,AR2
ADRK 4-LF18
SACL *
.line 12
LAC *
BZ L44
.line 13
MAR * ,AR3
LAC *
SUBK 1
SACL *
L44:
.line 15
CLRC INTM
.line 16
MAR * ,AR2
ZALS *
EPI0_18:
.line 17
MAR * ,AR1
SBRK 3
LAR AR0,*-
PSHD *
RET
.endfunc 55,000000000H,2
.sym _OSSemCreate,_OSSemCreate,104,2,0,.fake0
.globl _OSSemCreate
.func 75
******************************************************
* FUNCTION DEF : _OSSemCreate
******************************************************
_OSSemCreate:
LF19 .set 0
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,2
LAR AR0,*0+
.sym _cnt,-3+LF19,14,9,16
.sym _pevent,1,24,1,16,.fake0
.line 2
.line 6
SETC INTM
.line 7
MAR * ,AR2
LARK AR2,1
MAR *0+
BLKD #_OSEventFreeList,*
.line 8
LDPK _OSEventFreeList
LAC _OSEventFreeList
BZ L45
.line 9
LAR AR3,_OSEventFreeList
MAR * ,AR3
BLDD * ,#_OSEventFreeList
L45:
.line 11
CLRC INTM
.line 12
MAR * ,AR2
LAC *
BZ L46
.line 13
LAR AR3,* ,AR3
LACK 3
ADRK 7
SACL * ,AR2
.line 14
SBRK 4-LF19
LAC * ,AR3
MAR *-
SACL *
.line 15
SBRK 6
MAR * ,AR1
SAR AR3,*+
CALL _OSEventWaitListInit
MAR *-
L46:
.line 17
MAR * ,AR2
LARK AR2,1
MAR *0+
ZALS *
EPI0_19:
.line 18
MAR * ,AR1
SBRK 3
LAR AR0,*-
PSHD *
RET
.endfunc 92,000000000H,2
.sym _OSSemPend,_OSSemPend,32,2,0
.globl _OSSemPend
.func 124
******************************************************
* FUNCTION DEF : _OSSemPend
******************************************************
_OSSemPend:
LF20 .set 0
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,1
LAR AR0,*0+
.sym _pevent,-3+LF20,24,9,16,.fake0
.sym _timeout,-4+LF20,14,9,16
.sym _err,-5+LF20,28,9,16
.line 2
.line 3
SETC INTM
.line 4
MAR * ,AR2
LARK AR2,-3+LF20
MAR *0+
LAR AR3,* ,AR3
ADRK 7
LAC *
SUBK 3
BZ L47
.line 5
CLRC INTM
.line 6
MAR * ,AR2
SBRK 2
LAR AR4,* ,AR4
LACK 1
SACL *
L47:
.line 8
MAR * ,AR3
MAR *-
LAC *
BZ L48
.line 9
LAC *
SUBK 1
SACL *
.line 10
CLRC INTM
.line 11
MAR * ,AR2
LARK AR2,-5+LF20
MAR *0+
LAR AR4,* ,AR4
LACK 0
SACL *
B L49
L48:
.line 12
LDPK _OSIntNesting
LAC _OSIntNesting
BZ L50
.line 13
CLRC INTM
.line 14
MAR * ,AR2
LARK AR2,-5+LF20
MAR *0+
LAR AR4,* ,AR4
LACK 2
SACL *
B L49
L50:
.line 16
LAR AR4,_OSTCBCur
MAR * ,AR4
ADRK 5
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -