1/* $XFree86: xc/include/extensions/xf86dga1str.h,v 1.2 1999/05/03 12:15:37 dawes Exp $ */
2/*
3
4Copyright (c) 1995  Jon Tombs
5Copyright (c) 1995  XFree86 Inc.
6
7*/
8
9#ifndef _XF86DGASTR1_H_
10#define _XF86DGASTR1_H_
11
12typedef struct _XF86DGAQueryVersion {
13    CARD8	reqType;		/* always DGAReqCode */
14    CARD8	dgaReqType;		/* always X_DGAQueryVersion */
15    CARD16	length B16;
16} xXF86DGAQueryVersionReq;
17#define sz_xXF86DGAQueryVersionReq	4
18
19typedef struct {
20    BYTE	type;			/* X_Reply */
21    BOOL	pad1;
22    CARD16	sequenceNumber B16;
23    CARD32	length B32;
24    CARD16	majorVersion B16;	/* major version of DGA protocol */
25    CARD16	minorVersion B16;	/* minor version of DGA protocol */
26    CARD32	pad2 B32;
27    CARD32	pad3 B32;
28    CARD32	pad4 B32;
29    CARD32	pad5 B32;
30    CARD32	pad6 B32;
31} xXF86DGAQueryVersionReply;
32#define sz_xXF86DGAQueryVersionReply	32
33
34typedef struct _XF86DGAGetVideoLL {
35    CARD8	reqType;		/* always DGAReqCode */
36    CARD8	dgaReqType;		/* always X_XF86DGAGetVideoLL */
37    CARD16	length B16;
38    CARD16	screen B16;
39    CARD16      pad B16;
40} xXF86DGAGetVideoLLReq;
41#define sz_xXF86DGAGetVideoLLReq	8
42
43typedef struct _XF86DGAInstallColormap{
44    CARD8	reqType;
45    CARD8	dgaReqType;
46    CARD16	length B16;
47    CARD16	screen B16;
48    CARD16	pad2;
49    CARD32	id B32;  /* colormap. */
50} xXF86DGAInstallColormapReq;
51#define sz_xXF86DGAInstallColormapReq        12
52
53
54typedef struct {
55    BYTE	type;
56    BOOL	pad1;
57    CARD16	sequenceNumber B16;
58    CARD32	length B32;
59    CARD32	offset B32;
60    CARD32	width B32;
61    CARD32	bank_size B32;
62    CARD32	ram_size B32;
63    CARD32	pad4 B32;
64    CARD32	pad5 B32;
65} xXF86DGAGetVideoLLReply;
66#define sz_xXF86DGAGetVideoLLReply	32
67
68typedef struct _XF86DGADirectVideo {
69    CARD8	reqType;		/* always DGAReqCode */
70    CARD8	dgaReqType;		/* always X_XF86DGADirectVideo */
71    CARD16	length B16;
72    CARD16	screen B16;
73    CARD16	enable B16;
74} xXF86DGADirectVideoReq;
75#define sz_xXF86DGADirectVideoReq	8
76
77
78typedef struct _XF86DGAGetViewPortSize {
79    CARD8	reqType;		/* always DGAReqCode */
80    CARD8	dgaReqType;		/* always X_XF86DGAGetViewPort */
81    CARD16	length B16;
82    CARD16	screen B16;
83    CARD16      pad B16;
84} xXF86DGAGetViewPortSizeReq;
85#define sz_xXF86DGAGetViewPortSizeReq	8
86
87typedef struct {
88    BYTE	type;
89    BOOL	pad1;
90    CARD16	sequenceNumber B16;
91    CARD32	length B32;
92    CARD32	width B32;
93    CARD32	height B32;
94    CARD32	pad2 B32;
95    CARD32	pad3 B32;
96    CARD32	pad4 B32;
97    CARD32	pad5 B32;
98} xXF86DGAGetViewPortSizeReply;
99#define sz_xXF86DGAGetViewPortSizeReply	32
100
101typedef struct _XF86DGASetViewPort {
102    CARD8	reqType;		/* always DGAReqCode */
103    CARD8	dgaReqType;		/* always X_XF86DGASetViewPort */
104    CARD16	length B16;
105    CARD16	screen B16;
106    CARD16	pad B16;
107    CARD32      x B32;
108    CARD32	y B32;
109} xXF86DGASetViewPortReq;
110#define sz_xXF86DGASetViewPortReq	16
111
112typedef struct _XF86DGAGetVidPage {
113    CARD8	reqType;		/* always DGAReqCode */
114    CARD8	dgaReqType;		/* always X_XF86DGAGetVidPage */
115    CARD16	length B16;
116    CARD16	screen B16;
117    CARD16      pad B16;
118} xXF86DGAGetVidPageReq;
119#define sz_xXF86DGAGetVidPageReq	8
120
121typedef struct {
122    BYTE	type;
123    BOOL	pad1;
124    CARD16	sequenceNumber B16;
125    CARD32	length B32;
126    CARD32	vpage B32;
127    CARD32	pad B32;
128    CARD32	pad2 B32;
129    CARD32	pad3 B32;
130    CARD32	pad4 B32;
131    CARD32	pad5 B32;
132} xXF86DGAGetVidPageReply;
133#define sz_xXF86DGAGetVidPageReply	32
134
135
136typedef struct _XF86DGASetVidPage {
137    CARD8	reqType;		/* always DGAReqCode */
138    CARD8	dgaReqType;		/* always X_XF86DGASetVidPage */
139    CARD16	length B16;
140    CARD16	screen B16;
141    CARD16      vpage B16;
142} xXF86DGASetVidPageReq;
143#define sz_xXF86DGASetVidPageReq	8
144
145
146typedef struct _XF86DGAQueryDirectVideo {
147    CARD8	reqType;		/* always DGAReqCode */
148    CARD8	dgaReqType;		/* always X_DGAQueryVersion */
149    CARD16	length B16;
150    CARD16	screen B16;
151    CARD16      pad B16;
152} xXF86DGAQueryDirectVideoReq;
153#define sz_xXF86DGAQueryDirectVideoReq	8
154
155typedef struct {
156    BYTE	type;
157    BOOL	pad1;
158    CARD16	sequenceNumber B16;
159    CARD32	length B32;
160    CARD32	flags B32;
161    CARD32	pad B32;
162    CARD32	pad2 B32;
163    CARD32	pad3 B32;
164    CARD32	pad4 B32;
165    CARD32	pad5 B32;
166} xXF86DGAQueryDirectVideoReply;
167#define sz_xXF86DGAQueryDirectVideoReply 32
168
169
170typedef struct _XF86DGAViewPortChanged {
171    CARD8	reqType;		/* always DGAReqCode */
172    CARD8	dgaReqType;		/* always X_DGAQueryVersion */
173    CARD16	length B16;
174    CARD16	screen B16;
175    CARD16      n B16;
176} xXF86DGAViewPortChangedReq;
177#define sz_xXF86DGAViewPortChangedReq	8
178
179typedef struct {
180    BYTE	type;
181    BOOL	pad1;
182    CARD16	sequenceNumber B16;
183    CARD32	length B32;
184    CARD32	result B32;
185    CARD32	pad B32;
186    CARD32	pad2 B32;
187    CARD32	pad3 B32;
188    CARD32	pad4 B32;
189    CARD32	pad5 B32;
190} xXF86DGAViewPortChangedReply;
191#define sz_xXF86DGAViewPortChangedReply 32
192
193#endif /* _XF86DGASTR1_H_ */
194
195