⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 os_q.asm

📁 该代码采用c5400dsp的汇编语言和c语言实现ucos操作系统
💻 ASM
📖 第 1 页 / 共 2 页
字号:
;***************************************************************
;* TMS320C54x ANSI C Codegen                      Version 3.70 *
;* Date/Time created: Sat Apr 24 16:09:22 2004                 *
;***************************************************************
	.mmregs
FP	.set	AR7
	.c_mode
	.file	"os_q.c"
	.bss	_OSQFreeList,1,0,0
	.sym	_OSQFreeList,_OSQFreeList, 24, 3, 16, _os_q
	.bss	_OSQTbl,14,0,0
	.sym	_OSQTbl,_OSQTbl, 56, 3, 224, _os_q, 2
;	C:\TI\C5400\CGTOOLS\BIN\acp500.exe -Ic:/ti/c5400/bios/include -Ic:/ti/c5400/rtdx/include -Ic:/ti/c5400/cgtools/include --keep_unneeded_types -m --i_output_file C:\WINDOWS\TEMP\TI1902249_2 --template_info_file C:\WINDOWS\TEMP\TI1902249_3 --object_file .\os_q.obj --opt_shell 8 os_q.c -g -k -as -fr. -ic:/ti/c5400/bios/include -ic:/ti/c5400/rtdx/include -ic:/ti/c5400/cgtools/include os_q.c 
	.sect	".text"
	.global	_OSQAccept
	.sym	_OSQAccept,_OSQAccept, 96, 2, 0
	.func	65

;***************************************************************
;* FUNCTION DEF: _OSQAccept                                    *
;***************************************************************
_OSQAccept:
	.line	2
;* A     assigned to _pevent
	.sym	_pevent,0, 24, 17, 16, $$fake0
	.sym	_pevent,0, 24, 1, 16, $$fake0
	.sym	_msg,1, 16, 1, 16
	.sym	_pq,2, 24, 1, 16, _os_q
        PSHM      AR1
        FRAME     #-3
        NOP
        STL       A,*SP(0)
	.line	7
 ssbx INTM
	.line	8
        STLM      A,AR1
        NOP
        NOP
        CMPM      *AR1(4),#2            ; |72| 
        BC        L1,TC                 ; |72| 
        ; branch occurs ; |72| 
	.line	9
 rsbx INTM
	.line	10
        BD        L4                    ; |74| 
        NOP
        LD        #0,A
        ; branch occurs ; |74| 
L1:    
	.line	12
        LD        *AR1,A
        STL       A,*SP(2)
	.line	13
        STLM      A,AR1
        NOP
        NOP
        LD        *AR1(6),A             ; |77| 
        BC        L2,AEQ                ; |77| 
        ; branch occurs ; |77| 
	.line	14
        MVDK      *AR1(4),*(AR1)
        MVDK      *SP(2),*(AR2)
        LD        *AR1+,A
        MVKD      *(AR1),*AR2(4)
        STL       A,*SP(1)
	.line	15
        MVDK      *SP(2),*(AR1)
        ADDM      #-1,*AR1(6)           ; |79| 
	.line	16
        MVDK      *SP(2),*(AR1)
        MVMM      AR1,AR2
        LD        *AR2(4),A             ; |80| 
        SUB       *AR1(2),A             ; |80| 
        BC        L3,ANEQ               ; |80| 
        ; branch occurs ; |80| 
	.line	17
        LD        *AR1(1),A
        STL       A,*AR1(4)
	.line	19
        B         L3                    ; |83| 
        ; branch occurs ; |83| 
L2:    
	.line	20
        ST        #0,*SP(1)             ; |84| 
L3:    
	.line	22
 rsbx INTM
	.line	23
        LD        *SP(1),A
L4:    
	.line	24
        FRAME     #3                    ; |87| 
        POPM      AR1                   ; |87| 
        RET       ; |87| 
        ; return occurs ; |87| 
	.endfunc	88,000000400h,4


	.sect	".text"
	.global	_OSQCreate
	.sym	_OSQCreate,_OSQCreate, 104, 2, 0, $$fake0
	.func	109

