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

📄 mga_macros.h

📁 Mesa is an open-source implementation of the OpenGL specification - a system for rendering interacti
💻 H
字号:
/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/mga/mga_macros.h,v 1.22 2002/02/20 17:17:50 dawes Exp $ */#ifndef _MGA_MACROS_H_#define _MGA_MACROS_H_#ifndef PSZ#define PSZ 8#endif#if PSZ == 8#define REPLICATE(r) r &= 0xFF; r |= r << 8; r |= r << 16#elif PSZ == 16#define REPLICATE(r) r &= 0xFFFF; r |= r << 16#elif PSZ == 24#define REPLICATE(r) r &= 0xFFFFFF; r |= r << 24#else#define REPLICATE(r) /* */#endif#define RGBEQUAL(c) (!((((c) >> 8) ^ (c)) & 0xffff))#ifdef XF86DRI#define MGA_SYNC_XTAG                 0x275f4200#define MGABUSYWAIT() do { \OUTREG(MGAREG_DWGSYNC, MGA_SYNC_XTAG); \while(INREG(MGAREG_DWGSYNC) != MGA_SYNC_XTAG) ; \}while(0);#endif#define MGAISBUSY() (INREG8(MGAREG_Status + 2) & 0x01)#define WAITFIFO(cnt) \   if(!pMga->UsePCIRetry) {\	register int n = cnt; \	if(n > pMga->FifoSize) n = pMga->FifoSize; \	while(pMga->fifoCount < (n))\	    pMga->fifoCount = INREG8(MGAREG_FIFOSTATUS);\	pMga->fifoCount -= n;\   }#define XYADDRESS(x,y) \    ((y) * pMga->CurrentLayout.displayWidth + (x) + pMga->YDstOrg)#define MAKEDMAINDEX(index)  ((((index) >> 2) & 0x7f) | (((index) >> 6) & 0x80))#define DMAINDICES(one,two,three,four)	\	( MAKEDMAINDEX(one) | \	 (MAKEDMAINDEX(two) << 8) | \	 (MAKEDMAINDEX(three) << 16) | \ 	 (MAKEDMAINDEX(four) << 24) )#if PSZ == 24#define SET_PLANEMASK(p) /**/#else#define SET_PLANEMASK(p) \	if(!(pMga->AccelFlags & MGA_NO_PLANEMASK) && ((p) != pMga->PlaneMask)) { \	   pMga->PlaneMask = (p); \	   REPLICATE((p)); \	   OUTREG(MGAREG_PLNWT,(p)); \	}#endif#define SET_FOREGROUND(c) \	if((c) != pMga->FgColor) { \	   pMga->FgColor = (c); \	   REPLICATE((c)); \	   OUTREG(MGAREG_FCOL,(c)); \	}#define SET_BACKGROUND(c) \	if((c) != pMga->BgColor) { \	   pMga->BgColor = (c); \	   REPLICATE((c)); \	   OUTREG(MGAREG_BCOL,(c)); \	}#define DISABLE_CLIP() { \	pMga->AccelFlags &= ~CLIPPER_ON; \	WAITFIFO(1); \	OUTREG(MGAREG_CXBNDRY, 0xFFFF0000); }#ifdef XF86DRI#define CHECK_DMA_QUIESCENT(pMGA, pScrn) {	\   if (!pMGA->haveQuiescense) {			\      pMGA->GetQuiescence( pScrn );		\   }						\}#else#define CHECK_DMA_QUIESCENT(pMGA, pScrn)#endif#ifdef USEMGAHAL#define HAL_CHIPSETS ((pMga->Chipset == PCI_CHIP_MGAG200_PCI) || \		  (pMga->Chipset == PCI_CHIP_MGAG200) || \		  (pMga->Chipset == PCI_CHIP_MGAG400) || \		  (pMga->Chipset == PCI_CHIP_MGAG550))    #define MGA_HAL(x) { \	MGAPtr pMga = MGAPTR(pScrn); \	if (pMga->HALLoaded && HAL_CHIPSETS) { x; } \}#define MGA_NOT_HAL(x) { \	MGAPtr pMga = MGAPTR(pScrn); \	if (!pMga->HALLoaded || !HAL_CHIPSETS) { x; } \}#else#define MGA_NOT_HAL(x) { x; }#endif#define MGAISGx50(x) ( (((x)->Chipset == PCI_CHIP_MGAG400) && ((x)->ChipRev >= 0x80)) || \		       ((x)->Chipset == PCI_CHIP_MGAG550) )#define MGA_DH_NEEDS_HAL(x) (((x)->Chipset == PCI_CHIP_MGAG400) && \			     ((x)->ChipRev < 0x80))#endif /* _MGA_MACROS_H_ */

⌨️ 快捷键说明

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