1 | /* $XFree86: xc/programs/Xserver/hw/xfree86/xf4bpp/ppcGCstr.h,v 1.3 2003/02/18 21:29:59 tsi Exp $ */
|
---|
2 | /*
|
---|
3 | * Copyright IBM Corporation 1987,1988,1989
|
---|
4 | *
|
---|
5 | * All Rights Reserved
|
---|
6 | *
|
---|
7 | * Permission to use, copy, modify, and distribute this software and its
|
---|
8 | * documentation for any purpose and without fee is hereby granted,
|
---|
9 | * provided that the above copyright notice appear in all copies and that
|
---|
10 | * both that copyright notice and this permission notice appear in
|
---|
11 | * supporting documentation, and that the name of IBM not be
|
---|
12 | * used in advertising or publicity pertaining to distribution of the
|
---|
13 | * software without specific, written prior permission.
|
---|
14 | *
|
---|
15 | * IBM DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
|
---|
16 | * ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
|
---|
17 | * IBM BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
|
---|
18 | * ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
|
---|
19 | * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
|
---|
20 | * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
|
---|
21 | * SOFTWARE.
|
---|
22 | *
|
---|
23 | */
|
---|
24 | /***********************************************************
|
---|
25 | Copyright IBM Corporation 1988
|
---|
26 |
|
---|
27 | All Rights Reserved
|
---|
28 |
|
---|
29 | Permission to use, copy, modify, and distribute this software and its
|
---|
30 | documentation for any purpose and without fee is hereby granted,
|
---|
31 | provided that the above copyright notice appear in all copies and that
|
---|
32 | both that copyright notice and this permission notice appear in
|
---|
33 | supporting documentation, and that the name of IBM not be
|
---|
34 | used in advertising or publicity pertaining to distribution of the
|
---|
35 | software without specific, written prior permission.
|
---|
36 |
|
---|
37 | IBM DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
|
---|
38 | ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
|
---|
39 | IBM BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
|
---|
40 | ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
|
---|
41 | WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
|
---|
42 | ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
|
---|
43 | SOFTWARE.
|
---|
44 |
|
---|
45 | ******************************************************************/
|
---|
46 | /* $XConsortium: ppcGCstr.h /main/3 1996/02/21 17:57:42 kaleb $ */
|
---|
47 |
|
---|
48 | #ifdef HAVE_XORG_CONFIG_H
|
---|
49 | #include <xorg-config.h>
|
---|
50 | #endif
|
---|
51 |
|
---|
52 | #include "gc.h"
|
---|
53 | #include "mfb.h"
|
---|
54 |
|
---|
55 | typedef struct {
|
---|
56 | unsigned long planemask ;
|
---|
57 | unsigned long fgPixel ;
|
---|
58 | unsigned long bgPixel ;
|
---|
59 | int alu ;
|
---|
60 | int fillStyle ;
|
---|
61 | } ppcReducedRrop ;
|
---|
62 |
|
---|
63 | /* ************************************************************************ */
|
---|
64 |
|
---|
65 | /* private field of GC */
|
---|
66 | typedef struct {
|
---|
67 | /* The next five (5) fields MUST CORRESPOND to
|
---|
68 | * the fields of a "mfbPrivGC" struct
|
---|
69 | * ----- BEGINNING OF "DO-NOT-CHANGE" REGION -----
|
---|
70 | */
|
---|
71 | unsigned char rop ; /* reduction of rasterop to 1 of 3 */
|
---|
72 | unsigned char ropOpStip ; /* rop for opaque stipple */
|
---|
73 | unsigned char ropFillArea ; /* == alu, rop, or ropOpStip */
|
---|
74 | unsigned char unused[sizeof(long) - 3];
|
---|
75 | mfbFillAreaProcPtr FillArea; /* fills regions; look at the code */
|
---|
76 | /* ----- END OF "DO-NOT-CHANGE" REGION ----- */
|
---|
77 | ppcReducedRrop colorRrop ;
|
---|
78 | short lastDrawableType ; /* was last drawable a window or a pixmap? */
|
---|
79 | short lastDrawableDepth ; /* was last drawable 1 or 8 planes? */
|
---|
80 | pointer devPriv ; /* Private area for device specific stuff */
|
---|
81 | } ppcPrivGC ;
|
---|
82 | typedef ppcPrivGC *ppcPrivGCPtr ;
|
---|
83 |
|
---|
84 | /* ppcCReduce.c */
|
---|
85 | void xf4bppGetReducedColorRrop(
|
---|
86 | GCPtr,
|
---|
87 | int,
|
---|
88 | ppcReducedRrop *
|
---|
89 | );
|
---|
90 |
|
---|
91 | /* vgaGC.c */
|
---|
92 | void xf4bppChangeGCtype(
|
---|
93 | GCPtr,
|
---|
94 | ppcPrivGCPtr
|
---|
95 | );
|
---|