summaryrefslogtreecommitdiff
path: root/hw/xfree86/xf8_32bpp/cfbcpyplane.c
blob: 248ca0869c14057bad3b9db24ff15d20e06e8647 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/* $XFree86: xc/programs/Xserver/hw/xfree86/xf8_32bpp/cfbcpyplane.c,v 1.1 1999/01/03 03:58:55 dawes Exp $ */

#include "X.h"
#include "Xmd.h"
#include "Xproto.h"
#include "gcstruct.h"
#include "windowstr.h"
#include "scrnintstr.h"
#include "pixmapstr.h"
#include "regionstr.h"
#define PSZ 8
#include "cfb.h"
#undef PSZ
#include "cfb32.h"
#include "cfb8_32.h"
#include "mi.h"


RegionPtr 
cfb8_32CopyPlane(
    DrawablePtr pSrc,
    DrawablePtr	pDst,
    GCPtr pGC,
    int srcx, int srcy,
    int width, int height,
    int dstx, int dsty,
    unsigned long bitPlane
){
   /* There's actually much more to it than this */

   if((pDst->bitsPerPixel == 8) && (pSrc->bitsPerPixel != 32)){
	return(cfbCopyPlane(pSrc, pDst,
            pGC, srcx, srcy, width, height, dstx, dsty, bitPlane));
   } 


   return(miCopyPlane (pSrc, pDst,
            pGC, srcx, srcy, width, height, dstx, dsty, bitPlane));
}