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

📄 os_task.asm

📁 ucOS在51单片机上的移植实现
💻 ASM
📖 第 1 页 / 共 4 页
字号:
	.line	22
 ssbx INTM
	.line	23
        MVDM      *(_OSTCBCur),AR1      ; |509| 
        NOP
        LD        *AR1(21),A            ; |509| 
        STL       A,*SP(1)              ; |509| 
	.line	24
 rsbx INTM
	.line	25
        B         L38                   ; |511| 
        ; branch occurs ; |511| 
L35:    
	.line	27
 ssbx INTM
	.line	28
        MVDK      *SP(0),*(AR1)         ; |514| 
        LD        *AR1(_OSTCBPrioTbl),A ; |514| 
        STL       A,*SP(3)              ; |514| 
	.line	29
        LD        *SP(3),A              ; |515| 
        BC        L36,AEQ               ; |515| 
        ; branch occurs ; |515| 
	.line	30
        MVDK      *SP(3),*(AR1)         ; |516| 
        ST        #62,*AR1(21)          ; |516| 
	.line	31
        ST        #0,*SP(2)             ; |517| 
	.line	32
        B         L37                   ; |518| 
        ; branch occurs ; |518| 
L36:    
	.line	33
        ST        #11,*SP(2)            ; |519| 
L37:    
	.line	35
 rsbx INTM
	.line	36
        LD        *SP(2),A              ; |522| 
L38:    
	.line	37
        FRAME     #4                    ; |523| 
        POPM      AR1                   ; |523| 
        RET       ; |523| 
        ; return occurs ; |523| 
	.endfunc	523,000000400h,5


	.sect	".text"
	.global	_OSTaskNameGet
	.sym	_OSTaskNameGet,_OSTaskNameGet, 46, 2, 0
	.func	550

;***************************************************************
;* FUNCTION DEF: _OSTaskNameGet                                *
;***************************************************************
_OSTaskNameGet:
;* A     assigned to _prio
	.sym	_prio,0, 14, 17, 16
	.sym	_pname,8, 18, 9, 16
	.sym	_err,9, 30, 9, 16
	.sym	_prio,2, 14, 1, 16
	.sym	_ptcb,3, 24, 1, 16, _os_tcb
	.sym	_len,4, 14, 1, 16
        PSHM      AR1
        FRAME     #-6
        NOP
	.line	2
        STL       A,*SP(2)              ; |551| 
	.line	10
 ssbx INTM
	.line	12
        STLM      A,AR1                 ; |561| 
        NOP
        STM       #63,AR0               ; |561| 
        CMPR      2,AR1                 ; |561| 
        BC        L39,NTC               ; |561| 
        ; branch occurs ; |561| 
        CMPM      *SP(2),#255           ; |561| 
        BC        L39,TC                ; |561| 
        ; branch occurs ; |561| 
	.line	13
        MVDK      *SP(9),*(AR1)         ; |562| 
        ST        #42,*AR1              ; |562| 
	.line	14
        BD        L43                   ; |563| 
        NOP
        LD        #0,A                  ; |563| 
        ; branch occurs ; |563| 
L39:    
	.line	16
        LD        *SP(8),A              ; |565| 
        BC        L40,ANEQ              ; |565| 
        ; branch occurs ; |565| 
	.line	17
 rsbx INTM
	.line	18
        MVDK      *SP(9),*(AR1)         ; |567| 
        ST        #15,*AR1              ; |567| 
	.line	19
        BD        L43                   ; |568| 
        NOP
        LD        #0,A                  ; |568| 
        ; branch occurs ; |568| 
L40:    
	.line	22
        CMPM      *SP(2),#255           ; |571| 
        BC        L41,NTC               ; |571| 
        ; branch occurs ; |571| 
	.line	23
        MVDM      *(_OSTCBCur),AR1      ; |572| 
        NOP
        LD        *AR1(16),A            ; |572| 
        STL       A,*SP(2)              ; |572| 
L41:    
	.line	25
        MVDK      *SP(2),*(AR1)         ; |574| 
        LD        *AR1(_OSTCBPrioTbl),A ; |574| 
        STL       A,*SP(3)              ; |574| 
	.line	26
        LD        *SP(3),A              ; |575| 
        BC        L42,ANEQ              ; |575| 
        ; branch occurs ; |575| 
	.line	27
 rsbx INTM
	.line	28
        MVDK      *SP(9),*(AR1)         ; |577| 
        ST        #11,*AR1              ; |577| 
	.line	29
        BD        L43                   ; |578| 
        NOP
        LD        #0,A                  ; |578| 
        ; branch occurs ; |578| 
L42:    
	.line	31
        LD        *SP(3),A              ; |580| 
        ADD       #32,A,A               ; |580| 
        STL       A,*SP(0)              ; |580| 
        LD        *SP(8),A              ; |580| 
        CALL      #_OS_StrCopy          ; |580| 
        ; call occurs [#_OS_StrCopy] ; |580| 
        STL       A,*SP(4)              ; |580| 
	.line	32
 rsbx INTM
	.line	33
        MVDK      *SP(9),*(AR1)         ; |582| 
        ST        #0,*AR1               ; |582| 
	.line	34
        LD        *SP(4),A              ; |583| 
L43:    
	.line	35
        FRAME     #6                    ; |584| 
        POPM      AR1                   ; |584| 
        RET       ; |584| 
        ; return occurs ; |584| 
	.endfunc	584,000000400h,7


	.sect	".text"
	.global	_OSTaskNameSet
	.sym	_OSTaskNameSet,_OSTaskNameSet, 32, 2, 0
	.func	614

;***************************************************************
;* FUNCTION DEF: _OSTaskNameSet                                *
;***************************************************************
_OSTaskNameSet:
;* A     assigned to _prio
	.sym	_prio,0, 14, 17, 16
	.sym	_pname,8, 18, 9, 16
	.sym	_err,9, 30, 9, 16
	.sym	_prio,2, 14, 1, 16
	.sym	_len,3, 14, 1, 16
	.sym	_ptcb,4, 24, 1, 16, _os_tcb
        PSHM      AR1
        FRAME     #-6
        NOP
	.line	2
        STL       A,*SP(2)              ; |615| 
	.line	10
 ssbx INTM
	.line	12
        STLM      A,AR1                 ; |625| 
        NOP
        STM       #63,AR0               ; |625| 
        CMPR      2,AR1                 ; |625| 
        BC        L44,NTC               ; |625| 
        ; branch occurs ; |625| 
	.line	13
        CMPM      *SP(2),#255           ; |626| 
        BC        L44,TC                ; |626| 
        ; branch occurs ; |626| 
	.line	14
        MVDK      *SP(9),*(AR1)         ; |627| 
        ST        #42,*AR1              ; |627| 
	.line	15
        B         L49                   ; |628| 
        ; branch occurs ; |628| 
L44:    
	.line	18
        LD        *SP(8),A              ; |631| 
        BC        L45,ANEQ              ; |631| 
        ; branch occurs ; |631| 
	.line	19
 rsbx INTM
	.line	20
        MVDK      *SP(9),*(AR1)         ; |633| 
        ST        #15,*AR1              ; |633| 
	.line	21
        B         L49                   ; |634| 
        ; branch occurs ; |634| 
L45:    
	.line	24
        CMPM      *SP(2),#255           ; |637| 
        BC        L46,NTC               ; |637| 
        ; branch occurs ; |637| 
	.line	25
        MVDM      *(_OSTCBCur),AR1      ; |638| 
        NOP
        LD        *AR1(16),A            ; |638| 
        STL       A,*SP(2)              ; |638| 
L46:    
	.line	27
        MVDK      *SP(2),*(AR1)         ; |640| 
        LD        *AR1(_OSTCBPrioTbl),A ; |640| 
        STL       A,*SP(4)              ; |640| 
	.line	28
        LD        *SP(4),A              ; |641| 
        BC        L47,ANEQ              ; |641| 
        ; branch occurs ; |641| 
	.line	29
 rsbx INTM
	.line	30
        MVDK      *SP(9),*(AR1)         ; |643| 
        ST        #11,*AR1              ; |643| 
	.line	31
        B         L49                   ; |644| 
        ; branch occurs ; |644| 
L47:    
	.line	33
        LD        *SP(8),A              ; |646| 
        CALL      #_OS_StrLen           ; |646| 
        ; call occurs [#_OS_StrLen] ; |646| 
        STL       A,*SP(3)              ; |646| 
	.line	34
        STLM      A,AR1                 ; |647| 
        NOP
        STM       #31,AR0               ; |647| 
        CMPR      2,AR1                 ; |647| 
        BC        L48,NTC               ; |647| 
        ; branch occurs ; |647| 
	.line	35
 rsbx INTM
	.line	36
        MVDK      *SP(9),*(AR1)         ; |649| 
        ST        #14,*AR1              ; |649| 
	.line	37
        B         L49                   ; |650| 
        ; branch occurs ; |650| 
L48:    
	.line	39
        LD        *SP(8),A              ; |652| 
        STL       A,*SP(0)              ; |652| 
        LD        *SP(4),A              ; |652| 
        CALLD     #_OS_StrCopy          ; |652| 
        ADD       #32,A,A               ; |652| 
        ; call occurs [#_OS_StrCopy] ; |652| 
	.line	40
 rsbx INTM
	.line	41
        MVDK      *SP(9),*(AR1)         ; |654| 
        ST        #0,*AR1               ; |654| 
	.line	42
L49:    
        FRAME     #6
        POPM      AR1
        RET
        ; return occurs
	.endfunc	655,000000400h,7


	.sect	".text"
	.global	_OSTaskResume
	.sym	_OSTaskResume,_OSTaskResume, 46, 2, 0
	.func	677

;***************************************************************
;* FUNCTION DEF: _OSTaskResume                                 *
;***************************************************************
_OSTaskResume:
;* A     assigned to _prio
	.sym	_prio,0, 14, 17, 16
	.sym	_prio,0, 14, 1, 16
	.sym	_ptcb,1, 24, 1, 16, _os_tcb
        PSHM      AR1
        FRAME     #-2
        NOP
	.line	2
        STL       A,*SP(0)              ; |678| 
	.line	10
        STLM      A,AR1                 ; |686| 
        NOP
        STM       #63,AR0               ; |686| 
        CMPR      1,AR1                 ; |686| 
        BC        L50,TC                ; |686| 
        ; branch occurs ; |686| 
	.line	11
        BD        L56                   ; |687| 
        NOP
        LD        #42,A                 ; |687| 
        ; branch occurs ; |687| 
L50:    
	.line	14
 ssbx INTM
	.line	15
        MVDK      *SP(0),*(AR1)         ; |691| 
        LD        *AR1(_OSTCBPrioTbl),A ; |691| 
        STL       A,*SP(1)              ; |691| 
	.line	16
        LD        *SP(1),A              ; |692| 
        BC        L51,ANEQ              ; |692| 
        ; branch occurs ; |692| 
	.line	17
 rsbx INTM
	.line	18
        BD        L56                   ; |694| 
        NOP
        LD        #100,A                ; |694| 
        ; branch occurs ; |694| 
L51:    
	.line	20
        MVDK      *SP(1),*(AR1)         ; |696| 
        BITF      *AR1(15),#8           ; |696| 
        BC        L55,NTC               ; |696| 
        ; branch occurs ; |696| 
	.line	21
        ANDM      #65527,*AR1(15)       ; |697| 
	.line	22
        MVDK      *SP(1),*(AR1)         ; |698| 
        LD        *AR1(15),A            ; |698| 
        BC        L53,ANEQ              ; |698| 
        ; branch occurs ; |698| 
	.line	23
        LD        *AR1(14),A            ; |699| 
        BC        L52,ANEQ              ; |699| 
        ; branch occurs ; |699| 
	.line	24
        LD        *AR1(20),A            ; |700| 
        OR        *(_OSRdyGrp),A        ; |700| 
        STL       A,*(_OSRdyGrp)        ; |700| 
	.line	25
        MVDK      *SP(1),*(AR2)         ; |701| 
        MVDK      *AR1(18),*(AR1)       ; |701| 
        LD        *AR2(19),A            ; |701| 
        OR        *AR1(_OSRdyTbl),A     ; |701| 
        STL       A,*AR1(_OSRdyTbl)     ; |701| 
	.line	26
 rsbx INTM
	.line	27
        CALL      #_OS_Sched            ; |703| 
        ; call occurs [#_OS_Sched] ; |703| 
	.line	28
        B         L54                   ; |704| 
        ; branch occurs ; |704| 
L52:    
	.line	29
 rsbx INTM
	.line	31
        B         L54                   ; |707| 
        ; branch occurs ; |707| 
L53:    
	.line	32
 rsbx INTM
L54:    
	.line	34
        BD        L56                   ; |710| 
        NOP
        LD        #0,A                  ; |710| 
        ; branch occurs ; |710| 
L55:    
	.line	36
 rsbx INTM
	.line	37
        LD        #101,A                ; |713| 
L56:    
	.line	38
        FRAME     #2                    ; |714| 
        POPM      AR1                   ; |714| 
        RET       ; |714| 
        ; return occurs ; |714| 
	.endfunc	714,000000400h,3


	.sect	".text"
	.global	_OSTaskStkChk
	.sym	_OSTaskStkChk,_OSTaskStkChk, 46, 2, 0
	.func	736

;***************************************************************
;* FUNCTION DEF: _OSTaskStkChk                                 *
;***************************************************************
_OSTaskStkChk:
;* A     assigned to _prio
	.sym	_prio,0, 14, 17, 16
	.sym	_p_stk_data,10, 24, 9, 16, _os_stk_data
	.sym	_prio,0, 14, 1, 16
	.sym	_ptcb,1, 24, 1, 16, _os_tcb
	.sym	_pchk,2, 30, 1, 16
	.sym	_free,4, 15, 1, 32
	.sym	_size,6, 15, 1, 32
        PSHM      AR1
        FRAME     #-8
        NOP
	.line	2
        STL       A,*SP(0)              ; |737| 
	.line	13
        STLM      A,AR1                 ; |748| 
        NOP
        STM       #63,AR0               ; |748| 
        CMPR      2,AR1                 ; |748| 
        BC        L57,NTC               ; |748| 
        ; branch occurs ; |748| 
	.line	14
        CMPM      *SP(0),#255           ; |749| 
        BC        L57,TC                ; |749| 

⌨️ 快捷键说明

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