]> git.sesse.net Git - rdpsrv/blob - Xserver/include/extensions/xf86vmstr.h
Import X server from vnc-3.3.7.
[rdpsrv] / Xserver / include / extensions / xf86vmstr.h
1 /* $XFree86: xc/include/extensions/xf86vmstr.h,v 3.18.2.1 1997/05/25 14:13:37 dawes Exp $ */
2 /*
3
4 Copyright (c) 1995  Kaleb S. KEITHLEY
5
6 Permission is hereby granted, free of charge, to any person obtaining
7 a copy of this software and associated documentation files (the
8 "Software"), to deal in the Software without restriction, including
9 without limitation the rights to use, copy, modify, merge, publish,
10 distribute, sublicense, and/or sell copies of the Software, and to
11 permit persons to whom the Software is furnished to do so, subject to
12 the following conditions:
13
14 The above copyright notice and this permission notice shall be
15 included in all copies or substantial portions of the Software.
16
17 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
18 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
19 MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
20 IN NO EVENT SHALL Kaleb S. KEITHLEY BE LIABLE FOR ANY CLAIM, DAMAGES 
21 OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
22 ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
23 OTHER DEALINGS IN THE SOFTWARE.
24
25 Except as contained in this notice, the name of Kaleb S. KEITHLEY 
26 shall not be used in advertising or otherwise to promote the sale, use 
27 or other dealings in this Software without prior written authorization
28 from Kaleb S. KEITHLEY
29
30 */
31 /* $XConsortium: xf86vmstr.h /main/10 1996/10/26 21:38:17 kaleb $ */
32
33 /* THIS IS NOT AN X CONSORTIUM STANDARD */
34
35 #ifndef _XF86VIDMODESTR_H_
36 #define _XF86VIDMODESTR_H_
37
38 #include "xf86vmode.h"
39
40 #define XF86VIDMODENAME "XFree86-VidModeExtension"
41
42 #define XF86VIDMODE_MAJOR_VERSION       0       /* current version numbers */
43 #define XF86VIDMODE_MINOR_VERSION       8
44 /*
45  * major version 0 == uses parameter-to-wire functions in XFree86 libXxf86vm.
46  * major version 1 == uses parameter-to-wire functions hard-coded in xvidtune
47  *                    client.
48  */
49
50 typedef struct _XF86VidModeQueryVersion {
51     CARD8       reqType;                /* always XF86VidModeReqCode */
52     CARD8       xf86vidmodeReqType;     /* always X_XF86VidModeQueryVersion */
53     CARD16      length B16;
54 } xXF86VidModeQueryVersionReq;
55 #define sz_xXF86VidModeQueryVersionReq  4
56
57 typedef struct {
58     BYTE        type;                   /* X_Reply */
59     BOOL        pad1;
60     CARD16      sequenceNumber B16;
61     CARD32      length B32;
62     CARD16      majorVersion B16;       /* major version of XF86VidMode */
63     CARD16      minorVersion B16;       /* minor version of XF86VidMode */
64     CARD32      pad2 B32;
65     CARD32      pad3 B32;
66     CARD32      pad4 B32;
67     CARD32      pad5 B32;
68     CARD32      pad6 B32;
69 } xXF86VidModeQueryVersionReply;
70 #define sz_xXF86VidModeQueryVersionReply        32
71
72 typedef struct _XF86VidModeGetModeLine {
73     CARD8       reqType;                /* always XF86VidModeReqCode */
74     CARD8       xf86vidmodeReqType;
75     CARD16      length B16;
76     CARD16      screen B16;
77     CARD16      pad B16;
78 } xXF86VidModeGetModeLineReq,
79   xXF86VidModeGetAllModeLinesReq,
80   xXF86VidModeGetMonitorReq,
81   xXF86VidModeGetViewPortReq;
82 #define sz_xXF86VidModeGetModeLineReq           8
83 #define sz_xXF86VidModeGetAllModeLinesReq       8
84 #define sz_xXF86VidModeGetMonitorReq            8
85 #define sz_xXF86VidModeGetViewPortReq           8
86
87 typedef struct {
88     BYTE        type;                   /* X_Reply */
89     BOOL        pad1;
90     CARD16      sequenceNumber B16;
91     CARD32      length B32;
92     CARD32      dotclock B32;
93     CARD16      hdisplay B16;
94     CARD16      hsyncstart B16;
95     CARD16      hsyncend B16;
96     CARD16      htotal B16;
97     CARD16      vdisplay B16;
98     CARD16      vsyncstart B16;
99     CARD16      vsyncend B16;
100     CARD16      vtotal B16;
101     CARD32      flags B32;
102     CARD32      privsize B32;
103 } xXF86VidModeGetModeLineReply;
104 #define sz_xXF86VidModeGetModeLineReply 36
105
106 typedef struct {
107     CARD32      dotclock B32;
108     CARD16      hdisplay B16;
109     CARD16      hsyncstart B16;
110     CARD16      hsyncend B16;
111     CARD16      htotal B16;
112     CARD16      vdisplay B16;
113     CARD16      vsyncstart B16;
114     CARD16      vsyncend B16;
115     CARD16      vtotal B16;
116     CARD32      flags B32;
117     CARD32      privsize B32;
118 } xXF86VidModeModeInfo;
119
120 typedef struct {
121     BYTE        type;                   /* X_Reply */
122     BOOL        pad1;
123     CARD16      sequenceNumber B16;
124     CARD32      length B32;
125     CARD32      modecount B32;
126     CARD32      pad2 B32;
127     CARD32      pad3 B32;
128     CARD32      pad4 B32;
129     CARD32      pad5 B32;
130     CARD32      pad6 B32;
131 } xXF86VidModeGetAllModeLinesReply;
132 #define sz_xXF86VidModeGetAllModeLinesReply     32
133
134 typedef struct _XF86VidModeAddModeLine {
135     CARD8       reqType;                /* always XF86VidModeReqCode */
136     CARD8       xf86vidmodeReqType;     /* always X_XF86VidModeAddMode */
137     CARD16      length B16;
138     CARD32      screen B32;             /* could be CARD16 but need the pad */
139     CARD32      dotclock B32;
140     CARD16      hdisplay B16;
141     CARD16      hsyncstart B16;
142     CARD16      hsyncend B16;
143     CARD16      htotal B16;
144     CARD16      vdisplay B16;
145     CARD16      vsyncstart B16;
146     CARD16      vsyncend B16;
147     CARD16      vtotal B16;
148     CARD32      flags B32;
149     CARD32      privsize B32;
150     CARD32      after_dotclock B32;
151     CARD16      after_hdisplay B16;
152     CARD16      after_hsyncstart B16;
153     CARD16      after_hsyncend B16;
154     CARD16      after_htotal B16;
155     CARD16      after_vdisplay B16;
156     CARD16      after_vsyncstart B16;
157     CARD16      after_vsyncend B16;
158     CARD16      after_vtotal B16;
159     CARD32      after_flags B32;
160 } xXF86VidModeAddModeLineReq;
161 #define sz_xXF86VidModeAddModeLineReq   60
162
163 typedef struct _XF86VidModeModModeLine {
164     CARD8       reqType;                /* always XF86VidModeReqCode */
165     CARD8       xf86vidmodeReqType;     /* always X_XF86VidModeModModeLine */
166     CARD16      length B16;
167     CARD32      screen B32;             /* could be CARD16 but need the pad */
168     CARD16      hdisplay B16;
169     CARD16      hsyncstart B16;
170     CARD16      hsyncend B16;
171     CARD16      htotal B16;
172     CARD16      vdisplay B16;
173     CARD16      vsyncstart B16;
174     CARD16      vsyncend B16;
175     CARD16      vtotal B16;
176     CARD32      flags B32;
177     CARD32      privsize B32;
178 } xXF86VidModeModModeLineReq;
179 #define sz_xXF86VidModeModModeLineReq   32
180
181 typedef struct _XF86VidModeValidateModeLine {
182     CARD8       reqType;                /* always XF86VidModeReqCode */
183     CARD8       xf86vidmodeReqType;
184     CARD16      length B16;
185     CARD32      screen B32;             /* could be CARD16 but need the pad */
186     CARD32      dotclock B32;
187     CARD16      hdisplay B16;
188     CARD16      hsyncstart B16;
189     CARD16      hsyncend B16;
190     CARD16      htotal B16;
191     CARD16      vdisplay B16;
192     CARD16      vsyncstart B16;
193     CARD16      vsyncend B16;
194     CARD16      vtotal B16;
195     CARD32      flags B32;
196     CARD32      privsize B32;
197 } xXF86VidModeDeleteModeLineReq,
198   xXF86VidModeValidateModeLineReq,
199   xXF86VidModeSwitchToModeReq;
200 #define sz_xXF86VidModeDeleteModeLineReq        36
201 #define sz_xXF86VidModeValidateModeLineReq      36
202 #define sz_xXF86VidModeSwitchToModeReq          36
203
204 typedef struct _XF86VidModeSwitchMode {
205     CARD8       reqType;                /* always XF86VidModeReqCode */
206     CARD8       xf86vidmodeReqType;     /* always X_XF86VidModeSwitchMode */
207     CARD16      length B16;
208     CARD16      screen B16;
209     CARD16      zoom B16;
210 } xXF86VidModeSwitchModeReq;
211 #define sz_xXF86VidModeSwitchModeReq    8
212
213 typedef struct _XF86VidModeLockModeSwitch {
214     CARD8       reqType;                /* always XF86VidModeReqCode */
215     CARD8       xf86vidmodeReqType;     /* always X_XF86VidModeLockModeSwitch */
216     CARD16      length B16;
217     CARD16      screen B16;
218     CARD16      lock B16;
219 } xXF86VidModeLockModeSwitchReq;
220 #define sz_xXF86VidModeLockModeSwitchReq        8
221
222 typedef struct {
223     BYTE        type;                   /* X_Reply */
224     BOOL        pad1;
225     CARD16      sequenceNumber B16;
226     CARD32      length B32;
227     CARD32      status B32;
228     CARD32      pad2 B32;
229     CARD32      pad3 B32;
230     CARD32      pad4 B32;
231     CARD32      pad5 B32;
232     CARD32      pad6 B32;
233 } xXF86VidModeValidateModeLineReply;
234 #define sz_xXF86VidModeValidateModeLineReply    32
235
236 typedef struct {
237     BYTE        type;                   /* X_Reply */
238     BOOL        pad1;
239     CARD16      sequenceNumber B16;
240     CARD32      length B32;
241     CARD8       vendorLength;
242     CARD8       modelLength;
243     CARD8       nhsync;
244     CARD8       nvsync;
245     CARD32      pad2 B32;
246     CARD32      pad3 B32;
247     CARD32      pad4 B32;
248     CARD32      pad5 B32;
249     CARD32      pad6 B32;
250 } xXF86VidModeGetMonitorReply;
251 #define sz_xXF86VidModeGetMonitorReply  32
252
253 typedef struct {
254     BYTE        type;
255     BOOL        pad1;
256     CARD16      sequenceNumber B16;
257     CARD32      length B32;
258     CARD32      x B32;
259     CARD32      y B32;
260     CARD32      pad2 B32;
261     CARD32      pad3 B32;
262     CARD32      pad4 B32;
263     CARD32      pad5 B32;
264 } xXF86VidModeGetViewPortReply;
265 #define sz_xXF86VidModeGetViewPortReply 32
266
267 typedef struct _XF86VidModeSetViewPort {
268     CARD8       reqType;                /* always VidModeReqCode */
269     CARD8       xf86vidmodeReqType;     /* always X_XF86VidModeSetViewPort */
270     CARD16      length B16;
271     CARD16      screen B16;
272     CARD16      pad B16;
273     CARD32      x B32;
274     CARD32      y B32;
275 } xXF86VidModeSetViewPortReq;
276 #define sz_xXF86VidModeSetViewPortReq   16
277
278 #endif /* _XF86VIDMODESTR_H_ */