;***************************************************************
;* FUNCTION DEF: _OSQCreate                                    *
;***************************************************************
_OSQCreate:
	.line	2
;* A     assigned to _start
	.sym	_start,0, 80, 17, 16
	.sym	_size,6, 14, 9, 16
	.sym	_start,0, 80, 1, 16
	.sym	_pevent,1, 24, 1, 16, $$fake0
	.sym	_pq,2, 24, 1, 16, _os_q
        PSHM      AR1
        FRAME     #-4
        NOP
        STL       A,*SP(0)
	.line	7
 ssbx INTM
	.line	8
        MVKD      *(_OSEventFreeList),*SP(1) ; |116| 
	.line	9
        LD        *(_OSEventFreeList),A ; |117| 
        BC        L5,AEQ                ; |117| 
        ; branch occurs ; |117| 
	.line	10
        MVDM      *(_OSEventFreeList),AR1
        NOP
        MVDK      *AR1,*(_OSEventFreeList) ; |118| 
L5:    
	.line	12
 rsbx INTM
	.line	13
        LD        *SP(1),A              ; |121| 
        BC        L8,AEQ                ; |121| 
        ; branch occurs ; |121| 
	.line	14
 ssbx INTM
	.line	15
        MVKD      *(_OSQFreeList),*SP(2) ; |123| 
	.line	16
        LD        *(_OSQFreeList),A     ; |124| 
        BC        L6,AEQ                ; |124| 
        ; branch occurs ; |124| 
	.line	17
        MVDM      *(_OSQFreeList),AR1
        NOP
        MVDK      *AR1,*(_OSQFreeList)  ; |125| 
