📄 os_task.asm
字号:
;***************************************************************
;* TMS320C54x ANSI C Codegen Version 3.50 *
;* Date/Time created: Wed Apr 07 11:37:09 2004 *
;***************************************************************
.mmregs
FP .set AR7
.c_mode
; acp500 -m --i_output_file D:\DOCUME~1\liuchao\LOCALS~1\Temp\tempTI2 --ii_file D:\DOCUME~1\liuchao\LOCALS~1\Temp\tempTI3 --object_file .\os_task.obj --opt_shell 5 os_task.c os_task.c -gk -as -fr. os_task.c
.file "os_task.c"
.file "e:\ti\c5400\cgtools\include\os_cpu.h"
.sym _BOOLEAN, 0, 14, 13, 16
.sym _INT8U, 0, 14, 13, 16
.sym _INT16U, 0, 14, 13, 16
.sym _INT32U, 0, 15, 13, 32
.sym _OS_STK, 0, 14, 13, 16
.file "e:\ti\c5400\cgtools\include\os_cfg.h"
.sym _OS_FLAGS, 0, 14, 13, 16
.file ".\ucos_ii.h"
.stag _os_event, 704
.member _OSEventType, 0, 14, 8, 16
.member _OSEventGrp, 16, 14, 8, 16
.member _OSEventCnt, 32, 14, 8, 16
.member _OSEventPtr, 48, 16, 8, 16
.member _OSEventTbl, 64, 62, 8, 128, , 8
.member _OSEventName, 192, 50, 8, 512, , 32
.eos
.sym _OS_EVENT, 0, 8, 13, 704,_os_event
.stag _os_flag_node, 0
.eos
.sym _OS_FLAG_NODE, 0, 8, 13, 0,_os_flag_node
.stag _os_stk_data, 64
.member _OSFree, 0, 15, 8, 32
.member _OSUsed, 32, 15, 8, 32
.eos
.sym _OS_STK_DATA, 0, 8, 13, 64,_os_stk_data
.stag _os_tcb, 1024
.member _OSTCBStkPtr, 0, 30, 8, 16
.member _OSTCBExtPtr, 16, 16, 8, 16
.member _OSTCBStkBottom, 32, 30, 8, 16
.member _OSTCBStkSize, 64, 15, 8, 32
.member _OSTCBOpt, 96, 14, 8, 16
.member _OSTCBId, 112, 14, 8, 16
.member _OSTCBNext, 128, 24, 8, 16, _os_tcb
.member _OSTCBPrev, 144, 24, 8, 16, _os_tcb
.member _OSTCBEventPtr, 160, 24, 8, 16, _os_event
.member _OSTCBMsg, 176, 16, 8, 16
.member _OSTCBFlagNode, 192, 24, 8, 16, _os_flag_node
.member _OSTCBFlagsRdy, 208, 14, 8, 16
.member _OSTCBDly, 224, 14, 8, 16
.member _OSTCBStat, 240, 14, 8, 16
.member _OSTCBPrio, 256, 14, 8, 16
.member _OSTCBX, 272, 14, 8, 16
.member _OSTCBY, 288, 14, 8, 16
.member _OSTCBBitX, 304, 14, 8, 16
.member _OSTCBBitY, 320, 14, 8, 16
.member _OSTCBDelReq, 336, 14, 8, 16
.member _OSTCBCtxSwCtr, 352, 15, 8, 32
.member _OSTCBCyclesTot, 384, 15, 8, 32
.member _OSTCBCyclesStart, 416, 15, 8, 32
.member _OSTCBStkBase, 448, 30, 8, 16
.member _OSTCBStkUsed, 480, 15, 8, 32
.member _OSTCBTaskName, 512, 50, 8, 512, , 32
.eos
.sym _OS_TCB, 0, 8, 13, 1024,_os_tcb
.file "os_task.c"
.file ".\ucos_ii.h"
.sym _INT8U, 0, 14, 13, 16
.file "os_task.c"
.sect ".text"
.global _OSTaskChangePrio
.sym _OSTaskChangePrio,_OSTaskChangePrio, 46, 2, 0
.func 40
;***************************************************************
;* FUNCTION DEF: _OSTaskChangePrio *
;***************************************************************
_OSTaskChangePrio:
;* A assigned to _oldprio
.sym _oldprio,0, 14, 17, 16
.sym _newprio,10, 14, 9, 16
.sym _oldprio,0, 14, 1, 16
.sym _pevent,1, 24, 1, 16, _os_event
.sym _ptcb,2, 24, 1, 16, _os_tcb
.sym _x,3, 14, 1, 16
.sym _y,4, 14, 1, 16
.sym _bitx,5, 14, 1, 16
.sym _bity,6, 14, 1, 16
.sym _y_old,7, 14, 1, 16
PSHM AR1
FRAME #-8
NOP
.line 2
STL A,*SP(0) ; |41|
.line 20
STLM A,AR1 ; |59|
NOP
STM #63,AR0 ; |59|
CMPR 1,AR1 ; |59|
BC L1,TC ; |59|
; branch occurs ; |59|
.line 21
CMPM *SP(0),#255 ; |60|
BC L1,TC ; |60|
; branch occurs ; |60|
.line 22
BD L10 ; |61|
NOP
LD #42,A ; |61|
; branch occurs ; |61|
L1:
.line 25
STM #63,AR0 ; |64|
MVDK *SP(10),*(AR1) ; |64|
CMPR 1,AR1 ; |64|
BC L2,TC ; |64|
; branch occurs ; |64|
.line 26
BD L10 ; |65|
NOP
LD #42,A ; |65|
; branch occurs ; |65|
L2:
.line 29
ssbx INTM
.line 30
MVDK *SP(10),*(AR1) ; |69|
LD *AR1(_OSTCBPrioTbl),A ; |69|
BC L3,AEQ ; |69|
; branch occurs ; |69|
.line 31
rsbx INTM
.line 32
BD L10 ; |71|
NOP
LD #40,A ; |71|
; branch occurs ; |71|
L3:
.line 34
CMPM *SP(0),#255 ; |73|
BC L4,NTC ; |73|
; branch occurs ; |73|
.line 35
MVDM *(_OSTCBCur),AR1 ; |74|
NOP
LD *AR1(16),A ; |74|
STL A,*SP(0) ; |74|
L4:
.line 37
MVDK *SP(0),*(AR1) ; |76|
LD *AR1(_OSTCBPrioTbl),A ; |76|
STL A,*SP(2) ; |76|
.line 38
LD *SP(2),A ; |77|
BC L5,ANEQ ; |77|
; branch occurs ; |77|
.line 39
rsbx INTM
.line 40
BD L10 ; |79|
NOP
LD #41,A ; |79|
; branch occurs ; |79|
L5:
.line 42
RSBX SXM ;
LD *SP(10),#-3,A ; |81|
STL A,*SP(4) ; |81|
.line 43
MVDK *SP(4),*(AR1) ; |82|
LD *AR1(_OSMapTbl),A ; |82|
STL A,*SP(6) ; |82|
.line 44
LD #7,A ; |83|
AND *SP(10),A ; |83|
STL A,*SP(3) ; |83|
.line 45
MVDK *SP(3),*(AR1) ; |84|
LD *AR1(_OSMapTbl),A ; |84|
STL A,*SP(5) ; |84|
.line 46
MVDK *SP(0),*(AR1) ; |85|
ST #0,*AR1(_OSTCBPrioTbl) ; |85|
.line 47
LD *SP(2),A ; |86|
MVDK *SP(10),*(AR1) ; |86|
STL A,*AR1(_OSTCBPrioTbl) ; |86|
.line 48
MVDK *SP(2),*(AR1) ; |87|
LD *AR1(18),A ; |87|
STL A,*SP(7) ; |87|
.line 49
LD *AR1(19),A ; |88|
MVDK *SP(7),*(AR2) ; |88|
AND *AR2(_OSRdyTbl),A ; |88|
NOP
LDM AL,A ; |88|
BC L7,AEQ ; |88|
; branch occurs ; |88|
.line 50
MVMM AR2,AR1
MVDK *SP(2),*(AR2) ; |89|
LD *AR2(19),A ; |89|
CMPL A,A ; |89|
AND *AR1(_OSRdyTbl),A ; |89|
STL A,*AR1(_OSRdyTbl) ; |89|
.line 51
MVDK *SP(7),*(AR1) ; |90|
LD *AR1(_OSRdyTbl),A ; |90|
BC L6,ANEQ ; |90|
; branch occurs ; |90|
.line 52
MVDK *SP(2),*(AR1) ; |91|
LD *AR1(20),A ; |91|
CMPL A,A ; |91|
AND *(_OSRdyGrp),A ; |91|
STL A,*(_OSRdyGrp) ; |91|
L6:
.line 54
LD *SP(6),A ; |93|
OR *(_OSRdyGrp),A ; |93|
STL A,*(_OSRdyGrp) ; |93|
.line 55
MVDK *SP(4),*(AR1) ; |94|
LD *SP(5),A ; |94|
OR *AR1(_OSRdyTbl),A ; |94|
STL A,*AR1(_OSRdyTbl) ; |94|
.line 57
B L9 ; |96|
; branch occurs ; |96|
L7:
.line 58
LD *AR1(10),A ; |97|
STL A,*SP(1) ; |97|
.line 59
LD *SP(1),A ; |98|
BC L9,AEQ ; |98|
; branch occurs ; |98|
.line 60
LDM AR2,A
ADD *SP(1),A ; |99|
MVDK *SP(2),*(AR2) ; |99|
ADD #4,A,A ; |99|
STLM A,AR1 ; |99|
LD *AR2(19),A ; |99|
CMPL A,A ; |99|
AND *AR1,A ; |99|
STL A,*AR1 ; |99|
.line 61
LD *SP(7),16,A ; |100|
ADD *SP(1),16,A,A ; |100|
STH A,*(AR1) ; |100|
NOP
NOP
LD *AR1(4),A ; |100|
BC L8,ANEQ ; |100|
; branch occurs ; |100|
.line 62
MVDK *SP(2),*(AR2) ; |101|
MVDK *SP(1),*(AR1) ; |101|
LD *AR2(20),A ; |101|
CMPL A,A ; |101|
AND *AR1(1),A ; |101|
STL A,*AR1(1) ; |101|
L8:
.line 64
MVDK *SP(1),*(AR1) ; |103|
LD *SP(6),A ; |103|
OR *AR1(1),A ; |103|
STL A,*AR1(1) ; |103|
.line 65
LD *SP(4),A ; |104|
ADD *SP(1),A ; |104|
ADD #4,A,A ; |104|
STLM A,AR1 ; |104|
NOP
LD *SP(5),A ; |104|
OR *AR1,A ; |104|
STL A,*AR1 ; |104|
L9:
.line 69
LD *SP(10),A ; |108|
MVDK *SP(2),*(AR1) ; |108|
STL A,*AR1(16) ; |108|
.line 70
MVDK *SP(2),*(AR1) ; |109|
LD *SP(4),A ; |109|
STL A,*AR1(18) ; |109|
.line 71
MVDK *SP(2),*(AR1) ; |110|
LD *SP(3),A ; |110|
STL A,*AR1(17) ; |110|
.line 72
MVDK *SP(2),*(AR1) ; |111|
LD *SP(6),A ; |111|
STL A,*AR1(20) ; |111|
.line 73
MVDK *SP(2),*(AR1) ; |112|
LD *SP(5),A ; |112|
STL A,*AR1(19) ; |112|
.line 74
rsbx INTM
.line 75
CALL #_OS_Sched ; |114|
; call occurs [#_OS_Sched] ; |114|
.line 76
LD #0,A ; |115|
L10:
.line 77
FRAME #8 ; |116|
POPM AR1 ; |116|
RET ; |116|
; return occurs ; |116|
.endfunc 116,000000400h,9
.sect ".text"
.global _OSTaskCreate
.sym _OSTaskCreate,_OSTaskCreate, 46, 2, 0
.func 159
;***************************************************************
;* FUNCTION DEF: _OSTaskCreate *
;***************************************************************
_OSTaskCreate:
;* 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 _task,8, 144, 1, 16
.sym _psp,9, 30, 1, 16
.sym _err,10, 14, 1, 16
PSHM AR1
FRAME #-12
NOP
.line 2
STL A,*SP(8) ; |160|
.line 11
STM #63,AR0 ; |169|
MVDK *SP(16),*(AR1) ; |169|
CMPR 2,AR1 ; |169|
BC L11,NTC ; |169|
; branch occurs ; |169|
.line 12
BD L15 ; |170|
NOP
LD #42,A ; |170|
; branch occurs ; |170|
L11:
.line 15
ssbx INTM
.line 16
MVDK *SP(16),*(AR1) ; |174|
LD *AR1(_OSTCBPrioTbl),A ; |174|
BC L14,ANEQ ; |174|
; branch occurs ; |174|
.line 17
ST #1,*AR1(_OSTCBPrioTbl) ; |175|
.line 19
rsbx INTM
.line 20
LD *SP(14),A ; |178|
STL A,*SP(0) ; |178|
ST #0,*SP(2) ; |178|
LD *SP(15),A ; |178|
STL A,*SP(1) ; |178|
LD *SP(8),A ; |178|
CALL #_OSTaskStkInit ; |178|
; call occurs [#_OSTaskStkInit] ; |178|
STL A,*SP(9) ; |178|
.line 21
ST #0,*SP(1) ; |179|
ST #0,*SP(2) ; |179|
STL A,*SP(0) ; |179|
ST #0,*SP(6) ; |179|
ST #0,*SP(7) ; |179|
LD #0,A ; |179|
DST A,*SP(4) ; |179|
LD *SP(16),A ; |179|
CALL #_OS_TCBInit ; |179|
; call occurs [#_OS_TCBInit] ; |179|
STL A,*SP(10) ; |179|
.line 22
LD *SP(10),A ; |180|
BC L12,ANEQ ; |180|
; branch occurs ; |180|
.line 23
ssbx INTM
.line 24
ADDM #1,*(_OSTaskCtr) ; |182|
.line 25
rsbx INTM
.line 26
CMPM *(_OSRunning),#1 ; |184|
BC L13,NTC ; |184|
; branch occurs ; |184|
.line 27
CALL #_OS_Sched ; |185|
; call occurs [#_OS_Sched] ; |185|
.line 29
B L13 ; |187|
; branch occurs ; |187|
L12:
.line 30
ssbx INTM
.line 31
MVDK *SP(16),*(AR1) ; |189|
ST #0,*AR1(_OSTCBPrioTbl) ; |189|
.line 32
rsbx INTM
L13:
.line 34
BD L15 ; |192|
NOP
LD *SP(10),A ; |192|
; branch occurs ; |192|
L14:
.line 36
rsbx INTM
.line 37
LD #40,A ; |195|
L15:
.line 38
FRAME #12 ; |196|
POPM AR1 ; |196|
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -