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

📄 os_core.asm

📁 ucOS在51单片机上的移植实现
💻 ASM
📖 第 1 页 / 共 5 页
字号:
	.field  	1,16			; _OSUnMapTbl[174] @ 2784
	.field  	0,16			; _OSUnMapTbl[175] @ 2800
	.field  	4,16			; _OSUnMapTbl[176] @ 2816
	.field  	0,16			; _OSUnMapTbl[177] @ 2832
	.field  	1,16			; _OSUnMapTbl[178] @ 2848
	.field  	0,16			; _OSUnMapTbl[179] @ 2864
	.field  	2,16			; _OSUnMapTbl[180] @ 2880
	.field  	0,16			; _OSUnMapTbl[181] @ 2896
	.field  	1,16			; _OSUnMapTbl[182] @ 2912
	.field  	0,16			; _OSUnMapTbl[183] @ 2928
	.field  	3,16			; _OSUnMapTbl[184] @ 2944
	.field  	0,16			; _OSUnMapTbl[185] @ 2960
	.field  	1,16			; _OSUnMapTbl[186] @ 2976
	.field  	0,16			; _OSUnMapTbl[187] @ 2992
	.field  	2,16			; _OSUnMapTbl[188] @ 3008
	.field  	0,16			; _OSUnMapTbl[189] @ 3024
	.field  	1,16			; _OSUnMapTbl[190] @ 3040
	.field  	0,16			; _OSUnMapTbl[191] @ 3056
	.field  	6,16			; _OSUnMapTbl[192] @ 3072
	.field  	0,16			; _OSUnMapTbl[193] @ 3088
	.field  	1,16			; _OSUnMapTbl[194] @ 3104
	.field  	0,16			; _OSUnMapTbl[195] @ 3120
	.field  	2,16			; _OSUnMapTbl[196] @ 3136
	.field  	0,16			; _OSUnMapTbl[197] @ 3152
	.field  	1,16			; _OSUnMapTbl[198] @ 3168
	.field  	0,16			; _OSUnMapTbl[199] @ 3184
	.field  	3,16			; _OSUnMapTbl[200] @ 3200
	.field  	0,16			; _OSUnMapTbl[201] @ 3216
	.field  	1,16			; _OSUnMapTbl[202] @ 3232
	.field  	0,16			; _OSUnMapTbl[203] @ 3248
	.field  	2,16			; _OSUnMapTbl[204] @ 3264
	.field  	0,16			; _OSUnMapTbl[205] @ 3280
	.field  	1,16			; _OSUnMapTbl[206] @ 3296
	.field  	0,16			; _OSUnMapTbl[207] @ 3312
	.field  	4,16			; _OSUnMapTbl[208] @ 3328
	.field  	0,16			; _OSUnMapTbl[209] @ 3344
	.field  	1,16			; _OSUnMapTbl[210] @ 3360
	.field  	0,16			; _OSUnMapTbl[211] @ 3376
	.field  	2,16			; _OSUnMapTbl[212] @ 3392
	.field  	0,16			; _OSUnMapTbl[213] @ 3408
	.field  	1,16			; _OSUnMapTbl[214] @ 3424
	.field  	0,16			; _OSUnMapTbl[215] @ 3440
	.field  	3,16			; _OSUnMapTbl[216] @ 3456
	.field  	0,16			; _OSUnMapTbl[217] @ 3472
	.field  	1,16			; _OSUnMapTbl[218] @ 3488
	.field  	0,16			; _OSUnMapTbl[219] @ 3504
	.field  	2,16			; _OSUnMapTbl[220] @ 3520
	.field  	0,16			; _OSUnMapTbl[221] @ 3536
	.field  	1,16			; _OSUnMapTbl[222] @ 3552
	.field  	0,16			; _OSUnMapTbl[223] @ 3568
	.field  	5,16			; _OSUnMapTbl[224] @ 3584
	.field  	0,16			; _OSUnMapTbl[225] @ 3600
	.field  	1,16			; _OSUnMapTbl[226] @ 3616
	.field  	0,16			; _OSUnMapTbl[227] @ 3632
	.field  	2,16			; _OSUnMapTbl[228] @ 3648
	.field  	0,16			; _OSUnMapTbl[229] @ 3664
	.field  	1,16			; _OSUnMapTbl[230] @ 3680
	.field  	0,16			; _OSUnMapTbl[231] @ 3696
	.field  	3,16			; _OSUnMapTbl[232] @ 3712
	.field  	0,16			; _OSUnMapTbl[233] @ 3728
	.field  	1,16			; _OSUnMapTbl[234] @ 3744
	.field  	0,16			; _OSUnMapTbl[235] @ 3760
	.field  	2,16			; _OSUnMapTbl[236] @ 3776
	.field  	0,16			; _OSUnMapTbl[237] @ 3792
	.field  	1,16			; _OSUnMapTbl[238] @ 3808
	.field  	0,16			; _OSUnMapTbl[239] @ 3824
	.field  	4,16			; _OSUnMapTbl[240] @ 3840
	.field  	0,16			; _OSUnMapTbl[241] @ 3856
	.field  	1,16			; _OSUnMapTbl[242] @ 3872
	.field  	0,16			; _OSUnMapTbl[243] @ 3888
	.field  	2,16			; _OSUnMapTbl[244] @ 3904
	.field  	0,16			; _OSUnMapTbl[245] @ 3920
	.field  	1,16			; _OSUnMapTbl[246] @ 3936
	.field  	0,16			; _OSUnMapTbl[247] @ 3952
	.field  	3,16			; _OSUnMapTbl[248] @ 3968
	.field  	0,16			; _OSUnMapTbl[249] @ 3984
	.field  	1,16			; _OSUnMapTbl[250] @ 4000
	.field  	0,16			; _OSUnMapTbl[251] @ 4016
	.field  	2,16			; _OSUnMapTbl[252] @ 4032
	.field  	0,16			; _OSUnMapTbl[253] @ 4048
	.field  	1,16			; _OSUnMapTbl[254] @ 4064
	.field  	0,16			; _OSUnMapTbl[255] @ 4080

	.sect	".text"
	.global	_OSUnMapTbl
	.sym	_OSUnMapTbl,_OSUnMapTbl, 62, 2, 4096,, 256
	.sect	".text"
	.global	_OSEventNameGet
	.sym	_OSEventNameGet,_OSEventNameGet, 46, 2, 0
	.func	102

;***************************************************************
;* FUNCTION DEF: _OSEventNameGet                               *
;***************************************************************
_OSEventNameGet:
;* A     assigned to _pevent
	.sym	_pevent,0, 24, 17, 16, _os_event
	.sym	_pname,6, 18, 9, 16
	.sym	_err,7, 30, 9, 16
	.sym	_pevent,2, 24, 1, 16, _os_event
	.sym	_len,3, 14, 1, 16
        PSHM      AR1
        FRAME     #-4
        NOP
	.line	2
        STL       A,*SP(2)              ; |103| 
	.line	9
 ssbx INTM
	.line	11
        LD        *SP(2),A              ; |112| 
        BC        L1,ANEQ               ; |112| 
        ; branch occurs ; |112| 
	.line	12
 rsbx INTM
	.line	13
        MVDK      *SP(7),*(AR1)         ; |114| 
        ST        #4,*AR1               ; |114| 
	.line	14
        BD        L5                    ; |115| 
        NOP
        LD        #0,A                  ; |115| 
        ; branch occurs ; |115| 
L1:    
	.line	16
        LD        *SP(6),A              ; |117| 
        BC        L3,ANEQ               ; |117| 
        ; branch occurs ; |117| 
	.line	17
 rsbx INTM
	.line	18
        MVDK      *SP(7),*(AR1)         ; |119| 
        ST        #15,*AR1              ; |119| 
	.line	19
        BD        L5                    ; |120| 
        NOP
        LD        #0,A                  ; |120| 
        ; branch occurs ; |120| 
	.line	22
	.line	33
L2:    
	.line	30
 rsbx INTM
	.line	31
        MVDK      *SP(7),*(AR1)         ; |132| 
        ST        #1,*AR1               ; |132| 
	.line	32
        BD        L5                    ; |133| 
        NOP
        LD        #0,A                  ; |133| 
        ; branch occurs ; |133| 
L3:    
        MVDK      *SP(2),*(AR1)         ; |133| 
        STM       #3,AR0                ; |133| 
        MVDK      *AR1,*(AR1)           ; |133| 
        MAR       *AR1-                 ; |133| 
        CMPR      2,AR1                 ; |133| 
        BC        L4,NTC                ; |133| 
        ; branch occurs ; |133| 
        B         L2                    ; |133| 
        ; branch occurs ; |133| 
L4:    
	.line	34
        LD        *SP(2),A              ; |135| 
        ADD       #12,A,A               ; |135| 
        STL       A,*SP(0)              ; |135| 
        LD        *SP(6),A              ; |135| 
        CALL      #_OS_StrCopy          ; |135| 
        ; call occurs [#_OS_StrCopy] ; |135| 
        STL       A,*SP(3)              ; |135| 
	.line	35
 rsbx INTM
	.line	36
        MVDK      *SP(7),*(AR1)         ; |137| 
        ST        #0,*AR1               ; |137| 
	.line	37
        LD        *SP(3),A              ; |138| 
L5:    
	.line	38
        FRAME     #4                    ; |139| 
        POPM      AR1                   ; |139| 
        RET       ; |139| 
        ; return occurs ; |139| 
	.endfunc	139,000000400h,5


	.sect	".text"
	.global	_OSEventNameSet
	.sym	_OSEventNameSet,_OSEventNameSet, 32, 2, 0
	.func	170

;***************************************************************
;* FUNCTION DEF: _OSEventNameSet                               *
;***************************************************************
_OSEventNameSet:
;* A     assigned to _pevent
	.sym	_pevent,0, 24, 17, 16, _os_event
	.sym	_pname,6, 18, 9, 16
	.sym	_err,7, 30, 9, 16
	.sym	_pevent,2, 24, 1, 16, _os_event
	.sym	_len,3, 14, 1, 16
        PSHM      AR1
        FRAME     #-4
        NOP
	.line	2
        STL       A,*SP(2)              ; |171| 
	.line	9
 ssbx INTM
	.line	11
        LD        *SP(2),A              ; |180| 
        BC        L6,ANEQ               ; |180| 
        ; branch occurs ; |180| 
	.line	12
 rsbx INTM
	.line	13
        MVDK      *SP(7),*(AR1)         ; |182| 
        ST        #4,*AR1               ; |182| 
	.line	14
        B         L11                   ; |183| 
        ; branch occurs ; |183| 
L6:    
	.line	16
        LD        *SP(6),A              ; |185| 
        BC        L8,ANEQ               ; |185| 
        ; branch occurs ; |185| 
	.line	17
 rsbx INTM
	.line	18
        MVDK      *SP(7),*(AR1)         ; |187| 
        ST        #15,*AR1              ; |187| 
	.line	19
        B         L11                   ; |188| 
        ; branch occurs ; |188| 
	.line	22
	.line	33
L7:    
	.line	30
 rsbx INTM
	.line	31
        MVDK      *SP(7),*(AR1)         ; |200| 
        ST        #1,*AR1               ; |200| 
	.line	32
        B         L11                   ; |201| 
        ; branch occurs ; |201| 
L8:    
        MVDK      *SP(2),*(AR1)         ; |201| 
        STM       #3,AR0                ; |201| 
        MVDK      *AR1,*(AR1)           ; |201| 
        MAR       *AR1-                 ; |201| 
        CMPR      2,AR1                 ; |201| 
        BC        L9,NTC                ; |201| 
        ; branch occurs ; |201| 
        B         L7                    ; |201| 
        ; branch occurs ; |201| 
L9:    
	.line	34
        LD        *SP(6),A              ; |203| 
        CALL      #_OS_StrLen           ; |203| 
        ; call occurs [#_OS_StrLen] ; |203| 
        STL       A,*SP(3)              ; |203| 
	.line	35
        STLM      A,AR1                 ; |204| 
        NOP
        STM       #31,AR0               ; |204| 
        CMPR      2,AR1                 ; |204| 
        BC        L10,NTC               ; |204| 
        ; branch occurs ; |204| 
	.line	36
 rsbx INTM
	.line	37
        MVDK      *SP(7),*(AR1)         ; |206| 
        ST        #12,*AR1              ; |206| 
	.line	38
        B         L11                   ; |207| 
        ; branch occurs ; |207| 
L10:    
	.line	40
        LD        *SP(6),A              ; |209| 
        STL       A,*SP(0)              ; |209| 
        LD        *SP(2),A              ; |209| 
        CALLD     #_OS_StrCopy          ; |209| 
        ADD       #12,A,A               ; |209| 
        ; call occurs [#_OS_StrCopy] ; |209| 
	.line	41
 rsbx INTM
	.line	42
        MVDK      *SP(7),*(AR1)         ; |211| 
        ST        #0,*AR1               ; |211| 
	.line	43
L11:    
        FRAME     #4
        POPM      AR1
        RET
        ; return occurs
	.endfunc	212,000000400h,5


	.sect	".text"
	.global	_OSInit
	.sym	_OSInit,_OSInit, 32, 2, 0
	.func	229

;***************************************************************
;* FUNCTION DEF: _OSInit                                       *
;***************************************************************
_OSInit:
        FRAME     #-1
	.line	4
        CALL      #_OSInitHookBegin     ; |232| 
        ; call occurs [#_OSInitHookBegin] ; |232| 
	.line	7
        CALL      #_OS_InitMisc         ; |235| 
        ; call occurs [#_OS_InitMisc] ; |235| 
	.line	9
        CALL      #_OS_InitRdyList      ; |237| 
        ; call occurs [#_OS_InitRdyList] ; |237| 
	.line	11
        CALL      #_OS_InitTCBList      ; |239| 
        ; call occurs [#_OS_InitTCBList] ; |239| 
	.line	13
        CALL      #_OS_InitEventList    ; |241| 
        ; call occurs [#_OS_InitEventList] ; |241| 
	.line	27
        CALL      #_OS_InitTaskIdle     ; |255| 
        ; call occurs [#_OS_InitTaskIdle] ; |255| 
	.line	29
        CALL      #_OS_InitTaskStat     ; |257| 
        ; call occurs [#_OS_InitTaskStat] ; |257| 
	.line	33
        CALL      #_OSInitHookEnd       ; |261| 
        ; call occurs [#_OSInitHookEnd] ; |261| 
	.line	39
        FRAME     #1
        RET
        ; return occurs
	.endfunc	267,000000000h,1


	.sect	".text"
	.global	_OSIntEnter
	.sym	_OSIntEnter,_OSIntEnter, 32, 2, 0
	.func	294

;***************************************************************
;* FUNCTION DEF: _OSIntEnter                                   *
;***************************************************************
_OSIntEnter:
        PSHM      AR1
	.line	3
        CMPM      *(_OSRunning),#1      ; |296| 
        BC        L12,NTC               ; |296| 
        ; branch occurs ; |296| 
	.line	4
        MVDM      *(_OSIntNesting),AR1  ; |297| 
        STM       #255,AR0              ; |297| 
        CMPR      1,AR1                 ; |297| 
        BC        L12,NTC               ; |297| 
        ; branch occurs ; |297| 
	.line	5
        ADDM      #1,*(_OSIntNesting)   ; |298| 
	.line	8
L12:    
        POPM      AR1
        RET
        ; return occurs
	.endfunc	301,000000400h,1


	.sect	".text"
	.global	_OSIntExit
	.sym	_OSIntExit,_OSIntExit, 32, 2, 0
	.func	322

;***************************************************************
;* FUNCTION DEF: _OSIntExit                                    *
;***************************************************************
_OSIntExit:
        PSHM      AR1
	.line	8
        CMPM      *(_OSRunning),#1      ; |329| 
        BC        L15,NTC               ; |329| 
        ; branch occurs ; |329| 
	.line	9
 ssbx INTM
	.line	10
        LD        *(_OSIntNesting),A    ; |331| 
        BC        L13,AEQ               ; |331| 
        ; branch occurs ; |331| 
	.line	11
        ADDM      #-1,*(_OSIntNesting)  ; |332| 

⌨️ 快捷键说明

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