stc.h

来自「代码有点长,需细心阅读,仅供影音视听类产品的开发人员参考」· C头文件 代码 · 共 41 行

H
41
字号
#ifndef	__STC_H
#define	__STC_H

#define	get_stc()	(				\
	  ((regs0->stc_15_0)) 				\
	| ((regs0->stc_31_16)<<16) 			\
	| ((UINT64)(regs0->stc_32)<<32)			\
)



#ifdef	SAFER_STC_UPDATE
/*
** reset STC low nibbles to 0 and avoid meta-stability
*/
#define	set_stc(stc)	(\
 	regs0->stc_15_0	 = 0,				\
 	regs0->stc_31_16 = 0,				\
	regs0->stc_32    = (((stc)>>32) & 0x0001)	\
	regs0->stc_31_16 = (((stc)>>16) & 0xffff),	\
	regs0->stc_15_0  = ((stc) & 0xffff),		\
)
#else
#define	set_stc(stc)	(\
	regs0->stc_15_0  = ((stc) & 0xffff),		\
	regs0->stc_31_16 = (((stc)>>16) & 0xffff),	\
	regs0->stc_32    = (((stc)>>32) & 0x0001)	\
)
#endif

#define	reset_rtc()	(regs0->rtc_31_16=0)
//#define reset_stc() set_stc(0)
#define	reset_stc()	set_stc((INT64)0)	//Tony modified 020506 to prevent from waring,
					// right shift count>=width of type

#define	get_rtc()	(			\
	  ((regs0->rtc_15_0))			\
	| ((regs0->rtc_31_16)<<16))

#endif/*__STC_H*/

⌨️ 快捷键说明

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