L6:    
	.line	19
 rsbx INTM
	.line	20
        LD        *SP(2),A              ; |128| 
        BC        L7,AEQ                ; |128| 
        ; branch occurs ; |128| 
	.line	21
        LD        *SP(0),A
        MVDK      *SP(2),*(AR1)
        STL       A,*AR1(1)
	.line	22
        LD        *SP(6),A
        MVDK      *SP(2),*(AR1)
        ADD       *SP(0),A              ; |130| 
        STL       A,*AR1(2)
	.line	23
        MVDK      *SP(2),*(AR1)
        LD        *SP(0),A
        STL       A,*AR1(3)
	.line	24
        MVDK      *SP(2),*(AR1)
        LD        *SP(0),A
        STL       A,*AR1(4)
	.line	25
        MVDK      *SP(2),*(AR1)
        LD        *SP(6),A
        STL       A,*AR1(5)
	.line	26
        MVDK      *SP(2),*(AR1)
        ST        #0,*AR1(6)            ; |134| 
	.line	27
        MVDK      *SP(1),*(AR1)
        ST        #2,*AR1(4)            ; |135| 
	.line	28
        LD        *SP(2),A
        MVDK      *SP(1),*(AR1)
        STL       A,*AR1
	.line	29
        LD        *SP(1),A
        CALL      #_OSEventWaitListInit ; |137| 
        ; call occurs [#_OSEventWaitListInit] ; |137| 
	.line	30
        B         L8                    ; |138| 
        ; branch occurs ; |138| 
L7:    
	.line	31
 ssbx INTM
	.line	32
        MVDK      *SP(1),*(AR1)
        MVKD      *(_OSEventFreeList),*AR1 ; |140| 
	.line	33
        MVDK      *SP(1),*(_OSEventFreeList) ; |141| 
	.line	34
 rsbx INTM
	.line	35
        ST        #0,*SP(1)             ; |143| 
L8:    
	.line	38
        LD        *SP(1),A
	.line	39
        FRAME     #4                    ; |146| 
        POPM      AR1                   ; |146| 
        RET       ; |146| 
        ; return occurs ; |146| 
	.endfunc	147,000000400h,5


	.sect	".text"
	.global	_OSQFlush
	.sym	_OSQFlush,_OSQFlush, 46, 2, 0
	.func	162

;***************************************************************
;* FUNCTION DEF: _OSQFlush                                     *
;***************************************************************
_OSQFlush:
	.line	2
;* A     assigned to _pevent
	.sym	_pevent,0, 24, 17, 16, $$fake0
	.sym	_pevent,0, 24, 1, 16, $$fake0
	.sym	_pq,1, 24, 1, 16, _os_q
        PSHM      AR1
        FRAME     #-2
        NOP
        STL       A,*SP(0)
	.line	6
 ssbx INTM
	.line	7
        STLM      A,AR1
        NOP
        NOP
        CMPM      *AR1(4),#2            ; |168| 
        BC        L9,TC                 ; |168| 
        ; branch occurs ; |168| 
	.line	8
 rsbx INTM
	.line	9
        BD        L10                   ; |170| 
        NOP
        LD        #1,A
        ; branch occurs ; |170| 
L9:    
	.line	11
        LD        *AR1,A
        STL       A,*SP(1)
	.line	12
        STLM      A,AR1
        NOP
        NOP
        LD        *AR1(1),A
        STL       A,*AR1(3)
	.line	13
        MVDK      *SP(1),*(AR1)
        LD        *AR1(1),A
        STL       A,*AR1(4)
	.line	14
        MVDK      *SP(1),*(AR1)
        ST        #0,*AR1(6)            ; |175| 
	.line	15
 rsbx INTM
	.line	16
        LD        #0,A
L10:    
	.line	17
        FRAME     #2                    ; |177| 
        POPM      AR1                   ; |177| 
        RET       ; |177| 
        ; return occurs ; |177| 
	.endfunc	178,000000400h,3


	.sect	".text"
	.global	_OSQInit
	.sym	_OSQInit,_OSQInit, 32, 2, 0
	.func	194

;***************************************************************
;* FUNCTION DEF: _OSQInit                                      *
;***************************************************************
_OSQInit:
	.line	2
	.sym	_i,0, 14, 1, 16
        PSHM      AR1
        FRAME     #-1
        NOP
	.line	6
        ST        #0,*SP(0)             ; |199| 
        LD        *SP(0),A              ; |199| 
        BC        L12,ANEQ              ; |199| 
        ; branch occurs ; |199| 
L11:    
	.line	7
        LD        *SP(0),B
        LD        #_OSQTbl,A
        STM       #7,T
        ADD       #1,B
        MAC       *(BL), A              ; |200| 
        MPY       *SP(0),#7,B           ; |200| 
        STLM      B,AR1
        NOP
        NOP
        STL       A,*AR1(_OSQTbl)
	.line	8
        ADDM      #1,*SP(0)             ; |201| 
        LD        *SP(0),A              ; |201| 
        BC        L11,AEQ               ; |201| 
        ; branch occurs ; |201| 
L12:    
	.line	9
        ST        #0,*(_OSQTbl+7)       ; |202| 
	.line	10
        ST        #_OSQTbl,*(_OSQFreeList) ; |203| 
	.line	11
        FRAME     #1
        POPM      AR1
        RET
        ; return occurs
	.endfunc	204,000000400h,2


	.sect	".text"
	.global	_OSQPend
	.sym	_OSQPend,_OSQPend, 96, 2, 0
	.func	234

;***************************************************************
;* FUNCTION DEF: _OSQPend                                      *
;***************************************************************
_OSQPend:
	.line	2
;* A     assigned to _pevent
	.sym	_pevent,0, 24, 17, 16, $$fake0
	.sym	_timeout,6, 14, 9, 16
	.sym	_err,7, 30, 9, 16
	.sym	_pevent,0, 24, 1, 16, $$fake0
	.sym	_msg,1, 16, 1, 16
	.sym	_pq,2, 24, 1, 16, _os_q
        PSHM      AR1
        FRAME     #-4
        NOP
        STL       A,*SP(0)
	.line	7
 ssbx INTM
	.line	8
        STLM      A,AR1
        NOP
        NOP
        CMPM      *AR1(4),#2            ; |241| 
        BC        L13,TC                ; |241| 
        ; branch occurs ; |241| 
	.line	9
 rsbx INTM
	.line	10
        MVDK      *SP(7),*(AR1)
        ST        #1,*AR1               ; |243| 
	.line	11
        BD        L21                   ; |244| 
        NOP
        LD        #0,A
        ; branch occurs ; |244| 
L13:    
	.line	13
        LD        *AR1,A
        STL       A,*SP(2)
	.line	14
        STLM      A,AR1
        NOP
        NOP
        LD        *AR1(6),A             ; |247| 
        BC        L15,AEQ               ; |247| 
        ; branch occurs ; |247| 
	.line	15
        MVDK      *AR1(4),*(AR1)
        MVDK      *SP(2),*(AR2)
        LD        *AR1+,A
        MVKD      *(AR1),*AR2(4)
        STL       A,*SP(1)
	.line	16
        MVDK      *SP(2),*(AR1)
        ADDM      #-1,*AR1(6)           ; |249| 
	.line	17
        MVDK      *SP(2),*(AR2)
        MVMM      AR2,AR1
        LD        *AR1(4),A             ; |250| 
        SUB       *AR2(2),A             ; |250| 
        BC        L14,ANEQ              ; |250| 
        ; branch occurs ; |250| 
	.line	18
        LD        *AR1(1),A
        STL       A,*AR1(4)
L14:    
	.line	20
 rsbx INTM
	.line	21
        MVDK      *SP(7),*(AR1)
        ST        #0,*AR1               ; |254| 
	.line	22
        B         L20                   ; |255| 
        ; branch occurs ; |255| 
L15:    
        LD        *(_OSIntNesting),A    ; |255| 
        BC        L16,AEQ               ; |255| 
        ; branch occurs ; |255| 
	.line	23
 rsbx INTM
	.line	24
        MVDK      *SP(7),*(AR1)
        ST        #2,*AR1               ; |257| 
	.line	25
        B         L20                   ; |258| 
        ; branch occurs ; |258| 
L16:    
	.line	26
        MVDM      *(_OSTCBCur),AR1
        NOP
        ORM       #4,*AR1(6)            ; |259| 
	.line	27
        MVDM      *(_OSTCBCur),AR1
        LD        *SP(6),A
        STL       A,*AR1(5)
	.line	28
        LD        *SP(0),A
        CALL      #_OSEventTaskWait     ; |261| 
        ; call occurs [#_OSEventTaskWait] ; |261| 
	.line	29
 rsbx INTM
	.line	30
        CALL      #_OSSched             ; |263| 
        ; call occurs [#_OSSched] ; |263| 
	.line	31
 ssbx INTM
	.line	32
        MVDM      *(_OSTCBCur),AR1
        NOP
        LDU       *AR1(4),A
        BCD       L17,AEQ               ; |265| 
        NOP
        STL       A,*SP(1)
        ; branch occurs ; |265| 
	.line	33
        ST        #0,*AR1(4)            ; |266| 
	.line	34
        MVDM      *(_OSTCBCur),AR1
        NOP
        ST        #0,*AR1(6)            ; |267| 
	.line	35
        MVDM      *(_OSTCBCur),AR1
        NOP
        ST        #0,*AR1(3)            ; |268| 
	.line	36
 rsbx INTM
	.line	37
        MVDK      *SP(7),*(AR1)
        ST        #0,*AR1               ; |270| 
	.line	38
        B         L20                   ; |271| 
        ; branch occurs ; |271| 
L17:    
        BITF      *AR1(6),#4            ; |271| 
        BC        L18,NTC               ; |271| 
        ; branch occurs ; |271| 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -