45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync#ifdef HAVE_XORG_CONFIG_H
45e9809aff7304721fddb95654901b32195c9c7avboxsync#include <xorg-config.h>
45e9809aff7304721fddb95654901b32195c9c7avboxsync#endif
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync#ifndef _CFB8_32_H
45e9809aff7304721fddb95654901b32195c9c7avboxsync#define _CFB8_32_H
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync#include "gcstruct.h"
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsynctypedef struct {
45e9809aff7304721fddb95654901b32195c9c7avboxsync GCOps *Ops8bpp;
45e9809aff7304721fddb95654901b32195c9c7avboxsync GCOps *Ops32bpp;
45e9809aff7304721fddb95654901b32195c9c7avboxsync unsigned long changes;
45e9809aff7304721fddb95654901b32195c9c7avboxsync Bool OpsAre8bpp;
45e9809aff7304721fddb95654901b32195c9c7avboxsync} cfb8_32GCRec, *cfb8_32GCPtr;
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsynctypedef struct {
45e9809aff7304721fddb95654901b32195c9c7avboxsync unsigned char key;
45e9809aff7304721fddb95654901b32195c9c7avboxsync void (*EnableDisableFBAccess)(int scrnIndex, Bool enable);
45e9809aff7304721fddb95654901b32195c9c7avboxsync pointer visualData;
45e9809aff7304721fddb95654901b32195c9c7avboxsync} cfb8_32ScreenRec, *cfb8_32ScreenPtr;
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncextern int cfb8_32GCPrivateIndex; /* XXX */
45e9809aff7304721fddb95654901b32195c9c7avboxsyncextern int cfb8_32GetGCPrivateIndex(void);
45e9809aff7304721fddb95654901b32195c9c7avboxsyncextern int cfb8_32ScreenPrivateIndex; /* XXX */
45e9809aff7304721fddb95654901b32195c9c7avboxsyncextern int cfb8_32GetScreenPrivateIndex(void);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncvoid
45e9809aff7304721fddb95654901b32195c9c7avboxsynccfb8_32SaveAreas(
45e9809aff7304721fddb95654901b32195c9c7avboxsync PixmapPtr pPixmap,
45e9809aff7304721fddb95654901b32195c9c7avboxsync RegionPtr prgnSave,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int xorg,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int yorg,
45e9809aff7304721fddb95654901b32195c9c7avboxsync WindowPtr pWin
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncvoid
45e9809aff7304721fddb95654901b32195c9c7avboxsynccfb8_32RestoreAreas(
45e9809aff7304721fddb95654901b32195c9c7avboxsync PixmapPtr pPixmap,
45e9809aff7304721fddb95654901b32195c9c7avboxsync RegionPtr prgnRestore,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int xorg,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int yorg,
45e9809aff7304721fddb95654901b32195c9c7avboxsync WindowPtr pWin
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncRegionPtr
45e9809aff7304721fddb95654901b32195c9c7avboxsynccfb8_32CopyArea(
45e9809aff7304721fddb95654901b32195c9c7avboxsync DrawablePtr pSrcDraw,
45e9809aff7304721fddb95654901b32195c9c7avboxsync DrawablePtr pDstDraw,
45e9809aff7304721fddb95654901b32195c9c7avboxsync GC *pGC,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int srcx, int srcy,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int width, int height,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int dstx, int dsty
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncvoid
45e9809aff7304721fddb95654901b32195c9c7avboxsynccfbDoBitblt8To32(
45e9809aff7304721fddb95654901b32195c9c7avboxsync DrawablePtr pSrc,
45e9809aff7304721fddb95654901b32195c9c7avboxsync DrawablePtr pDst,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int rop,
45e9809aff7304721fddb95654901b32195c9c7avboxsync RegionPtr prgnDst,
45e9809aff7304721fddb95654901b32195c9c7avboxsync DDXPointPtr pptSrc,
45e9809aff7304721fddb95654901b32195c9c7avboxsync unsigned long planemask
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncvoid
45e9809aff7304721fddb95654901b32195c9c7avboxsynccfbDoBitblt32To8(
45e9809aff7304721fddb95654901b32195c9c7avboxsync DrawablePtr pSrc,
45e9809aff7304721fddb95654901b32195c9c7avboxsync DrawablePtr pDst,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int rop,
45e9809aff7304721fddb95654901b32195c9c7avboxsync RegionPtr prgnDst,
45e9809aff7304721fddb95654901b32195c9c7avboxsync DDXPointPtr pptSrc,
45e9809aff7304721fddb95654901b32195c9c7avboxsync unsigned long planemask
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncvoid
45e9809aff7304721fddb95654901b32195c9c7avboxsynccfb8_32ValidateGC8(
45e9809aff7304721fddb95654901b32195c9c7avboxsync GCPtr pGC,
45e9809aff7304721fddb95654901b32195c9c7avboxsync unsigned long changes,
45e9809aff7304721fddb95654901b32195c9c7avboxsync DrawablePtr pDrawable
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncvoid
45e9809aff7304721fddb95654901b32195c9c7avboxsynccfb8_32ValidateGC32(
45e9809aff7304721fddb95654901b32195c9c7avboxsync GCPtr pGC,
45e9809aff7304721fddb95654901b32195c9c7avboxsync unsigned long changes,
45e9809aff7304721fddb95654901b32195c9c7avboxsync DrawablePtr pDrawable
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncvoid
45e9809aff7304721fddb95654901b32195c9c7avboxsynccfb32ValidateGC_Underlay(
45e9809aff7304721fddb95654901b32195c9c7avboxsync GCPtr pGC,
45e9809aff7304721fddb95654901b32195c9c7avboxsync unsigned long changes,
45e9809aff7304721fddb95654901b32195c9c7avboxsync DrawablePtr pDrawable
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncBool cfb8_32CreateGC(GCPtr pGC);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncvoid
45e9809aff7304721fddb95654901b32195c9c7avboxsynccfb8_32GetSpans(
45e9809aff7304721fddb95654901b32195c9c7avboxsync DrawablePtr pDraw,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int wMax,
45e9809aff7304721fddb95654901b32195c9c7avboxsync DDXPointPtr ppt,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int *pwidth,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int nspans,
45e9809aff7304721fddb95654901b32195c9c7avboxsync char *pchardstStart
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncvoid
45e9809aff7304721fddb95654901b32195c9c7avboxsynccfb8_32PutImage (
45e9809aff7304721fddb95654901b32195c9c7avboxsync DrawablePtr pDraw,
45e9809aff7304721fddb95654901b32195c9c7avboxsync GCPtr pGC,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int depth,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int x, int y, int w, int h,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int leftPad,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int format,
45e9809aff7304721fddb95654901b32195c9c7avboxsync char *pImage
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncvoid
45e9809aff7304721fddb95654901b32195c9c7avboxsynccfb8_32GetImage (
45e9809aff7304721fddb95654901b32195c9c7avboxsync DrawablePtr pDraw,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int sx, int sy, int w, int h,
45e9809aff7304721fddb95654901b32195c9c7avboxsync unsigned int format,
45e9809aff7304721fddb95654901b32195c9c7avboxsync unsigned long planeMask,
45e9809aff7304721fddb95654901b32195c9c7avboxsync char *pdstLine
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncvoid
45e9809aff7304721fddb95654901b32195c9c7avboxsynccfb8_32PaintWindow (
45e9809aff7304721fddb95654901b32195c9c7avboxsync WindowPtr pWin,
45e9809aff7304721fddb95654901b32195c9c7avboxsync RegionPtr pRegion,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int what
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncBool
45e9809aff7304721fddb95654901b32195c9c7avboxsynccfb8_32ScreenInit (
45e9809aff7304721fddb95654901b32195c9c7avboxsync ScreenPtr pScreen,
45e9809aff7304721fddb95654901b32195c9c7avboxsync pointer pbits,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int xsize, int ysize,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int dpix, int dpiy,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int width
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncvoid
45e9809aff7304721fddb95654901b32195c9c7avboxsynccfb8_32FillBoxSolid8 (
45e9809aff7304721fddb95654901b32195c9c7avboxsync DrawablePtr pDraw,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int nbox,
45e9809aff7304721fddb95654901b32195c9c7avboxsync BoxPtr pBox,
45e9809aff7304721fddb95654901b32195c9c7avboxsync unsigned long color
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncvoid
45e9809aff7304721fddb95654901b32195c9c7avboxsynccfb8_32FillBoxSolid32 (
45e9809aff7304721fddb95654901b32195c9c7avboxsync DrawablePtr pDraw,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int nbox,
45e9809aff7304721fddb95654901b32195c9c7avboxsync BoxPtr pBox,
45e9809aff7304721fddb95654901b32195c9c7avboxsync unsigned long color
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncRegionPtr
45e9809aff7304721fddb95654901b32195c9c7avboxsynccfb8_32CopyPlane(
45e9809aff7304721fddb95654901b32195c9c7avboxsync DrawablePtr pSrc,
45e9809aff7304721fddb95654901b32195c9c7avboxsync DrawablePtr pDst,
45e9809aff7304721fddb95654901b32195c9c7avboxsync GCPtr pGC,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int srcx, int srcy,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int width, int height,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int dstx, int dsty,
45e9809aff7304721fddb95654901b32195c9c7avboxsync unsigned long bitPlane
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncvoid
45e9809aff7304721fddb95654901b32195c9c7avboxsynccfbDoBitblt8To8GXcopy(
45e9809aff7304721fddb95654901b32195c9c7avboxsync DrawablePtr pSrc,
45e9809aff7304721fddb95654901b32195c9c7avboxsync DrawablePtr pDst,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int rop,
45e9809aff7304721fddb95654901b32195c9c7avboxsync RegionPtr prgnDst,
45e9809aff7304721fddb95654901b32195c9c7avboxsync DDXPointPtr pptSrc,
45e9809aff7304721fddb95654901b32195c9c7avboxsync unsigned long pm
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncvoid
45e9809aff7304721fddb95654901b32195c9c7avboxsynccfbDoBitblt24To24GXcopy(
45e9809aff7304721fddb95654901b32195c9c7avboxsync DrawablePtr pSrc,
45e9809aff7304721fddb95654901b32195c9c7avboxsync DrawablePtr pDst,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int rop,
45e9809aff7304721fddb95654901b32195c9c7avboxsync RegionPtr prgnDst,
45e9809aff7304721fddb95654901b32195c9c7avboxsync DDXPointPtr pptSrc,
45e9809aff7304721fddb95654901b32195c9c7avboxsync unsigned long pm
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncBool cfb8_32CreateWindow(WindowPtr pWin);
45e9809aff7304721fddb95654901b32195c9c7avboxsyncBool cfb8_32DestroyWindow(WindowPtr pWin);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncBool
45e9809aff7304721fddb95654901b32195c9c7avboxsynccfb8_32PositionWindow(
45e9809aff7304721fddb95654901b32195c9c7avboxsync WindowPtr pWin,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int x, int y
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncvoid
45e9809aff7304721fddb95654901b32195c9c7avboxsynccfb8_32CopyWindow(
45e9809aff7304721fddb95654901b32195c9c7avboxsync WindowPtr pWin,
45e9809aff7304721fddb95654901b32195c9c7avboxsync DDXPointRec ptOldOrg,
45e9809aff7304721fddb95654901b32195c9c7avboxsync RegionPtr prgnSrc
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncBool
45e9809aff7304721fddb95654901b32195c9c7avboxsynccfb8_32ChangeWindowAttributes(
45e9809aff7304721fddb95654901b32195c9c7avboxsync WindowPtr pWin,
45e9809aff7304721fddb95654901b32195c9c7avboxsync unsigned long mask
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync#define CFB8_32_GET_GC_PRIVATE(pGC)\
45e9809aff7304721fddb95654901b32195c9c7avboxsync (cfb8_32GCPtr)((pGC)->devPrivates[cfb8_32GetGCPrivateIndex()].ptr)
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync#define CFB8_32_GET_SCREEN_PRIVATE(pScreen)\
45e9809aff7304721fddb95654901b32195c9c7avboxsync (cfb8_32ScreenPtr)((pScreen)->devPrivates[cfb8_32GetScreenPrivateIndex()].ptr)
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncBool xf86Overlay8Plus32Init (ScreenPtr pScreen);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync#endif /* _CFB8_32_H */