diff options
author | marha <marha@users.sourceforge.net> | 2009-09-15 10:39:59 +0000 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2009-09-15 10:39:59 +0000 |
commit | a233ed27754bb0d373d63569d9a28aeb8fee5b82 (patch) | |
tree | 2732a9434bbc102653dc22df9887d94e19570836 /xorg-server/hw/xfree86/common | |
parent | a915739887477b28d924ecc8417ee107d125bd6c (diff) | |
download | vcxsrv-a233ed27754bb0d373d63569d9a28aeb8fee5b82.tar.gz vcxsrv-a233ed27754bb0d373d63569d9a28aeb8fee5b82.tar.bz2 vcxsrv-a233ed27754bb0d373d63569d9a28aeb8fee5b82.zip |
Checked in xorg-server-1.6.99.901
Diffstat (limited to 'xorg-server/hw/xfree86/common')
-rw-r--r-- | xorg-server/hw/xfree86/common/Makefile.in | 41 | ||||
-rw-r--r-- | xorg-server/hw/xfree86/common/compiler.h | 2 | ||||
-rw-r--r-- | xorg-server/hw/xfree86/common/xf86AutoConfig.c | 4 | ||||
-rw-r--r-- | xorg-server/hw/xfree86/common/xf86Date.h | 36 | ||||
-rw-r--r-- | xorg-server/hw/xfree86/common/xf86Init.c | 2 | ||||
-rw-r--r-- | xorg-server/hw/xfree86/common/xf86RAC.c | 1171 | ||||
-rw-r--r-- | xorg-server/hw/xfree86/common/xf86RAC.h | 17 | ||||
-rw-r--r-- | xorg-server/hw/xfree86/common/xf86Resources.h | 137 |
8 files changed, 36 insertions, 1374 deletions
diff --git a/xorg-server/hw/xfree86/common/Makefile.in b/xorg-server/hw/xfree86/common/Makefile.in index 9c300e4c5..5b655b9d4 100644 --- a/xorg-server/hw/xfree86/common/Makefile.in +++ b/xorg-server/hw/xfree86/common/Makefile.in @@ -83,16 +83,31 @@ am_libcommon_la_OBJECTS = xf86Configure.lo xf86ShowOpts.lo xf86Bus.lo \ nodist_libcommon_la_OBJECTS = xf86DefModeSet.lo libcommon_la_OBJECTS = $(am_libcommon_la_OBJECTS) \ $(nodist_libcommon_la_OBJECTS) +AM_V_lt = $(am__v_lt_$(V)) +am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) +am__v_lt_0 = --silent DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_$(V)) +am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) +am__v_CC_0 = @echo " CC " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ CCLD = $(CC) -LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ - --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_$(V)) +am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) +am__v_CCLD_0 = @echo " CCLD " $@; +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(libcommon_la_SOURCES) $(nodist_libcommon_la_SOURCES) DIST_SOURCES = $(am__libcommon_la_SOURCES_DIST) am__sdk_HEADERS_DIST = compiler.h fourcc.h xf86.h xf86Module.h \ @@ -131,9 +146,9 @@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ ALLOCA = @ALLOCA@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AM_MAKEFLAGS = @AM_MAKEFLAGS@ APPLE_APPLICATIONS_DIR = @APPLE_APPLICATIONS_DIR@ -APPLE_APPLICATION_ID = @APPLE_APPLICATION_ID@ APPLE_APPLICATION_NAME = @APPLE_APPLICATION_NAME@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ @@ -222,6 +237,7 @@ KDRIVE_LIBS = @KDRIVE_LIBS@ KDRIVE_LOCAL_LIBS = @KDRIVE_LOCAL_LIBS@ KDRIVE_PURE_INCS = @KDRIVE_PURE_INCS@ KDRIVE_PURE_LIBS = @KDRIVE_PURE_LIBS@ +LAUNCHD_ID_PREFIX = @LAUNCHD_ID_PREFIX@ LD = @LD@ LDFLAGS = @LDFLAGS@ LD_EXPORT_SYMBOLS_FLAG = @LD_EXPORT_SYMBOLS_FLAG@ @@ -532,7 +548,7 @@ clean-noinstLTLIBRARIES: rm -f "$${dir}/so_locations"; \ done libcommon.la: $(libcommon_la_OBJECTS) $(libcommon_la_DEPENDENCIES) - $(LINK) $(libcommon_la_OBJECTS) $(libcommon_la_LIBADD) $(LIBS) + $(AM_V_CCLD)$(LINK) $(libcommon_la_OBJECTS) $(libcommon_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -572,22 +588,25 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xorgHelper.Plo@am__quote@ .c.o: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: -@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< diff --git a/xorg-server/hw/xfree86/common/compiler.h b/xorg-server/hw/xfree86/common/compiler.h index 95ef72c39..cdb493a23 100644 --- a/xorg-server/hw/xfree86/common/compiler.h +++ b/xorg-server/hw/xfree86/common/compiler.h @@ -263,6 +263,8 @@ static __inline__ void stw_u(uint16_t val, uint16_t *p) } # else /* !__GNUC__ */ +#include <string.h> /* needed for memmove */ + static __inline__ uint64_t ldq_u(uint64_t *p) { uint64_t ret; diff --git a/xorg-server/hw/xfree86/common/xf86AutoConfig.c b/xorg-server/hw/xfree86/common/xf86AutoConfig.c index b3c31fd70..5667e1a87 100644 --- a/xorg-server/hw/xfree86/common/xf86AutoConfig.c +++ b/xorg-server/hw/xfree86/common/xf86AutoConfig.c @@ -157,7 +157,7 @@ videoPtrToDriverList(struct pci_device *dev, driverList[0] = "geode"; break; /* older Geode products acquired by AMD still carry an NSC vendor_id */ - case 0x100B: + case 0x100b: if (dev->device_id == 0x0030) { /* NSC Geode GX2 specifically ... */ driverList[0] = "geode"; @@ -165,7 +165,7 @@ videoPtrToDriverList(struct pci_device *dev, forked by AMD for GEODE so we keep it as a backup */ driverList[1] = "nsc"; } else - /* ... or any other NSC Geode e.g. SC series */ + /* ... any other NSC Geode SC variant e.g. 0x0504 for SCx200 */ driverList[0] = "nsc"; break; /* Cyrix Geode GX1 */ diff --git a/xorg-server/hw/xfree86/common/xf86Date.h b/xorg-server/hw/xfree86/common/xf86Date.h deleted file mode 100644 index 978c4fa15..000000000 --- a/xorg-server/hw/xfree86/common/xf86Date.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) 2003 by The XFree86 Project, Inc. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR - * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, - * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR - * OTHER DEALINGS IN THE SOFTWARE. - * - * Except as contained in this notice, the name of the copyright holder(s) - * and author(s) shall not be used in advertising or otherwise to promote - * the sale, use or other dealings in this Software without prior written - * authorization from the copyright holder(s) and author(s). - */ - -#ifdef HAVE_XORG_CONFIG_H -#include <xorg-config.h> -#endif - -#ifndef XF86_DATE - -#define XF86_DATE "18 December 2003" - -#endif diff --git a/xorg-server/hw/xfree86/common/xf86Init.c b/xorg-server/hw/xfree86/common/xf86Init.c index f9224b1a6..8f2cdf6aa 100644 --- a/xorg-server/hw/xfree86/common/xf86Init.c +++ b/xorg-server/hw/xfree86/common/xf86Init.c @@ -1181,6 +1181,8 @@ ddxGiveUp(void) { int i; + xf86VGAarbiterFini(); + #ifdef XF86PM if (xf86OSPMClose) xf86OSPMClose(); diff --git a/xorg-server/hw/xfree86/common/xf86RAC.c b/xorg-server/hw/xfree86/common/xf86RAC.c deleted file mode 100644 index 24d29e445..000000000 --- a/xorg-server/hw/xfree86/common/xf86RAC.c +++ /dev/null @@ -1,1171 +0,0 @@ -#ifdef HAVE_XORG_CONFIG_H -#include <xorg-config.h> -#endif - -#include "misc.h" -#include "xf86.h" -#include "xf86_OSproc.h" - -#include <X11/X.h> -#include "colormapst.h" -#include "scrnintstr.h" -#include "screenint.h" -#include "gcstruct.h" -#include "pixmapstr.h" -#include "pixmap.h" -#include "windowstr.h" -#include "window.h" -#include "xf86str.h" -#include "xf86RAC.h" -#include "mipointer.h" -#include "mipointrst.h" -#ifdef RENDER -# include "picturestr.h" -#endif - -#ifdef DEBUG -#define DPRINT_S(x,y) ErrorF(x ": %i\n",y); -#define DPRINT(x) ErrorF(x "\n"); -#else -#define DPRINT_S(x,y) -#define DPRINT(x) -#endif - -#define WRAP_SCREEN(x,y) {pScreenPriv->x = pScreen->x;\ - pScreen->x = y;} -#define WRAP_SCREEN_COND(x,y,cond) \ - {pScreenPriv->x = pScreen->x;\ - if (flag & (cond))\ - pScreen->x = y;} -#define UNWRAP_SCREEN(x) pScreen->x = pScreenPriv->x - -#define SCREEN_PROLOG(x) pScreen->x = ((RACScreenPtr) \ - dixLookupPrivate(&(pScreen)->devPrivates, RACScreenKey))->x -#define SCREEN_EPILOG(x,y) pScreen->x = y; - -#define WRAP_PICT_COND(x,y,cond) if (ps)\ - {pScreenPriv->x = ps->x;\ - if (flag & (cond))\ - ps->x = y;} -#define UNWRAP_PICT(x) if (ps) {ps->x = pScreenPriv->x;} - -#define PICTURE_PROLOGUE(field) ps->field = \ - ((RACScreenPtr)dixLookupPrivate(&(pScreen)->devPrivates, RACScreenKey))->field -#define PICTURE_EPILOGUE(field, wrap) \ - ps->field = wrap - -#define WRAP_SCREEN_INFO(x,y) {pScreenPriv->x = pScrn->x;\ - pScrn->x = y;} -#define WRAP_SCREEN_INFO_COND(x,y,cond) \ - {pScreenPriv->x = pScrn->x;\ - if (flag & (cond))\ - pScrn->x = y;} -#define UNWRAP_SCREEN_INFO(x) pScrn->x = pScreenPriv->x - -#define SPRITE_PROLOG miPointerScreenPtr PointPriv = \ - (miPointerScreenPtr)dixLookupPrivate(&pScreen->devPrivates, miPointerScreenKey); \ - RACScreenPtr pScreenPriv = \ - ((RACScreenPtr)dixLookupPrivate(&(pScreen)->devPrivates, RACScreenKey));\ - PointPriv->spriteFuncs = pScreenPriv->miSprite; -#define SPRITE_EPILOG pScreenPriv->miSprite = PointPriv->spriteFuncs;\ - PointPriv->spriteFuncs = &RACSpriteFuncs; -#define WRAP_SPRITE_COND(cond){pScreenPriv->miSprite = PointPriv->spriteFuncs;\ - if(flag & (cond))\ - PointPriv->spriteFuncs = &RACSpriteFuncs;} -#define UNWRAP_SPRITE PointPriv->spriteFuncs = pScreenPriv->miSprite - - -#define GC_WRAP(x) pGCPriv->wrapOps = (x)->ops;\ - pGCPriv->wrapFuncs = (x)->funcs;\ - (x)->ops = &RACGCOps;\ - (x)->funcs = &RACGCFuncs; -#define GC_UNWRAP(x)\ - RACGCPtr pGCPriv = (RACGCPtr)dixLookupPrivate(&(x)->devPrivates, RACGCKey);\ - (x)->ops = pGCPriv->wrapOps;\ - (x)->funcs = pGCPriv->wrapFuncs; - -#define GC_SCREEN register ScrnInfoPtr pScrn \ - = xf86Screens[pGC->pScreen->myNum] - -#define ENABLE xf86EnableAccess(xf86Screens[pScreen->myNum]) -#define ENABLE_GC xf86EnableAccess(xf86Screens[pGC->pScreen->myNum]) - -typedef struct _RACScreen { - CreateGCProcPtr CreateGC; - CloseScreenProcPtr CloseScreen; - GetImageProcPtr GetImage; - GetSpansProcPtr GetSpans; - SourceValidateProcPtr SourceValidate; - CopyWindowProcPtr CopyWindow; - ClearToBackgroundProcPtr ClearToBackground; - CreatePixmapProcPtr CreatePixmap; - SaveScreenProcPtr SaveScreen; - /* Colormap */ - StoreColorsProcPtr StoreColors; - /* Cursor */ - DisplayCursorProcPtr DisplayCursor; - RealizeCursorProcPtr RealizeCursor; - UnrealizeCursorProcPtr UnrealizeCursor; - RecolorCursorProcPtr RecolorCursor; - SetCursorPositionProcPtr SetCursorPosition; - void (*AdjustFrame)(int,int,int,int); - Bool (*SwitchMode)(int, DisplayModePtr,int); - Bool (*EnterVT)(int, int); - void (*LeaveVT)(int, int); - void (*FreeScreen)(int, int); - miPointerSpriteFuncPtr miSprite; -#ifdef RENDER - CompositeProcPtr Composite; - GlyphsProcPtr Glyphs; - CompositeRectsProcPtr CompositeRects; -#endif -} RACScreenRec, *RACScreenPtr; - -typedef struct _RACGC { - GCOps *wrapOps; - GCFuncs *wrapFuncs; -} RACGCRec, *RACGCPtr; - -/* Screen funcs */ -static Bool RACCloseScreen (int i, ScreenPtr pScreen); -static void RACGetImage (DrawablePtr pDrawable, int sx, int sy, - int w, int h, unsigned int format, - unsigned long planemask, char *pdstLine); -static void RACGetSpans (DrawablePtr pDrawable, int wMax, DDXPointPtr ppt, - int *pwidth, int nspans, char *pdstStart); -static void RACSourceValidate (DrawablePtr pDrawable, - int x, int y, int width, int height ); -static void RACCopyWindow(WindowPtr pWin, DDXPointRec ptOldOrg, - RegionPtr prgnSrc ); -static void RACClearToBackground (WindowPtr pWin, int x, int y, - int w, int h, Bool generateExposures ); -static PixmapPtr RACCreatePixmap(ScreenPtr pScreen, int w, int h, int depth, - unsigned usage_hint); -static Bool RACCreateGC(GCPtr pGC); -static Bool RACSaveScreen(ScreenPtr pScreen, Bool unblank); -static void RACStoreColors (ColormapPtr pmap, int ndef, xColorItem *pdefs); -static void RACRecolorCursor (DeviceIntPtr pDev, ScreenPtr pScreen, - CursorPtr pCurs, Bool displayed); -static Bool RACRealizeCursor (DeviceIntPtr pDev, ScreenPtr pScreen, - CursorPtr pCursor); -static Bool RACUnrealizeCursor (DeviceIntPtr pDev, ScreenPtr pScreen, - CursorPtr pCursor); -static Bool RACDisplayCursor (DeviceIntPtr pDev, ScreenPtr pScreen, - CursorPtr pCursor); -static Bool RACSetCursorPosition (DeviceIntPtr pDev, ScreenPtr pScreen, - int x, int y, Bool generateEvent); -static void RACAdjustFrame(int index, int x, int y, int flags); -static Bool RACSwitchMode(int index, DisplayModePtr mode, int flags); -static Bool RACEnterVT(int index, int flags); -static void RACLeaveVT(int index, int flags); -static void RACFreeScreen(int index, int flags); -/* GC funcs */ -static void RACValidateGC(GCPtr pGC, unsigned long changes, DrawablePtr pDraw); -static void RACChangeGC(GCPtr pGC, unsigned long mask); -static void RACCopyGC(GCPtr pGCSrc, unsigned long mask, GCPtr pGCDst); -static void RACDestroyGC(GCPtr pGC); -static void RACChangeClip(GCPtr pGC, int type, pointer pvalue, int nrects); -static void RACDestroyClip(GCPtr pGC); -static void RACCopyClip(GCPtr pgcDst, GCPtr pgcSrc); -/* GC ops */ -static void RACFillSpans( DrawablePtr pDraw, GC *pGC, int nInit, - DDXPointPtr pptInit, int *pwidthInit, int fSorted ); -static void RACSetSpans(DrawablePtr pDraw, GCPtr pGC, char *pcharsrc, - register DDXPointPtr ppt, int *pwidth, int nspans, - int fSorted ); -static void RACPutImage(DrawablePtr pDraw, GCPtr pGC, int depth, - int x, int y, int w, int h, int leftPad, - int format, char *pImage ); -static RegionPtr RACCopyArea(DrawablePtr pSrc, DrawablePtr pDst, - GC *pGC, int srcx, int srcy, - int width, int height, - int dstx, int dsty ); -static RegionPtr RACCopyPlane(DrawablePtr pSrc, DrawablePtr pDst, - GCPtr pGC, int srcx, int srcy, - int width, int height, int dstx, int dsty, - unsigned long bitPlane ); -static void RACPolyPoint(DrawablePtr pDraw, GCPtr pGC, int mode, - int npt, xPoint *pptInit ); -static void RACPolylines(DrawablePtr pDraw, GCPtr pGC, int mode, - int npt, DDXPointPtr pptInit ); -static void RACPolySegment(DrawablePtr pDraw, GCPtr pGC, int nseg, - xSegment *pSeg ); -static void RACPolyRectangle(DrawablePtr pDraw, GCPtr pGC, int nRectsInit, - xRectangle *pRectsInit ); -static void RACPolyArc(DrawablePtr pDraw, GCPtr pGC, int narcs, - xArc *parcs ); -static void RACFillPolygon(DrawablePtr pDraw, GCPtr pGC, int shape, int mode, - int count, DDXPointPtr ptsIn ); -static void RACPolyFillRect( DrawablePtr pDraw, GCPtr pGC, int nrectFill, - xRectangle *prectInit ); -static void RACPolyFillArc(DrawablePtr pDraw, GCPtr pGC, int narcs, - xArc *parcs ); -static int RACPolyText8(DrawablePtr pDraw, GCPtr pGC, int x, int y, - int count, char *chars ); -static int RACPolyText16(DrawablePtr pDraw, GCPtr pGC, int x, int y, - int count, unsigned short *chars ); -static void RACImageText8(DrawablePtr pDraw, GCPtr pGC, int x, int y, - int count, char *chars ); -static void RACImageText16(DrawablePtr pDraw, GCPtr pGC, int x, int y, - int count, unsigned short *chars ); -static void RACImageGlyphBlt(DrawablePtr pDraw, GCPtr pGC, int xInit, - int yInit, unsigned int nglyph, - CharInfoPtr *ppci, pointer pglyphBase ); -static void RACPolyGlyphBlt(DrawablePtr pDraw, GCPtr pGC, int xInit, - int yInit, unsigned int nglyph, - CharInfoPtr *ppci, pointer pglyphBase ); -static void RACPushPixels(GCPtr pGC, PixmapPtr pBitMap, DrawablePtr pDraw, - int dx, int dy, int xOrg, int yOrg ); -/* miSpriteFuncs */ -static Bool RACSpriteRealizeCursor(DeviceIntPtr pDev, ScreenPtr pScreen, - CursorPtr pCur); -static Bool RACSpriteUnrealizeCursor(DeviceIntPtr pDev, ScreenPtr pScreen, - CursorPtr pCur); -static void RACSpriteSetCursor(DeviceIntPtr pDev, ScreenPtr pScreen, - CursorPtr pCur, int x, int y); -static void RACSpriteMoveCursor(DeviceIntPtr pDev, ScreenPtr pScreen, - int x, int y); -#ifdef RENDER -static void RACComposite(CARD8 op, PicturePtr pSrc, PicturePtr pMask, - PicturePtr pDst, INT16 xSrc, INT16 ySrc, - INT16 xMask, INT16 yMask, INT16 xDst, - INT16 yDst, CARD16 width, CARD16 height); -static void RACGlyphs(CARD8 op, PicturePtr pSrc, PicturePtr pDst, - PictFormatPtr maskFormat, INT16 xSrc, INT16 ySrc, - int nlist, GlyphListPtr list, GlyphPtr *glyphs); -static void RACCompositeRects(CARD8 op, PicturePtr pDst, xRenderColor *color, - int nRect, xRectangle *rects); -#endif - -static GCFuncs RACGCFuncs = { - RACValidateGC, RACChangeGC, RACCopyGC, RACDestroyGC, - RACChangeClip, RACDestroyClip, RACCopyClip -}; - -static GCOps RACGCOps = { - RACFillSpans, RACSetSpans, RACPutImage, RACCopyArea, - RACCopyPlane, RACPolyPoint, RACPolylines, RACPolySegment, - RACPolyRectangle, RACPolyArc, RACFillPolygon, RACPolyFillRect, - RACPolyFillArc, RACPolyText8, RACPolyText16, RACImageText8, - RACImageText16, RACImageGlyphBlt, RACPolyGlyphBlt, RACPushPixels, - {NULL} /* devPrivate */ -}; - -static miPointerSpriteFuncRec RACSpriteFuncs = { - RACSpriteRealizeCursor, RACSpriteUnrealizeCursor, RACSpriteSetCursor, - RACSpriteMoveCursor -}; - -static int RACScreenKeyIndex; -static DevPrivateKey RACScreenKey = &RACScreenKeyIndex; -static int RACGCKeyIndex; -static DevPrivateKey RACGCKey = &RACGCKeyIndex; - - -Bool -xf86RACInit(ScreenPtr pScreen, unsigned int flag) -{ - ScrnInfoPtr pScrn; - RACScreenPtr pScreenPriv; - miPointerScreenPtr PointPriv; -#ifdef RENDER - PictureScreenPtr ps = GetPictureScreenIfSet(pScreen); -#endif - - pScrn = xf86Screens[pScreen->myNum]; - PointPriv = (miPointerScreenPtr)dixLookupPrivate(&pScreen->devPrivates, - miPointerScreenKey); - DPRINT_S("RACInit",pScreen->myNum); - - if (!dixRequestPrivate(RACGCKey, sizeof(RACGCRec))) - return FALSE; - - if (!(pScreenPriv = xalloc(sizeof(RACScreenRec)))) - return FALSE; - - dixSetPrivate(&pScreen->devPrivates, RACScreenKey, pScreenPriv); - - WRAP_SCREEN(CloseScreen, RACCloseScreen); - WRAP_SCREEN(SaveScreen, RACSaveScreen); - WRAP_SCREEN_COND(CreateGC, RACCreateGC, RAC_FB); - WRAP_SCREEN_COND(GetImage, RACGetImage, RAC_FB); - WRAP_SCREEN_COND(GetSpans, RACGetSpans, RAC_FB); - WRAP_SCREEN_COND(SourceValidate, RACSourceValidate, RAC_FB); - WRAP_SCREEN_COND(CopyWindow, RACCopyWindow, RAC_FB); - WRAP_SCREEN_COND(ClearToBackground, RACClearToBackground, RAC_FB); - WRAP_SCREEN_COND(CreatePixmap, RACCreatePixmap, RAC_FB); - WRAP_SCREEN_COND(StoreColors, RACStoreColors, RAC_COLORMAP); - WRAP_SCREEN_COND(DisplayCursor, RACDisplayCursor, RAC_CURSOR); - WRAP_SCREEN_COND(RealizeCursor, RACRealizeCursor, RAC_CURSOR); - WRAP_SCREEN_COND(UnrealizeCursor, RACUnrealizeCursor, RAC_CURSOR); - WRAP_SCREEN_COND(RecolorCursor, RACRecolorCursor, RAC_CURSOR); - WRAP_SCREEN_COND(SetCursorPosition, RACSetCursorPosition, RAC_CURSOR); -#ifdef RENDER - WRAP_PICT_COND(Composite,RACComposite,RAC_FB); - WRAP_PICT_COND(Glyphs,RACGlyphs,RAC_FB); - WRAP_PICT_COND(CompositeRects,RACCompositeRects,RAC_FB); -#endif - WRAP_SCREEN_INFO_COND(AdjustFrame, RACAdjustFrame, RAC_VIEWPORT); - WRAP_SCREEN_INFO(SwitchMode, RACSwitchMode); - WRAP_SCREEN_INFO(EnterVT, RACEnterVT); - WRAP_SCREEN_INFO(LeaveVT, RACLeaveVT); - WRAP_SCREEN_INFO(FreeScreen, RACFreeScreen); - WRAP_SPRITE_COND(RAC_CURSOR); - - return TRUE; -} - -/* Screen funcs */ -static Bool -RACCloseScreen (int i, ScreenPtr pScreen) -{ - ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; - RACScreenPtr pScreenPriv = (RACScreenPtr)dixLookupPrivate( - &pScreen->devPrivates, RACScreenKey); - miPointerScreenPtr PointPriv = (miPointerScreenPtr)dixLookupPrivate( - &pScreen->devPrivates, miPointerScreenKey); -#ifdef RENDER - PictureScreenPtr ps = GetPictureScreenIfSet(pScreen); -#endif - - DPRINT_S("RACCloseScreen",pScreen->myNum); - UNWRAP_SCREEN(CreateGC); - UNWRAP_SCREEN(CloseScreen); - UNWRAP_SCREEN(GetImage); - UNWRAP_SCREEN(GetSpans); - UNWRAP_SCREEN(SourceValidate); - UNWRAP_SCREEN(CopyWindow); - UNWRAP_SCREEN(ClearToBackground); - UNWRAP_SCREEN(SaveScreen); - UNWRAP_SCREEN(StoreColors); - UNWRAP_SCREEN(DisplayCursor); - UNWRAP_SCREEN(RealizeCursor); - UNWRAP_SCREEN(UnrealizeCursor); - UNWRAP_SCREEN(RecolorCursor); - UNWRAP_SCREEN(SetCursorPosition); -#ifdef RENDER - UNWRAP_PICT(Composite); - UNWRAP_PICT(Glyphs); - UNWRAP_PICT(CompositeRects); -#endif - UNWRAP_SCREEN_INFO(AdjustFrame); - UNWRAP_SCREEN_INFO(SwitchMode); - UNWRAP_SCREEN_INFO(EnterVT); - UNWRAP_SCREEN_INFO(LeaveVT); - UNWRAP_SCREEN_INFO(FreeScreen); - UNWRAP_SPRITE; - - xfree ((pointer) pScreenPriv); - - if (xf86Screens[pScreen->myNum]->vtSema) { - xf86EnterServerState(SETUP); - ENABLE; - } - return (*pScreen->CloseScreen) (i, pScreen); -} - -static void -RACGetImage ( - DrawablePtr pDrawable, - int sx, int sy, int w, int h, - unsigned int format, - unsigned long planemask, - char *pdstLine - ) -{ - ScreenPtr pScreen = pDrawable->pScreen; - DPRINT_S("RACGetImage",pScreen->myNum); - SCREEN_PROLOG(GetImage); - if (xf86Screens[pScreen->myNum]->vtSema) { - ENABLE; - } - (*pScreen->GetImage) (pDrawable, sx, sy, w, h, - format, planemask, pdstLine); - SCREEN_EPILOG (GetImage, RACGetImage); -} - -static void -RACGetSpans ( - DrawablePtr pDrawable, - int wMax, - DDXPointPtr ppt, - int *pwidth, - int nspans, - char *pdstStart - ) -{ - ScreenPtr pScreen = pDrawable->pScreen; - - DPRINT_S("RACGetSpans",pScreen->myNum); - SCREEN_PROLOG (GetSpans); - ENABLE; - (*pScreen->GetSpans) (pDrawable, wMax, ppt, pwidth, nspans, pdstStart); - SCREEN_EPILOG (GetSpans, RACGetSpans); -} - -static void -RACSourceValidate ( - DrawablePtr pDrawable, - int x, int y, int width, int height ) -{ - ScreenPtr pScreen = pDrawable->pScreen; - DPRINT_S("RACSourceValidate",pScreen->myNum); - SCREEN_PROLOG (SourceValidate); - ENABLE; - if (pScreen->SourceValidate) - (*pScreen->SourceValidate) (pDrawable, x, y, width, height); - SCREEN_EPILOG (SourceValidate, RACSourceValidate); -} - -static void -RACCopyWindow( - WindowPtr pWin, - DDXPointRec ptOldOrg, - RegionPtr prgnSrc ) -{ - ScreenPtr pScreen = pWin->drawable.pScreen; - - DPRINT_S("RACCopyWindow",pScreen->myNum); - SCREEN_PROLOG (CopyWindow); - ENABLE; - (*pScreen->CopyWindow) (pWin, ptOldOrg, prgnSrc); - SCREEN_EPILOG (CopyWindow, RACCopyWindow); -} - -static void -RACClearToBackground ( - WindowPtr pWin, - int x, int y, - int w, int h, - Bool generateExposures ) -{ - ScreenPtr pScreen = pWin->drawable.pScreen; - - DPRINT_S("RACClearToBackground",pScreen->myNum); - SCREEN_PROLOG ( ClearToBackground); - ENABLE; - (*pScreen->ClearToBackground) (pWin, x, y, w, h, generateExposures); - SCREEN_EPILOG (ClearToBackground, RACClearToBackground); -} - -static PixmapPtr -RACCreatePixmap(ScreenPtr pScreen, int w, int h, int depth, unsigned usage_hint) -{ - PixmapPtr pPix; - - DPRINT_S("RACCreatePixmap",pScreen->myNum); - SCREEN_PROLOG ( CreatePixmap); - ENABLE; - pPix = (*pScreen->CreatePixmap) (pScreen, w, h, depth, usage_hint); - SCREEN_EPILOG (CreatePixmap, RACCreatePixmap); - - return pPix; -} - -static Bool -RACSaveScreen(ScreenPtr pScreen, Bool unblank) -{ - Bool val; - - DPRINT_S("RACSaveScreen",pScreen->myNum); - SCREEN_PROLOG (SaveScreen); - ENABLE; - val = (*pScreen->SaveScreen) (pScreen, unblank); - SCREEN_EPILOG (SaveScreen, RACSaveScreen); - - return val; -} - -static void -RACStoreColors ( - ColormapPtr pmap, - int ndef, - xColorItem *pdefs) -{ - ScreenPtr pScreen = pmap->pScreen; - - DPRINT_S("RACStoreColors",pScreen->myNum); - SCREEN_PROLOG (StoreColors); - ENABLE; - (*pScreen->StoreColors) (pmap,ndef,pdefs); - - SCREEN_EPILOG ( StoreColors, RACStoreColors); -} - -static void -RACRecolorCursor ( - DeviceIntPtr pDev, - ScreenPtr pScreen, - CursorPtr pCurs, - Bool displayed - ) -{ - DPRINT_S("RACRecolorCursor",pScreen->myNum); - SCREEN_PROLOG (RecolorCursor); - ENABLE; - (*pScreen->RecolorCursor) (pDev, pScreen,pCurs,displayed); - - SCREEN_EPILOG ( RecolorCursor, RACRecolorCursor); -} - -static Bool -RACRealizeCursor ( - DeviceIntPtr pDev, - ScreenPtr pScreen, - CursorPtr pCursor - ) -{ - Bool val; - - DPRINT_S("RACRealizeCursor",pScreen->myNum); - SCREEN_PROLOG (RealizeCursor); - ENABLE; - val = (*pScreen->RealizeCursor) (pDev, pScreen,pCursor); - - SCREEN_EPILOG ( RealizeCursor, RACRealizeCursor); - return val; -} - -static Bool -RACUnrealizeCursor ( - DeviceIntPtr pDev, - ScreenPtr pScreen, - CursorPtr pCursor - ) -{ - Bool val; - - DPRINT_S("RACUnrealizeCursor",pScreen->myNum); - SCREEN_PROLOG (UnrealizeCursor); - ENABLE; - val = (*pScreen->UnrealizeCursor) (pDev, pScreen,pCursor); - - SCREEN_EPILOG ( UnrealizeCursor, RACUnrealizeCursor); - return val; -} - -static Bool -RACDisplayCursor ( - DeviceIntPtr pDev, - ScreenPtr pScreen, - CursorPtr pCursor - ) -{ - Bool val; - - DPRINT_S("RACDisplayCursor",pScreen->myNum); - SCREEN_PROLOG (DisplayCursor); - ENABLE; - val = (*pScreen->DisplayCursor) (pDev, pScreen,pCursor); - - SCREEN_EPILOG ( DisplayCursor, RACDisplayCursor); - return val; -} - -static Bool -RACSetCursorPosition ( - DeviceIntPtr pDev, - ScreenPtr pScreen, - int x, int y, - Bool generateEvent) -{ - Bool val; - - DPRINT_S("RACSetCursorPosition",pScreen->myNum); - SCREEN_PROLOG (SetCursorPosition); - ENABLE; - val = (*pScreen->SetCursorPosition) (pDev, pScreen,x,y,generateEvent); - - SCREEN_EPILOG ( SetCursorPosition, RACSetCursorPosition); - return val; -} - -static void -RACAdjustFrame(int index, int x, int y, int flags) -{ - ScreenPtr pScreen = screenInfo.screens[index]; - RACScreenPtr pScreenPriv = (RACScreenPtr)dixLookupPrivate( - &pScreen->devPrivates, RACScreenKey); - - DPRINT_S("RACAdjustFrame",index); - xf86EnableAccess(xf86Screens[index]); - - (*pScreenPriv->AdjustFrame)(index, x, y, flags); -} - -static Bool -RACSwitchMode(int index, DisplayModePtr mode, int flags) -{ - ScreenPtr pScreen = screenInfo.screens[index]; - RACScreenPtr pScreenPriv = (RACScreenPtr)dixLookupPrivate( - &pScreen->devPrivates, RACScreenKey); - - DPRINT_S("RACSwitchMode",index); - xf86EnableAccess(xf86Screens[index]); - - return (*pScreenPriv->SwitchMode)(index, mode, flags); -} - -static Bool -RACEnterVT(int index, int flags) -{ - ScreenPtr pScreen = screenInfo.screens[index]; - RACScreenPtr pScreenPriv = (RACScreenPtr)dixLookupPrivate( - &pScreen->devPrivates, RACScreenKey); - - DPRINT_S("RACEnterVT",index); - xf86EnableAccess(xf86Screens[index]); - - return (*pScreenPriv->EnterVT)(index, flags); -} - -static void -RACLeaveVT(int index, int flags) -{ - ScreenPtr pScreen = screenInfo.screens[index]; - RACScreenPtr pScreenPriv = (RACScreenPtr)dixLookupPrivate( - &pScreen->devPrivates, RACScreenKey); - - DPRINT_S("RACLeaveVT",index); - xf86EnableAccess(xf86Screens[index]); - - (*pScreenPriv->LeaveVT)(index, flags); -} - -static void -RACFreeScreen(int index, int flags) -{ - ScreenPtr pScreen = screenInfo.screens[index]; - RACScreenPtr pScreenPriv = (RACScreenPtr)dixLookupPrivate( - &pScreen->devPrivates, RACScreenKey); - - DPRINT_S("RACFreeScreen",index); - xf86EnableAccess(xf86Screens[index]); - - (*pScreenPriv->FreeScreen)(index, flags); -} - -static Bool -RACCreateGC(GCPtr pGC) -{ - ScreenPtr pScreen = pGC->pScreen; - RACGCPtr pGCPriv = (RACGCPtr)dixLookupPrivate(&pGC->devPrivates, RACGCKey); - Bool ret; - - DPRINT_S("RACCreateGC",pScreen->myNum); - SCREEN_PROLOG(CreateGC); - - ret = (*pScreen->CreateGC)(pGC); - - GC_WRAP(pGC); - SCREEN_EPILOG(CreateGC,RACCreateGC); - - return ret; -} - -/* GC funcs */ -static void -RACValidateGC( - GCPtr pGC, - unsigned long changes, - DrawablePtr pDraw ) -{ - GC_UNWRAP(pGC); - DPRINT("RACValidateGC"); - (*pGC->funcs->ValidateGC)(pGC, changes, pDraw); - GC_WRAP(pGC); -} - - -static void -RACDestroyGC(GCPtr pGC) -{ - GC_UNWRAP (pGC); - DPRINT("RACDestroyGC"); - (*pGC->funcs->DestroyGC)(pGC); - GC_WRAP (pGC); -} - -static void -RACChangeGC ( - GCPtr pGC, - unsigned long mask) -{ - GC_UNWRAP (pGC); - DPRINT("RACChangeGC"); - (*pGC->funcs->ChangeGC) (pGC, mask); - GC_WRAP (pGC); -} - -static void -RACCopyGC ( - GCPtr pGCSrc, - unsigned long mask, - GCPtr pGCDst) -{ - GC_UNWRAP (pGCDst); - DPRINT("RACCopyGC"); - (*pGCDst->funcs->CopyGC) (pGCSrc, mask, pGCDst); - GC_WRAP (pGCDst); -} - -static void -RACChangeClip ( - GCPtr pGC, - int type, - pointer pvalue, - int nrects ) -{ - GC_UNWRAP (pGC); - DPRINT("RACChangeClip"); - (*pGC->funcs->ChangeClip) (pGC, type, pvalue, nrects); - GC_WRAP (pGC); -} - -static void -RACCopyClip(GCPtr pgcDst, GCPtr pgcSrc) -{ - GC_UNWRAP (pgcDst); - DPRINT("RACCopyClip"); - (* pgcDst->funcs->CopyClip)(pgcDst, pgcSrc); - GC_WRAP (pgcDst); -} - -static void -RACDestroyClip(GCPtr pGC) -{ - GC_UNWRAP (pGC); - DPRINT("RACDestroyClip"); - (* pGC->funcs->DestroyClip)(pGC); - GC_WRAP (pGC); -} - -/* GC Ops */ -static void -RACFillSpans( - DrawablePtr pDraw, - GC *pGC, - int nInit, - DDXPointPtr pptInit, - int *pwidthInit, - int fSorted ) -{ - GC_UNWRAP(pGC); - DPRINT("RACFillSpans"); - ENABLE_GC; - (*pGC->ops->FillSpans)(pDraw, pGC, nInit, pptInit, pwidthInit, fSorted); - GC_WRAP(pGC); -} - -static void -RACSetSpans( - DrawablePtr pDraw, - GCPtr pGC, - char *pcharsrc, - register DDXPointPtr ppt, - int *pwidth, - int nspans, - int fSorted ) -{ - GC_UNWRAP(pGC); - DPRINT("RACSetSpans"); - ENABLE_GC; - (*pGC->ops->SetSpans)(pDraw, pGC, pcharsrc, ppt, pwidth, nspans, fSorted); - GC_WRAP(pGC); -} - -static void -RACPutImage( - DrawablePtr pDraw, - GCPtr pGC, - int depth, - int x, int y, int w, int h, - int leftPad, - int format, - char *pImage ) -{ - GC_UNWRAP(pGC); - DPRINT("RACPutImage"); - ENABLE_GC; - (*pGC->ops->PutImage)(pDraw, pGC, depth, x, y, w, h, - leftPad, format, pImage); - GC_WRAP(pGC); -} - -static RegionPtr -RACCopyArea( - DrawablePtr pSrc, - DrawablePtr pDst, - GC *pGC, - int srcx, int srcy, - int width, int height, - int dstx, int dsty ) -{ - RegionPtr ret; - - GC_UNWRAP(pGC); - DPRINT("RACCopyArea"); - ENABLE_GC; - ret = (*pGC->ops->CopyArea)(pSrc, pDst, - pGC, srcx, srcy, width, height, dstx, dsty); - GC_WRAP(pGC); - return ret; -} - -static RegionPtr -RACCopyPlane( - DrawablePtr pSrc, - DrawablePtr pDst, - GCPtr pGC, - int srcx, int srcy, - int width, int height, - int dstx, int dsty, - unsigned long bitPlane ) -{ - RegionPtr ret; - - GC_UNWRAP(pGC); - DPRINT("RACCopyPlane"); - ENABLE_GC; - ret = (*pGC->ops->CopyPlane)(pSrc, pDst, pGC, srcx, srcy, - width, height, dstx, dsty, bitPlane); - GC_WRAP(pGC); - return ret; -} - -static void -RACPolyPoint( - DrawablePtr pDraw, - GCPtr pGC, - int mode, - int npt, - xPoint *pptInit ) -{ - GC_UNWRAP(pGC); - DPRINT("RACPolyPoint"); - ENABLE_GC; - (*pGC->ops->PolyPoint)(pDraw, pGC, mode, npt, pptInit); - GC_WRAP(pGC); -} - - -static void -RACPolylines( - DrawablePtr pDraw, - GCPtr pGC, - int mode, - int npt, - DDXPointPtr pptInit ) -{ - GC_UNWRAP(pGC); - DPRINT("RACPolylines"); - ENABLE_GC; - (*pGC->ops->Polylines)(pDraw, pGC, mode, npt, pptInit); - GC_WRAP(pGC); -} - -static void -RACPolySegment( - DrawablePtr pDraw, - GCPtr pGC, - int nseg, - xSegment *pSeg ) -{ - GC_UNWRAP(pGC); - DPRINT("RACPolySegment"); - ENABLE_GC; - (*pGC->ops->PolySegment)(pDraw, pGC, nseg, pSeg); - GC_WRAP(pGC); -} - -static void -RACPolyRectangle( - DrawablePtr pDraw, - GCPtr pGC, - int nRectsInit, - xRectangle *pRectsInit ) -{ - GC_UNWRAP(pGC); - DPRINT("RACPolyRectangle"); - ENABLE_GC; - (*pGC->ops->PolyRectangle)(pDraw, pGC, nRectsInit, pRectsInit); - GC_WRAP(pGC); -} - -static void -RACPolyArc( - DrawablePtr pDraw, - GCPtr pGC, - int narcs, - xArc *parcs ) -{ - GC_UNWRAP(pGC); - DPRINT("RACPolyArc"); - ENABLE_GC; - (*pGC->ops->PolyArc)(pDraw, pGC, narcs, parcs); - GC_WRAP(pGC); -} - -static void -RACFillPolygon( - DrawablePtr pDraw, - GCPtr pGC, - int shape, - int mode, - int count, - DDXPointPtr ptsIn ) -{ - GC_UNWRAP(pGC); - DPRINT("RACFillPolygon"); - ENABLE_GC; - (*pGC->ops->FillPolygon)(pDraw, pGC, shape, mode, count, ptsIn); - GC_WRAP(pGC); -} - - -static void -RACPolyFillRect( - DrawablePtr pDraw, - GCPtr pGC, - int nrectFill, - xRectangle *prectInit ) -{ - GC_UNWRAP(pGC); - DPRINT("RACPolyFillRect"); - ENABLE_GC; - (*pGC->ops->PolyFillRect)(pDraw, pGC, nrectFill, prectInit); - GC_WRAP(pGC); -} - - -static void -RACPolyFillArc( - DrawablePtr pDraw, - GCPtr pGC, - int narcs, - xArc *parcs ) -{ - GC_UNWRAP(pGC); - DPRINT("RACPolyFillArc"); - ENABLE_GC; - (*pGC->ops->PolyFillArc)(pDraw, pGC, narcs, parcs); - GC_WRAP(pGC); -} - -static int -RACPolyText8( - DrawablePtr pDraw, - GCPtr pGC, - int x, - int y, - int count, - char *chars ) -{ - int ret; - - GC_UNWRAP(pGC); - DPRINT("RACPolyText8"); - ENABLE_GC; - ret = (*pGC->ops->PolyText8)(pDraw, pGC, x, y, count, chars); - GC_WRAP(pGC); - return ret; -} - -static int -RACPolyText16( - DrawablePtr pDraw, - GCPtr pGC, - int x, - int y, - int count, - unsigned short *chars ) -{ - int ret; - - GC_UNWRAP(pGC); - DPRINT("RACPolyText16"); - ENABLE_GC; - ret = (*pGC->ops->PolyText16)(pDraw, pGC, x, y, count, chars); - GC_WRAP(pGC); - return ret; -} - -static void -RACImageText8( - DrawablePtr pDraw, - GCPtr pGC, - int x, - int y, - int count, - char *chars ) -{ - GC_UNWRAP(pGC); - DPRINT("RACImageText8"); - ENABLE_GC; - (*pGC->ops->ImageText8)(pDraw, pGC, x, y, count, chars); - GC_WRAP(pGC); -} - -static void -RACImageText16( - DrawablePtr pDraw, - GCPtr pGC, - int x, - int y, - int count, - unsigned short *chars ) -{ - GC_UNWRAP(pGC); - DPRINT("RACImageText16"); - ENABLE_GC; - (*pGC->ops->ImageText16)(pDraw, pGC, x, y, count, chars); - GC_WRAP(pGC); -} - - -static void -RACImageGlyphBlt( - DrawablePtr pDraw, - GCPtr pGC, - int xInit, int yInit, - unsigned int nglyph, - CharInfoPtr *ppci, - pointer pglyphBase ) -{ - GC_UNWRAP(pGC); - DPRINT("RACImageGlyphBlt"); - ENABLE_GC; - (*pGC->ops->ImageGlyphBlt)(pDraw, pGC, xInit, yInit, - nglyph, ppci, pglyphBase); - GC_WRAP(pGC); -} - -static void -RACPolyGlyphBlt( - DrawablePtr pDraw, - GCPtr pGC, - int xInit, int yInit, - unsigned int nglyph, - CharInfoPtr *ppci, - pointer pglyphBase ) -{ - GC_UNWRAP(pGC); - DPRINT("RACPolyGlyphBlt"); - ENABLE_GC; - (*pGC->ops->PolyGlyphBlt)(pDraw, pGC, xInit, yInit, - nglyph, ppci, pglyphBase); - GC_WRAP(pGC); -} - -static void -RACPushPixels( - GCPtr pGC, - PixmapPtr pBitMap, - DrawablePtr pDraw, - int dx, int dy, int xOrg, int yOrg ) -{ - GC_UNWRAP(pGC); - DPRINT("RACPushPixels"); - ENABLE_GC; - (*pGC->ops->PushPixels)(pGC, pBitMap, pDraw, dx, dy, xOrg, yOrg); - GC_WRAP(pGC); -} - - -/* miSpriteFuncs */ -static Bool -RACSpriteRealizeCursor(DeviceIntPtr pDev, ScreenPtr pScreen, CursorPtr pCur) -{ - Bool val; - SPRITE_PROLOG; - DPRINT_S("RACSpriteRealizeCursor",pScreen->myNum); - ENABLE; - val = PointPriv->spriteFuncs->RealizeCursor(pDev, pScreen, pCur); - SPRITE_EPILOG; - return val; -} - -static Bool -RACSpriteUnrealizeCursor(DeviceIntPtr pDev, ScreenPtr pScreen, CursorPtr pCur) -{ - Bool val; - SPRITE_PROLOG; - DPRINT_S("RACSpriteUnrealizeCursor",pScreen->myNum); - ENABLE; - val = PointPriv->spriteFuncs->UnrealizeCursor(pDev, pScreen, pCur); - SPRITE_EPILOG; - return val; -} - -static void -RACSpriteSetCursor(DeviceIntPtr pDev, ScreenPtr pScreen, - CursorPtr pCur, int x, int y) -{ - SPRITE_PROLOG; - DPRINT_S("RACSpriteSetCursor",pScreen->myNum); - ENABLE; - PointPriv->spriteFuncs->SetCursor(pDev, pScreen, pCur, x, y); - SPRITE_EPILOG; -} - -static void -RACSpriteMoveCursor(DeviceIntPtr pDev, ScreenPtr pScreen, int x, int y) -{ - SPRITE_PROLOG; - DPRINT_S("RACSpriteMoveCursor",pScreen->myNum); - ENABLE; - PointPriv->spriteFuncs->MoveCursor(pDev, pScreen, x, y); - SPRITE_EPILOG; -} - -#ifdef RENDER -static void -RACComposite(CARD8 op, PicturePtr pSrc, PicturePtr pMask, - PicturePtr pDst, INT16 xSrc, INT16 ySrc, INT16 xMask, - INT16 yMask, INT16 xDst, INT16 yDst, CARD16 width, - CARD16 height) -{ - ScreenPtr pScreen = pDst->pDrawable->pScreen; - PictureScreenPtr ps = GetPictureScreen(pScreen); - - PICTURE_PROLOGUE(Composite); - - ENABLE; - (*ps->Composite) (op, pSrc, pMask, pDst, xSrc, ySrc, xMask, yMask, xDst, - yDst, width, height); - - PICTURE_EPILOGUE(Composite, RACComposite); -} - -static void -RACGlyphs(CARD8 op, PicturePtr pSrc, PicturePtr pDst, - PictFormatPtr maskFormat, INT16 xSrc, INT16 ySrc, int nlist, - GlyphListPtr list, GlyphPtr *glyphs) -{ - ScreenPtr pScreen = pDst->pDrawable->pScreen; - PictureScreenPtr ps = GetPictureScreen(pScreen); - - PICTURE_PROLOGUE(Glyphs); - - ENABLE; - (*ps->Glyphs)(op, pSrc, pDst, maskFormat, xSrc, ySrc, nlist, list, glyphs); - - PICTURE_EPILOGUE (Glyphs, RACGlyphs); -} - -static void -RACCompositeRects(CARD8 op, PicturePtr pDst, xRenderColor *color, int nRect, - xRectangle *rects) -{ - ScreenPtr pScreen = pDst->pDrawable->pScreen; - PictureScreenPtr ps = GetPictureScreen(pScreen); - - PICTURE_PROLOGUE(CompositeRects); - - ENABLE; - (*ps->CompositeRects)(op, pDst, color, nRect, rects); - - PICTURE_EPILOGUE (CompositeRects, RACCompositeRects); -} -#endif - diff --git a/xorg-server/hw/xfree86/common/xf86RAC.h b/xorg-server/hw/xfree86/common/xf86RAC.h deleted file mode 100644 index 366c21485..000000000 --- a/xorg-server/hw/xfree86/common/xf86RAC.h +++ /dev/null @@ -1,17 +0,0 @@ - -#ifndef __XF86RAC_H -#define __XF86RAC_H 1 - -#include "screenint.h" -#include "misc.h" -#include "xf86.h" - -Bool xf86RACInit(ScreenPtr pScreen, unsigned int flag); - -/* flags */ -#define RAC_FB 0x01 -#define RAC_CURSOR 0x02 -#define RAC_COLORMAP 0x04 -#define RAC_VIEWPORT 0x08 - -#endif /* __XF86RAC_H */ diff --git a/xorg-server/hw/xfree86/common/xf86Resources.h b/xorg-server/hw/xfree86/common/xf86Resources.h deleted file mode 100644 index 15bd32c69..000000000 --- a/xorg-server/hw/xfree86/common/xf86Resources.h +++ /dev/null @@ -1,137 +0,0 @@ - -/* - * Copyright (c) 1999-2002 by The XFree86 Project, Inc. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR - * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, - * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR - * OTHER DEALINGS IN THE SOFTWARE. - * - * Except as contained in this notice, the name of the copyright holder(s) - * and author(s) shall not be used in advertising or otherwise to promote - * the sale, use or other dealings in this Software without prior written - * authorization from the copyright holder(s) and author(s). - */ - -#ifndef _XF86_RESOURCES_H - -#define _XF86_RESOURCES_H - -#include "xf86str.h" - -#define _END {ResEnd,0,0} - -#define _VGA_EXCLUSIVE \ - {ResExcMemBlock | ResBios | ResBus, 0x000A0000, 0x000AFFFF},\ - {ResExcMemBlock | ResBios | ResBus, 0x000B0000, 0x000B7FFF},\ - {ResExcMemBlock | ResBios | ResBus, 0x000B8000, 0x000BFFFF},\ - {ResExcIoBlock | ResBios | ResBus, 0x03B0, 0x03BB},\ - {ResExcIoBlock | ResBios | ResBus, 0x03C0, 0x03DF} - -#define _VGA_SHARED \ - {ResShrMemBlock | ResBios | ResBus, 0x000A0000, 0x000AFFFF},\ - {ResShrMemBlock | ResBios | ResBus, 0x000B0000, 0x000B7FFF},\ - {ResShrMemBlock | ResBios | ResBus, 0x000B8000, 0x000BFFFF},\ - {ResShrIoBlock | ResBios | ResBus, 0x03B0, 0x03BB},\ - {ResShrIoBlock | ResBios | ResBus, 0x03C0, 0x03DF} - -#define _VGA_SHARED_MEM \ - {ResShrMemBlock | ResBios | ResBus, 0x000A0000, 0x000AFFFF},\ - {ResShrMemBlock | ResBios | ResBus, 0x000B0000, 0x000B7FFF},\ - {ResShrMemBlock | ResBios | ResBus, 0x000B8000, 0x000BFFFF} - -#define _VGA_SHARED_IO \ - {ResShrIoBlock | ResBios | ResBus, 0x03B0, 0x03BB},\ - {ResShrIoBlock | ResBios | ResBus, 0x03C0, 0x03DF} - -/* - * Exclusive unused VGA: resources unneeded but cannot be disabled. - * Like old Millennium. - */ -#define _VGA_EXCLUSIVE_UNUSED \ - {ResExcUusdMemBlock | ResBios | ResBus, 0x000A0000, 0x000AFFFF},\ - {ResExcUusdMemBlock | ResBios | ResBus, 0x000B0000, 0x000B7FFF},\ - {ResExcUusdMemBlock | ResBios | ResBus, 0x000B8000, 0x000BFFFF},\ - {ResExcUusdIoBlock | ResBios | ResBus, 0x03B0, 0x03BB},\ - {ResExcUusdIoBlock | ResBios | ResBus, 0x03C0, 0x03DF} - -/* - * Shared unused VGA: resources unneeded but cannot be disabled - * independently. This is used to determine if a device needs RAC. - */ -#define _VGA_SHARED_UNUSED \ - {ResShrUusdMemBlock | ResBios | ResBus, 0x000A0000, 0x000AFFFF},\ - {ResShrUusdMemBlock | ResBios | ResBus, 0x000B0000, 0x000B7FFF},\ - {ResShrUusdMemBlock | ResBios | ResBus, 0x000B8000, 0x000BFFFF},\ - {ResShrUusdIoBlock | ResBios | ResBus, 0x03B0, 0x03BB},\ - {ResShrUusdIoBlock | ResBios | ResBus, 0x03C0, 0x03DF} - -/* - * Sparse versions of the above for those adapters that respond to all ISA - * aliases of VGA ports. - */ -#define _VGA_EXCLUSIVE_SPARSE \ - {ResExcMemBlock | ResBios | ResBus, 0x000A0000, 0x000AFFFF},\ - {ResExcMemBlock | ResBios | ResBus, 0x000B0000, 0x000B7FFF},\ - {ResExcMemBlock | ResBios | ResBus, 0x000B8000, 0x000BFFFF},\ - {ResExcIoSparse | ResBios | ResBus, 0x03B0, 0x03F8},\ - {ResExcIoSparse | ResBios | ResBus, 0x03B8, 0x03FC},\ - {ResExcIoSparse | ResBios | ResBus, 0x03C0, 0x03E0} - -#define _VGA_SHARED_SPARSE \ - {ResShrMemBlock | ResBios | ResBus, 0x000A0000, 0x000AFFFF},\ - {ResShrMemBlock | ResBios | ResBus, 0x000B0000, 0x000B7FFF},\ - {ResShrMemBlock | ResBios | ResBus, 0x000B8000, 0x000BFFFF},\ - {ResShrIoSparse | ResBios | ResBus, 0x03B0, 0x03F8},\ - {ResShrIoSparse | ResBios | ResBus, 0x03B8, 0x03FC},\ - {ResShrIoSparse | ResBios | ResBus, 0x03C0, 0x03E0} - -#define _8514_EXCLUSIVE \ - {ResExcIoSparse | ResBios | ResBus, 0x02E8, 0x03F8} - -#define _8514_SHARED \ - {ResShrIoSparse | ResBios | ResBus, 0x02E8, 0x03F8} - -/* Predefined resources */ -extern resRange resVgaExclusive[]; -extern resRange resVgaShared[]; -extern resRange resVgaIoShared[]; -extern resRange resVgaMemShared[]; -extern resRange resVgaUnusedExclusive[]; -extern resRange resVgaUnusedShared[]; -extern resRange resVgaSparseExclusive[]; -extern resRange resVgaSparseShared[]; -extern resRange res8514Exclusive[]; -extern resRange res8514Shared[]; - -/* Less misleading aliases for xf86SetOperatingState() */ -#define resVgaMem resVgaMemShared -#define resVgaIo resVgaIoShared -#define resVga resVgaShared - -/* Old style names */ -#define RES_EXCLUSIVE_VGA resVgaExclusive -#define RES_SHARED_VGA resVgaShared -#define RES_EXCLUSIVE_8514 res8514Exclusive -#define RES_SHARED_8514 res8514Shared - -#define _PCI_AVOID_PC_STYLE \ - {ResExcIoSparse | ResBus, 0x0100, 0x0300},\ - {ResExcIoSparse | ResBus, 0x0200, 0x0200},\ - {ResExcMemBlock | ResBus, 0xA0000,0xFFFFF} - -#define RES_UNDEFINED NULL -#endif |