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

📄 task_dsp.src

📁 050117 CD 修正分 iTRON hosroot
💻 SRC
字号:
; --------------------------------------------------------------------------- 
;  HOS 僞僗僋僨傿僗僷僢僠張棟                                                 
;                                                                             
;                                      Copyright(C) 1998-2002 by Project HOS  
; --------------------------------------------------------------------------- 

	;	.CPU     300HN
	;	.INCLUDE "extern.inc"

		.SECTION  P,CODE,ALIGN=2
; -----------------------------------------------
;  妱崬傒儅僗僋 (斈梡)
; -----------------------------------------------
___di:		
		ORC	#H'80, CCR
		RTS

; -----------------------------------------------
;  妱崬傒儅僗僋夝彍 (斈梡)
; -----------------------------------------------
___ei:		
		ANDC	#H'7F,CCR
		RTS

; -----------------------------------------------
;  妱崬傒儅僗僋 (僔僗僥儉僐乕儖梡)
; -----------------------------------------------
___set_imsk:	
		ORC	#H'80, CCR
		RTS

; -----------------------------------------------
;  妱崬傒儅僗僋偐傜偺暅婣 (僔僗僥儉僐乕儖梡)
; -----------------------------------------------
___res_imsk:	
		MOV.W	@_sysstat,R0
		AND.W	#H'02,R0
		BNE	NO_SET
		ANDC	#H'7F,CCR
NO_SET:		
		RTS

; -----------------------------------------------
;           僞僗僋僗僞乕僩晹暘
;     嵟弶偺僨傿僗僷僢僠屻偙偙偵棃傞
; -----------------------------------------------
___tskst_entry:
		LDC	#H'00,CCR	; 妱傝崬傒嫋壜
		PUSH.W	R0		; 僗僞乕僩僷儔儊乕僞乕
		JSR	@ER6
		ADDS	#2,ER7
		JMP	@_ext_tsk	; 僞僗僋廔椆

; -----------------------------------------------
;  僞僗僋愗傝懼偊
;  H   __swc_dsp(T_TCB *tcb);
; -----------------------------------------------
___swc_dsp:	
		PUSH.L	ER2
		PUSH.L	ER3
		PUSH.L	ER4
		PUSH.L	ER5
		PUSH.L	ER6
		SUBS	#2, ER7		; 儕僞乕儞僷儔儊乕僞梡椞堟嶌惉
;偙偙傪曄峏2002/07/03 by 郷
;		MOV.L	@_curtcb,ER1
;		MOV.L	ER7,@(0, ER1)	; 僗僞僢僋億僀儞僞曐懚
;		MOV.L	@(0, ER0), ER7	; 僗僞僢僋億僀儞僞暅婣
;		MOV.L	ER0,@_curtcb	; 怴TCB搊榐
		MOV.W	@_curtcb,R1
		MOV.W	R7,@(0, ER1)	; 僗僞僢僋億僀儞僞曐懚
		MOV.W	@(0, ER0), R7	; 僗僞僢僋億僀儞僞暅婣
		MOV.W	R0,@_curtcb		; 怴TCB搊榐
		POP.W	R0		; 儕僞乕儞僷儔儊乕僞乕庢摼
		POP.L	ER6
		POP.L	ER5
		POP.L	ER4
		POP.L	ER3
		POP.L	ER2
		RTS

; -----------------------------------------------
; 僞僗僋偺暅婣
; void __sta_dsp(T_TCB *tcb);
; -----------------------------------------------
___sta_dsp:	
;偙偙傪曄峏2002/07/03 by 郷
;		MOV.L	@(0, ER0),ER7	; 僗僞僢僋億僀儞僞暅婣
		MOV.W	@(0, ER0),R7	; 僗僞僢僋億僀儞僞暅婣
		POP.W	R0
		POP.L	ER6
		POP.L	ER5
		POP.L	ER4
		POP.L	ER3
		POP.L	ER2
		RTS

; -----------------------------------------------
; 僞僗僋偺掆巭
; H    __end_dsp(void);
; -----------------------------------------------
___end_dsp:	
		PUSH.L	ER2
		PUSH.L	ER3
		PUSH.L	ER4
		PUSH.L	ER5
		PUSH.L	ER6
		SUBS	#2, ER7		; 儕僞乕儞僷儔儊乕僞梡椞堟嶌惉
;偙偙傪曄峏2002/07/03 by 郷
;		MOV.L	@_curtcb,ER1
;		MOV.L	ER7,@(0, ER1)	; 僗僞僢僋億僀儞僞曐懚
		MOV.W	@_curtcb,R1
		MOV.W	@_curtcb,R2
		MOV.W	R7,@(0, ER1)	; 僗僞僢僋億僀儞僞曐懚
		JMP	@___tsk_hlt	; 僞僗僋掆巭

; -----------------------------------------------
;        HALT (儗僨傿乕僉儏乕偵僞僗僋偑柍偄)
; -----------------------------------------------
___tsk_hlt:	
		MOV.L	#H'FFFFFFFF,ER0		; NADR
		MOV.L	ER0,@_curtcb
		MOV.L	#_halt_sp,ER7
		LDC	#H'00,CCR		; 妱傝崬傒嫋壜
HLT_LOOP:	BRA	HLT_LOOP		; 柍尷儖乕僾

		.SECTION  B,DATA,ALIGN=2
_halt_stack:	.RES.W	64			; HALT帪偺僗僞僢僋
_halt_sp:	

;		.END

⌨️ 快捷键说明

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