1 {
2 	Copyright:  (c) 1999-2008 Apple Inc. All rights reserved.
3 }
4 {       Pascal Translation:  Gorazd Krosl, <gorazd_1957@yahoo.ca>, October 2009 }
5 
6 {
7     Modified for use with Free Pascal
8     Version 308
9     Please report any bugs to <gpc@microbizz.nl>
10 }
11 
12 {$ifc not defined MACOSALLINCLUDE or not MACOSALLINCLUDE}
13 {$mode macpas}
14 {$modeswitch cblocks}
15 {$packenum 1}
16 {$macro on}
17 {$inline on}
18 {$calling mwpascal}
19 
20 unit gliDispatch;
21 interface
22 {$setc UNIVERSAL_INTERFACES_VERSION := $0400}
23 {$setc GAP_INTERFACES_VERSION := $0308}
24 
25 {$ifc not defined USE_CFSTR_CONSTANT_MACROS}
26     {$setc USE_CFSTR_CONSTANT_MACROS := TRUE}
27 {$endc}
28 
29 {$ifc defined CPUPOWERPC and defined CPUI386}
30 	{$error Conflicting initial definitions for CPUPOWERPC and CPUI386}
31 {$endc}
32 {$ifc defined FPC_BIG_ENDIAN and defined FPC_LITTLE_ENDIAN}
33 	{$error Conflicting initial definitions for FPC_BIG_ENDIAN and FPC_LITTLE_ENDIAN}
34 {$endc}
35 
36 {$ifc not defined __ppc__ and defined CPUPOWERPC32}
37 	{$setc __ppc__ := 1}
38 {$elsec}
39 	{$setc __ppc__ := 0}
40 {$endc}
41 {$ifc not defined __ppc64__ and defined CPUPOWERPC64}
42 	{$setc __ppc64__ := 1}
43 {$elsec}
44 	{$setc __ppc64__ := 0}
45 {$endc}
46 {$ifc not defined __i386__ and defined CPUI386}
47 	{$setc __i386__ := 1}
48 {$elsec}
49 	{$setc __i386__ := 0}
50 {$endc}
51 {$ifc not defined __x86_64__ and defined CPUX86_64}
52 	{$setc __x86_64__ := 1}
53 {$elsec}
54 	{$setc __x86_64__ := 0}
55 {$endc}
56 {$ifc not defined __arm__ and defined CPUARM}
57 	{$setc __arm__ := 1}
58 {$elsec}
59 	{$setc __arm__ := 0}
60 {$endc}
61 {$ifc not defined __arm64__ and defined CPUAARCH64}
62   {$setc __arm64__ := 1}
63 {$elsec}
64   {$setc __arm64__ := 0}
65 {$endc}
66 
67 {$ifc defined cpu64}
68   {$setc __LP64__ := 1}
69 {$elsec}
70   {$setc __LP64__ := 0}
71 {$endc}
72 
73 
74 {$ifc defined __ppc__ and __ppc__ and defined __i386__ and __i386__}
75 	{$error Conflicting definitions for __ppc__ and __i386__}
76 {$endc}
77 
78 {$ifc defined __ppc__ and __ppc__}
79 	{$setc TARGET_CPU_PPC := TRUE}
80 	{$setc TARGET_CPU_PPC64 := FALSE}
81 	{$setc TARGET_CPU_X86 := FALSE}
82 	{$setc TARGET_CPU_X86_64 := FALSE}
83 	{$setc TARGET_CPU_ARM := FALSE}
84 	{$setc TARGET_CPU_ARM64 := FALSE}
85 	{$setc TARGET_OS_MAC := TRUE}
86 	{$setc TARGET_OS_IPHONE := FALSE}
87 	{$setc TARGET_IPHONE_SIMULATOR := FALSE}
88 	{$setc TARGET_OS_EMBEDDED := FALSE}
89 {$elifc defined __ppc64__ and __ppc64__}
90 	{$setc TARGET_CPU_PPC := FALSE}
91 	{$setc TARGET_CPU_PPC64 := TRUE}
92 	{$setc TARGET_CPU_X86 := FALSE}
93 	{$setc TARGET_CPU_X86_64 := FALSE}
94 	{$setc TARGET_CPU_ARM := FALSE}
95 	{$setc TARGET_CPU_ARM64 := FALSE}
96 	{$setc TARGET_OS_MAC := TRUE}
97 	{$setc TARGET_OS_IPHONE := FALSE}
98 	{$setc TARGET_IPHONE_SIMULATOR := FALSE}
99 	{$setc TARGET_OS_EMBEDDED := FALSE}
100 {$elifc defined __i386__ and __i386__}
101 	{$setc TARGET_CPU_PPC := FALSE}
102 	{$setc TARGET_CPU_PPC64 := FALSE}
103 	{$setc TARGET_CPU_X86 := TRUE}
104 	{$setc TARGET_CPU_X86_64 := FALSE}
105 	{$setc TARGET_CPU_ARM := FALSE}
106 	{$setc TARGET_CPU_ARM64 := FALSE}
107 {$ifc defined iphonesim}
108  	{$setc TARGET_OS_MAC := FALSE}
109 	{$setc TARGET_OS_IPHONE := TRUE}
110 	{$setc TARGET_IPHONE_SIMULATOR := TRUE}
111 {$elsec}
112 	{$setc TARGET_OS_MAC := TRUE}
113 	{$setc TARGET_OS_IPHONE := FALSE}
114 	{$setc TARGET_IPHONE_SIMULATOR := FALSE}
115 {$endc}
116 	{$setc TARGET_OS_EMBEDDED := FALSE}
117 {$elifc defined __x86_64__ and __x86_64__}
118 	{$setc TARGET_CPU_PPC := FALSE}
119 	{$setc TARGET_CPU_PPC64 := FALSE}
120 	{$setc TARGET_CPU_X86 := FALSE}
121 	{$setc TARGET_CPU_X86_64 := TRUE}
122 	{$setc TARGET_CPU_ARM := FALSE}
123 	{$setc TARGET_CPU_ARM64 := FALSE}
124 {$ifc defined iphonesim}
125  	{$setc TARGET_OS_MAC := FALSE}
126 	{$setc TARGET_OS_IPHONE := TRUE}
127 	{$setc TARGET_IPHONE_SIMULATOR := TRUE}
128 {$elsec}
129 	{$setc TARGET_OS_MAC := TRUE}
130 	{$setc TARGET_OS_IPHONE := FALSE}
131 	{$setc TARGET_IPHONE_SIMULATOR := FALSE}
132 {$endc}
133 	{$setc TARGET_OS_EMBEDDED := FALSE}
134 {$elifc defined __arm__ and __arm__}
135 	{$setc TARGET_CPU_PPC := FALSE}
136 	{$setc TARGET_CPU_PPC64 := FALSE}
137 	{$setc TARGET_CPU_X86 := FALSE}
138 	{$setc TARGET_CPU_X86_64 := FALSE}
139 	{$setc TARGET_CPU_ARM := TRUE}
140 	{$setc TARGET_CPU_ARM64 := FALSE}
141 	{$setc TARGET_OS_MAC := FALSE}
142 	{$setc TARGET_OS_IPHONE := TRUE}
143 	{$setc TARGET_IPHONE_SIMULATOR := FALSE}
144 	{$setc TARGET_OS_EMBEDDED := TRUE}
145 {$elifc defined __arm64__ and __arm64__}
146 	{$setc TARGET_CPU_PPC := FALSE}
147 	{$setc TARGET_CPU_PPC64 := FALSE}
148 	{$setc TARGET_CPU_X86 := FALSE}
149 	{$setc TARGET_CPU_X86_64 := FALSE}
150 	{$setc TARGET_CPU_ARM := FALSE}
151 	{$setc TARGET_CPU_ARM64 := TRUE}
152 {$ifc defined ios}
153 	{$setc TARGET_OS_MAC := FALSE}
154 	{$setc TARGET_OS_IPHONE := TRUE}
155 	{$setc TARGET_OS_EMBEDDED := TRUE}
156 {$elsec}
157 	{$setc TARGET_OS_MAC := TRUE}
158 	{$setc TARGET_OS_IPHONE := FALSE}
159 	{$setc TARGET_OS_EMBEDDED := FALSE}
160 {$endc}
161 	{$setc TARGET_IPHONE_SIMULATOR := FALSE}
162 {$elsec}
163 	{$error __ppc__ nor __ppc64__ nor __i386__ nor __x86_64__ nor __arm__ nor __arm64__ is defined.}
164 {$endc}
165 
166 {$ifc defined __LP64__ and __LP64__ }
167   {$setc TARGET_CPU_64 := TRUE}
168 {$elsec}
169   {$setc TARGET_CPU_64 := FALSE}
170 {$endc}
171 
172 {$ifc defined FPC_BIG_ENDIAN}
173 	{$setc TARGET_RT_BIG_ENDIAN := TRUE}
174 	{$setc TARGET_RT_LITTLE_ENDIAN := FALSE}
175 {$elifc defined FPC_LITTLE_ENDIAN}
176 	{$setc TARGET_RT_BIG_ENDIAN := FALSE}
177 	{$setc TARGET_RT_LITTLE_ENDIAN := TRUE}
178 {$elsec}
179 	{$error Neither FPC_BIG_ENDIAN nor FPC_LITTLE_ENDIAN are defined.}
180 {$endc}
181 {$setc ACCESSOR_CALLS_ARE_FUNCTIONS := TRUE}
182 {$setc CALL_NOT_IN_CARBON := FALSE}
183 {$setc OLDROUTINENAMES := FALSE}
184 {$setc OPAQUE_TOOLBOX_STRUCTS := TRUE}
185 {$setc OPAQUE_UPP_TYPES := TRUE}
186 {$setc OTCARBONAPPLICATION := TRUE}
187 {$setc OTKERNEL := FALSE}
188 {$setc PM_USE_SESSION_APIS := TRUE}
189 {$setc TARGET_API_MAC_CARBON := TRUE}
190 {$setc TARGET_API_MAC_OS8 := FALSE}
191 {$setc TARGET_API_MAC_OSX := TRUE}
192 {$setc TARGET_CARBON := TRUE}
193 {$setc TARGET_CPU_68K := FALSE}
194 {$setc TARGET_CPU_MIPS := FALSE}
195 {$setc TARGET_CPU_SPARC := FALSE}
196 {$setc TARGET_OS_UNIX := FALSE}
197 {$setc TARGET_OS_WIN32 := FALSE}
198 {$setc TARGET_RT_MAC_68881 := FALSE}
199 {$setc TARGET_RT_MAC_CFM := FALSE}
200 {$setc TARGET_RT_MAC_MACHO := TRUE}
201 {$setc TYPED_FUNCTION_POINTERS := TRUE}
202 {$setc TYPE_BOOL := FALSE}
203 {$setc TYPE_EXTENDED := FALSE}
204 {$setc TYPE_LONGLONG := TRUE}
205 uses MacTypes, macgl, macglext, gliContexts;
206 {$endc} {not MACOSALLINCLUDE}
207 
208 
209 {$ifc TARGET_OS_MAC}
210 
211 {$ALIGN POWER}
212 
213 
214 {
215 ** GL function dispatch table type
216 }
217 type
218 	PGLIFunctionDispatch = ^GLIFunctionDispatch;
219 	GLIFunctionDispatch = record
220 		accum : procedure( ctx: GLIContext; op: GLenum; value: GLfloat );
221 		alpha_func : procedure( ctx: GLIContext; func: GLenum; ref: GLclampf );
ctxnull222 		are_textures_resident : function( ctx: GLIContext; n: GLsizei; const textures: PGLuint; residences: PGLboolean ): GLboolean;
223 		array_element : procedure( ctx: GLIContext; i: GLint );
224 		begin_ : procedure( ctx: GLIContext; mode: GLenum );
225 		bind_texture : procedure( ctx: GLIContext; target: GLenum; texture: GLuint );
226 		bitmap : procedure( ctx: GLIContext; width: GLsizei; height: GLsizei; xorig: GLfloat; yorig: GLfloat; xmove: GLfloat; ymove: GLfloat; const bitmap: PGLubyte );
227 		blend_func : procedure( ctx: GLIContext; sfactor: GLenum; dfactor: GLenum );
228 		call_list : procedure( ctx: GLIContext; list: GLuint );
229 		call_lists : procedure( ctx: GLIContext; n: GLsizei; typ: GLenum; const lists: UnivPtr );
230 		clear : procedure( ctx: GLIContext; mask: GLbitfield );
231 		clear_accum : procedure( ctx: GLIContext; red: GLfloat; green: GLfloat; blue: GLfloat; alpha: GLfloat );
232 		clear_color : procedure( ctx: GLIContext; red: GLclampf; green: GLclampf; blue: GLclampf; alpha: GLclampf );
233 		clear_depth : procedure( ctx: GLIContext; depth: GLclampd );
234 		clear_index : procedure( ctx: GLIContext; c: GLfloat );
235 		clear_stencil : procedure( ctx: GLIContext; s: GLint );
236 		clip_plane : procedure( ctx: GLIContext; plane: GLenum; const equation: PGLdouble );
237 		color3b : procedure( ctx: GLIContext; red: GLbyte; green: GLbyte; blue: GLbyte );
238 		color3bv : procedure( ctx: GLIContext; const v: PGLbyte );
239 		color3d : procedure( ctx: GLIContext; red: GLdouble; green: GLdouble; blue: GLdouble );
240 		color3dv : procedure( ctx: GLIContext; const v: PGLdouble );
241 		color3f : procedure( ctx: GLIContext; red: GLfloat; green: GLfloat; blue: GLfloat );
242 		color3fv : procedure( ctx: GLIContext; const v: PGLfloat );
243 		color3i : procedure( ctx: GLIContext; red: GLint; green: GLint; blue: GLint );
244 		color3iv : procedure( ctx: GLIContext; const v: PGLint );
245 		color3s : procedure( ctx: GLIContext; red: GLshort; green: GLshort; blue: GLshort );
246 		color3sv : procedure( ctx: GLIContext; const v: PGLshort );
247 		color3ub : procedure( ctx: GLIContext; red: GLubyte; green: GLubyte; blue: GLubyte );
248 		color3ubv : procedure( ctx: GLIContext; const v: PGLubyte );
249 		color3ui : procedure( ctx: GLIContext; red: GLuint; green: GLuint; blue: GLuint );
250 		color3uiv : procedure( ctx: GLIContext; const v: PGLuint );
251 		color3us : procedure( ctx: GLIContext; red: GLushort; green: GLushort; blue: GLushort );
252 		color3usv : procedure( ctx: GLIContext; const v: PGLushort );
253 		color4b : procedure( ctx: GLIContext; red: GLbyte; green: GLbyte; blue: GLbyte; alpha: GLbyte );
254 		color4bv : procedure( ctx: GLIContext; const v: PGLbyte );
255 		color4d : procedure( ctx: GLIContext; red: GLdouble; green: GLdouble; blue: GLdouble; alpha: GLdouble );
256 		color4dv : procedure( ctx: GLIContext; const v: PGLdouble );
257 		color4f : procedure( ctx: GLIContext; red: GLfloat; green: GLfloat; blue: GLfloat; alpha: GLfloat );
258 		color4fv : procedure( ctx: GLIContext; const v: PGLfloat );
259 		color4i : procedure( ctx: GLIContext; red: GLint; green: GLint; blue: GLint; alpha: GLint );
260 		color4iv : procedure( ctx: GLIContext; const v: PGLint );
261 		color4s : procedure( ctx: GLIContext; red: GLshort; green: GLshort; blue: GLshort; alpha: GLshort );
262 		color4sv : procedure( ctx: GLIContext; const v: PGLshort );
263 		color4ub : procedure( ctx: GLIContext; red: GLubyte; green: GLubyte; blue: GLubyte; alpha: GLubyte );
264 		color4ubv : procedure( ctx: GLIContext; const v: PGLubyte );
265 		color4ui : procedure( ctx: GLIContext; red: GLuint; green: GLuint; blue: GLuint; alpha: GLuint );
266 		color4uiv : procedure( ctx: GLIContext; const v: PGLuint );
267 		color4us : procedure( ctx: GLIContext; red: GLushort; green: GLushort; blue: GLushort; alpha: GLushort );
268 		color4usv : procedure( ctx: GLIContext; const v: PGLushort );
269 		color_mask : procedure( ctx: GLIContext; red: GLboolean; green: GLboolean; blue: GLboolean; alpha: GLboolean );
270 		color_material : procedure( ctx: GLIContext; face: GLenum; mode: GLenum );
271 		color_pointer : procedure( ctx: GLIContext; size: GLint; typ: GLenum; stride: GLsizei; const pointr: UnivPtr );
272 		copy_pixels : procedure( ctx: GLIContext; x: GLint; y: GLint; width: GLsizei; height: GLsizei; typ: GLenum );
273 		copy_tex_image1D : procedure( ctx: GLIContext; target: GLenum; level: GLint; internalFormat: GLenum; x: GLint; y: GLint; width: GLsizei; border: GLint );
274 		copy_tex_image2D : procedure( ctx: GLIContext; target: GLenum; level: GLint; internalFormat: GLenum; x: GLint; y: GLint; width: GLsizei; height: GLsizei; border: GLint );
275 		copy_tex_sub_image1D : procedure( ctx: GLIContext; target: GLenum; level: GLint; xoffset: GLint; x: GLint; y: GLint; width: GLsizei );
276 		copy_tex_sub_image2D : procedure( ctx: GLIContext; target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; x: GLint; y: GLint; width: GLsizei; height: GLsizei );
277 		cull_face : procedure( ctx: GLIContext; mode: GLenum );
278 		delete_lists : procedure( ctx: GLIContext; list: GLuint; range: GLsizei );
279 		delete_textures : procedure( ctx: GLIContext; n: GLsizei; const textures: PGLuint );
280 		depth_func : procedure( ctx: GLIContext; func: GLenum );
281 		depth_mask : procedure( ctx: GLIContext; flag: GLboolean );
282 		depth_range : procedure( ctx: GLIContext; zNear: GLclampd; zFar: GLclampd );
283 		disable : procedure( ctx: GLIContext; cap: GLenum );
284 		disable_client_state : procedure( ctx: GLIContext; arry: GLenum );
285 		draw_arrays : procedure( ctx: GLIContext; mode: GLenum; first: GLint; count: GLsizei );
286 		draw_buffer : procedure( ctx: GLIContext; mode: GLenum );
287 		draw_elements : procedure( ctx: GLIContext; mode: GLenum; count: GLsizei; typ: GLenum; const indices: UnivPtr );
288 		draw_pixels : procedure( ctx: GLIContext; width: GLsizei; height: GLsizei; format: GLenum; typ: GLenum; const pixels: UnivPtr );
289 		edge_flag : procedure( ctx: GLIContext; flag: GLboolean );
290 		edge_flag_pointer : procedure( ctx: GLIContext; stride: GLsizei; const pointr: UnivPtr );
291 		edge_flagv : procedure( ctx: GLIContext; const flag: PGLboolean );
292 		enable : procedure( ctx: GLIContext; cap: GLenum );
293 		enable_client_state : procedure( ctx: GLIContext; arry: GLenum );
294 		end_ : procedure( ctx: GLIContext );
295 		end_list : procedure( ctx: GLIContext );
296 		eval_coord1d : procedure( ctx: GLIContext; u: GLdouble );
297 		eval_coord1dv : procedure( ctx: GLIContext; const u: PGLdouble );
298 		eval_coord1f : procedure( ctx: GLIContext; u: GLfloat );
299 		eval_coord1fv : procedure( ctx: GLIContext; const u: PGLfloat );
300 		eval_coord2d : procedure( ctx: GLIContext; u: GLdouble; v: GLdouble );
301 		eval_coord2dv : procedure( ctx: GLIContext; const u: PGLdouble );
302 		eval_coord2f : procedure( ctx: GLIContext; u: GLfloat; v: GLfloat );
303 		eval_coord2fv : procedure( ctx: GLIContext; const u: PGLfloat );
304 		eval_mesh1 : procedure( ctx: GLIContext; mode: GLenum; i1: GLint; i2: GLint );
305 		eval_mesh2 : procedure( ctx: GLIContext; mode: GLenum; i1: GLint; i2: GLint; j1: GLint; j2: GLint );
306 		eval_point1 : procedure( ctx: GLIContext; i: GLint );
307 		eval_point2 : procedure( ctx: GLIContext; i: GLint; j: GLint );
308 		feedback_buffer : procedure( ctx: GLIContext; size: GLsizei; typ: GLenum; buffer: PGLfloat );
309 		finish : procedure( ctx: GLIContext );
310 		flush : procedure( ctx: GLIContext );
311 		fogf : procedure( ctx: GLIContext; pname: GLenum; param: GLfloat );
312 		fogfv : procedure( ctx: GLIContext; pname: GLenum; const params: PGLfloat );
313 		fogi : procedure( ctx: GLIContext; pname: GLenum; param: GLint );
314 		fogiv : procedure( ctx: GLIContext; pname: GLenum; const params: PGLint );
315 		front_face : procedure( ctx: GLIContext; mode: GLenum );
316 		frustum : procedure( ctx: GLIContext; left: GLdouble; right: GLdouble; bottom: GLdouble; top: GLdouble; zNear: GLdouble; zFar: GLdouble );
ctxnull317 		gen_lists : function( ctx: GLIContext; range: GLsizei ): GLuint;
318 		gen_textures : procedure( ctx: GLIContext; n: GLsizei; textures: PGLuint );
319 		get_booleanv : procedure( ctx: GLIContext; pname: GLenum; params: PGLboolean );
320 		get_clip_plane : procedure( ctx: GLIContext; plane: GLenum; equation: PGLdouble );
321 		get_doublev : procedure( ctx: GLIContext; pname: GLenum; params: PGLdouble );
ctxnull322 		get_error : function( ctx: GLIContext ): GLenum;
323 		get_floatv : procedure( ctx: GLIContext; pname: GLenum; params: PGLfloat );
324 		get_integerv : procedure( ctx: GLIContext; pname: GLenum; params: PGLint );
325 		get_lightfv : procedure( ctx: GLIContext; light: GLenum; pname: GLenum; params: PGLfloat );
326 		get_lightiv : procedure( ctx: GLIContext; light: GLenum; pname: GLenum; params: PGLint );
327 		get_mapdv : procedure( ctx: GLIContext; target: GLenum; query: GLenum; v: PGLdouble );
328 		get_mapfv : procedure( ctx: GLIContext; target: GLenum; query: GLenum; v: PGLfloat );
329 		get_mapiv : procedure( ctx: GLIContext; target: GLenum; query: GLenum; v: PGLint );
330 		get_materialfv : procedure( ctx: GLIContext; face: GLenum; pname: GLenum; params: PGLfloat );
331 		get_materialiv : procedure( ctx: GLIContext; face: GLenum; pname: GLenum; params: PGLint );
332 		get_pixel_mapfv : procedure( ctx: GLIContext; map: GLenum; values: PGLfloat );
333 		get_pixel_mapuiv : procedure( ctx: GLIContext; map: GLenum; values: PGLuint );
334 		get_pixel_mapusv : procedure( ctx: GLIContext; map: GLenum; values: PGLushort );
335 		get_pointerv : procedure( ctx: GLIContext; pname: GLenum; params: UnivPtrPtr );
336 		get_polygon_stipple : procedure( ctx: GLIContext; mask: PGLubyte );
ctxnull337 		get_string : function( ctx: GLIContext; name: GLenum ): PChar;
338 		get_tex_envfv : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: PGLfloat );
339 		get_tex_enviv : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: PGLint );
340 		get_tex_gendv : procedure( ctx: GLIContext; coord: GLenum; pname: GLenum; params: PGLdouble );
341 		get_tex_genfv : procedure( ctx: GLIContext; coord: GLenum; pname: GLenum; params: PGLfloat );
342 		get_tex_geniv : procedure( ctx: GLIContext; coord: GLenum; pname: GLenum; params: PGLint );
343 		get_tex_image : procedure( ctx: GLIContext; target: GLenum; level: GLint; format: GLenum; typ: GLenum; pixels: UnivPtr );
344 		get_tex_level_parameterfv : procedure( ctx: GLIContext; target: GLenum; level: GLint; pname: GLenum; params: PGLfloat );
345 		get_tex_level_parameteriv : procedure( ctx: GLIContext; target: GLenum; level: GLint; pname: GLenum; params: PGLint );
346 		get_tex_parameterfv : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: PGLfloat );
347 		get_tex_parameteriv : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: PGLint );
348 		hint : procedure( ctx: GLIContext; target: GLenum; mode: GLenum );
349 		index_mask : procedure( ctx: GLIContext; mask: GLuint );
350 		index_pointer : procedure( ctx: GLIContext; typ: GLenum; stride: GLsizei; const pointr: UnivPtr );
351 		indexd : procedure( ctx: GLIContext; c: GLdouble );
352 		indexdv : procedure( ctx: GLIContext; const c: PGLdouble );
353 		indexf : procedure( ctx: GLIContext; c: GLfloat );
354 		indexfv : procedure( ctx: GLIContext; const c: PGLfloat );
355 		indexi : procedure( ctx: GLIContext; c: GLint );
356 		indexiv : procedure( ctx: GLIContext; const c: PGLint );
357 		indexs : procedure( ctx: GLIContext; c: GLshort );
358 		indexsv : procedure( ctx: GLIContext; const c: PGLshort );
359 		indexub : procedure( ctx: GLIContext; c: GLubyte );
360 		indexubv : procedure( ctx: GLIContext; const c: PGLubyte );
361 		init_names : procedure( ctx: GLIContext );
362 		interleaved_arrays : procedure( ctx: GLIContext; format: GLenum; stride: GLsizei; const pointr: UnivPtr );
ctxnull363 		is_enabled : function( ctx: GLIContext; cap: GLenum ): GLboolean;
ctxnull364 		is_list : function( ctx: GLIContext; list: GLuint ): GLboolean;
ctxnull365 		is_texture : function( ctx: GLIContext; texture: GLuint ): GLboolean;
366 		light_modelf : procedure( ctx: GLIContext; pname: GLenum; param: GLfloat );
367 		light_modelfv : procedure( ctx: GLIContext; pname: GLenum; const params: PGLfloat );
368 		light_modeli : procedure( ctx: GLIContext; pname: GLenum; param: GLint );
369 		light_modeliv : procedure( ctx: GLIContext; pname: GLenum; const params: PGLint );
370 		lightf : procedure( ctx: GLIContext; light: GLenum; pname: GLenum; param: GLfloat );
371 		lightfv : procedure( ctx: GLIContext; light: GLenum; pname: GLenum; const params: PGLfloat );
372 		lighti : procedure( ctx: GLIContext; light: GLenum; pname: GLenum; param: GLint );
373 		lightiv : procedure( ctx: GLIContext; light: GLenum; pname: GLenum; const params: PGLint );
374 		line_stipple : procedure( ctx: GLIContext; factor: GLint; pattern: GLushort );
375 		line_width : procedure( ctx: GLIContext; width: GLfloat );
376 		list_base : procedure( ctx: GLIContext; base: GLuint );
377 		load_identity : procedure( ctx: GLIContext );
378 		load_matrixd : procedure( ctx: GLIContext; const m: PGLdouble );
379 		load_matrixf : procedure( ctx: GLIContext; const m: PGLfloat );
380 		load_name : procedure( ctx: GLIContext; name: GLuint );
381 		logic_op : procedure( ctx: GLIContext; opcode: GLenum );
382 		map1d : procedure( ctx: GLIContext; target: GLenum; u1: GLdouble; u2: GLdouble; stride: GLint; order: GLint; const points: PGLdouble );
383 		map1f : procedure( ctx: GLIContext; target: GLenum; u1: GLfloat; u2: GLfloat; stride: GLint; order: GLint; const points: PGLfloat );
384 		map2d : procedure( ctx: GLIContext; target: GLenum; u1: GLdouble; u2: GLdouble; ustride: GLint; uorder: GLint; v1: GLdouble; v2: GLdouble; vstride: GLint; vorder: GLint; const points: PGLdouble );
385 		map2f : procedure( ctx: GLIContext; target: GLenum; u1: GLfloat; u2: GLfloat; ustride: GLint; uorder: GLint; v1: GLfloat; v2: GLfloat; vstride: GLint; vorder: GLint; const points: PGLfloat );
386 		map_grid1d : procedure( ctx: GLIContext; un: GLint; u1: GLdouble; u2: GLdouble );
387 		map_grid1f : procedure( ctx: GLIContext; un: GLint; u1: GLfloat; u2: GLfloat );
388 		map_grid2d : procedure( ctx: GLIContext; un: GLint; u1: GLdouble; u2: GLdouble; vn: GLint; v1: GLdouble; v2: GLdouble );
389 		map_grid2f : procedure( ctx: GLIContext; un: GLint; u1: GLfloat; u2: GLfloat; vn: GLint; v1: GLfloat; v2: GLfloat );
390 		materialf : procedure( ctx: GLIContext; face: GLenum; pname: GLenum; param: GLfloat );
391 		materialfv : procedure( ctx: GLIContext; face: GLenum; pname: GLenum; const params: PGLfloat );
392 		materiali : procedure( ctx: GLIContext; face: GLenum; pname: GLenum; param: GLint );
393 		materialiv : procedure( ctx: GLIContext; face: GLenum; pname: GLenum; const params: PGLint );
394 		matrix_mode : procedure( ctx: GLIContext; mode: GLenum );
395 		mult_matrixd : procedure( ctx: GLIContext; const m: PGLdouble );
396 		mult_matrixf : procedure( ctx: GLIContext; const m: PGLfloat );
397 		new_list : procedure( ctx: GLIContext; list: GLuint; mode: GLenum );
398 		normal3b : procedure( ctx: GLIContext; nx: GLbyte; ny: GLbyte; nz: GLbyte );
399 		normal3bv : procedure( ctx: GLIContext; const v: PGLbyte );
400 		normal3d : procedure( ctx: GLIContext; nx: GLdouble; ny: GLdouble; nz: GLdouble );
401 		normal3dv : procedure( ctx: GLIContext; const v: PGLdouble );
402 		normal3f : procedure( ctx: GLIContext; nx: GLfloat; ny: GLfloat; nz: GLfloat );
403 		normal3fv : procedure( ctx: GLIContext; const v: PGLfloat );
404 		normal3i : procedure( ctx: GLIContext; nx: GLint; ny: GLint; nz: GLint );
405 		normal3iv : procedure( ctx: GLIContext; const v: PGLint );
406 		normal3s : procedure( ctx: GLIContext; nx: GLshort; ny: GLshort; nz: GLshort );
407 		normal3sv : procedure( ctx: GLIContext; const v: PGLshort );
408 		normal_pointer : procedure( ctx: GLIContext; typ: GLenum; stride: GLsizei; const pointr: UnivPtr );
409 		ortho : procedure( ctx: GLIContext; left: GLdouble; right: GLdouble; bottom: GLdouble; top: GLdouble; zNear: GLdouble; zFar: GLdouble );
410 		pass_through : procedure( ctx: GLIContext; token: GLfloat );
411 		pixel_mapfv : procedure( ctx: GLIContext; map: GLenum; mapsize: GLsizei; const values: PGLfloat );
412 		pixel_mapuiv : procedure( ctx: GLIContext; map: GLenum; mapsize: GLsizei; const values: PGLuint );
413 		pixel_mapusv : procedure( ctx: GLIContext; map: GLenum; mapsize: GLsizei; const values: PGLushort );
414 		pixel_storef : procedure( ctx: GLIContext; pname: GLenum; param: GLfloat );
415 		pixel_storei : procedure( ctx: GLIContext; pname: GLenum; param: GLint );
416 		pixel_transferf : procedure( ctx: GLIContext; pname: GLenum; param: GLfloat );
417 		pixel_transferi : procedure( ctx: GLIContext; pname: GLenum; param: GLint );
418 		pixel_zoom : procedure( ctx: GLIContext; xfactor: GLfloat; yfactor: GLfloat );
419 		point_size : procedure( ctx: GLIContext; size: GLfloat );
420 		polygon_mode : procedure( ctx: GLIContext; face: GLenum; mode: GLenum );
421 		polygon_offset : procedure( ctx: GLIContext; factor: GLfloat; units: GLfloat );
422 		polygon_stipple : procedure( ctx: GLIContext; const mask: PGLubyte );
423 		pop_attrib : procedure( ctx: GLIContext );
424 		pop_client_attrib : procedure( ctx: GLIContext );
425 		pop_matrix : procedure( ctx: GLIContext );
426 		pop_name : procedure( ctx: GLIContext );
427 		prioritize_textures : procedure( ctx: GLIContext; n: GLsizei; const textures: PGLuint; const priorities: PGLclampf );
428 		push_attrib : procedure( ctx: GLIContext; mask: GLbitfield );
429 		push_client_attrib : procedure( ctx: GLIContext; mask: GLbitfield );
430 		push_matrix : procedure( ctx: GLIContext );
431 		push_name : procedure( ctx: GLIContext; name: GLuint );
432 		raster_pos2d : procedure( ctx: GLIContext; x: GLdouble; y: GLdouble );
433 		raster_pos2dv : procedure( ctx: GLIContext; const v: PGLdouble );
434 		raster_pos2f : procedure( ctx: GLIContext; x: GLfloat; y: GLfloat );
435 		raster_pos2fv : procedure( ctx: GLIContext; const v: PGLfloat );
436 		raster_pos2i : procedure( ctx: GLIContext; x: GLint; y: GLint );
437 		raster_pos2iv : procedure( ctx: GLIContext; const v: PGLint );
438 		raster_pos2s : procedure( ctx: GLIContext; x: GLshort; y: GLshort );
439 		raster_pos2sv : procedure( ctx: GLIContext; const v: PGLshort );
440 		raster_pos3d : procedure( ctx: GLIContext; x: GLdouble; y: GLdouble; z: GLdouble );
441 		raster_pos3dv : procedure( ctx: GLIContext; const v: PGLdouble );
442 		raster_pos3f : procedure( ctx: GLIContext; x: GLfloat; y: GLfloat; z: GLfloat );
443 		raster_pos3fv : procedure( ctx: GLIContext; const v: PGLfloat );
444 		raster_pos3i : procedure( ctx: GLIContext; x: GLint; y: GLint; z: GLint );
445 		raster_pos3iv : procedure( ctx: GLIContext; const v: PGLint );
446 		raster_pos3s : procedure( ctx: GLIContext; x: GLshort; y: GLshort; z: GLshort );
447 		raster_pos3sv : procedure( ctx: GLIContext; const v: PGLshort );
448 		raster_pos4d : procedure( ctx: GLIContext; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble );
449 		raster_pos4dv : procedure( ctx: GLIContext; const v: PGLdouble );
450 		raster_pos4f : procedure( ctx: GLIContext; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat );
451 		raster_pos4fv : procedure( ctx: GLIContext; const v: PGLfloat );
452 		raster_pos4i : procedure( ctx: GLIContext; x: GLint; y: GLint; z: GLint; w: GLint );
453 		raster_pos4iv : procedure( ctx: GLIContext; const v: PGLint );
454 		raster_pos4s : procedure( ctx: GLIContext; x: GLshort; y: GLshort; z: GLshort; w: GLshort );
455 		raster_pos4sv : procedure( ctx: GLIContext; const v: PGLshort );
456 		read_buffer : procedure( ctx: GLIContext; mode: GLenum );
457 		read_pixels : procedure( ctx: GLIContext; x: GLint; y: GLint; width: GLsizei; height: GLsizei; format: GLenum; typ: GLenum; pixels: UnivPtr );
458 		rectd : procedure( ctx: GLIContext; x1: GLdouble; y1: GLdouble; x2: GLdouble; y2: GLdouble );
459 		rectdv : procedure( ctx: GLIContext; const v1: PGLdouble; const v2: PGLdouble );
460 		rectf : procedure( ctx: GLIContext; x1: GLfloat; y1: GLfloat; x2: GLfloat; y2: GLfloat );
461 		rectfv : procedure( ctx: GLIContext; const v1: PGLfloat; const v2: PGLfloat );
462 		recti : procedure( ctx: GLIContext; x1: GLint; y1: GLint; x2: GLint; y2: GLint );
463 		rectiv : procedure( ctx: GLIContext; const v1: PGLint; const v2: PGLint );
464 		rects : procedure( ctx: GLIContext; x1: GLshort; y1: GLshort; x2: GLshort; y2: GLshort );
465 		rectsv : procedure( ctx: GLIContext; const v1: PGLshort; const v2: PGLshort );
ctxnull466 		render_mode : function( ctx: GLIContext; mode: GLenum ): GLint;
467 		rotated : procedure( ctx: GLIContext; angle: GLdouble; x: GLdouble; y: GLdouble; z: GLdouble );
468 		rotatef : procedure( ctx: GLIContext; angle: GLfloat; x: GLfloat; y: GLfloat; z: GLfloat );
469 		scaled : procedure( ctx: GLIContext; x: GLdouble; y: GLdouble; z: GLdouble );
470 		scalef : procedure( ctx: GLIContext; x: GLfloat; y: GLfloat; z: GLfloat );
471 		scissor : procedure( ctx: GLIContext; x: GLint; y: GLint; width: GLsizei; height: GLsizei );
472 		select_buffer : procedure( ctx: GLIContext; size: GLsizei; buffer: PGLuint );
473 		shade_model : procedure( ctx: GLIContext; mode: GLenum );
474 		stencil_func : procedure( ctx: GLIContext; func: GLenum; ref: GLint; mask: GLuint );
475 		stencil_mask : procedure( ctx: GLIContext; mask: GLuint );
476 		stencil_op : procedure( ctx: GLIContext; fail: GLenum; zfail: GLenum; zpass: GLenum );
477 		tex_coord1d : procedure( ctx: GLIContext; s: GLdouble );
478 		tex_coord1dv : procedure( ctx: GLIContext; const v: PGLdouble );
479 		tex_coord1f : procedure( ctx: GLIContext; s: GLfloat );
480 		tex_coord1fv : procedure( ctx: GLIContext; const v: PGLfloat );
481 		tex_coord1i : procedure( ctx: GLIContext; s: GLint );
482 		tex_coord1iv : procedure( ctx: GLIContext; const v: PGLint );
483 		tex_coord1s : procedure( ctx: GLIContext; s: GLshort );
484 		tex_coord1sv : procedure( ctx: GLIContext; const v: PGLshort );
485 		tex_coord2d : procedure( ctx: GLIContext; s: GLdouble; t: GLdouble );
486 		tex_coord2dv : procedure( ctx: GLIContext; const v: PGLdouble );
487 		tex_coord2f : procedure( ctx: GLIContext; s: GLfloat; t: GLfloat );
488 		tex_coord2fv : procedure( ctx: GLIContext; const v: PGLfloat );
489 		tex_coord2i : procedure( ctx: GLIContext; s: GLint; t: GLint );
490 		tex_coord2iv : procedure( ctx: GLIContext; const v: PGLint );
491 		tex_coord2s : procedure( ctx: GLIContext; s: GLshort; t: GLshort );
492 		tex_coord2sv : procedure( ctx: GLIContext; const v: PGLshort );
493 		tex_coord3d : procedure( ctx: GLIContext; s: GLdouble; t: GLdouble; r: GLdouble );
494 		tex_coord3dv : procedure( ctx: GLIContext; const v: PGLdouble );
495 		tex_coord3f : procedure( ctx: GLIContext; s: GLfloat; t: GLfloat; r: GLfloat );
496 		tex_coord3fv : procedure( ctx: GLIContext; const v: PGLfloat );
497 		tex_coord3i : procedure( ctx: GLIContext; s: GLint; t: GLint; r: GLint );
498 		tex_coord3iv : procedure( ctx: GLIContext; const v: PGLint );
499 		tex_coord3s : procedure( ctx: GLIContext; s: GLshort; t: GLshort; r: GLshort );
500 		tex_coord3sv : procedure( ctx: GLIContext; const v: PGLshort );
501 		tex_coord4d : procedure( ctx: GLIContext; s: GLdouble; t: GLdouble; r: GLdouble; q: GLdouble );
502 		tex_coord4dv : procedure( ctx: GLIContext; const v: PGLdouble );
503 		tex_coord4f : procedure( ctx: GLIContext; s: GLfloat; t: GLfloat; r: GLfloat; q: GLfloat );
504 		tex_coord4fv : procedure( ctx: GLIContext; const v: PGLfloat );
505 		tex_coord4i : procedure( ctx: GLIContext; s: GLint; t: GLint; r: GLint; q: GLint );
506 		tex_coord4iv : procedure( ctx: GLIContext; const v: PGLint );
507 		tex_coord4s : procedure( ctx: GLIContext; s: GLshort; t: GLshort; r: GLshort; q: GLshort );
508 		tex_coord4sv : procedure( ctx: GLIContext; const v: PGLshort );
509 		tex_coord_pointer : procedure( ctx: GLIContext; size: GLint; typ: GLenum; stride: GLsizei; const pointr: UnivPtr );
510 		tex_envf : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; param: GLfloat );
511 		tex_envfv : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; const params: PGLfloat );
512 		tex_envi : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; param: GLint );
513 		tex_enviv : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; const params: PGLint );
514 		tex_gend : procedure( ctx: GLIContext; coord: GLenum; pname: GLenum; param: GLdouble );
515 		tex_gendv : procedure( ctx: GLIContext; coord: GLenum; pname: GLenum; const params: PGLdouble );
516 		tex_genf : procedure( ctx: GLIContext; coord: GLenum; pname: GLenum; param: GLfloat );
517 		tex_genfv : procedure( ctx: GLIContext; coord: GLenum; pname: GLenum; const params: PGLfloat );
518 		tex_geni : procedure( ctx: GLIContext; coord: GLenum; pname: GLenum; param: GLint );
519 		tex_geniv : procedure( ctx: GLIContext; coord: GLenum; pname: GLenum; const params: PGLint );
520 		tex_image1D : procedure( ctx: GLIContext; target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; border: GLint; format: GLenum; typ: GLenum; const pixels: UnivPtr );
521 		tex_image2D : procedure( ctx: GLIContext; target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; border: GLint; format: GLenum; typ: GLenum; const pixels: UnivPtr );
522 		tex_parameterf : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; param: GLfloat );
523 		tex_parameterfv : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; const params: PGLfloat );
524 		tex_parameteri : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; param: GLint );
525 		tex_parameteriv : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; const params: PGLint );
526 		tex_sub_image1D : procedure( ctx: GLIContext; target: GLenum; level: GLint; xoffset: GLint; width: GLsizei; format: GLenum; typ: GLenum; const pixels: UnivPtr );
527 		tex_sub_image2D : procedure( ctx: GLIContext; target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; width: GLsizei; height: GLsizei; format: GLenum; typ: GLenum; const pixels: UnivPtr );
528 		translated : procedure( ctx: GLIContext; x: GLdouble; y: GLdouble; z: GLdouble );
529 		translatef : procedure( ctx: GLIContext; x: GLfloat; y: GLfloat; z: GLfloat );
530 		vertex2d : procedure( ctx: GLIContext; x: GLdouble; y: GLdouble );
531 		vertex2dv : procedure( ctx: GLIContext; const v: PGLdouble );
532 		vertex2f : procedure( ctx: GLIContext; x: GLfloat; y: GLfloat );
533 		vertex2fv : procedure( ctx: GLIContext; const v: PGLfloat );
534 		vertex2i : procedure( ctx: GLIContext; x: GLint; y: GLint );
535 		vertex2iv : procedure( ctx: GLIContext; const v: PGLint );
536 		vertex2s : procedure( ctx: GLIContext; x: GLshort; y: GLshort );
537 		vertex2sv : procedure( ctx: GLIContext; const v: PGLshort );
538 		vertex3d : procedure( ctx: GLIContext; x: GLdouble; y: GLdouble; z: GLdouble );
539 		vertex3dv : procedure( ctx: GLIContext; const v: PGLdouble );
540 		vertex3f : procedure( ctx: GLIContext; x: GLfloat; y: GLfloat; z: GLfloat );
541 		vertex3fv : procedure( ctx: GLIContext; const v: PGLfloat );
542 		vertex3i : procedure( ctx: GLIContext; x: GLint; y: GLint; z: GLint );
543 		vertex3iv : procedure( ctx: GLIContext; const v: PGLint );
544 		vertex3s : procedure( ctx: GLIContext; x: GLshort; y: GLshort; z: GLshort );
545 		vertex3sv : procedure( ctx: GLIContext; const v: PGLshort );
546 		vertex4d : procedure( ctx: GLIContext; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble );
547 		vertex4dv : procedure( ctx: GLIContext; const v: PGLdouble );
548 		vertex4f : procedure( ctx: GLIContext; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat );
549 		vertex4fv : procedure( ctx: GLIContext; const v: PGLfloat );
550 		vertex4i : procedure( ctx: GLIContext; x: GLint; y: GLint; z: GLint; w: GLint );
551 		vertex4iv : procedure( ctx: GLIContext; const v: PGLint );
552 		vertex4s : procedure( ctx: GLIContext; x: GLshort; y: GLshort; z: GLshort; w: GLshort );
553 		vertex4sv : procedure( ctx: GLIContext; const v: PGLshort );
554 		vertex_pointer : procedure( ctx: GLIContext; size: GLint; typ: GLenum; stride: GLsizei; const pointr: UnivPtr );
555 		viewport : procedure( ctx: GLIContext; x: GLint; y: GLint; width: GLsizei; height: GLsizei );
556 		blend_func_separate : procedure( ctx: GLIContext; sfactorRGB: GLenum; dfactorRGB: GLenum; sfactorAlpha: GLenum; dfactorAlpha: GLenum );
557 		blend_color : procedure( ctx: GLIContext; red: GLclampf; green: GLclampf; blue: GLclampf; alpha: GLclampf );
558 		blend_equation : procedure( ctx: GLIContext; mode: GLenum );
559 		lock_arrays_EXT : procedure( ctx: GLIContext; first: GLint; count: GLsizei );
560 		unlock_arrays_EXT : procedure( ctx: GLIContext );
561 		client_active_texture : procedure( ctx: GLIContext; target: GLenum );
562 		active_texture : procedure( ctx: GLIContext; target: GLenum );
563 		multi_tex_coord1d : procedure( ctx: GLIContext; target: GLenum; s: GLdouble );
564 		multi_tex_coord1dv : procedure( ctx: GLIContext; target: GLenum; const v: PGLdouble );
565 		multi_tex_coord1f : procedure( ctx: GLIContext; target: GLenum; s: GLfloat );
566 		multi_tex_coord1fv : procedure( ctx: GLIContext; target: GLenum; const v: PGLfloat );
567 		multi_tex_coord1i : procedure( ctx: GLIContext; target: GLenum; s: GLint );
568 		multi_tex_coord1iv : procedure( ctx: GLIContext; target: GLenum; const v: PGLint );
569 		multi_tex_coord1s : procedure( ctx: GLIContext; target: GLenum; s: GLshort );
570 		multi_tex_coord1sv : procedure( ctx: GLIContext; target: GLenum; const v: PGLshort );
571 		multi_tex_coord2d : procedure( ctx: GLIContext; target: GLenum; s: GLdouble; t: GLdouble );
572 		multi_tex_coord2dv : procedure( ctx: GLIContext; target: GLenum; const v: PGLdouble );
573 		multi_tex_coord2f : procedure( ctx: GLIContext; target: GLenum; s: GLfloat; t: GLfloat );
574 		multi_tex_coord2fv : procedure( ctx: GLIContext; target: GLenum; const v: PGLfloat );
575 		multi_tex_coord2i : procedure( ctx: GLIContext; target: GLenum; s: GLint; t: GLint );
576 		multi_tex_coord2iv : procedure( ctx: GLIContext; target: GLenum; const v: PGLint );
577 		multi_tex_coord2s : procedure( ctx: GLIContext; target: GLenum; s: GLshort; t: GLshort );
578 		multi_tex_coord2sv : procedure( ctx: GLIContext; target: GLenum; const v: PGLshort );
579 		multi_tex_coord3d : procedure( ctx: GLIContext; target: GLenum; s: GLdouble; t: GLdouble; r: GLdouble );
580 		multi_tex_coord3dv : procedure( ctx: GLIContext; target: GLenum; const v: PGLdouble );
581 		multi_tex_coord3f : procedure( ctx: GLIContext; target: GLenum; s: GLfloat; t: GLfloat; r: GLfloat );
582 		multi_tex_coord3fv : procedure( ctx: GLIContext; target: GLenum; const v: PGLfloat );
583 		multi_tex_coord3i : procedure( ctx: GLIContext; target: GLenum; s: GLint; t: GLint; r: GLint );
584 		multi_tex_coord3iv : procedure( ctx: GLIContext; target: GLenum; const v: PGLint );
585 		multi_tex_coord3s : procedure( ctx: GLIContext; target: GLenum; s: GLshort; t: GLshort; r: GLshort );
586 		multi_tex_coord3sv : procedure( ctx: GLIContext; target: GLenum; const v: PGLshort );
587 		multi_tex_coord4d : procedure( ctx: GLIContext; target: GLenum; s: GLdouble; t: GLdouble; r: GLdouble; q: GLdouble );
588 		multi_tex_coord4dv : procedure( ctx: GLIContext; target: GLenum; const v: PGLdouble );
589 		multi_tex_coord4f : procedure( ctx: GLIContext; target: GLenum; s: GLfloat; t: GLfloat; r: GLfloat; q: GLfloat );
590 		multi_tex_coord4fv : procedure( ctx: GLIContext; target: GLenum; const v: PGLfloat );
591 		multi_tex_coord4i : procedure( ctx: GLIContext; target: GLenum; s: GLint; t: GLint; r: GLint; q: GLint );
592 		multi_tex_coord4iv : procedure( ctx: GLIContext; target: GLenum; const v: PGLint );
593 		multi_tex_coord4s : procedure( ctx: GLIContext; target: GLenum; s: GLshort; t: GLshort; r: GLshort; q: GLshort );
594 		multi_tex_coord4sv : procedure( ctx: GLIContext; target: GLenum; const v: PGLshort );
595 		load_transpose_matrixd : procedure( ctx: GLIContext; const m: PGLdouble );
596 		load_transpose_matrixf : procedure( ctx: GLIContext; const m: PGLfloat );
597 		mult_transpose_matrixd : procedure( ctx: GLIContext; const m: PGLdouble );
598 		mult_transpose_matrixf : procedure( ctx: GLIContext; const m: PGLfloat );
599 		compressed_tex_image3D : procedure( ctx: GLIContext; target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; depth: GLsizei; border: GLint; imageSize: GLsizei; const data: UnivPtr );
600 		compressed_tex_image2D : procedure( ctx: GLIContext; target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; border: GLint; imageSize: GLsizei; const data: UnivPtr );
601 		compressed_tex_image1D : procedure( ctx: GLIContext; target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; border: GLint; imageSize: GLsizei; const data: UnivPtr );
602 		compressed_tex_sub_image3D : procedure( ctx: GLIContext; target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; width: GLsizei; height: GLsizei; depth: GLsizei; format: GLenum; imageSize: GLsizei; const data: UnivPtr );
603 		compressed_tex_sub_image2D : procedure( ctx: GLIContext; target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; width: GLsizei; height: GLsizei; format: GLenum; imageSize: GLsizei; const data: UnivPtr );
604 		compressed_tex_sub_image1D : procedure( ctx: GLIContext; target: GLenum; level: GLint; xoffset: GLint; width: GLsizei; format: GLenum; imageSize: GLsizei; const data: UnivPtr );
605 		get_compressed_tex_image : procedure( ctx: GLIContext; target: GLenum; level: GLint; img: UnivPtr );
606 		secondary_color3b : procedure( ctx: GLIContext; red: GLbyte; green: GLbyte; blue: GLbyte );
607 		secondary_color3bv : procedure( ctx: GLIContext; const v: PGLbyte );
608 		secondary_color3d : procedure( ctx: GLIContext; red: GLdouble; green: GLdouble; blue: GLdouble );
609 		secondary_color3dv : procedure( ctx: GLIContext; const v: PGLdouble );
610 		secondary_color3f : procedure( ctx: GLIContext; red: GLfloat; green: GLfloat; blue: GLfloat );
611 		secondary_color3fv : procedure( ctx: GLIContext; const v: PGLfloat );
612 		secondary_color3i : procedure( ctx: GLIContext; red: GLint; green: GLint; blue: GLint );
613 		secondary_color3iv : procedure( ctx: GLIContext; const v: PGLint );
614 		secondary_color3s : procedure( ctx: GLIContext; red: GLshort; green: GLshort; blue: GLshort );
615 		secondary_color3sv : procedure( ctx: GLIContext; const v: PGLshort );
616 		secondary_color3ub : procedure( ctx: GLIContext; red: GLubyte; green: GLubyte; blue: GLubyte );
617 		secondary_color3ubv : procedure( ctx: GLIContext; const v: PGLubyte );
618 		secondary_color3ui : procedure( ctx: GLIContext; red: GLuint; green: GLuint; blue: GLuint );
619 		secondary_color3uiv : procedure( ctx: GLIContext; const v: PGLuint );
620 		secondary_color3us : procedure( ctx: GLIContext; red: GLushort; green: GLushort; blue: GLushort );
621 		secondary_color3usv : procedure( ctx: GLIContext; const v: PGLushort );
622 		secondary_color_pointer : procedure( ctx: GLIContext; size: GLint; typ: GLenum; stride: GLsizei; const pointr: UnivPtr );
623 		vertex_array_range_EXT : procedure( ctx: GLIContext; count: GLsizei; const pointr: UnivPtr );
624 		flush_vertex_array_range_EXT : procedure( ctx: GLIContext; count: GLsizei; const pointr: UnivPtr );
625 		draw_range_elements : procedure( ctx: GLIContext; mode: GLenum; start: GLuint; finish: GLuint; count: GLsizei; typ: GLenum; const indices: UnivPtr );
626 		color_table : procedure( ctx: GLIContext; target: GLenum; internalformat: GLenum; width: GLsizei; format: GLenum; typ: GLenum; const table: UnivPtr );
627 		color_table_parameterfv : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; const params: PGLfloat );
628 		color_table_parameteriv : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; const params: PGLint );
629 		copy_color_table : procedure( ctx: GLIContext; target: GLenum; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei );
630 		get_color_table : procedure( ctx: GLIContext; target: GLenum; format: GLenum; typ: GLenum; table: UnivPtr );
631 		get_color_table_parameterfv : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: PGLfloat );
632 		get_color_table_parameteriv : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: PGLint );
633 		color_sub_table : procedure( ctx: GLIContext; target: GLenum; start: GLsizei; count: GLsizei; format: GLenum; typ: GLenum; const data: UnivPtr );
634 		copy_color_sub_table : procedure( ctx: GLIContext; target: GLenum; start: GLsizei; x: GLint; y: GLint; width: GLsizei );
635 		convolution_filter1D : procedure( ctx: GLIContext; target: GLenum; internalformat: GLenum; width: GLsizei; format: GLenum; typ: GLenum; const image: UnivPtr );
636 		convolution_filter2D : procedure( ctx: GLIContext; target: GLenum; internalformat: GLenum; width: GLsizei; height: GLsizei; format: GLenum; typ: GLenum; const image: UnivPtr );
637 		convolution_parameterf : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: GLfloat );
638 		convolution_parameterfv : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; const params: PGLfloat );
639 		convolution_parameteri : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: GLint );
640 		convolution_parameteriv : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; const params: PGLint );
641 		copy_convolution_filter1D : procedure( ctx: GLIContext; target: GLenum; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei );
642 		copy_convolution_filter2D : procedure( ctx: GLIContext; target: GLenum; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei; height: GLsizei );
643 		get_convolution_filter : procedure( ctx: GLIContext; target: GLenum; format: GLenum; typ: GLenum; image: UnivPtr );
644 		get_convolution_parameterfv : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: PGLfloat );
645 		get_convolution_parameteriv : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: PGLint );
646 		get_separable_filter : procedure( ctx: GLIContext; target: GLenum; format: GLenum; typ: GLenum; row: UnivPtr; column: UnivPtr; span: UnivPtr );
647 		separable_filter2D : procedure( ctx: GLIContext; target: GLenum; internalformat: GLenum; width: GLsizei; height: GLsizei; format: GLenum; typ: GLenum; const row: UnivPtr; const column: UnivPtr );
648 		get_histogram : procedure( ctx: GLIContext; target: GLenum; reset: GLboolean; format: GLenum; typ: GLenum; values: UnivPtr );
649 		get_histogram_parameterfv : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: PGLfloat );
650 		get_histogram_parameteriv : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: PGLint );
651 		get_minmax : procedure( ctx: GLIContext; target: GLenum; reset: GLboolean; format: GLenum; typ: GLenum; values: UnivPtr );
652 		get_minmax_parameterfv : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: PGLfloat );
653 		get_minmax_parameteriv : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: PGLint );
654 		histogram : procedure( ctx: GLIContext; target: GLenum; width: GLsizei; internalformat: GLenum; sink: GLboolean );
655 		minmax : procedure( ctx: GLIContext; target: GLenum; internalformat: GLenum; sink: GLboolean );
656 		reset_histogram : procedure( ctx: GLIContext; target: GLenum );
657 		reset_minmax : procedure( ctx: GLIContext; target: GLenum );
658 		tex_image3D : procedure( ctx: GLIContext; target: GLenum; level: GLint; internalFormat: GLenum; width: GLsizei; height: GLsizei; depth: GLsizei; border: GLint; format: GLenum; typ: GLenum; const pixels: UnivPtr );
659 		tex_sub_image3D : procedure( ctx: GLIContext; target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; width: GLsizei; height: GLsizei; depth: GLsizei; format: GLenum; typ: GLenum; const pixels: UnivPtr );
660 		copy_tex_sub_image3D : procedure( ctx: GLIContext; target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; x: GLint; y: GLint; width: GLsizei; height: GLsizei );
661 		combiner_parameterfv_NV : procedure( ctx: GLIContext; pname: GLenum; const params: PGLfloat );
662 		combiner_parameterf_NV : procedure( ctx: GLIContext; pname: GLenum; param: GLfloat );
663 		combiner_parameteriv_NV : procedure( ctx: GLIContext; pname: GLenum; const params: PGLint );
664 		combiner_parameteri_NV : procedure( ctx: GLIContext; pname: GLenum; param: GLint );
665 		combiner_input_NV : procedure( ctx: GLIContext; stage: GLenum; portion: GLenum; variable: GLenum; input: GLenum; mapping: GLenum; componentUsage: GLenum );
666 		combiner_output_NV : procedure( ctx: GLIContext; stage: GLenum; portion: GLenum; abOutput: GLenum; cdOutput: GLenum; sumOutput: GLenum; scale: GLenum; bias: GLenum; abDotProduct: GLboolean; cdDotProduct: GLboolean; muxSum: GLboolean );
667 		final_combiner_input_NV : procedure( ctx: GLIContext; variable: GLenum; input: GLenum; mapping: GLenum; componentUsage: GLenum );
668 		get_combiner_input_parameterfv_NV : procedure( ctx: GLIContext; stage: GLenum; portion: GLenum; variable: GLenum; pname: GLenum; params: PGLfloat );
669 		get_combiner_input_parameteriv_NV : procedure( ctx: GLIContext; stage: GLenum; portion: GLenum; variable: GLenum; pname: GLenum; params: PGLint );
670 		get_combiner_output_parameterfv_NV : procedure( ctx: GLIContext; stage: GLenum; portion: GLenum; pname: GLenum; params: PGLfloat );
671 		get_combiner_output_parameteriv_NV : procedure( ctx: GLIContext; stage: GLenum; portion: GLenum; pname: GLenum; params: PGLint );
672 		get_final_combiner_input_parameterfv_NV : procedure( ctx: GLIContext; variable: GLenum; pname: GLenum; params: PGLfloat );
673 		get_final_combiner_input_parameteriv_NV : procedure( ctx: GLIContext; variable: GLenum; pname: GLenum; params: PGLint );
674 		combiner_stage_parameterfv_NV : procedure( ctx: GLIContext; stage: GLenum; pname: GLenum; const params: PGLfloat );
675 		get_combiner_stage_parameterfv_NV : procedure( ctx: GLIContext; stage: GLenum; pname: GLenum; params: PGLfloat );
676 		texture_range_APPLE : procedure( ctx: GLIContext; target: GLenum; length: GLsizei; const pointr: UnivPtr );
677 		get_tex_parameter_pointerv_APPLE : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: UnivPtrPtr );
678 		blend_equation_separate_EXT : procedure( ctx: GLIContext; equationRGB: GLenum; equationAlpha: GLenum );
679 		sample_coverage : procedure( ctx: GLIContext; value: GLclampf; invert: GLboolean );
680 		sample_pass : procedure( ctx: GLIContext; mode: GLenum );
681 		pn_trianglesi_ATI : procedure( ctx: GLIContext; pname: GLenum; param: GLint );
682 		pn_trianglesf_ATI : procedure( ctx: GLIContext; pname: GLenum; param: GLfloat );
683 		gen_fences_APPLE : procedure( ctx: GLIContext; n: GLsizei; fences: PGLuint );
684 		delete_fences_APPLE : procedure( ctx: GLIContext; n: GLsizei; const fences: PGLuint );
685 		set_fence_APPLE : procedure( ctx: GLIContext; fence: GLuint );
ctxnull686 		is_fence_APPLE : function( ctx: GLIContext; fence: GLuint ): GLboolean;
ctxnull687 		test_fence_APPLE : function( ctx: GLIContext; fence: GLuint ): GLboolean;
688 		finish_fence_APPLE : procedure( ctx: GLIContext; fence: GLuint );
ctxnull689 		test_object_APPLE : function( ctx: GLIContext; objct: GLenum; name: GLuint ): GLboolean;
690 		finish_object_APPLE : procedure( ctx: GLIContext; objct: GLenum; name: GLuint );
691 		bind_program_ARB : procedure( ctx: GLIContext; target: GLenum; program_: GLuint );
692 		delete_programs_ARB : procedure( ctx: GLIContext; n: GLsizei; const programs: PGLuint );
693 		gen_programs_ARB : procedure( ctx: GLIContext; n: GLsizei; programs: PGLuint );
ctxnull694 		is_program_ARB : function( ctx: GLIContext; program_: GLuint ): GLboolean;
695 		vertex_attrib1s_ARB : procedure( ctx: GLIContext; index: GLuint; x: GLshort );
696 		vertex_attrib1f_ARB : procedure( ctx: GLIContext; index: GLuint; x: GLfloat );
697 		vertex_attrib1d_ARB : procedure( ctx: GLIContext; index: GLuint; x: GLdouble );
698 		vertex_attrib2s_ARB : procedure( ctx: GLIContext; index: GLuint; x: GLshort; y: GLshort );
699 		vertex_attrib2f_ARB : procedure( ctx: GLIContext; index: GLuint; x: GLfloat; y: GLfloat );
700 		vertex_attrib2d_ARB : procedure( ctx: GLIContext; index: GLuint; x: GLdouble; y: GLdouble );
701 		vertex_attrib3s_ARB : procedure( ctx: GLIContext; index: GLuint; x: GLshort; y: GLshort; z: GLshort );
702 		vertex_attrib3f_ARB : procedure( ctx: GLIContext; index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat );
703 		vertex_attrib3d_ARB : procedure( ctx: GLIContext; index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble );
704 		vertex_attrib4s_ARB : procedure( ctx: GLIContext; index: GLuint; x: GLshort; y: GLshort; z: GLshort; w: GLshort );
705 		vertex_attrib4f_ARB : procedure( ctx: GLIContext; index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat );
706 		vertex_attrib4d_ARB : procedure( ctx: GLIContext; index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble );
707 		vertex_attrib4Nub_ARB : procedure( ctx: GLIContext; index: GLuint; x: GLubyte; y: GLubyte; z: GLubyte; w: GLubyte );
708 		vertex_attrib1sv_ARB : procedure( ctx: GLIContext; index: GLuint; const v: PGLshort );
709 		vertex_attrib1fv_ARB : procedure( ctx: GLIContext; index: GLuint; const v: PGLfloat );
710 		vertex_attrib1dv_ARB : procedure( ctx: GLIContext; index: GLuint; const v: PGLdouble );
711 		vertex_attrib2sv_ARB : procedure( ctx: GLIContext; index: GLuint; const v: PGLshort );
712 		vertex_attrib2fv_ARB : procedure( ctx: GLIContext; index: GLuint; const v: PGLfloat );
713 		vertex_attrib2dv_ARB : procedure( ctx: GLIContext; index: GLuint; const v: PGLdouble );
714 		vertex_attrib3sv_ARB : procedure( ctx: GLIContext; index: GLuint; const v: PGLshort );
715 		vertex_attrib3fv_ARB : procedure( ctx: GLIContext; index: GLuint; const v: PGLfloat );
716 		vertex_attrib3dv_ARB : procedure( ctx: GLIContext; index: GLuint; const v: PGLdouble );
717 		vertex_attrib4bv_ARB : procedure( ctx: GLIContext; index: GLuint; const v: PGLbyte );
718 		vertex_attrib4sv_ARB : procedure( ctx: GLIContext; index: GLuint; const v: PGLshort );
719 		vertex_attrib4iv_ARB : procedure( ctx: GLIContext; index: GLuint; const v: PGLint );
720 		vertex_attrib4ubv_ARB : procedure( ctx: GLIContext; index: GLuint; const v: PGLubyte );
721 		vertex_attrib4usv_ARB : procedure( ctx: GLIContext; index: GLuint; const v: PGLushort );
722 		vertex_attrib4uiv_ARB : procedure( ctx: GLIContext; index: GLuint; const v: PGLuint );
723 		vertex_attrib4fv_ARB : procedure( ctx: GLIContext; index: GLuint; const v: PGLfloat );
724 		vertex_attrib4dv_ARB : procedure( ctx: GLIContext; index: GLuint; const v: PGLdouble );
725 		vertex_attrib4Nbv_ARB : procedure( ctx: GLIContext; index: GLuint; const v: PGLbyte );
726 		vertex_attrib4Nsv_ARB : procedure( ctx: GLIContext; index: GLuint; const v: PGLshort );
727 		vertex_attrib4Niv_ARB : procedure( ctx: GLIContext; index: GLuint; const v: PGLint );
728 		vertex_attrib4Nubv_ARB : procedure( ctx: GLIContext; index: GLuint; const v: PGLubyte );
729 		vertex_attrib4Nusv_ARB : procedure( ctx: GLIContext; index: GLuint; const v: PGLushort );
730 		vertex_attrib4Nuiv_ARB : procedure( ctx: GLIContext; index: GLuint; const v: PGLuint );
731 		vertex_attrib_pointer_ARB : procedure( ctx: GLIContext; index: GLuint; size: GLint; typ: GLenum; normalized: GLboolean; stride: GLsizei; const pointr: UnivPtr );
732 		enable_vertex_attrib_array_ARB : procedure( ctx: GLIContext; index: GLuint );
733 		disable_vertex_attrib_array_ARB : procedure( ctx: GLIContext; index: GLuint );
734 		get_vertex_attribdv_ARB : procedure( ctx: GLIContext; index: GLuint; pname: GLenum; params: PGLdouble );
735 		get_vertex_attribfv_ARB : procedure( ctx: GLIContext; index: GLuint; pname: GLenum; params: PGLfloat );
736 		get_vertex_attribiv_ARB : procedure( ctx: GLIContext; index: GLuint; pname: GLenum; params: PGLint );
737 		get_vertex_attrib_pointerv_ARB : procedure( ctx: GLIContext; index: GLuint; pname: GLenum; pointr: UnivPtrPtr );
738 		program_env_parameter4d_ARB : procedure( ctx: GLIContext; target: GLenum; index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble );
739 		program_env_parameter4dv_ARB : procedure( ctx: GLIContext; target: GLenum; index: GLuint; const params: PGLdouble );
740 		program_env_parameter4f_ARB : procedure( ctx: GLIContext; target: GLenum; index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat );
741 		program_env_parameter4fv_ARB : procedure( ctx: GLIContext; target: GLenum; index: GLuint; const params: PGLfloat );
742 		program_local_parameter4d_ARB : procedure( ctx: GLIContext; target: GLenum; index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble );
743 		program_local_parameter4dv_ARB : procedure( ctx: GLIContext; target: GLenum; index: GLuint; const params: PGLdouble );
744 		program_local_parameter4f_ARB : procedure( ctx: GLIContext; target: GLenum; index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat );
745 		program_local_parameter4fv_ARB : procedure( ctx: GLIContext; target: GLenum; index: GLuint; const params: PGLfloat );
746 		get_program_env_parameterdv_ARB : procedure( ctx: GLIContext; target: GLenum; index: GLuint; params: PGLdouble );
747 		get_program_env_parameterfv_ARB : procedure( ctx: GLIContext; target: GLenum; index: GLuint; params: PGLfloat );
748 		get_program_local_parameterdv_ARB : procedure( ctx: GLIContext; target: GLenum; index: GLuint; params: PGLdouble );
749 		get_program_local_parameterfv_ARB : procedure( ctx: GLIContext; target: GLenum; index: GLuint; params: PGLfloat );
750 		program_string_ARB : procedure( ctx: GLIContext; target: GLenum; format: GLenum; len: GLsizei; const strng: UnivPtr );
751 		get_program_string_ARB : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; strng: UnivPtr );
752 		get_programiv_ARB : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: PGLint );
753 		enable_vertex_attrib_ARB : procedure( ctx: GLIContext; index: GLuint; pname: GLenum );
754 		disable_vertex_attrib_ARB : procedure( ctx: GLIContext; index: GLuint; pname: GLenum );
ctxnull755 		is_vertex_attrib_enabled_ARB : function( ctx: GLIContext; index: GLuint; pname: GLenum ): GLboolean;
756 		map_vertex_attrib1d_ARB : procedure( ctx: GLIContext; index: GLuint; size: GLuint; u1: GLdouble; u2: GLdouble; stride: GLint; order: GLint; const points: PGLdouble );
757 		map_vertex_attrib1f_ARB : procedure( ctx: GLIContext; index: GLuint; size: GLuint; u1: GLfloat; u2: GLfloat; stride: GLint; order: GLint; const points: PGLfloat );
758 		map_vertex_attrib2d_ARB : procedure( ctx: GLIContext; index: GLuint; size: GLuint; u1: GLdouble; u2: GLdouble; ustride: GLint; uorder: GLint; v1: GLdouble; v2: GLdouble; vstride: GLint; vorder: GLint; const points: PGLdouble );
759 		map_vertex_attrib2f_ARB : procedure( ctx: GLIContext; index: GLuint; size: GLuint; u1: GLfloat; u2: GLfloat; ustride: GLint; uorder: GLint; v1: GLfloat; v2: GLfloat; vstride: GLint; vorder: GLint; const points: PGLfloat );
760 		point_parameterf : procedure( ctx: GLIContext; pname: GLenum; param: GLfloat );
761 		point_parameterfv : procedure( ctx: GLIContext; pname: GLenum; const params: PGLfloat );
762 		point_parameteri : procedure( ctx: GLIContext; pname: GLenum; param: GLint );
763 		point_parameteriv : procedure( ctx: GLIContext; pname: GLenum; const params: PGLint );
764 		fog_coordf : procedure( ctx: GLIContext; coord: GLfloat );
765 		fog_coordfv : procedure( ctx: GLIContext; const coord: PGLfloat );
766 		fog_coordd : procedure( ctx: GLIContext; coord: GLdouble );
767 		fog_coorddv : procedure( ctx: GLIContext; const coord: PGLdouble );
768 		fog_coord_pointer : procedure( ctx: GLIContext; typ: GLenum; stride: GLsizei; const pointr: UnivPtr );
769 		vertex_array_parameteri_EXT : procedure( ctx: GLIContext; pname: GLenum; param: GLint );
770 		bind_vertex_array_EXT : procedure( ctx: GLIContext; id: GLuint );
771 		delete_vertex_arrays_EXT : procedure( ctx: GLIContext; n: GLsizei; const ids: PGLuint );
772 		gen_vertex_arrays_EXT : procedure( ctx: GLIContext; n: GLsizei; ids: PGLuint );
ctxnull773 		is_vertex_array_EXT : function( ctx: GLIContext; id: GLuint ): GLboolean;
774 		element_pointer_APPLE : procedure( ctx: GLIContext; typ: GLenum; const pointr: UnivPtr );
775 		draw_element_array_APPLE : procedure( ctx: GLIContext; mode: GLenum; first: GLint; count: GLsizei );
776 		draw_range_element_array_APPLE : procedure( ctx: GLIContext; mode: GLenum; start: GLuint; finish: GLuint; first: GLint; count: GLsizei );
777 		weightbv_ARB : procedure( ctx: GLIContext; size: GLint; const weights: PGLbyte );
778 		weightsv_ARB : procedure( ctx: GLIContext; size: GLint; const weights: PGLshort );
779 		weightiv_ARB : procedure( ctx: GLIContext; size: GLint; const weights: PGLint );
780 		weightfv_ARB : procedure( ctx: GLIContext; size: GLint; const weights: PGLfloat );
781 		weightdv_ARB : procedure( ctx: GLIContext; size: GLint; const weights: PGLdouble );
782 		weightubv_ARB : procedure( ctx: GLIContext; size: GLint; const weights: PGLubyte );
783 		weightusv_ARB : procedure( ctx: GLIContext; size: GLint; const weights: PGLushort );
784 		weightuiv_ARB : procedure( ctx: GLIContext; size: GLint; const weights: PGLuint );
785 		weight_pointer_ARB : procedure( ctx: GLIContext; size: GLint; typ: GLenum; stride: GLsizei; const pointr: UnivPtr );
786 		vertex_blend_ARB : procedure( ctx: GLIContext; count: GLint );
787 		multi_draw_arrays : procedure( ctx: GLIContext; mode: GLenum; const first: PGLint; const count: PGLsizei; primcount: GLsizei );
788 		multi_draw_elements : procedure( ctx: GLIContext; mode: GLenum; const count: PGLsizei; typ: GLenum; {const} indices: UnivPtrPtr; primcount: GLsizei );
789 		window_pos2d : procedure( ctx: GLIContext; x: GLdouble; y: GLdouble );
790 		window_pos2dv : procedure( ctx: GLIContext; const v: PGLdouble );
791 		window_pos2f : procedure( ctx: GLIContext; x: GLfloat; y: GLfloat );
792 		window_pos2fv : procedure( ctx: GLIContext; const v: PGLfloat );
793 		window_pos2i : procedure( ctx: GLIContext; x: GLint; y: GLint );
794 		window_pos2iv : procedure( ctx: GLIContext; const v: PGLint );
795 		window_pos2s : procedure( ctx: GLIContext; x: GLshort; y: GLshort );
796 		window_pos2sv : procedure( ctx: GLIContext; const v: PGLshort );
797 		window_pos3d : procedure( ctx: GLIContext; x: GLdouble; y: GLdouble; z: GLdouble );
798 		window_pos3dv : procedure( ctx: GLIContext; const v: PGLdouble );
799 		window_pos3f : procedure( ctx: GLIContext; x: GLfloat; y: GLfloat; z: GLfloat );
800 		window_pos3fv : procedure( ctx: GLIContext; const v: PGLfloat );
801 		window_pos3i : procedure( ctx: GLIContext; x: GLint; y: GLint; z: GLint );
802 		window_pos3iv : procedure( ctx: GLIContext; const v: PGLint );
803 		window_pos3s : procedure( ctx: GLIContext; x: GLshort; y: GLshort; z: GLshort );
804 		window_pos3sv : procedure( ctx: GLIContext; const v: PGLshort );
805 		active_stencil_face_EXT : procedure( ctx: GLIContext; face: GLenum );
806 		stencil_op_separate_ATI : procedure( ctx: GLIContext; face: GLenum; sfail: GLenum; dpfail: GLenum; dppass: GLenum );
807 		stencil_func_separate_ATI : procedure( ctx: GLIContext; frontfunc: GLenum; backfunc: GLenum; ref: GLint; mask: GLuint );
808 		flush_render_APPLE : procedure( ctx: GLIContext );
809 		finish_render_APPLE : procedure( ctx: GLIContext );
810 		swap_APPLE : procedure( ctx: GLIContext );
811 		delete_object_ARB : procedure( ctx: GLIContext; obj: GLhandleARB );
ctxnull812 		get_handle_ARB : function( ctx: GLIContext; pname: GLenum ): GLhandleARB;
813 		detach_object_ARB : procedure( ctx: GLIContext; containerObj: GLhandleARB; attachedObj: GLhandleARB );
ctxnull814 		create_shader_object_ARB : function( ctx: GLIContext; shaderType: GLenum ): GLhandleARB;
815 		shader_source_ARB : procedure( ctx: GLIContext; shaderObj: GLhandleARB; count: GLsizei; {const} strng: PPChar; const length: PGLint );
816 		compile_shader_ARB : procedure( ctx: GLIContext; shaderObj: GLhandleARB );
ctxnull817 		create_program_object_ARB : function( ctx: GLIContext ): GLhandleARB;
818 		attach_object_ARB : procedure( ctx: GLIContext; containerObj: GLhandleARB; obj: GLhandleARB );
819 		link_program_ARB : procedure( ctx: GLIContext; programObj: GLhandleARB );
820 		use_program_object_ARB : procedure( ctx: GLIContext; programObj: GLhandleARB );
821 		validate_program_ARB : procedure( ctx: GLIContext; programObj: GLhandleARB );
822 		uniform1f_ARB : procedure( ctx: GLIContext; location: GLint; v0: GLfloat );
823 		uniform2f_ARB : procedure( ctx: GLIContext; location: GLint; v0: GLfloat; v1: GLfloat );
824 		uniform3f_ARB : procedure( ctx: GLIContext; location: GLint; v0: GLfloat; v1: GLfloat; v2: GLfloat );
825 		uniform4f_ARB : procedure( ctx: GLIContext; location: GLint; v0: GLfloat; v1: GLfloat; v2: GLfloat; v3: GLfloat );
826 		uniform1i_ARB : procedure( ctx: GLIContext; location: GLint; v0: GLint );
827 		uniform2i_ARB : procedure( ctx: GLIContext; location: GLint; v0: GLint; v1: GLint );
828 		uniform3i_ARB : procedure( ctx: GLIContext; location: GLint; v0: GLint; v1: GLint; v2: GLint );
829 		uniform4i_ARB : procedure( ctx: GLIContext; location: GLint; v0: GLint; v1: GLint; v2: GLint; v3: GLint );
830 		uniform1fv_ARB : procedure( ctx: GLIContext; location: GLint; count: GLsizei; const value: PGLfloat );
831 		uniform2fv_ARB : procedure( ctx: GLIContext; location: GLint; count: GLsizei; const value: PGLfloat );
832 		uniform3fv_ARB : procedure( ctx: GLIContext; location: GLint; count: GLsizei; const value: PGLfloat );
833 		uniform4fv_ARB : procedure( ctx: GLIContext; location: GLint; count: GLsizei; const value: PGLfloat );
834 		uniform1iv_ARB : procedure( ctx: GLIContext; location: GLint; count: GLsizei; const value: PGLint );
835 		uniform2iv_ARB : procedure( ctx: GLIContext; location: GLint; count: GLsizei; const value: PGLint );
836 		uniform3iv_ARB : procedure( ctx: GLIContext; location: GLint; count: GLsizei; const value: PGLint );
837 		uniform4iv_ARB : procedure( ctx: GLIContext; location: GLint; count: GLsizei; const value: PGLint );
838 		uniform_matrix2fv_ARB : procedure( ctx: GLIContext; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat );
839 		uniform_matrix3fv_ARB : procedure( ctx: GLIContext; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat );
840 		uniform_matrix4fv_ARB : procedure( ctx: GLIContext; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat );
841 		get_object_parameterfv_ARB : procedure( ctx: GLIContext; obj: GLhandleARB; pname: GLenum; params: PGLfloat );
842 		get_object_parameteriv_ARB : procedure( ctx: GLIContext; obj: GLhandleARB; pname: GLenum; params: PGLint );
843 		get_info_log_ARB : procedure( ctx: GLIContext; obj: GLhandleARB; maxLength: GLsizei; length: PGLsizei; infoLog: PGLcharARB );
844 		get_attached_objects_ARB : procedure( ctx: GLIContext; containerObj: GLhandleARB; maxCount: GLsizei; count: PGLsizei; obj: PGLhandleARB );
ctxnull845 		get_uniform_location_ARB : function( ctx: GLIContext; programObj: GLhandleARB; const name: PGLcharARB ): GLint;
846 		get_active_uniform_ARB : procedure( ctx: GLIContext; programObj: GLhandleARB; index: GLuint; maxLength: GLsizei; length: PGLsizei; size: PGLint; typ: PGLenum; name: PGLcharARB );
847 		get_uniformfv_ARB : procedure( ctx: GLIContext; programObj: GLhandleARB; location: GLint; params: PGLfloat );
848 		get_uniformiv_ARB : procedure( ctx: GLIContext; programObj: GLhandleARB; location: GLint; params: PGLint );
849 		get_shader_source_ARB : procedure( ctx: GLIContext; obj: GLhandleARB; maxLength: GLsizei; length: PGLsizei; source: PGLcharARB );
850 		bind_attrib_location_ARB : procedure( ctx: GLIContext; programObj: GLhandleARB; index: GLuint; const name: PGLcharARB );
851 		get_active_attrib_ARB : procedure( ctx: GLIContext; programObj: GLhandleARB; index: GLuint; maxLength: GLsizei; length: PGLsizei; size: PGLint; typ: PGLenum; name: PGLcharARB );
ctxnull852 		get_attrib_location_ARB : function( ctx: GLIContext; programObj: GLhandleARB; const name: PGLcharARB ): GLint;
853 		clamp_color_ARB : procedure( ctx: GLIContext; target: GLenum; clamp: GLenum );
854 		gen_queries : procedure( ctx: GLIContext; n: GLsizei; ids: PGLuint );
855 		delete_queries : procedure( ctx: GLIContext; n: GLsizei; const ids: PGLuint );
ctxnull856 		is_query : function( ctx: GLIContext; id: GLuint ): GLboolean;
857 		begin_query : procedure( ctx: GLIContext; target: GLenum; id: GLuint );
858 		end_query : procedure( ctx: GLIContext; target: GLenum );
859 		get_queryiv : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: PGLint );
860 		get_query_objectiv : procedure( ctx: GLIContext; id: GLuint; pname: GLenum; params: PGLint );
861 		get_query_objectuiv : procedure( ctx: GLIContext; id: GLuint; pname: GLenum; params: PGLuint );
862 		bind_buffer : procedure( ctx: GLIContext; target: GLenum; buffer: GLuint );
863 		delete_buffers : procedure( ctx: GLIContext; n: GLsizei; const buffers: PGLuint );
864 		gen_buffers : procedure( ctx: GLIContext; n: GLsizei; buffers: PGLuint );
ctxnull865 		is_buffer : function( ctx: GLIContext; buffer: GLuint ): GLboolean;
866 		buffer_data : procedure( ctx: GLIContext; target: GLenum; size: GLsizeiptrARB; const data: UnivPtr; usage: GLenum );
867 		buffer_sub_data : procedure( ctx: GLIContext; target: GLenum; offset: GLintptrARB; size: GLsizeiptrARB; const data: UnivPtr );
868 		get_buffer_sub_data : procedure( ctx: GLIContext; target: GLenum; offset: GLintptrARB; size: GLsizeiptrARB; data: UnivPtr );
ctxnull869 		map_buffer : function( ctx: GLIContext; target: GLenum; access: GLenum ): UnivPtr;
ctxnull870 		unmap_buffer : function( ctx: GLIContext; target: GLenum ): GLboolean;
871 		get_buffer_parameteriv : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: PGLint );
872 		get_buffer_pointerv : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: UnivPtrPtr );
873 		depth_bounds_EXT : procedure( ctx: GLIContext; zmin: GLclampd; zmax: GLclampd );
874 		draw_buffers_ARB : procedure( ctx: GLIContext; n: GLsizei; const bufs: PGLenum );
875 
ctxnull876 		is_shader : function( ctx: GLIContext; shader: GLuint ): GLboolean;
ctxnull877 		is_program : function( ctx: GLIContext; program_: GLuint ): GLboolean;
878 		get_shaderiv : procedure( ctx: GLIContext; shader: GLuint; pname: GLenum; params: PGLint );
879 		get_programiv : procedure( ctx: GLIContext; program_: GLuint; pname: GLenum; params: PGLint );
880 		get_shader_info_log : procedure( ctx: GLIContext; shader: GLuint; bufSize: GLsizei; length: PGLsizei; infoLog: PChar );
881 		get_program_info_log : procedure( ctx: GLIContext; program_: GLuint; bufSize: GLsizei; length: PGLsizei; infoLog: PChar );
882 
883 		stencil_func_separate : procedure( ctx: GLIContext; face: GLenum; func: GLenum; ref: GLint; mask: GLuint );
884 		stencil_mask_separate : procedure( ctx: GLIContext; face: GLenum; mask: GLuint );
885 
886 		multi_draw_element_array_APPLE : procedure( ctx: GLIContext; mode: GLenum; const first: PGLint; const count: PGLsizei; primcount: GLsizei );
887 		multi_draw_range_element_array_APPLE : procedure( ctx: GLIContext; mode: GLenum; start: GLuint; finish: GLuint; const first: PGLint; const count: PGLsizei; primcount: GLsizei );
888 
889 		{ frame buffer object }
ctxnull890 		is_renderbuffer_EXT : function( ctx: GLIContext; renderbuffer: GLuint ): GLboolean;
891 		bind_renderbuffer_EXT : procedure( ctx: GLIContext; target: GLenum; renderbuffer: GLuint );
892 		delete_renderbuffers_EXT : procedure( ctx: GLIContext; n: GLsizei; const renderbuffers: PGLuint );
893 		gen_renderbuffers_EXT : procedure( ctx: GLIContext; n: GLsizei; renderbuffers: PGLuint );
894 		renderbuffer_storage_EXT : procedure( ctx: GLIContext; target: GLenum; internalformat: GLenum; width: GLsizei; height: GLsizei );
895 		get_renderbuffer_parameteriv_EXT : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: PGLint );
ctxnull896 		is_framebuffer_EXT : function( ctx: GLIContext; framebuffer: GLuint ): GLboolean;
897 		bind_framebuffer_EXT : procedure( ctx: GLIContext; target: GLenum; framebuffer: GLuint );
898 		delete_framebuffers_EXT : procedure( ctx: GLIContext; n: GLsizei; const framebuffers: PGLuint );
899 		gen_framebuffers_EXT : procedure( ctx: GLIContext; n: GLsizei; framebuffers: PGLuint );
ctxnull900 		check_framebuffer_status_EXT : function( ctx: GLIContext; target: GLenum ): GLenum;
901 		framebuffer_texture1D_EXT : procedure( ctx: GLIContext; target: GLenum; attachment: GLenum; textarget: GLenum; texture: GLuint; level: GLint );
902 		framebuffer_texture2D_EXT : procedure( ctx: GLIContext; target: GLenum; attachment: GLenum; textarget: GLenum; texture: GLuint; level: GLint );
903 		framebuffer_texture3D_EXT : procedure( ctx: GLIContext; target: GLenum; attachment: GLenum; textarget: GLenum; texture: GLuint; level: GLint; zoffset: GLint );
904 		framebuffer_renderbuffer_EXT : procedure( ctx: GLIContext; target: GLenum; attachment: GLenum; renderbuffertarget: GLenum; renderbuffer: GLuint );
905 		get_framebuffer_attachment_parameteriv_EXT : procedure( ctx: GLIContext; target: GLenum; attachment: GLenum; pname: GLenum; params: PGLint );
906 		generate_mipmap_EXT : procedure( ctx: GLIContext; target: GLenum );
907 
908 		buffer_parameteri_APPLE : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; param: GLint );
909 		flush_mapped_buffer_range_APPLE : procedure( ctx: GLIContext; target: GLenum; offset: GLintptrARB; size: GLsizeiptrARB );
910 
911 		program_env_parameters4fv_EXT : procedure( ctx: GLIContext; target: GLenum; index: GLuint; count: GLsizei; const params: PGLfloat );
912 		program_local_parameters4fv_EXT : procedure( ctx: GLIContext; target: GLenum; index: GLuint; count: GLsizei; const params: PGLfloat );
913 
ctxnull914 		object_purgeable_APPLE : function( ctx: GLIContext; objectType: GLenum; name: GLuint; option: GLenum ): GLenum;
ctxnull915 		object_unpurgeable_APPLE : function( ctx: GLIContext; objectType: GLenum; name: GLuint; option: GLenum ): GLenum;
916 		get_object_parameteriv_APPLE : procedure( ctx: GLIContext; objectType: GLenum; name: GLuint; pname: GLenum; params: PGLint );
917 
918 		{ geometry shader4 }
919 		program_parameteri_EXT : procedure( ctx: GLIContext; program_name: GLuint; pname: GLenum; value: GLint );
920 		framebuffer_texture_EXT : procedure( ctx: GLIContext; target: GLenum; attachment: GLenum; texture: GLuint; level: GLint );
921 		framebuffer_texture_layer_EXT : procedure( ctx: GLIContext; target: GLenum; attachment: GLenum; texture: GLuint; level: GLint; layer: GLint );
922 		framebuffer_texture_face_EXT : procedure( ctx: GLIContext; target: GLenum; attachment: GLenum; texture: GLuint; level: GLint; face: GLenum );
923 
924 		{ transform feedback }
925 		bind_buffer_range_EXT : procedure( ctx: GLIContext; target: GLenum; index: GLuint; buffer: GLuint; offset: GLintptr; size: GLsizeiptr );
926 		bind_buffer_offset_EXT : procedure( ctx: GLIContext; target: GLenum; index: GLuint; buffer: GLuint; offset: GLintptr );
927 		bind_buffer_base_EXT : procedure( ctx: GLIContext; target: GLenum; index: GLuint; buffer: GLuint );
928 		begin_transform_feedback_EXT : procedure( ctx: GLIContext; primitiveMode: GLenum );
929 		end_transform_feedback_EXT : procedure( ctx: GLIContext );
930 		transform_feedback_varyings_EXT : procedure( ctx: GLIContext; program_: GLuint; count: GLsizei; {const} varyings: PPChar; bufferMode: GLenum );
931 		get_transform_feedback_varying_EXT : procedure( ctx: GLIContext; program_: GLuint; index: GLuint; bufSize: GLsizei; length: PGLsizei; size: PGLsizei; typ: PGLenum; name: PChar );
932 		get_integer_indexedv_EXT : procedure( ctx: GLIContext; param: GLenum; index: GLuint; values: PGLint );
933 		get_boolean_indexedv_EXT : procedure( ctx: GLIContext; param: GLenum; index: GLuint; values: PGLboolean );
934 
935 		{ bindable uniform }
936 		uniform_buffer_EXT : procedure( ctx: GLIContext; program_: GLuint; location: GLint; buffer: GLuint );
ctxnull937 		get_uniform_buffer_size_EXT : function( ctx: GLIContext; program_: GLuint; location: GLint ): GLint;
ctxnull938 		get_uniform_buffer_offset_EXT : function( ctx: GLIContext; program_: GLuint; location: GLint ): GLintptr;
939 
940 		{ texture integer }
941 		clear_colorIi_EXT : procedure( ctx: GLIContext; r: GLint; g: GLint; b: GLint; a: GLint );
942 		clear_colorIui_EXT : procedure( ctx: GLIContext; r: GLuint; g: GLuint; b: GLuint; a: GLuint );
943 		tex_parameterIiv_EXT : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: PGLint );
944 		tex_parameterIuiv_EXT : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: PGLuint );
945 		get_tex_parameterIiv_EXT : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: PGLint );
946 		get_tex_parameterIuiv_EXT : procedure( ctx: GLIContext; target: GLenum; pname: GLenum; params: PGLuint );
947 
948 		{ gpu_shader4 }
949 		vertex_attribI1i_EXT : procedure( ctx: GLIContext; index: GLuint; x: GLint );
950 		vertex_attribI2i_EXT : procedure( ctx: GLIContext; index: GLuint; x: GLint; y: GLint );
951 		vertex_attribI3i_EXT : procedure( ctx: GLIContext; index: GLuint; x: GLint; y: GLint; z: GLint );
952 		vertex_attribI4i_EXT : procedure( ctx: GLIContext; index: GLuint; x: GLint; y: GLint; z: GLint; w: GLint );
953 		vertex_attribI1ui_EXT : procedure( ctx: GLIContext; index: GLuint; x: GLuint );
954 		vertex_attribI2ui_EXT : procedure( ctx: GLIContext; index: GLuint; x: GLuint; y: GLuint );
955 		vertex_attribI3ui_EXT : procedure( ctx: GLIContext; index: GLuint; x: GLuint; y: GLuint; z: GLuint );
956 		vertex_attribI4ui_EXT : procedure( ctx: GLIContext; index: GLuint; x: GLuint; y: GLuint; z: GLuint; w: GLuint );
957 		vertex_attribI1iv_EXT : procedure( ctx: GLIContext; index: GLuint; const v: PGLint );
958 		vertex_attribI2iv_EXT : procedure( ctx: GLIContext; index: GLuint; const v: PGLint );
959 		vertex_attribI3iv_EXT : procedure( ctx: GLIContext; index: GLuint; const v: PGLint );
960 		vertex_attribI4iv_EXT : procedure( ctx: GLIContext; index: GLuint; const v: PGLint );
961 		vertex_attribI1uiv_EXT : procedure( ctx: GLIContext; index: GLuint; const v: PGLuint );
962 		vertex_attribI2uiv_EXT : procedure( ctx: GLIContext; index: GLuint; const v: PGLuint );
963 		vertex_attribI3uiv_EXT : procedure( ctx: GLIContext; index: GLuint; const v: PGLuint );
964 		vertex_attribI4uiv_EXT : procedure( ctx: GLIContext; index: GLuint; const v: PGLuint );
965 		vertex_attribI4bv_EXT : procedure( ctx: GLIContext; index: GLuint; const v: PGLbyte );
966 		vertex_attribI4sv_EXT : procedure( ctx: GLIContext; index: GLuint; const v: PGLshort );
967 		vertex_attribI4ubv_EXT : procedure( ctx: GLIContext; index: GLuint; const v: PGLubyte );
968 		vertex_attribI4usv_EXT : procedure( ctx: GLIContext; index: GLuint; const v: PGLushort );
969 		vertex_attribI_pointer_EXT : procedure( ctx: GLIContext; index: GLuint; size: GLint; typ: GLenum; stride: GLsizei; const pointr: UnivPtr );
970 		get_vertex_attribIiv_EXT : procedure( ctx: GLIContext; index: GLuint; pname: GLenum; params: PGLint );
971 		get_vertex_attribIuiv_EXT : procedure( ctx: GLIContext; index: GLuint; pname: GLenum; params: PGLuint );
972 		uniform1ui_EXT : procedure( ctx: GLIContext; location: GLint; v0: GLuint );
973 		uniform2ui_EXT : procedure( ctx: GLIContext; location: GLint; v0: GLuint; v1: GLuint );
974 		uniform3ui_EXT : procedure( ctx: GLIContext; location: GLint; v0: GLuint; v1: GLuint; v2: GLuint );
975 		uniform4ui_EXT : procedure( ctx: GLIContext; location: GLint; v0: GLuint; v1: GLuint; v2: GLuint; v3: GLuint );
976 		uniform1uiv_EXT : procedure( ctx: GLIContext; location: GLint; count: GLsizei; const value: PGLuint );
977 		uniform2uiv_EXT : procedure( ctx: GLIContext; location: GLint; count: GLsizei; const value: PGLuint );
978 		uniform3uiv_EXT : procedure( ctx: GLIContext; location: GLint; count: GLsizei; const value: PGLuint );
979 		uniform4uiv_EXT : procedure( ctx: GLIContext; location: GLint; count: GLsizei; const value: PGLuint );
980 		get_uniformuiv_EXT : procedure( ctx: GLIContext; program_: GLuint; location: GLint; params: PGLuint );
981 		bind_frag_data_location_EXT : procedure( ctx: GLIContext; program_: GLuint; colorNumber: GLuint; const name: PChar );
ctxnull982 		get_frag_data_location_EXT : function( ctx: GLIContext; program_: GLuint; const name: PChar ): GLint;
983 
984 		{ EXT_draw_buffers2 }
985 		color_mask_indexed_EXT : procedure( ctx: GLIContext; index: GLuint; r: GLboolean; g: GLboolean; b: GLboolean; a: GLboolean );
986 		enable_indexed_EXT : procedure( ctx: GLIContext; target: GLenum; index: GLuint );
987 		disable_indexed_EXT : procedure( ctx: GLIContext; target: GLenum; index: GLuint );
ctxnull988 		is_enabled_indexed_EXT : function( ctx: GLIContext; target: GLenum; index: GLuint ): GLboolean;
989 
990 		{ OpenGL 2.1 }
991 		uniform_matrix2x3fv : procedure( ctx: GLIContext; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat );
992 		uniform_matrix3x2fv : procedure( ctx: GLIContext; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat );
993 		uniform_matrix2x4fv : procedure( ctx: GLIContext; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat );
994 		uniform_matrix4x2fv : procedure( ctx: GLIContext; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat );
995 		uniform_matrix3x4fv : procedure( ctx: GLIContext; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat );
996 		uniform_matrix4x3fv : procedure( ctx: GLIContext; location: GLint; count: GLsizei; transpose: GLboolean; const value: PGLfloat );
997 
998 		{ EXT_framebuffer_blit and EXT_framebuffer_multisample }
999 		blit_framebuffer_EXT : procedure( ctx: GLIContext; srcX0: GLint; srcY0: GLint; srcX1: GLint; srcY1: GLint; dstX0: GLint; dstY0: GLint; dstX1: GLint; dstY1: GLint; mask: GLbitfield; filter: GLenum );
1000 		renderbuffer_storage_multisample_EXT : procedure( ctx: GLIContext; target: GLenum; samples: GLsizei; internalformat: GLenum; width: GLsizei; height: GLsizei );
1001 
1002 		{ NV_conditional_render }
1003 		begin_conditional_render_NV : procedure( ctx: GLIContext; id: GLuint; mode: GLenum );
1004 		end_conditional_render_NV : procedure( ctx: GLIContext );
1005 
1006 		get_attached_shaders : procedure( ctx: GLIContext; program_: GLuint; maxCount: GLsizei; count: PGLsizei; shaders: PGLuint );
1007 	end;
1008 
1009 {$endc} {TARGET_OS_MAC}
1010 {$ifc not defined MACOSALLINCLUDE or not MACOSALLINCLUDE}
1011 
1012 end.
1013 {$endc} {not MACOSALLINCLUDE}
1014