1d4401354Smrg<?xml version="1.0" encoding="utf-8"?>
2d4401354Smrg<!--
3d4401354SmrgCopyright (C) 2005 Jeremy Kolb.
4d4401354SmrgAll Rights Reserved.
5d4401354Smrg
6d4401354SmrgPermission is hereby granted, free of charge, to any person ob/Sintaining a copy
7d4401354Smrgof this software and associated documentation files (the "Software"), to deal
8d4401354Smrgin the Software without restriction, including without limitation the rights
9d4401354Smrgto use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10d4401354Smrgcopies of the Software, and to permit persons to whom the Software is
11d4401354Smrgfurnished to do so, subject to the following conditions:
12d4401354Smrg
13d4401354SmrgThe above copyright notice and this permission notice shall be included in all
14d4401354Smrgcopies or substantial portions of the Software.
15d4401354Smrg
16d4401354SmrgTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17d4401354SmrgIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18d4401354SmrgFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19d4401354SmrgAUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
20d4401354SmrgACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
21d4401354SmrgWITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22d4401354Smrg
23d4401354SmrgExcept as contained in this notice, the names of the authors or their
24d4401354Smrginstitutions shall not be used in advertising or otherwise to promote the
25d4401354Smrgsale, use or other dealings in this Software without prior written
26d4401354Smrgauthorization from the authors.
27d4401354Smrg-->
28d4401354Smrg
29d4401354Smrg<!--
30d4401354SmrgNote that on X.org servers before 6.9 (and probably others as well) the length
31d4401354Smrgfield in the reply is computed incorrectly for GetFBConfigs and
32d4401354SmrgVendorPrivateWithReply vendor_code 0x10004 (GetFBConfigsSGIX). For these
33d4401354Smrgrequests the reply structure begins:
34d4401354Smrg	<pad bytes="1" />
35d4401354Smrg	<field type="CARD32" name="numVisuals" />
36d4401354Smrg	<field type="CARD32" name="numProps" />
37d4401354SmrgThe correct value for the length field is
38d4401354Smrg	numVisuals * numProps * 2
39d4401354Smrgbut on broken servers the "* 2" was missing. A workaround that is correct for
40d4401354Smrgall implementations is to rewrite the length field on receipt on the client
41d4401354Smrgside, using the expression above.
42d4401354Smrg
43d4401354SmrgThe patch that fixed this server bug in X.org CVS is here:
44d4401354Smrg	http://cvs.freedesktop.org/xorg/xserver/xorg/GL/glx/glxcmds.c?r1=1.6&r2=1.7
45d4401354Smrg-->
46d4401354Smrg
47d4401354Smrg<xcb header="glx" extension-xname="GLX" extension-name="Glx"
48f591e195Smrg    major-version="1" minor-version="4">
49d4401354Smrg
50d4401354Smrg	<import>xproto</import>
51d4401354Smrg
52d4401354Smrg	<xidtype name="PIXMAP" />
53d4401354Smrg	<xidtype name="CONTEXT" />
54d4401354Smrg	<xidtype name="PBUFFER" />
55d4401354Smrg	<xidtype name="WINDOW" />
56d4401354Smrg        <xidtype name="FBCONFIG" />
57d4401354Smrg
58d4401354Smrg        <xidunion name="DRAWABLE">
59d4401354Smrg            <type>xproto:WINDOW</type>
60d4401354Smrg            <type>PBUFFER</type>
61d4401354Smrg            <type>glx:PIXMAP</type>
62d4401354Smrg            <type>glx:WINDOW</type>
63d4401354Smrg        </xidunion>
64d4401354Smrg
65d4401354Smrg	<typedef oldname="float" newname="FLOAT32" />
66d4401354Smrg	<typedef oldname="double" newname="FLOAT64" />
67d4401354Smrg        <typedef oldname="CARD32" newname="BOOL32" />
68d4401354Smrg        <typedef oldname="CARD32" newname="CONTEXT_TAG" />
69d4401354Smrg	    
70d4401354Smrg	<!-- Errors -->
71d4401354Smrg	<error name="Generic" number="-1"> <!-- FIXME: fake number -->
72d4401354Smrg		<field type="CARD32" name="bad_value" />
73d4401354Smrg		<field type="CARD16" name="minor_opcode" />
74d4401354Smrg		<field type="CARD8" name="major_opcode" />
75d4401354Smrg		<pad bytes="21" />
76d4401354Smrg	</error>
77d4401354Smrg
78d4401354Smrg	<errorcopy name="BadContext" number="0" ref="Generic" />
79d4401354Smrg	<errorcopy name="BadContextState" number="1" ref="Generic" />
80d4401354Smrg	<errorcopy name="BadDrawable" number="2" ref="Generic" />
81d4401354Smrg	<errorcopy name="BadPixmap" number="3" ref="Generic" />
82d4401354Smrg	<errorcopy name="BadContextTag" number="4" ref="Generic" />
83d4401354Smrg	<errorcopy name="BadCurrentWindow" number="5" ref="Generic" />
84d4401354Smrg	<errorcopy name="BadRenderRequest" number="6" ref="Generic" />
85d4401354Smrg	<errorcopy name="BadLargeRequest" number="7" ref="Generic" />
86d4401354Smrg	<errorcopy name="UnsupportedPrivateRequest" number="8" ref="Generic" />
87d4401354Smrg	<errorcopy name="BadFBConfig" number="9" ref="Generic" />
88d4401354Smrg	<errorcopy name="BadPbuffer" number="10" ref="Generic" />
89d4401354Smrg	<errorcopy name="BadCurrentDrawable" number="11" ref="Generic" />
90d4401354Smrg	<errorcopy name="BadWindow" number="12" ref="Generic" />
91986c8b3dSmrg	<errorcopy name="GLXBadProfileARB" number="13" ref="Generic" />
92d4401354Smrg
93d4401354Smrg	<!-- Events -->
94d4401354Smrg	<event name="PbufferClobber" number="0">
95d4401354Smrg		<pad bytes="1" />
96d4401354Smrg		<field type="CARD16" name="event_type" />
97d4401354Smrg		<field type="CARD16" name="draw_type" />
98d4401354Smrg		<field type="glx:DRAWABLE" name="drawable" />
99d4401354Smrg		<field type="CARD32" name="b_mask" />
100d4401354Smrg		<field type="CARD16" name="aux_buffer" />
101d4401354Smrg		<field type="CARD16" name="x" />
102d4401354Smrg		<field type="CARD16" name="y" />
103d4401354Smrg		<field type="CARD16" name="width" />
104d4401354Smrg		<field type="CARD16" name="height" />
105d4401354Smrg		<field type="CARD16" name="count" />
106d4401354Smrg		<pad bytes="4" />
107d4401354Smrg	</event>
108d4401354Smrg
109f591e195Smrg	<event name="BufferSwapComplete" number="1">
110f591e195Smrg		<pad bytes="1" />
111f591e195Smrg		<field type="CARD16" name="event_type" />
112f591e195Smrg		<pad bytes="2" />
113f591e195Smrg		<field type="glx:DRAWABLE" name="drawable" />
114f591e195Smrg		<field type="CARD32" name="ust_hi" />
115f591e195Smrg		<field type="CARD32" name="ust_lo" />
116f591e195Smrg		<field type="CARD32" name="msc_hi" />
117f591e195Smrg		<field type="CARD32" name="msc_lo" />
118f591e195Smrg		<field type="CARD32" name="sbc" />
119f591e195Smrg	</event>
120f591e195Smrg
121d4401354Smrg	<!-- enums for PbufferClobber event/draw type -->
122d4401354Smrg	<enum name="PBCET">
123d4401354Smrg		<item name="Damaged">
124d4401354Smrg			<value>32791</value>
125d4401354Smrg		</item>
126d4401354Smrg		<item name="Saved">
127d4401354Smrg			<value>32792</value>
128d4401354Smrg		</item>
129d4401354Smrg	</enum>
130d4401354Smrg
131d4401354Smrg	<enum name="PBCDT">
132d4401354Smrg		<item name="Window">
133d4401354Smrg			<value>32793</value>
134d4401354Smrg		</item>
135d4401354Smrg		<item name="Pbuffer">
136d4401354Smrg			<value>32794</value>
137d4401354Smrg		</item>
138d4401354Smrg	</enum>
139d4401354Smrg
140d4401354Smrg	<!-- Requests -->
141d4401354Smrg	<request name="Render" opcode="1" combine-adjacent="true">
142d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
143d4401354Smrg		<list type="BYTE" name="data" />
144d4401354Smrg	</request>
145d4401354Smrg
146d4401354Smrg	<request name="RenderLarge" opcode="2">
147d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
148d4401354Smrg		<field type="CARD16" name="request_num" />
149d4401354Smrg		<field type="CARD16" name="request_total" />
150d4401354Smrg		<field type="CARD32" name="data_len" />
151d4401354Smrg		<list type="BYTE" name="data">
152d4401354Smrg		    <fieldref>data_len</fieldref>
153d4401354Smrg		</list>
154d4401354Smrg	</request>
155d4401354Smrg
156d4401354Smrg	<request name="CreateContext" opcode="3">
157d4401354Smrg		<field type="glx:CONTEXT" name="context" />
158d4401354Smrg		<field type="VISUALID" name="visual" />
159d4401354Smrg		<field type="CARD32" name="screen" />
160d4401354Smrg		<field type="glx:CONTEXT" name="share_list" />
161d4401354Smrg		<field type="BOOL" name="is_direct" />
162d4401354Smrg		<pad bytes="3" />
163d4401354Smrg	</request>
164d4401354Smrg
165d4401354Smrg	<request name="DestroyContext" opcode="4">
166d4401354Smrg		<field type="glx:CONTEXT" name="context" />
167d4401354Smrg	</request>
168d4401354Smrg
169d4401354Smrg	<request name="MakeCurrent" opcode="5">
170d4401354Smrg		<field type="glx:DRAWABLE" name="drawable" />
171d4401354Smrg		<field type="glx:CONTEXT" name="context" />
172d4401354Smrg		<field type="CONTEXT_TAG" name="old_context_tag" />
173d4401354Smrg		<reply>
174d4401354Smrg			<pad bytes="1" />
175d4401354Smrg			<field type="CONTEXT_TAG" name="context_tag" />
176d4401354Smrg			<pad bytes="20" />
177d4401354Smrg		</reply>
178d4401354Smrg	</request>
179d4401354Smrg
180d4401354Smrg	<request name="IsDirect" opcode="6">
181d4401354Smrg		<field type="glx:CONTEXT" name="context" />
182d4401354Smrg		<reply>
183d4401354Smrg			<pad bytes="1" />
184d4401354Smrg			<field type="BOOL" name="is_direct" />
185d4401354Smrg			<pad bytes="23" />
186d4401354Smrg		</reply>
187d4401354Smrg	</request>
188d4401354Smrg
189d4401354Smrg	<request name="QueryVersion" opcode="7">
190d4401354Smrg		<field type="CARD32" name="major_version" />
191d4401354Smrg		<field type="CARD32" name="minor_version" />
192d4401354Smrg		<reply>
193d4401354Smrg			<pad bytes="1" />
194d4401354Smrg			<field type="CARD32" name="major_version" />
195d4401354Smrg			<field type="CARD32" name="minor_version" />
196d4401354Smrg			<pad bytes="16" />
197d4401354Smrg		</reply>
198d4401354Smrg	</request>
199d4401354Smrg
200d4401354Smrg	<request name="WaitGL" opcode="8">
201d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
202d4401354Smrg	</request>
203d4401354Smrg
204d4401354Smrg	<request name="WaitX" opcode="9">
205d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
206d4401354Smrg	</request>
207d4401354Smrg
208d4401354Smrg	<request name="CopyContext" opcode="10">
209d4401354Smrg		<field type="glx:CONTEXT" name="src" />
210d4401354Smrg		<field type="glx:CONTEXT" name="dest" />
211d4401354Smrg		<field type="CARD32" name="mask" />
212d4401354Smrg		<field type="CONTEXT_TAG" name="src_context_tag" />
213d4401354Smrg	</request>
214d4401354Smrg
215d4401354Smrg	<!-- Enum for CopyContext: mask -->
216d4401354Smrg	<enum name="GC">
217d4401354Smrg		<item name="GL_CURRENT_BIT"><bit>0</bit></item>
218d4401354Smrg		<item name="GL_POINT_BIT"><bit>1</bit></item>
219d4401354Smrg		<item name="GL_LINE_BIT"><bit>2</bit></item>
220d4401354Smrg		<item name="GL_POLYGON_BIT"><bit>3</bit></item>
221d4401354Smrg		<item name="GL_POLYGON_STIPPLE_BIT"><bit>4</bit></item>
222d4401354Smrg		<item name="GL_PIXEL_MODE_BIT"><bit>5</bit></item>
223d4401354Smrg		<item name="GL_LIGHTING_BIT"><bit>6</bit></item>
224d4401354Smrg		<item name="GL_FOG_BIT"><bit>7</bit></item>
225d4401354Smrg		<item name="GL_DEPTH_BUFFER_BIT"><bit>8</bit></item>
226d4401354Smrg		<item name="GL_ACCUM_BUFFER_BIT"><bit>9</bit></item>
227d4401354Smrg		<item name="GL_STENCIL_BUFFER_BIT"><bit>10</bit></item>
228d4401354Smrg		<item name="GL_VIEWPORT_BIT"><bit>11</bit></item>
229d4401354Smrg		<item name="GL_TRANSFORM_BIT"><bit>12</bit></item>
230d4401354Smrg		<item name="GL_ENABLE_BIT"><bit>13</bit></item>
231d4401354Smrg		<item name="GL_COLOR_BUFFER_BIT"><bit>14</bit></item>
232d4401354Smrg		<item name="GL_HINT_BIT"><bit>15</bit></item>
233d4401354Smrg		<item name="GL_EVAL_BIT"><bit>16</bit></item>
234d4401354Smrg		<item name="GL_LIST_BIT"><bit>17</bit></item>
235d4401354Smrg		<item name="GL_TEXTURE_BIT"><bit>18</bit></item>
236d4401354Smrg		<item name="GL_SCISSOR_BIT"><bit>19</bit></item>
237d4401354Smrg		<item name="GL_ALL_ATTRIB_BITS"><value>16777215<!--0x000ffffff--></value></item>
238d4401354Smrg	</enum>
239d4401354Smrg
240d4401354Smrg	<request name="SwapBuffers" opcode="11">
241d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
242d4401354Smrg		<field type="glx:DRAWABLE" name="drawable" />
243d4401354Smrg	</request>
244d4401354Smrg
245d4401354Smrg	<request name="UseXFont" opcode="12">
246d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
247d4401354Smrg		<field type="FONT" name="font" />
248d4401354Smrg		<field type="CARD32" name="first" />
249d4401354Smrg		<field type="CARD32" name="count" />
250d4401354Smrg		<field type="CARD32" name="list_base" />
251d4401354Smrg	</request>
252d4401354Smrg
253d4401354Smrg	<request name="CreateGLXPixmap" opcode="13">
254d4401354Smrg		<field type="CARD32" name="screen" />
255d4401354Smrg		<field type="VISUALID" name="visual" />
256d4401354Smrg		<field type="xproto:PIXMAP" name="pixmap" />
257d4401354Smrg		<field type="glx:PIXMAP" name="glx_pixmap" />
258d4401354Smrg	</request>
259d4401354Smrg
260d4401354Smrg        
261d4401354Smrg	<request name="GetVisualConfigs" opcode="14">
262d4401354Smrg		<field type="CARD32" name="screen" />
263d4401354Smrg		<reply>
264d4401354Smrg			<pad bytes="1" />
265d4401354Smrg			<field type="CARD32" name="num_visuals" />
266d4401354Smrg			<field type="CARD32" name="num_properties" />
267d4401354Smrg                        <pad bytes="16" />
268d4401354Smrg			<list type="CARD32" name="property_list">
269d4401354Smrg				<fieldref>length</fieldref>
270d4401354Smrg			</list>
271d4401354Smrg		</reply>
272d4401354Smrg	</request>
273d4401354Smrg
274d4401354Smrg	<request name="DestroyGLXPixmap" opcode="15">
275d4401354Smrg		<field type="glx:PIXMAP" name="glx_pixmap" />
276d4401354Smrg	</request>
277d4401354Smrg
278d4401354Smrg	<!--
279d4401354Smrg	Context tag is not in the proto, should be part of the list of bytes
280d4401354Smrg	but every VendorPrivate and VendorPrivateWithReply request uses them
281d4401354Smrg	so it is safe to put them in.  That's how Mesa does it.
282d4401354Smrg	-->
283d4401354Smrg	<request name="VendorPrivate" opcode="16">
284d4401354Smrg		<field type="CARD32" name="vendor_code" />
285d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
286d4401354Smrg		<list type="BYTE" name="data" />
287d4401354Smrg	</request>
288d4401354Smrg
289d4401354Smrg	<request name="VendorPrivateWithReply" opcode="17">
290d4401354Smrg		<field type="CARD32" name="vendor_code" />
291d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
292d4401354Smrg		<list type="BYTE" name="data" />
293d4401354Smrg		<reply>
294d4401354Smrg			<pad bytes="1" />
295d4401354Smrg			<field type="CARD32" name="retval" />
296d4401354Smrg			<list type="BYTE" name="data1">
297d4401354Smrg				<value>24</value>
298d4401354Smrg			</list>
299d4401354Smrg			<list type="BYTE" name="data2">
300d4401354Smrg				<op op="*">
301d4401354Smrg					<fieldref>length</fieldref>
302d4401354Smrg					<value>4</value>
303d4401354Smrg				</op>
304d4401354Smrg			</list>
305d4401354Smrg		</reply>
306d4401354Smrg	</request>
307d4401354Smrg
308d4401354Smrg	<request name="QueryExtensionsString" opcode="18">
309d4401354Smrg		<field type="CARD32" name="screen" />
310d4401354Smrg		<reply>
311d4401354Smrg			<pad bytes="1" />
312d4401354Smrg			<pad bytes="4" />
313d4401354Smrg			<field type="CARD32" name="n" />
314d4401354Smrg			<pad bytes="16" />
315d4401354Smrg		</reply>
316d4401354Smrg	</request>
317d4401354Smrg
318d4401354Smrg	<request name="QueryServerString" opcode="19">
319d4401354Smrg		<field type="CARD32" name="screen" />
320d4401354Smrg		<field type="CARD32" name="name" />
321d4401354Smrg		<reply>
322d4401354Smrg			<pad bytes="1" />
323d4401354Smrg			<pad bytes="4" />
324d4401354Smrg			<field type="CARD32" name="str_len" />
325d4401354Smrg			<pad bytes="16" />
326d4401354Smrg			<list type="char" name="string">
327d4401354Smrg				<fieldref>str_len</fieldref>
328d4401354Smrg			</list>
329d4401354Smrg		</reply>
330d4401354Smrg	</request>
331d4401354Smrg
332d4401354Smrg	<request name="ClientInfo" opcode="20">
333d4401354Smrg		<field type="CARD32" name="major_version" />
334d4401354Smrg		<field type="CARD32" name="minor_version" />
335d4401354Smrg		<field type="CARD32" name="str_len" />
336d4401354Smrg		<list type="char" name="string">
337d4401354Smrg			<fieldref>str_len</fieldref>
338d4401354Smrg		</list>
339d4401354Smrg	</request>
340d4401354Smrg
341d4401354Smrg	<!-- Start of GLX 1.3 Requests -->
342d4401354Smrg
343d4401354Smrg	<request name="GetFBConfigs" opcode="21">
344d4401354Smrg		<field type="CARD32" name="screen" />
345d4401354Smrg		<reply>
346d4401354Smrg			<pad bytes="1" />
347d4401354Smrg			<field type="CARD32" name="num_FB_configs" />
348d4401354Smrg			<field type="CARD32" name="num_properties" />
349d4401354Smrg                        <pad bytes="16" />
350d4401354Smrg                        <!--
351d4401354Smrg			<valueparam value-mask-type="CARD32"
352d4401354Smrg				value-mask-name="value_mask"
353d4401354Smrg                                value-list-name="value_list" />
354d4401354Smrg                            -->
355d4401354Smrg                        <list type="CARD32" name="property_list">
356d4401354Smrg				<fieldref>length</fieldref>
357d4401354Smrg			</list>
358d4401354Smrg		</reply>
359d4401354Smrg	</request>
360d4401354Smrg
361d4401354Smrg	<request name="CreatePixmap" opcode="22">
362d4401354Smrg		<field type="CARD32" name="screen" />
363986c8b3dSmrg		<field type="FBCONFIG" name="fbconfig" />
364d4401354Smrg		<field type="xproto:PIXMAP" name="pixmap" />
365d4401354Smrg		<field type="glx:PIXMAP" name="glx_pixmap" />
366d4401354Smrg		<field type="CARD32" name="num_attribs" />  
367d4401354Smrg		<list type="CARD32" name="attribs">
368d4401354Smrg			<op op="*">
369d4401354Smrg				<fieldref>num_attribs</fieldref>
370d4401354Smrg				<value>2</value>
371d4401354Smrg			</op>
372d4401354Smrg		</list>
373d4401354Smrg	</request>
374d4401354Smrg
375d4401354Smrg	<request name="DestroyPixmap" opcode="23">
376d4401354Smrg		<field type="glx:PIXMAP" name="glx_pixmap" />
377d4401354Smrg	</request>
378d4401354Smrg
379d4401354Smrg	<request name="CreateNewContext" opcode="24">
380d4401354Smrg		<field type="glx:CONTEXT" name="context" />
381986c8b3dSmrg		<field type="FBCONFIG" name="fbconfig" />
382d4401354Smrg		<field type="CARD32" name="screen" />
383d4401354Smrg		<field type="CARD32" name="render_type" />
384986c8b3dSmrg		<field type="glx:CONTEXT" name="share_list" />
385d4401354Smrg		<field type="BOOL" name="is_direct" />
386986c8b3dSmrg		<pad bytes="3" />
387d4401354Smrg	</request>
388d4401354Smrg
389d4401354Smrg	<request name="QueryContext" opcode="25">
390d4401354Smrg		<field type="glx:CONTEXT" name="context" />
391d4401354Smrg		<reply>
392d4401354Smrg			<pad bytes="1" />
393d4401354Smrg			<field type="CARD32" name="num_attribs"/>
394d4401354Smrg			<pad bytes="20" />
395d4401354Smrg			<list type="CARD32" name="attribs">
396d4401354Smrg				<op op="*">
397d4401354Smrg					<fieldref>num_attribs</fieldref>
398d4401354Smrg					<value>2</value>
399d4401354Smrg				</op>
400d4401354Smrg			</list>
401d4401354Smrg		</reply>
402d4401354Smrg	</request>
403d4401354Smrg
404d4401354Smrg	<request name="MakeContextCurrent" opcode="26">
405d4401354Smrg		<field type="CONTEXT_TAG" name="old_context_tag" />
406d4401354Smrg		<field type="glx:DRAWABLE" name="drawable" />
407d4401354Smrg		<field type="glx:DRAWABLE" name="read_drawable" />
408d4401354Smrg		<field type="glx:CONTEXT" name="context" />
409d4401354Smrg		<reply>
410d4401354Smrg			<pad bytes="1" />
411d4401354Smrg			<field type="CONTEXT_TAG" name="context_tag" />
412d4401354Smrg			<pad bytes="20" />
413d4401354Smrg		</reply>
414d4401354Smrg	</request>
415d4401354Smrg
416d4401354Smrg	<request name="CreatePbuffer" opcode="27">
417d4401354Smrg		<field type="CARD32" name="screen" />
418d4401354Smrg		<field type="FBCONFIG" name="fbconfig" />
419d4401354Smrg		<field type="PBUFFER" name="pbuffer" />
420d4401354Smrg		<field type="CARD32" name="num_attribs" />
421d4401354Smrg		<list type="CARD32" name="attribs">
422d4401354Smrg			<op op="*">
423d4401354Smrg				<fieldref>num_attribs</fieldref>
424d4401354Smrg				<value>2</value>
425d4401354Smrg			</op>
426d4401354Smrg		</list>
427d4401354Smrg	</request>
428d4401354Smrg
429d4401354Smrg	<request name="DestroyPbuffer" opcode="28">
430d4401354Smrg		<field type="PBUFFER" name="pbuffer" />
431d4401354Smrg	</request>
432d4401354Smrg
433d4401354Smrg	<request name="GetDrawableAttributes" opcode="29">
434d4401354Smrg		<field type="glx:DRAWABLE" name="drawable" />
435d4401354Smrg		<reply>
436d4401354Smrg			<pad bytes="1" />
437d4401354Smrg			<field type="CARD32" name="num_attribs" />
438d4401354Smrg			<pad bytes="20" />
439d4401354Smrg			<list type="CARD32" name="attribs">
440d4401354Smrg				<op op="*">
441d4401354Smrg					<fieldref>num_attribs</fieldref>
442d4401354Smrg					<value>2</value>
443d4401354Smrg				</op>
444d4401354Smrg			</list>
445d4401354Smrg		</reply>
446d4401354Smrg	</request>
447d4401354Smrg
448d4401354Smrg	<request name="ChangeDrawableAttributes" opcode="30">
449d4401354Smrg		<field type="glx:DRAWABLE" name="drawable" />
450d4401354Smrg		<field type="CARD32" name="num_attribs" />
451d4401354Smrg		<list type="CARD32" name="attribs">
452d4401354Smrg			<op op="*">
453d4401354Smrg				<fieldref>num_attribs</fieldref>
454d4401354Smrg				<value>2</value>
455d4401354Smrg			</op>
456d4401354Smrg		</list>
457d4401354Smrg	</request>
458d4401354Smrg
459d4401354Smrg	<request name="CreateWindow" opcode="31">
460d4401354Smrg		<field type="CARD32" name="screen" />
461d4401354Smrg		<field type="FBCONFIG" name="fbconfig" />
462d4401354Smrg		<field type="xproto:WINDOW" name="window" />
463d4401354Smrg		<field type="glx:WINDOW" name="glx_window" />
464d4401354Smrg		<field type="CARD32" name="num_attribs" />
465d4401354Smrg		<list type="CARD32" name="attribs">
466d4401354Smrg			<op op="*">
467d4401354Smrg				<fieldref>num_attribs</fieldref>
468d4401354Smrg				<value>2</value>
469d4401354Smrg			</op>
470d4401354Smrg		</list>
471d4401354Smrg	</request>
472d4401354Smrg
473d4401354Smrg	<request name="DeleteWindow" opcode="32">
474d4401354Smrg		<field type="glx:WINDOW" name="glxwindow" />
475d4401354Smrg	</request>
476d4401354Smrg
477986c8b3dSmrg	<!-- Start of GLX_ARB_create_context and GLX_ARB_create_context_profile
478986c8b3dSmrg             requests. -->
479986c8b3dSmrg	<request name="SetClientInfoARB" opcode="33">
480986c8b3dSmrg		<field type="CARD32" name="major_version" />
481986c8b3dSmrg		<field type="CARD32" name="minor_version" />
482986c8b3dSmrg		<field type="CARD32" name="num_versions" />
483986c8b3dSmrg		<field type="CARD32" name="gl_str_len" />
484986c8b3dSmrg		<field type="CARD32" name="glx_str_len" />
485986c8b3dSmrg		<list type="CARD32" name="gl_versions">
486986c8b3dSmrg			<op op="*">
487986c8b3dSmrg				<fieldref>num_versions</fieldref>
488986c8b3dSmrg				<value>2</value>
489986c8b3dSmrg			</op>
490986c8b3dSmrg		</list>
491986c8b3dSmrg		<list type="char" name="gl_extension_string">
492986c8b3dSmrg			<fieldref>gl_str_len</fieldref>
493986c8b3dSmrg		</list>
494d5c9b07bSmrg		<pad align="4" />
495986c8b3dSmrg		<list type="char" name="glx_extension_string">
496986c8b3dSmrg			<fieldref>glx_str_len</fieldref>
497986c8b3dSmrg		</list>
498986c8b3dSmrg	</request>
499986c8b3dSmrg
500986c8b3dSmrg	<request name="CreateContextAttribsARB" opcode="34">
501986c8b3dSmrg		<field type="glx:CONTEXT" name="context" />
502986c8b3dSmrg		<field type="FBCONFIG" name="fbconfig" />
503986c8b3dSmrg		<field type="CARD32" name="screen" />
504986c8b3dSmrg		<field type="glx:CONTEXT" name="share_list" />
505986c8b3dSmrg		<field type="BOOL" name="is_direct" />
506986c8b3dSmrg		<pad bytes="3" />
507986c8b3dSmrg		<field type="CARD32" name="num_attribs" />
508986c8b3dSmrg		<list type="CARD32" name="attribs">
509986c8b3dSmrg			<op op="*">
510986c8b3dSmrg				<fieldref>num_attribs</fieldref>
511986c8b3dSmrg				<value>2</value>
512986c8b3dSmrg			</op>
513986c8b3dSmrg		</list>
514986c8b3dSmrg	</request>
515986c8b3dSmrg
516986c8b3dSmrg	<request name="SetClientInfo2ARB" opcode="35">
517986c8b3dSmrg		<field type="CARD32" name="major_version" />
518986c8b3dSmrg		<field type="CARD32" name="minor_version" />
519986c8b3dSmrg		<field type="CARD32" name="num_versions" />
520986c8b3dSmrg		<field type="CARD32" name="gl_str_len" />
521986c8b3dSmrg		<field type="CARD32" name="glx_str_len" />
522986c8b3dSmrg		<list type="CARD32" name="gl_versions">
523986c8b3dSmrg			<op op="*">
524986c8b3dSmrg				<fieldref>num_versions</fieldref>
525986c8b3dSmrg				<value>3</value>
526986c8b3dSmrg			</op>
527986c8b3dSmrg		</list>
528986c8b3dSmrg		<list type="char" name="gl_extension_string">
529986c8b3dSmrg			<fieldref>gl_str_len</fieldref>
530986c8b3dSmrg		</list>
531d5c9b07bSmrg		<pad align="4" />
532986c8b3dSmrg		<list type="char" name="glx_extension_string">
533986c8b3dSmrg			<fieldref>glx_str_len</fieldref>
534986c8b3dSmrg		</list>
535986c8b3dSmrg	</request>
536986c8b3dSmrg
537d4401354Smrg	<!-- Requests for GL Non-rendering Commands (single ops) -->
538d4401354Smrg
539d4401354Smrg	<request name="NewList" opcode="101">
540d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
541d4401354Smrg		<field type="CARD32" name="list" />
542d4401354Smrg		<field type="CARD32" name="mode" />
543d4401354Smrg	</request>
544d4401354Smrg
545d4401354Smrg	<request name="EndList" opcode="102">
546d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
547d4401354Smrg	</request>
548d4401354Smrg
549d4401354Smrg	<request name="DeleteLists" opcode="103">
550d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
551d4401354Smrg		<field type="CARD32" name="list" />
552d4401354Smrg		<field type="INT32" name="range" />
553d4401354Smrg	</request>
554d4401354Smrg
555d4401354Smrg	<request name="GenLists" opcode="104">
556d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
557d4401354Smrg		<field type="INT32" name="range" />
558d4401354Smrg		<reply>
559d4401354Smrg			<pad bytes="1" />
560d4401354Smrg			<field type="CARD32" name="ret_val" />
561d4401354Smrg		</reply>
562d4401354Smrg	</request>
563d4401354Smrg
564d4401354Smrg	<request name="FeedbackBuffer" opcode="105">
565d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
566d4401354Smrg		<field type="INT32" name="size" />
567d4401354Smrg		<field type="INT32" name="type" />
568d4401354Smrg	</request>
569d4401354Smrg
570d4401354Smrg	<request name="SelectBuffer" opcode="106">
571d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
572d4401354Smrg		<field type="INT32" name="size" />
573d4401354Smrg		<!-- the reply is actually returned in the data
574d4401354Smrg		of the next RenderMode request -->
575d4401354Smrg	</request>
576d4401354Smrg
577d4401354Smrg
578d4401354Smrg	<request name="RenderMode" opcode="107">
579d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
580d4401354Smrg		<field type="CARD32" name="mode" />
581d4401354Smrg		<!--
582d4401354Smrg		This reply is only if RM was previously feedback/selection.
583d4401354Smrg		If it was in feedback mode then data is FLOAT32.
584d4401354Smrg		If previously in render mode there is no reply.
585d4401354Smrg		-->
586d4401354Smrg		<reply>
587d4401354Smrg			<pad bytes="1" />
588d4401354Smrg			<field type="CARD32" name="ret_val" />
589d4401354Smrg			<field type="CARD32" name="n" />
590d4401354Smrg			<field type="CARD32" name="new_mode" />
591d4401354Smrg			<pad bytes="12" />
592d4401354Smrg			<list type="CARD32" name="data">
593d4401354Smrg				<fieldref>n</fieldref>
594d4401354Smrg			</list>
595d4401354Smrg		</reply>
596d4401354Smrg	</request>
597d4401354Smrg
598d4401354Smrg	<enum name="RM">
599d4401354Smrg		<item name="GL_RENDER"><value>7168</value></item>
600d4401354Smrg		<item name="GL_FEEDBACK"><value>7169</value></item>
601d4401354Smrg		<item name="GL_SELECT"><value>7170</value></item>
602d4401354Smrg	</enum>
603d4401354Smrg
604d4401354Smrg	<request name="Finish" opcode="108">
605d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
606d4401354Smrg		<reply>
607d4401354Smrg			<pad bytes="1" />
608d4401354Smrg		</reply>
609d4401354Smrg	</request>
610d4401354Smrg
611d4401354Smrg	<request name="PixelStoref" opcode="109">
612d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
613d4401354Smrg		<field type="CARD32" name="pname" />
614d4401354Smrg		<field type="FLOAT32" name="datum" />
615d4401354Smrg	</request>
616d4401354Smrg
617d4401354Smrg	<request name="PixelStorei" opcode="110">
618d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
619d4401354Smrg		<field type="CARD32" name="pname" />
620d4401354Smrg		<field type="INT32" name="datum" />
621d4401354Smrg	</request>
622d4401354Smrg
623d4401354Smrg	<request name="ReadPixels" opcode="111">
624d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
625d4401354Smrg		<field type="INT32" name="x" />
626d4401354Smrg		<field type="INT32" name="y" />
627d4401354Smrg		<field type="INT32" name="width" />
628d4401354Smrg		<field type="INT32" name="height" />
629d4401354Smrg		<field type="CARD32" name="format" />
630d4401354Smrg		<field type="CARD32" name="type" />
631d4401354Smrg		<field type="BOOL" name="swap_bytes" />
632d4401354Smrg		<field type="BOOL" name="lsb_first" />
633d4401354Smrg		<reply>
634d4401354Smrg			<pad bytes="1" />
635d4401354Smrg			<pad bytes="24" />
636d4401354Smrg			<list type="BYTE" name="data">
637d4401354Smrg				<op op="*">
638d4401354Smrg					<fieldref>length</fieldref>
639d4401354Smrg					<value>4</value>
640d4401354Smrg				</op>
641d4401354Smrg			</list>
642d4401354Smrg		</reply>
643d4401354Smrg	</request>
644d4401354Smrg		
645d4401354Smrg	<!-- FIXME:
646d4401354Smrg	All the Get* functions can return different stuff for replies.
647d4401354Smrg	Hopefully xcb will support multiple reply structures at some point
648d4401354Smrg	but for now... grrrr
649d4401354Smrg	Starts on page 58/180
650d4401354Smrg	-->
651d4401354Smrg	<request name="GetBooleanv" opcode="112">
652d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
653d4401354Smrg		<field type="INT32" name="pname" />
654d4401354Smrg		<reply>
655d4401354Smrg			<pad bytes="1" />
656d4401354Smrg			<pad bytes="4" />
657d4401354Smrg			<field type="CARD32" name="n" />
658d4401354Smrg			<field type="BOOL" name="datum" />
659d4401354Smrg			<pad bytes="15" />
660d4401354Smrg			<list type="BOOL" name="data">
661d4401354Smrg				<fieldref>n</fieldref>
662d4401354Smrg			</list>
663d4401354Smrg		</reply>
664d4401354Smrg	</request>
665d4401354Smrg
666d4401354Smrg	<request name="GetClipPlane" opcode="113">
667d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
668d4401354Smrg		<field type="INT32" name="plane" />
669d4401354Smrg		<reply>
670891601f5Smrg			<required_start_align align="8" />
671d4401354Smrg			<pad bytes="1" />
672d4401354Smrg			<pad bytes="24" />
673d4401354Smrg			<list type="FLOAT64" name="data">
674d4401354Smrg				<op op="/">
675d4401354Smrg					<fieldref>length</fieldref>
676d4401354Smrg					<value>2</value>
677d4401354Smrg				</op>
678d4401354Smrg			</list>
679d4401354Smrg		</reply>
680d4401354Smrg	</request>
681d4401354Smrg
682d4401354Smrg	<request name="GetDoublev" opcode="114">
683d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
684d4401354Smrg		<field type="CARD32" name="pname" />
685d4401354Smrg		<reply>
686891601f5Smrg			<required_start_align align="8" />
687d4401354Smrg			<pad bytes="1" />
688d4401354Smrg			<pad bytes="4" />
689d4401354Smrg			<field type="CARD32" name="n" />
690d4401354Smrg			<field type="FLOAT64" name="datum" />
691d4401354Smrg			<pad bytes="8" />
692d4401354Smrg			<list type="FLOAT64" name="data">
693d4401354Smrg				<fieldref>n</fieldref>
694d4401354Smrg			</list>
695d4401354Smrg		</reply>
696d4401354Smrg	</request>
697d4401354Smrg
698d4401354Smrg	<request name="GetError" opcode="115">
699d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
700d4401354Smrg		<reply>
701d4401354Smrg			<pad bytes="1" />
702d4401354Smrg			<field type="INT32" name="error" />
703d4401354Smrg		</reply>
704d4401354Smrg	</request>
705d4401354Smrg
706d4401354Smrg	<request name="GetFloatv" opcode="116">
707d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
708d4401354Smrg		<field type="CARD32" name="pname" />
709d4401354Smrg		<reply>
710d4401354Smrg			<pad bytes="1" />
711d4401354Smrg			<pad bytes="4" />
712d4401354Smrg			<field type="CARD32" name="n" />
713d4401354Smrg			<field type="FLOAT32" name="datum" />
714d4401354Smrg			<pad bytes="12" />
715d4401354Smrg			<list type="FLOAT32" name="data">
716d4401354Smrg				<fieldref>n</fieldref>
717d4401354Smrg			</list>
718d4401354Smrg		</reply>
719d4401354Smrg	</request>
720d4401354Smrg
721d4401354Smrg	<request name="GetIntegerv" opcode="117">
722d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
723d4401354Smrg		<field type="CARD32" name="pname" />
724d4401354Smrg		<reply>
725d4401354Smrg			<pad bytes="1" />
726d4401354Smrg			<pad bytes="4" />
727d4401354Smrg			<field type="CARD32" name="n" />
728d4401354Smrg			<field type="INT32" name="datum" />
729d4401354Smrg			<pad bytes="12" />
730d4401354Smrg			<list type="INT32" name="data">
731d4401354Smrg				<fieldref>n</fieldref>
732d4401354Smrg			</list>
733d4401354Smrg		</reply>
734d4401354Smrg	</request>
735d4401354Smrg
736d4401354Smrg	<request name="GetLightfv" opcode="118">
737d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
738d4401354Smrg		<field type="CARD32" name="light" />
739d4401354Smrg		<field type="CARD32" name="pname" />
740d4401354Smrg		<reply>
741d4401354Smrg			<pad bytes="1" />
742d4401354Smrg			<pad bytes="4" />
743d4401354Smrg			<field type="CARD32" name="n" />
744d4401354Smrg			<field type="FLOAT32" name="datum" />
745d4401354Smrg			<pad bytes="12" />
746d4401354Smrg			<list type="FLOAT32" name="data">
747d4401354Smrg				<fieldref>n</fieldref>
748d4401354Smrg			</list>
749d4401354Smrg		</reply>
750d4401354Smrg	</request>
751d4401354Smrg
752d4401354Smrg	<request name="GetLightiv" opcode="119">
753d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
754d4401354Smrg		<field type="CARD32" name="light" />
755d4401354Smrg		<field type="CARD32" name="pname" />
756d4401354Smrg		<reply>
757d4401354Smrg			<pad bytes="1" />
758d4401354Smrg			<pad bytes="4" />
759d4401354Smrg			<field type="CARD32" name="n" />
760d4401354Smrg			<field type="INT32" name="datum" />
761d4401354Smrg			<pad bytes="12" />
762d4401354Smrg			<list type="INT32" name="data">
763d4401354Smrg				<fieldref>n</fieldref>
764d4401354Smrg			</list>
765d4401354Smrg		</reply>
766d4401354Smrg	</request>
767d4401354Smrg
768d4401354Smrg	<request name="GetMapdv" opcode="120">
769d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
770d4401354Smrg		<field type="CARD32" name="target" />
771d4401354Smrg		<field type="CARD32" name="query" />
772d4401354Smrg		<reply>
773891601f5Smrg			<required_start_align align="8" />
774d4401354Smrg			<pad bytes="1" />
775d4401354Smrg			<pad bytes="4" />
776d4401354Smrg			<field type="CARD32" name="n" />
777d4401354Smrg			<field type="FLOAT64" name="datum" />
778d4401354Smrg			<pad bytes="8" />
779d4401354Smrg			<list type="FLOAT64" name="data">
780d4401354Smrg				<fieldref>n</fieldref>
781d4401354Smrg			</list>
782d4401354Smrg		</reply>
783d4401354Smrg	</request>
784d4401354Smrg
785d4401354Smrg	<request name="GetMapfv" opcode="121">
786d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
787d4401354Smrg		<field type="CARD32" name="target" />
788d4401354Smrg		<field type="CARD32" name="query" />
789d4401354Smrg		<reply>
790d4401354Smrg			<pad bytes="1" />
791d4401354Smrg			<pad bytes="4" />
792d4401354Smrg			<field type="CARD32" name="n" />
793d4401354Smrg			<field type="FLOAT32" name="datum" />
794d4401354Smrg			<pad bytes="12" />
795d4401354Smrg			<list type="FLOAT32" name="data">
796d4401354Smrg				<fieldref>n</fieldref>
797d4401354Smrg			</list>
798d4401354Smrg		</reply>
799d4401354Smrg	</request>
800d4401354Smrg
801d4401354Smrg	<request name="GetMapiv" opcode="122">
802d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
803d4401354Smrg		<field type="CARD32" name="target" />
804d4401354Smrg		<field type="CARD32" name="query" />
805d4401354Smrg		<reply>
806d4401354Smrg			<pad bytes="1" />
807d4401354Smrg			<pad bytes="4" />
808d4401354Smrg			<field type="CARD32" name="n" />
809d4401354Smrg			<field type="INT32" name="datum" />
810d4401354Smrg			<pad bytes="12" />
811d4401354Smrg			<list type="INT32" name="data">
812d4401354Smrg				<fieldref>n</fieldref>
813d4401354Smrg			</list>
814d4401354Smrg		</reply>
815d4401354Smrg	</request>
816d4401354Smrg
817d4401354Smrg	<request name="GetMaterialfv" opcode="123">
818d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
819d4401354Smrg		<field type="CARD32" name="face" />
820d4401354Smrg		<field type="CARD32" name="pname" />
821d4401354Smrg		<reply>
822d4401354Smrg			<pad bytes="1" />
823d4401354Smrg			<pad bytes="4" />
824d4401354Smrg			<field type="CARD32" name="n" />
825d4401354Smrg			<field type="FLOAT32" name="datum" />
826d4401354Smrg			<pad bytes="12" />
827d4401354Smrg			<list type="FLOAT32" name="data">
828d4401354Smrg				<fieldref>n</fieldref>
829d4401354Smrg			</list>
830d4401354Smrg		</reply>
831d4401354Smrg	</request>
832d4401354Smrg
833d4401354Smrg	<request name="GetMaterialiv" opcode="124">
834d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
835d4401354Smrg		<field type="CARD32" name="face" />
836d4401354Smrg		<field type="CARD32" name="pname" />
837d4401354Smrg		<reply>
838d4401354Smrg			<pad bytes="1" />
839d4401354Smrg			<pad bytes="4" />
840d4401354Smrg			<field type="CARD32" name="n" />
841d4401354Smrg			<field type="INT32" name="datum" />
842d4401354Smrg			<pad bytes="12" />
843d4401354Smrg			<list type="INT32" name="data">
844d4401354Smrg				<fieldref>n</fieldref>
845d4401354Smrg			</list>
846d4401354Smrg		</reply>
847d4401354Smrg	</request>
848d4401354Smrg
849d4401354Smrg	<request name="GetPixelMapfv" opcode="125">
850d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
851d4401354Smrg		<field type="CARD32" name="map" />
852d4401354Smrg		<reply>
853d4401354Smrg			<pad bytes="1" />
854d4401354Smrg			<pad bytes="4" />
855d4401354Smrg			<field type="CARD32" name="n" />
856d4401354Smrg			<field type="FLOAT32" name="datum" />
857d4401354Smrg			<pad bytes="12" />
858d4401354Smrg			<list type="FLOAT32" name="data">
859d4401354Smrg				<fieldref>n</fieldref>
860d4401354Smrg			</list>
861d4401354Smrg		</reply>
862d4401354Smrg	</request>
863d4401354Smrg
864d4401354Smrg	<request name="GetPixelMapuiv" opcode="126">
865d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
866d4401354Smrg		<field type="CARD32" name="map" />
867d4401354Smrg		<reply>
868d4401354Smrg			<pad bytes="1" />
869d4401354Smrg			<pad bytes="4" />
870d4401354Smrg			<field type="CARD32" name="n" />
871d4401354Smrg			<field type="CARD32" name="datum" />
872d4401354Smrg			<pad bytes="12" />
873d4401354Smrg			<list type="CARD32" name="data">
874d4401354Smrg				<fieldref>n</fieldref>
875d4401354Smrg			</list>
876d4401354Smrg		</reply>
877d4401354Smrg	</request>
878d4401354Smrg
879d4401354Smrg	<request name="GetPixelMapusv" opcode="127">
880d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
881d4401354Smrg		<field type="CARD32" name="map" />
882d4401354Smrg		<reply>
883d4401354Smrg			<pad bytes="1" />
884d4401354Smrg			<pad bytes="4" />
885d4401354Smrg			<field type="CARD32" name="n" />
886d4401354Smrg			<field type="CARD16" name="datum" />
887d4401354Smrg			<pad bytes="16" />
888d4401354Smrg			<list type="CARD16" name="data">
889d4401354Smrg				<fieldref>n</fieldref>
890d4401354Smrg			</list>
891d4401354Smrg		</reply>
892d4401354Smrg	</request>
893d4401354Smrg
894d4401354Smrg	<request name="GetPolygonStipple" opcode="128">
895d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
896d4401354Smrg		<field type="BOOL" name="lsb_first" />
897d4401354Smrg		<reply>
898d4401354Smrg			<pad bytes="1" />
899d4401354Smrg			<pad bytes="24" />
900d4401354Smrg			<list type="BYTE" name="data">
901d4401354Smrg				<op op="*">
902d4401354Smrg					<fieldref>length</fieldref>
903d4401354Smrg					<value>4</value>
904d4401354Smrg				</op>
905d4401354Smrg			</list>
906d4401354Smrg		</reply>
907d4401354Smrg	</request>
908d4401354Smrg
909d4401354Smrg
910d4401354Smrg	<request name="GetString" opcode="129">
911d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
912d4401354Smrg		<field type="CARD32" name="name" />
913d4401354Smrg		<reply>
914d4401354Smrg			<pad bytes="1" />
915d4401354Smrg			<pad bytes="4" />
916d4401354Smrg			<field type="CARD32" name="n" />
917d4401354Smrg			<pad bytes="16" />
918d4401354Smrg			<list type="char" name="string">
919d4401354Smrg				<fieldref>n</fieldref>
920d4401354Smrg			</list>
921d4401354Smrg		</reply>
922d4401354Smrg	</request>
923d4401354Smrg
924d4401354Smrg	<request name="GetTexEnvfv" opcode="130">
925d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
926d4401354Smrg		<field type="CARD32" name="target" />
927d4401354Smrg		<field type="CARD32" name="pname" />
928d4401354Smrg		<reply>
929d4401354Smrg			<pad bytes="1" />
930d4401354Smrg			<pad bytes="4" />
931d4401354Smrg			<field type="CARD32" name="n" />
932d4401354Smrg			<field type="FLOAT32" name="datum" />
933d4401354Smrg			<pad bytes="12" />
934d4401354Smrg			<list type="FLOAT32" name="data">
935d4401354Smrg				<fieldref>n</fieldref>
936d4401354Smrg			</list>
937d4401354Smrg		</reply>
938d4401354Smrg	</request>
939d4401354Smrg
940d4401354Smrg	<request name="GetTexEnviv" opcode="131">
941d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
942d4401354Smrg		<field type="CARD32" name="target" />
943d4401354Smrg		<field type="CARD32" name="pname" />
944d4401354Smrg		<reply>
945d4401354Smrg			<pad bytes="1" />
946d4401354Smrg			<pad bytes="4" />
947d4401354Smrg			<field type="CARD32" name="n" />
948d4401354Smrg			<field type="INT32" name="datum" />
949d4401354Smrg			<pad bytes="12" />
950d4401354Smrg			<list type="INT32" name="data">
951d4401354Smrg				<fieldref>n</fieldref>
952d4401354Smrg			</list>
953d4401354Smrg		</reply>
954d4401354Smrg	</request>
955d4401354Smrg
956d4401354Smrg	<request name="GetTexGendv" opcode="132">
957d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
958d4401354Smrg		<field type="CARD32" name="coord" />
959d4401354Smrg		<field type="CARD32" name="pname" />
960d4401354Smrg		<reply>
961891601f5Smrg			<required_start_align align="8" />
962d4401354Smrg			<pad bytes="1" />
963d4401354Smrg			<pad bytes="4" />
964d4401354Smrg			<field type="CARD32" name="n" />
965d4401354Smrg			<field type="FLOAT64" name="datum" />
966d4401354Smrg			<pad bytes="8" />
967d4401354Smrg			<list type="FLOAT64" name="data">
968d4401354Smrg				<fieldref>n</fieldref>
969d4401354Smrg			</list>
970d4401354Smrg		</reply>
971d4401354Smrg	</request>
972d4401354Smrg
973d4401354Smrg	<request name="GetTexGenfv" opcode="133">
974d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
975d4401354Smrg		<field type="CARD32" name="coord" />
976d4401354Smrg		<field type="CARD32" name="pname" />
977d4401354Smrg		<reply>
978d4401354Smrg			<pad bytes="1" />
979d4401354Smrg			<pad bytes="4" />
980d4401354Smrg			<field type="CARD32" name="n" />
981d4401354Smrg			<field type="FLOAT32" name="datum" />
982d4401354Smrg			<pad bytes="12" />
983d4401354Smrg			<list type="FLOAT32" name="data">
984d4401354Smrg				<fieldref>n</fieldref>
985d4401354Smrg			</list>
986d4401354Smrg		</reply>
987d4401354Smrg	</request>
988d4401354Smrg
989d4401354Smrg	<request name="GetTexGeniv" opcode="134">
990d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
991d4401354Smrg		<field type="CARD32" name="coord" />
992d4401354Smrg		<field type="CARD32" name="pname" />
993d4401354Smrg		<reply>
994d4401354Smrg			<pad bytes="1" />
995d4401354Smrg			<pad bytes="4" />
996d4401354Smrg			<field type="CARD32" name="n" />
997d4401354Smrg			<field type="INT32" name="datum" />
998d4401354Smrg			<pad bytes="12" />
999d4401354Smrg			<list type="INT32" name="data">
1000d4401354Smrg				<fieldref>n</fieldref>
1001d4401354Smrg			</list>
1002d4401354Smrg		</reply>
1003d4401354Smrg	</request>
1004d4401354Smrg
1005d4401354Smrg	<request name="GetTexImage" opcode="135">
1006d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1007d4401354Smrg		<field type="CARD32" name="target" />
1008d4401354Smrg		<field type="INT32" name="level" />
1009d4401354Smrg		<field type="CARD32" name="format" />
1010d4401354Smrg		<field type="CARD32" name="type" />
1011d4401354Smrg		<field type="BOOL" name="swap_bytes" />
1012d4401354Smrg		<reply>
1013d4401354Smrg			<pad bytes="1" />
1014d4401354Smrg			<pad bytes="8" />
1015d4401354Smrg			<field type="INT32" name="width" />
1016d4401354Smrg			<field type="INT32" name="height" />
1017d4401354Smrg			<field type="INT32" name="depth" />
1018d4401354Smrg			<pad bytes="4" />
1019d4401354Smrg			<list type="BYTE" name="data">
1020d4401354Smrg				<op op="*">
1021d4401354Smrg					<fieldref>length</fieldref>
1022d4401354Smrg					<value>4</value>
1023d4401354Smrg				</op>
1024d4401354Smrg			</list>
1025d4401354Smrg		</reply>
1026d4401354Smrg	</request>
1027d4401354Smrg	    
1028d4401354Smrg
1029d4401354Smrg	<request name="GetTexParameterfv" opcode="136">
1030d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1031d4401354Smrg		<field type="CARD32" name="target" />
1032d4401354Smrg		<field type="CARD32" name="pname" />
1033d4401354Smrg		<reply>
1034d4401354Smrg			<pad bytes="1" />
1035d4401354Smrg			<pad bytes="4" />
1036d4401354Smrg			<field type="CARD32" name="n" />
1037d4401354Smrg			<field type="FLOAT32" name="datum" />
1038d4401354Smrg			<pad bytes="12" />
1039d4401354Smrg			<list type="FLOAT32" name="data">
1040d4401354Smrg				<fieldref>n</fieldref>
1041d4401354Smrg			</list>
1042d4401354Smrg		</reply>
1043d4401354Smrg	</request>
1044d4401354Smrg
1045d4401354Smrg	<request name="GetTexParameteriv" opcode="137">
1046d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1047d4401354Smrg		<field type="CARD32" name="target" />
1048d4401354Smrg		<field type="CARD32" name="pname" />
1049d4401354Smrg		<reply>
1050d4401354Smrg			<pad bytes="1" />
1051d4401354Smrg			<pad bytes="4" />
1052d4401354Smrg			<field type="CARD32" name="n" />
1053d4401354Smrg			<field type="INT32" name="datum" />
1054d4401354Smrg			<pad bytes="12" />
1055d4401354Smrg			<list type="INT32" name="data">
1056d4401354Smrg				<fieldref>n</fieldref>
1057d4401354Smrg			</list>
1058d4401354Smrg		</reply>
1059d4401354Smrg	</request>
1060d4401354Smrg
1061d4401354Smrg	<request name="GetTexLevelParameterfv" opcode="138">
1062d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1063d4401354Smrg		<field type="CARD32" name="target" />
1064d4401354Smrg		<field type="INT32" name="level" />
1065d4401354Smrg		<field type="CARD32" name="pname" />
1066d4401354Smrg		<reply>
1067d4401354Smrg			<pad bytes="1" />
1068d4401354Smrg			<pad bytes="4" />
1069d4401354Smrg			<field type="CARD32" name="n" />
1070d4401354Smrg			<field type="FLOAT32" name="datum" />
1071d4401354Smrg			<pad bytes="12" />
1072d4401354Smrg			<list type="FLOAT32" name="data">
1073d4401354Smrg				<fieldref>n</fieldref>
1074d4401354Smrg			</list>
1075d4401354Smrg		</reply>
1076d4401354Smrg	</request>
1077d4401354Smrg
1078d4401354Smrg	<request name="GetTexLevelParameteriv" opcode="139">
1079d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1080d4401354Smrg		<field type="CARD32" name="target" />
1081d4401354Smrg		<field type="INT32" name="level" />
1082d4401354Smrg		<field type="CARD32" name="pname" />
1083d4401354Smrg		<reply>
1084d4401354Smrg			<pad bytes="1" />
1085d4401354Smrg			<pad bytes="4" />
1086d4401354Smrg			<field type="CARD32" name="n" />
1087d4401354Smrg			<field type="INT32" name="datum" />
1088d4401354Smrg			<pad bytes="12" />
1089d4401354Smrg			<list type="INT32" name="data">
1090d4401354Smrg				<fieldref>n</fieldref>
1091d4401354Smrg			</list>
1092d4401354Smrg		</reply>
1093d4401354Smrg	</request>
1094d4401354Smrg
1095891601f5Smrg	<request name="IsEnabled" opcode="140" >
1096891601f5Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1097891601f5Smrg		<field type="CARD32" name="capability" />
1098891601f5Smrg		<reply>
1099891601f5Smrg			<pad bytes="1" />
1100891601f5Smrg			<field type="BOOL32" name="ret_val" />
1101891601f5Smrg		</reply>
1102891601f5Smrg	</request>
1103891601f5Smrg
1104d4401354Smrg	<request name="IsList" opcode="141" >
1105d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1106d4401354Smrg		<field type="CARD32" name="list" />
1107d4401354Smrg		<reply>
1108d4401354Smrg			<pad bytes="1" />
1109d4401354Smrg			<field type="BOOL32" name="ret_val" />
1110d4401354Smrg		</reply>
1111d4401354Smrg	</request>
1112d4401354Smrg
1113d4401354Smrg	<request name="Flush" opcode="142">
1114d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1115d4401354Smrg	</request>
1116d4401354Smrg
1117d4401354Smrg	<request name="AreTexturesResident" opcode="143">
1118d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1119d4401354Smrg		<field type="INT32" name="n" />
1120d4401354Smrg		<list type="CARD32" name="textures">
1121d4401354Smrg		    <fieldref>n</fieldref>
1122d4401354Smrg		</list>
1123d4401354Smrg		<reply>
1124d4401354Smrg			<pad bytes="1" />
1125d4401354Smrg			<field type="BOOL32" name="ret_val" />
1126d4401354Smrg			<pad bytes="20" />
1127d4401354Smrg			<list type="BOOL" name="data">
1128d4401354Smrg				<op op="*">
1129d4401354Smrg					<fieldref>length</fieldref>
1130d4401354Smrg					<value>4</value>
1131d4401354Smrg				</op>
1132d4401354Smrg			</list>
1133d4401354Smrg		</reply>
1134d4401354Smrg	</request>
1135d4401354Smrg
1136d4401354Smrg	<request name="DeleteTextures" opcode="144">
1137d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1138d4401354Smrg		<field type="INT32" name="n" />
1139d4401354Smrg		<list type="CARD32" name="textures">
1140d4401354Smrg			<fieldref>n</fieldref>
1141d4401354Smrg		</list>
1142d4401354Smrg	</request>
1143d4401354Smrg
1144d4401354Smrg	<request name="GenTextures" opcode="145">
1145d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1146d4401354Smrg		<field type="INT32" name="n" />
1147d4401354Smrg		<reply>
1148d4401354Smrg			<pad bytes="1" />
1149d4401354Smrg			<pad bytes="24" />
1150d4401354Smrg			<list type="CARD32" name="data">
1151d4401354Smrg				<fieldref>length</fieldref>
1152d4401354Smrg			</list>
1153d4401354Smrg		</reply>
1154d4401354Smrg	</request>
1155d4401354Smrg
1156d4401354Smrg	<request name="IsTexture" opcode="146">
1157d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1158d4401354Smrg		<field type="CARD32" name="texture" />
1159d4401354Smrg		<reply>
1160d4401354Smrg			<pad bytes="1" />
1161d4401354Smrg			<field type="BOOL32" name="ret_val" />
1162d4401354Smrg		</reply>
1163d4401354Smrg	</request>
1164d4401354Smrg
1165d4401354Smrg	<request name="GetColorTable" opcode="147">
1166d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1167d4401354Smrg		<field type="CARD32" name="target" />
1168d4401354Smrg		<field type="CARD32" name="format" />
1169d4401354Smrg		<field type="CARD32" name="type" />
1170d4401354Smrg		<field type="BOOL" name="swap_bytes" />
1171d4401354Smrg		<reply>
1172d4401354Smrg			<pad bytes="1" />
1173d4401354Smrg			<pad bytes="8" />
1174d4401354Smrg			<field type="INT32" name="width" />
1175d4401354Smrg			<pad bytes="12" />
1176d4401354Smrg			<list type="BYTE" name="data">
1177d4401354Smrg				<op op="*">
1178d4401354Smrg					<fieldref>length</fieldref>
1179d4401354Smrg					<value>4</value>
1180d4401354Smrg				</op>
1181d4401354Smrg			</list>
1182d4401354Smrg		</reply>
1183d4401354Smrg	</request>
1184d4401354Smrg	
1185d4401354Smrg	<request name="GetColorTableParameterfv" opcode="148">
1186d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1187d4401354Smrg		<field type="CARD32" name="target" />
1188d4401354Smrg		<field type="CARD32" name="pname" />
1189d4401354Smrg		<reply>
1190d4401354Smrg			<pad bytes="1" />
1191d4401354Smrg			<pad bytes="4" />
1192d4401354Smrg			<field type="CARD32" name="n" />
1193d4401354Smrg			<field type="FLOAT32" name="datum" />
1194d4401354Smrg			<pad bytes="12" />
1195d4401354Smrg			<list type="FLOAT32" name="data">
1196d4401354Smrg				<fieldref>n</fieldref>
1197d4401354Smrg			</list>
1198d4401354Smrg		</reply>
1199d4401354Smrg	</request>
1200d4401354Smrg
1201d4401354Smrg	<request name="GetColorTableParameteriv" opcode="149">
1202d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1203d4401354Smrg		<field type="CARD32" name="target" />
1204d4401354Smrg		<field type="CARD32" name="pname" />
1205d4401354Smrg		<reply>
1206d4401354Smrg			<pad bytes="1" />
1207d4401354Smrg			<pad bytes="4" />
1208d4401354Smrg			<field type="CARD32" name="n" />
1209d4401354Smrg			<field type="INT32" name="datum" />
1210d4401354Smrg			<pad bytes="12" />
1211d4401354Smrg			<list type="INT32" name="data">
1212d4401354Smrg				<fieldref>n</fieldref>
1213d4401354Smrg			</list>
1214d4401354Smrg		</reply>
1215d4401354Smrg	</request>
1216d4401354Smrg
1217d4401354Smrg	<request name="GetConvolutionFilter" opcode="150">
1218d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1219d4401354Smrg		<field type="CARD32" name="target" />
1220d4401354Smrg		<field type="CARD32" name="format" />
1221d4401354Smrg		<field type="CARD32" name="type" />
1222d4401354Smrg		<field type="BOOL" name="swap_bytes" />
1223d4401354Smrg		<reply>
1224d4401354Smrg			<pad bytes="1" />
1225d4401354Smrg			<pad bytes="8" />
1226d4401354Smrg			<field type="INT32" name="width" />
1227d4401354Smrg			<field type="INT32" name="height" />
1228d4401354Smrg			<pad bytes="8" />
1229d4401354Smrg			<list type="BYTE" name="data">
1230d4401354Smrg				<op op="*">
1231d4401354Smrg					<fieldref>length</fieldref>
1232d4401354Smrg					<value>4</value>
1233d4401354Smrg				</op>
1234d4401354Smrg			</list>
1235d4401354Smrg		</reply>
1236d4401354Smrg	</request>
1237d4401354Smrg
1238d4401354Smrg
1239d4401354Smrg	<request name="GetConvolutionParameterfv" opcode="151">
1240d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1241d4401354Smrg		<field type="CARD32" name="target" />
1242d4401354Smrg		<field type="CARD32" name="pname" />
1243d4401354Smrg		<reply>
1244d4401354Smrg			<pad bytes="1" />
1245d4401354Smrg			<pad bytes="4" />
1246d4401354Smrg			<field type="CARD32" name="n" />
1247d4401354Smrg			<field type="FLOAT32" name="datum" />
1248d4401354Smrg			<pad bytes="12" />
1249d4401354Smrg			<list type="FLOAT32" name="data">
1250d4401354Smrg				<fieldref>n</fieldref>
1251d4401354Smrg			</list>
1252d4401354Smrg		</reply>
1253d4401354Smrg	</request>
1254d4401354Smrg
1255d4401354Smrg	<request name="GetConvolutionParameteriv" opcode="152">
1256d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1257d4401354Smrg		<field type="CARD32" name="target" />
1258d4401354Smrg		<field type="CARD32" name="pname" />
1259d4401354Smrg		<reply>
1260d4401354Smrg			<pad bytes="1" />
1261d4401354Smrg			<pad bytes="4" />
1262d4401354Smrg			<field type="CARD32" name="n" />
1263d4401354Smrg			<field type="INT32" name="datum" />
1264d4401354Smrg			<pad bytes="12" />
1265d4401354Smrg			<list type="INT32" name="data">
1266d4401354Smrg				<fieldref>n</fieldref>
1267d4401354Smrg			</list>
1268d4401354Smrg		</reply>
1269d4401354Smrg	</request>
1270d4401354Smrg
1271d4401354Smrg	<request name="GetSeparableFilter" opcode="153">
1272d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1273d4401354Smrg		<field type="CARD32" name="target" />
1274d4401354Smrg		<field type="CARD32" name="format" />
1275d4401354Smrg		<field type="CARD32" name="type" />
1276d4401354Smrg		<field type="BOOL" name="swap_bytes" />
1277d4401354Smrg		<reply>
1278d4401354Smrg			<pad bytes="1" />
1279d4401354Smrg			<pad bytes="8" />
1280d4401354Smrg			<field type="INT32" name="row_w" />
1281d4401354Smrg			<field type="INT32" name="col_h" />
1282d4401354Smrg			<pad bytes="8" />
1283d4401354Smrg			<list type="BYTE" name="rows_and_cols">
1284d4401354Smrg				<op op="*">
1285d4401354Smrg					<fieldref>length</fieldref>
1286d4401354Smrg					<value>4</value>
1287d4401354Smrg				</op>
1288d4401354Smrg			</list>
1289d4401354Smrg		</reply>
1290d4401354Smrg	</request>
1291d4401354Smrg
1292d4401354Smrg	<request name="GetHistogram" opcode="154">
1293d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1294d4401354Smrg		<field type="CARD32" name="target" />
1295d4401354Smrg		<field type="CARD32" name="format" />
1296d4401354Smrg		<field type="CARD32" name="type" />
1297d4401354Smrg		<field type="BOOL" name="swap_bytes" />
1298d4401354Smrg		<field type="BOOL" name="reset" />
1299d4401354Smrg		<reply>
1300d4401354Smrg			<pad bytes="1" />
1301d4401354Smrg			<pad bytes="8" />
1302d4401354Smrg			<field type="INT32" name="width" />
1303d4401354Smrg			<pad bytes="12" />
1304d4401354Smrg			<list type="BYTE" name="data">
1305d4401354Smrg				<op op="*">
1306d4401354Smrg					<fieldref>length</fieldref>
1307d4401354Smrg					<value>4</value>
1308d4401354Smrg				</op>
1309d4401354Smrg			</list>
1310d4401354Smrg		</reply>
1311d4401354Smrg	</request>
1312d4401354Smrg
1313d4401354Smrg
1314d4401354Smrg	<request name="GetHistogramParameterfv" opcode="155">
1315d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1316d4401354Smrg		<field type="CARD32" name="target" />
1317d4401354Smrg		<field type="CARD32" name="pname" />
1318d4401354Smrg		<reply>
1319d4401354Smrg			<pad bytes="1" />
1320d4401354Smrg			<pad bytes="4" />
1321d4401354Smrg			<field type="CARD32" name="n" />
1322d4401354Smrg			<field type="FLOAT32" name="datum" />
1323d4401354Smrg			<pad bytes="12" />
1324d4401354Smrg			<list type="FLOAT32" name="data">
1325d4401354Smrg				<fieldref>n</fieldref>
1326d4401354Smrg			</list>
1327d4401354Smrg		</reply>
1328d4401354Smrg	</request>
1329d4401354Smrg
1330d4401354Smrg	<request name="GetHistogramParameteriv" opcode="156">
1331d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1332d4401354Smrg		<field type="CARD32" name="target" />
1333d4401354Smrg		<field type="CARD32" name="pname" />
1334d4401354Smrg		<reply>
1335d4401354Smrg			<pad bytes="1" />
1336d4401354Smrg			<pad bytes="4" />
1337d4401354Smrg			<field type="CARD32" name="n" />
1338d4401354Smrg			<field type="INT32" name="datum" />
1339d4401354Smrg			<pad bytes="12" />
1340d4401354Smrg			<list type="INT32" name="data">
1341d4401354Smrg				<fieldref>n</fieldref>
1342d4401354Smrg			</list>
1343d4401354Smrg		</reply>
1344d4401354Smrg	</request>
1345d4401354Smrg
1346d4401354Smrg	<request name="GetMinmax" opcode="157">
1347d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1348d4401354Smrg		<field type="CARD32" name="target" />
1349d4401354Smrg		<field type="CARD32" name="format" />
1350d4401354Smrg		<field type="CARD32" name="type" />
1351d4401354Smrg		<field type="BOOL" name="swap_bytes" />
1352d4401354Smrg		<field type="BOOL" name="reset" />
1353d4401354Smrg		<reply>
1354d4401354Smrg			<pad bytes="1" />
1355d4401354Smrg			<pad bytes="24" />
1356d4401354Smrg			<list type="BYTE" name="data">
1357d4401354Smrg				<op op="*">
1358d4401354Smrg					<fieldref>length</fieldref>
1359d4401354Smrg					<value>4</value>
1360d4401354Smrg				</op>
1361d4401354Smrg			</list>
1362d4401354Smrg		</reply>
1363d4401354Smrg	</request>
1364d4401354Smrg
1365d4401354Smrg	<request name="GetMinmaxParameterfv" opcode="158">
1366d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1367d4401354Smrg		<field type="CARD32" name="target" />
1368d4401354Smrg		<field type="CARD32" name="pname" />
1369d4401354Smrg		<reply>
1370d4401354Smrg			<pad bytes="1" />
1371d4401354Smrg			<pad bytes="4" />
1372d4401354Smrg			<field type="CARD32" name="n" />
1373d4401354Smrg			<field type="FLOAT32" name="datum" />
1374d4401354Smrg			<pad bytes="12" />
1375d4401354Smrg			<list type="FLOAT32" name="data">
1376d4401354Smrg				<fieldref>n</fieldref>
1377d4401354Smrg			</list>
1378d4401354Smrg		</reply>
1379d4401354Smrg	</request>
1380d4401354Smrg
1381d4401354Smrg	<request name="GetMinmaxParameteriv" opcode="159">
1382d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1383d4401354Smrg		<field type="CARD32" name="target" />
1384d4401354Smrg		<field type="CARD32" name="pname" />
1385d4401354Smrg		<reply>
1386d4401354Smrg			<pad bytes="1" />
1387d4401354Smrg			<pad bytes="4" />
1388d4401354Smrg			<field type="CARD32" name="n" />
1389d4401354Smrg			<field type="INT32" name="datum" />
1390d4401354Smrg			<pad bytes="12" />
1391d4401354Smrg			<list type="INT32" name="data">
1392d4401354Smrg				<fieldref>n</fieldref>
1393d4401354Smrg			</list>
1394d4401354Smrg		</reply>
1395d4401354Smrg	</request>
1396d4401354Smrg
1397d4401354Smrg	<!--
1398d4401354Smrg	GLX Extensions
1399d4401354Smrg	
1400d4401354Smrg	* XXX: So far only define non-rendering commands.
1401d4401354Smrg	* Only those extensions that affect the GLX wire protocol are listed.
1402d4401354Smrg	-->
1403d4401354Smrg
1404d4401354Smrg	<!--
1405d4401354Smrg	GL_ARB_texture_compression
1406d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/ARB/texture_compression.txt
1407d4401354Smrg	-->
1408d4401354Smrg	<request name="GetCompressedTexImageARB" opcode="160">
1409d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1410d4401354Smrg		<field type="CARD32" name="target" />
1411d4401354Smrg		<field type="INT32" name="level" />
1412d4401354Smrg		<reply>
1413d4401354Smrg			<pad bytes="1" />
1414d4401354Smrg			<pad bytes="8" />
1415d4401354Smrg			<field type="INT32" name="size" />
1416d4401354Smrg			<pad bytes="12" />
1417d4401354Smrg			<list type="BYTE" name="data">
1418d4401354Smrg				<op op="*">
1419d4401354Smrg					<fieldref>length</fieldref>
1420d4401354Smrg					<value>4</value>
1421d4401354Smrg				</op>
1422d4401354Smrg			</list>
1423d4401354Smrg		</reply>
1424d4401354Smrg	</request>
1425d4401354Smrg
1426d4401354Smrg	
1427d4401354Smrg	<!--
1428d4401354Smrg	GL_ARB_occlusion_query
1429d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/ARB/occlusion_query.txt
1430d4401354Smrg	-->
1431d4401354Smrg
1432d4401354Smrg	<request name="DeleteQueriesARB" opcode="161">
1433d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1434d4401354Smrg		<field type="INT32" name="n" />
1435d4401354Smrg		<list type="CARD32" name="ids">
1436d4401354Smrg			<fieldref>n</fieldref>
1437d4401354Smrg		</list>
1438d4401354Smrg	</request>
1439d4401354Smrg
1440d4401354Smrg	<request name="GenQueriesARB" opcode="162">
1441d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1442d4401354Smrg		<field type="INT32" name="n" />
1443d4401354Smrg		<reply>
1444d4401354Smrg			<pad bytes="1" />
1445d4401354Smrg			<pad bytes="24" />
1446d4401354Smrg			<list type="CARD32" name="data">
1447d4401354Smrg				<fieldref>length</fieldref>
1448d4401354Smrg			</list>
1449d4401354Smrg		</reply>
1450d4401354Smrg	</request>
1451d4401354Smrg	
1452d4401354Smrg	<request name="IsQueryARB" opcode="163">
1453d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1454d4401354Smrg		<field type="CARD32" name="id" />
1455d4401354Smrg		<reply>
1456d4401354Smrg			<pad bytes="1" />
1457d4401354Smrg			<field type="BOOL32" name="ret_val" />
1458d4401354Smrg		</reply>
1459d4401354Smrg	</request>
1460d4401354Smrg	
1461d4401354Smrg	<request name="GetQueryivARB" opcode="164">
1462d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1463d4401354Smrg		<field type="CARD32" name="target" />
1464d4401354Smrg		<field type="CARD32" name="pname" />
1465d4401354Smrg		<reply>
1466d4401354Smrg			<pad bytes="1" />
1467d4401354Smrg			<pad bytes="4" />
1468d4401354Smrg			<field type="CARD32" name="n" />
1469d4401354Smrg			<field type="INT32" name="datum" />
1470d4401354Smrg			<pad bytes="12" />
1471d4401354Smrg			<list type="INT32" name="data">
1472d4401354Smrg				<fieldref>n</fieldref>
1473d4401354Smrg			</list>
1474d4401354Smrg		</reply>
1475d4401354Smrg	</request>
1476d4401354Smrg	
1477d4401354Smrg	<request name="GetQueryObjectivARB" opcode="165">
1478d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1479d4401354Smrg		<field type="CARD32" name="id" />
1480d4401354Smrg		<field type="CARD32" name="pname" />
1481d4401354Smrg		<reply>
1482d4401354Smrg			<pad bytes="1" />
1483d4401354Smrg			<pad bytes="4" />
1484d4401354Smrg			<field type="CARD32" name="n" />
1485d4401354Smrg			<field type="INT32" name="datum" />
1486d4401354Smrg			<pad bytes="12" />
1487d4401354Smrg			<list type="INT32" name="data">
1488d4401354Smrg				<fieldref>n</fieldref>
1489d4401354Smrg			</list>
1490d4401354Smrg		</reply>
1491d4401354Smrg	</request>
1492d4401354Smrg	
1493d4401354Smrg	<request name="GetQueryObjectuivARB" opcode="166">
1494d4401354Smrg		<field type="CONTEXT_TAG" name="context_tag" />
1495d4401354Smrg		<field type="CARD32" name="id" />
1496d4401354Smrg		<field type="CARD32" name="pname" />
1497d4401354Smrg		<reply>
1498d4401354Smrg			<pad bytes="1" />
1499d4401354Smrg			<pad bytes="4" />
1500d4401354Smrg			<field type="CARD32" name="n" />
1501d4401354Smrg			<field type="CARD32" name="datum" />
1502d4401354Smrg			<pad bytes="12" />
1503d4401354Smrg			<list type="CARD32" name="data">
1504d4401354Smrg				<fieldref>n</fieldref>
1505d4401354Smrg			</list>
1506d4401354Smrg		</reply>
1507d4401354Smrg	</request>
1508d4401354Smrg	
1509d4401354Smrg	<!--
1510d4401354Smrg	GL_ARB_vertex_program
1511d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/ARB/vertex_program.txt
1512d4401354Smrg	XXX: Need to write up vops
1513d4401354Smrg	--> 
1514d4401354Smrg
1515d4401354Smrg	<!--
1516d4401354Smrg	GL_ARB_fragment_program
1517d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/ARB/fragment_program.txt
1518d4401354Smrg	XXX: Need to write up vops
1519d4401354Smrg	-->
1520d4401354Smrg	
1521d4401354Smrg	<!--
1522d4401354Smrg	GL_SGIS_texture_filter4
1523d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/SGIS/texture_filter4.txt
1524d4401354Smrg	XXX: Need to write up vops
1525d4401354Smrg	-->
1526d4401354Smrg
1527d4401354Smrg	<!--
1528d4401354Smrg	GL_EXT_histogram
1529d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/EXT/histogram.txt
1530d4401354Smrg	XXX: Need to write up vops
1531d4401354Smrg	-->
1532d4401354Smrg
1533d4401354Smrg	<!--
1534d4401354Smrg	GL_EXT_convolution
1535d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/EXT/convolution.txt
1536d4401354Smrg	XXX: Need to write up vops
1537d4401354Smrg	-->
1538d4401354Smrg
1539d4401354Smrg	<!--
1540d4401354Smrg	GL_SGI_color_table
1541d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/SGI/color_table.txt
1542d4401354Smrg	XXX: Need to write up vops
1543d4401354Smrg	-->
1544d4401354Smrg
1545d4401354Smrg	<!--
1546d4401354Smrg	GL_EXT_texture_object
1547d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/EXT/texture_object.txt
1548d4401354Smrg	XXX: Need to write up vops
1549d4401354Smrg	-->
1550d4401354Smrg
1551d4401354Smrg	<!--
1552d4401354Smrg	GL_SGIS_detail_texture
1553d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/SGIS/detail_texture.txt
1554d4401354Smrg	XXX: Need to write up vops
1555d4401354Smrg	-->
1556d4401354Smrg
1557d4401354Smrg	<!--
1558d4401354Smrg	GL_SGIS_sharpen_texture
1559d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/SGIS/sharpen_texture.txt
1560d4401354Smrg	XXX: Need to write up vops
1561d4401354Smrg	-->
1562d4401354Smrg
1563d4401354Smrg	<!--
1564d4401354Smrg	GL_SGI_make_current_read
1565d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/SGI/make_current_read.txt
1566d4401354Smrg	XXX: Need to write up vops
1567d4401354Smrg	-->
1568d4401354Smrg
1569d4401354Smrg	<!--
1570d4401354Smrg	GL_EXT_import_context
1571d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/EXT/import_context.txt
1572d4401354Smrg	XXX: Need to write up vops
1573d4401354Smrg	-->
1574d4401354Smrg
1575d4401354Smrg	<!--
1576d4401354Smrg	GL_SGIX_fbconfig
1577d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/SGIX/fbconfig.txt
1578d4401354Smrg	XXX: Need to write up vops
1579d4401354Smrg	-->
1580d4401354Smrg
1581d4401354Smrg	<!--
1582d4401354Smrg	GL_SGIX_pbuffer
1583d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/SGIX/pbuffer.txt
1584d4401354Smrg	XXX: Need to write up vops
1585d4401354Smrg	-->
1586d4401354Smrg
1587d4401354Smrg	<!--
1588d4401354Smrg	GL_EXT_pixel_transform
1589d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/EXT/pixel_transform.txt
1590d4401354Smrg	XXX: Need to write up vops
1591d4401354Smrg	-->
1592d4401354Smrg	
1593d4401354Smrg	<!--
1594d4401354Smrg	GL_NV_register_combiners
1595d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/NV/register_combiners.txt
1596d4401354Smrg	XXX: Need to write up vops
1597d4401354Smrg	-->
1598d4401354Smrg
1599d4401354Smrg	<!--
1600d4401354Smrg	GL_NV_fence
1601d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/NV/fence.txt
1602d4401354Smrg	XXX: Need to write up vops
1603d4401354Smrg	-->
1604d4401354Smrg
1605d4401354Smrg	<!--
1606d4401354Smrg	GL_NV_register_combiners2
1607d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/NV/register_combiners2.txt
1608d4401354Smrg	XXX: Need to write up vops
1609d4401354Smrg	-->
1610d4401354Smrg
1611d4401354Smrg	<!--
1612d4401354Smrg	GL_NV_vertex_program
1613d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/NV/vertex_program.txt
1614d4401354Smrg	XXX: Need to write up vops
1615d4401354Smrg	-->
1616d4401354Smrg
1617d4401354Smrg	<!--
1618d4401354Smrg	GL_NV_vertex_program
1619d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/NV/vertex_program.txt
1620d4401354Smrg	XXX: Need to write up vops
1621d4401354Smrg	-->
1622d4401354Smrg
1623d4401354Smrg	<!--
1624d4401354Smrg	GL_NV_occlusion_query
1625d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/NV/occlusion_query.txt
1626d4401354Smrg	XXX: Need to write up vops
1627d4401354Smrg	-->
1628d4401354Smrg
1629d4401354Smrg	<!--
1630d4401354Smrg	GL_NV_fragment_program
1631d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/NV/fragment_program.txt
1632d4401354Smrg	XXX: Need to write up vops
1633d4401354Smrg	-->
1634d4401354Smrg
1635d4401354Smrg	<!--
1636d4401354Smrg	GL_OES_single_precision
1637d4401354Smrg	http://oss.sgi.com/projects/ogl-sample/registry/OES/single_precision.txt
1638d4401354Smrg	XXX: Need to write up vops
1639d4401354Smrg	-->
1640d4401354Smrg	
1641d4401354Smrg</xcb>
1642