📄 os_task.asm
字号:
RET ; |196|
; return occurs ; |196|
.endfunc 196,000000400h,13
.sect ".text"
.global _OSTaskCreateExt
.sym _OSTaskCreateExt,_OSTaskCreateExt, 46, 2, 0
.func 264
;***************************************************************
;* FUNCTION DEF: _OSTaskCreateExt *
;***************************************************************
_OSTaskCreateExt:
;* A assigned to _task
.sym _task,0, 144, 17, 16
.sym _p_arg,14, 16, 9, 16
.sym _ptos,15, 30, 9, 16
.sym _prio,16, 14, 9, 16
.sym _id,17, 14, 9, 16
.sym _pbos,18, 30, 9, 16
.sym _stk_size,20, 15, 9, 32
.sym _pext,22, 16, 9, 16
.sym _opt,23, 14, 9, 16
.sym _task,8, 144, 1, 16
.sym _psp,9, 30, 1, 16
.sym _err,10, 14, 1, 16
PSHM AR1
FRAME #-12
NOP
.line 10
STL A,*SP(8) ; |273|
.line 19
STM #63,AR0 ; |282|
MVDK *SP(16),*(AR1) ; |282|
CMPR 2,AR1 ; |282|
BC L16,NTC ; |282|
; branch occurs ; |282|
.line 20
BD L20 ; |283|
NOP
LD #42,A ; |283|
; branch occurs ; |283|
L16:
.line 23
ssbx INTM
.line 24
MVDK *SP(16),*(AR1) ; |287|
LD *AR1(_OSTCBPrioTbl),A ; |287|
BC L19,ANEQ ; |287|
; branch occurs ; |287|
.line 25
ST #1,*AR1(_OSTCBPrioTbl) ; |288|
.line 27
rsbx INTM
.line 29
DLD *SP(20),A ; |292|
DST A,*SP(0) ; |292|
LD *SP(23),A ; |292|
STL A,*SP(2) ; |292|
LD *SP(18),A ; |292|
CALL #_OS_TaskStkClr ; |292|
; call occurs [#_OS_TaskStkClr] ; |292|
.line 31
LD *SP(14),A ; |294|
STL A,*SP(0) ; |294|
LD *SP(15),A ; |294|
STL A,*SP(1) ; |294|
LD *SP(23),A ; |294|
STL A,*SP(2) ; |294|
LD *SP(8),A ; |294|
CALL #_OSTaskStkInit ; |294|
; call occurs [#_OSTaskStkInit] ; |294|
STL A,*SP(9) ; |294|
.line 32
STL A,*SP(0) ; |295|
LD *SP(18),A ; |295|
STL A,*SP(1) ; |295|
LD *SP(17),A ; |295|
STL A,*SP(2) ; |295|
DLD *SP(20),A ; |295|
DST A,*SP(4) ; |295|
LD *SP(22),A ; |295|
STL A,*SP(6) ; |295|
LD *SP(23),A ; |295|
STL A,*SP(7) ; |295|
LD *SP(16),A ; |295|
CALL #_OS_TCBInit ; |295|
; call occurs [#_OS_TCBInit] ; |295|
STL A,*SP(10) ; |295|
.line 33
LD *SP(10),A ; |296|
BC L17,ANEQ ; |296|
; branch occurs ; |296|
.line 34
ssbx INTM
.line 35
ADDM #1,*(_OSTaskCtr) ; |298|
.line 36
rsbx INTM
.line 37
CMPM *(_OSRunning),#1 ; |300|
BC L18,NTC ; |300|
; branch occurs ; |300|
.line 38
CALL #_OS_Sched ; |301|
; call occurs [#_OS_Sched] ; |301|
.line 40
B L18 ; |303|
; branch occurs ; |303|
L17:
.line 41
ssbx INTM
.line 42
MVDK *SP(16),*(AR1) ; |305|
ST #0,*AR1(_OSTCBPrioTbl) ; |305|
.line 43
rsbx INTM
L18:
.line 45
BD L20 ; |308|
NOP
LD *SP(10),A ; |308|
; branch occurs ; |308|
L19:
.line 47
rsbx INTM
.line 48
LD #40,A ; |311|
L20:
.line 49
FRAME #12 ; |312|
POPM AR1 ; |312|
RET ; |312|
; return occurs ; |312|
.endfunc 312,000000400h,13
.sect ".text"
.global _OSTaskDel
.sym _OSTaskDel,_OSTaskDel, 46, 2, 0
.func 351
;***************************************************************
;* FUNCTION DEF: _OSTaskDel *
;***************************************************************
_OSTaskDel:
;* A assigned to _prio
.sym _prio,0, 14, 17, 16
.sym _prio,0, 14, 1, 16
.sym _pevent,1, 24, 1, 16, _os_event
.sym _pnode,2, 24, 1, 16, _os_flag_node
.sym _ptcb,3, 24, 1, 16, _os_tcb
.sym _y,4, 14, 1, 16
PSHM AR1
FRAME #-6
NOP
.line 2
STL A,*SP(0) ; |352|
.line 18
LD *(_OSIntNesting),A ; |368|
BC L21,AEQ ; |368|
; branch occurs ; |368|
.line 19
BD L32 ; |369|
NOP
LD #63,A ; |369|
; branch occurs ; |369|
L21:
.line 22
CMPM *SP(0),#63 ; |372|
BC L22,NTC ; |372|
; branch occurs ; |372|
.line 23
BD L32 ; |373|
NOP
LD #61,A ; |373|
; branch occurs ; |373|
L22:
.line 25
STM #63,AR0 ; |375|
MVDK *SP(0),*(AR1) ; |375|
CMPR 1,AR1 ; |375|
BC L23,TC ; |375|
; branch occurs ; |375|
CMPM *SP(0),#255 ; |375|
BC L23,TC ; |375|
; branch occurs ; |375|
.line 26
BD L32 ; |376|
NOP
LD #42,A ; |376|
; branch occurs ; |376|
L23:
.line 29
ssbx INTM
.line 30
CMPM *SP(0),#255 ; |380|
BC L24,NTC ; |380|
; branch occurs ; |380|
.line 31
MVDM *(_OSTCBCur),AR1 ; |381|
NOP
LD *AR1(16),A ; |381|
STL A,*SP(0) ; |381|
L24:
.line 33
MVDK *SP(0),*(AR1) ; |383|
LD *AR1(_OSTCBPrioTbl),A ; |383|
STL A,*SP(3) ; |383|
.line 34
LD *SP(3),A ; |384|
BC L31,AEQ ; |384|
; branch occurs ; |384|
.line 35
MVDK *SP(3),*(AR1) ; |385|
LD *AR1(18),A ; |385|
STL A,*SP(4) ; |385|
.line 36
MVDK *SP(3),*(AR2) ; |386|
LD *AR2(19),A ; |386|
MVDK *SP(4),*(AR1) ; |386|
CMPL A,A ; |386|
AND *AR1(_OSRdyTbl),A ; |386|
STL A,*AR1(_OSRdyTbl) ; |386|
.line 37
MVDK *SP(4),*(AR1) ; |387|
LD *AR1(_OSRdyTbl),A ; |387|
BC L25,ANEQ ; |387|
; branch occurs ; |387|
.line 38
MVDK *SP(3),*(AR1) ; |388|
LD *AR1(20),A ; |388|
CMPL A,A ; |388|
AND *(_OSRdyGrp),A ; |388|
STL A,*(_OSRdyGrp) ; |388|
L25:
.line 41
MVDK *SP(3),*(AR1) ; |391|
LD *AR1(10),A ; |391|
STL A,*SP(1) ; |391|
.line 42
LD *SP(1),A ; |392|
BC L26,AEQ ; |392|
; branch occurs ; |392|
.line 43
LD *SP(4),A ; |393|
ADD *SP(1),A ; |393|
MVDK *SP(3),*(AR2) ; |393|
ADD #4,A,A ; |393|
STLM A,AR1 ; |393|
LD *AR2(19),A ; |393|
CMPL A,A ; |393|
AND *AR1,A ; |393|
STL A,*AR1 ; |393|
.line 44
LD *SP(4),16,A ; |394|
ADD *SP(1),16,A,A ; |394|
STH A,*(AR1) ; |394|
NOP
NOP
LD *AR1(4),A ; |394|
BC L26,ANEQ ; |394|
; branch occurs ; |394|
.line 45
MVDK *SP(3),*(AR2) ; |395|
MVDK *SP(1),*(AR1) ; |395|
LD *AR2(20),A ; |395|
CMPL A,A ; |395|
AND *AR1(1),A ; |395|
STL A,*AR1(1) ; |395|
L26:
.line 50
MVDK *SP(3),*(AR1) ; |400|
LD *AR1(12),A ; |400|
STL A,*SP(2) ; |400|
.line 51
.line 55
ST #0,*AR1(14) ; |405|
.line 56
MVDK *SP(3),*(AR1) ; |406|
ST #0,*AR1(15) ; |406|
.line 57
MVDM *(_OSLockNesting),AR1 ; |407|
STM #255,AR0 ; |407|
CMPR 1,AR1 ; |407|
BC L27,NTC ; |407|
; branch occurs ; |407|
.line 58
ADDM #1,*(_OSLockNesting) ; |408|
L27:
.line 60
rsbx INTM
.line 61
CALL #_OS_Dummy ; |411|
; call occurs [#_OS_Dummy] ; |411|
.line 62
ssbx INTM
.line 63
LD *(_OSLockNesting),A ; |413|
BC L28,AEQ ; |413|
; branch occurs ; |413|
.line 64
ADDM #-1,*(_OSLockNesting) ; |414|
L28:
.line 66
LD *SP(3),A ; |416|
CALL #_OSTaskDelHook ; |416|
; call occurs [#_OSTaskDelHook] ; |416|
.line 67
ADDM #-1,*(_OSTaskCtr) ; |417|
.line 68
MVDK *SP(0),*(AR1) ; |418|
ST #0,*AR1(_OSTCBPrioTbl) ; |418|
.line 69
MVDK *SP(3),*(AR1) ; |419|
LD *AR1(9),A ; |419|
BC L29,ANEQ ; |419|
; branch occurs ; |419|
.line 70
MVDK *AR1(8),*(AR1) ; |420|
ST #0,*AR1(9) ; |420|
.line 71
MVDK *SP(3),*(AR1) ; |421|
MVDK *AR1(8),*(_OSTCBList) ; |421|
.line 72
B L30 ; |422|
; branch occurs ; |422|
L29:
.line 73
LD *AR1(8),A ; |423|
MVDK *AR1(9),*(AR1) ; |423|
STL A,*AR1(8) ; |423|
.line 74
MVDK *SP(3),*(AR1) ; |424|
LD *AR1(9),A ; |424|
MVDK *AR1(8),*(AR1) ; |424|
STL A,*AR1(9) ; |424|
L30:
.line 76
MVDK *SP(3),*(AR1) ; |426|
MVKD *(_OSTCBFreeList),*AR1(8) ; |426|
.line 77
MVDK *SP(3),*(_OSTCBFreeList) ; |427|
.line 79
MVDK *SP(3),*(AR1) ; |429|
ST #63,*AR1(32) ; |429|
.line 80
MVDK *SP(3),*(AR1) ; |430|
ST #0,*AR1(33) ; |430|
.line 82
rsbx INTM
.line 83
CALL #_OS_Sched ; |433|
; call occurs [#_OS_Sched] ; |433|
.line 84
BD L32 ; |434|
NOP
LD #0,A ; |434|
; branch occurs ; |434|
L31:
.line 86
rsbx INTM
.line 87
LD #60,A ; |437|
L32:
.line 88
FRAME #6 ; |438|
POPM AR1 ; |438|
RET ; |438|
; return occurs ; |438|
.endfunc 438,000000400h,7
.sect ".text"
.global _OSTaskDelReq
.sym _OSTaskDelReq,_OSTaskDelReq, 46, 2, 0
.func 487
;***************************************************************
;* FUNCTION DEF: _OSTaskDelReq *
;***************************************************************
_OSTaskDelReq:
;* A assigned to _prio
.sym _prio,0, 14, 17, 16
.sym _prio,0, 14, 1, 16
.sym _stat,1, 14, 1, 16
.sym _err,2, 14, 1, 16
.sym _ptcb,3, 24, 1, 16, _os_tcb
PSHM AR1
FRAME #-4
NOP
.line 2
STL A,*SP(0) ; |488|
.line 12
CMPM *SP(0),#63 ; |498|
BC L33,NTC ; |498|
; branch occurs ; |498|
.line 13
BD L38 ; |499|
NOP
LD #61,A ; |499|
; branch occurs ; |499|
L33:
.line 15
STLM A,AR1 ; |501|
NOP
STM #63,AR0 ; |501|
CMPR 1,AR1 ; |501|
BC L34,TC ; |501|
; branch occurs ; |501|
.line 16
CMPM *SP(0),#255 ; |502|
BC L34,TC ; |502|
; branch occurs ; |502|
.line 17
BD L38 ; |503|
NOP
LD #42,A ; |503|
; branch occurs ; |503|
L34:
.line 21
CMPM *SP(0),#255 ; |507|
BC L35,NTC ; |507|
; branch occurs ; |507|
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -