summaryrefslogtreecommitdiffstats
path: root/emulator/opengl/host/libs/GLESv1_dec/gl.attrib
blob: 26b793eb15db80f899fd13c914a0d0ab85a79f85 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
GLOBAL
	base_opcode 1024
	encoder_headers "glUtils.h" "GLEncoderUtils.h"
	
#void glClipPlanef(GLenum plane, GLfloat *equation)
glClipPlanef
  dir equation in
	len equation (4 * sizeof(float))

#void glFogfv(GLenum pname, GLfloat *params)
glFogfv
	len params (glUtilsParamSize(pname) * sizeof(GLfloat))

#void glGetFloatv(GLenum pname, GLfloat *params)
glGetFloatv
	dir params out
	len params (glUtilsParamSize(pname) * sizeof(GLfloat))

#void glGetLightfv(GLenum light, GLenum pname, GLfloat *params)
glGetLightfv
	dir params out
	len params (glUtilsParamSize(pname) * sizeof(GLfloat))

#void glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
glGetMaterialfv
	dir params out
	len params (glUtilsParamSize(pname) * sizeof(GLfloat))

#void glGetTexEnvfv(GLenum env, GLenum pname, GLfloat *params)
glGetTexEnvfv
	dir params out
	len params (glUtilsParamSize(pname) * sizeof(GLfloat))

#void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
glGetTexParameterfv
	dir params out
	len params (glUtilsParamSize(pname) * sizeof(GLfloat))

#void glLightModelfv(GLenum pname, GLfloat *params)
glLightModelfv
	len params (glUtilsParamSize(pname) * sizeof(GLfloat))

#void glLightfv(GLenum light, GLenum pname, GLfloat *params)
glLightfv
	len params (glUtilsParamSize(pname) * sizeof(GLfloat))

#void glLoadMatrixf(GLfloat *m)
glLoadMatrixf
	len m (16 * sizeof(GLfloat))

#void glMaterialfv(GLenum face, GLenum pname, GLfloat *params)
glMaterialfv
	len params (glUtilsParamSize(pname) * sizeof(GLfloat))

#void glMultMatrixf(GLfloat *m)
glMultMatrixf
	len m (16 * sizeof(GLfloat))

#void glPointParameterfv(GLenum pname, GLfloat *params)
glPointParameterfv
	len params (glUtilsParamSize(pname) * sizeof(GLfloat))

#void glTexEnvfv(GLenum target, GLenum pname, GLfloat *params)
glTexEnvfv
	len params (glUtilsParamSize(pname) * sizeof(GLfloat))

#void glTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
glTexParameterfv
	len params (glUtilsParamSize(pname) * sizeof(GLfloat))

#void glBufferData(GLenum target, GLsizeiptr size, GLvoid *data, GLenum usage)
glBufferData
	len data size

#void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data)
glBufferSubData
	dir data in
	len data size

#void glClipPlanex(GLenum plane, GLfixed *eqn)
glClipPlanex
	dir eqn in
	len eqn (4 * sizeof(GLfixed))

#void glColorPointer(GLint size, GLenum type, GLsizei stride, GLvoid *pointer)
#we treat the pointer as offset to a VBO
glColorPointer
	len pointer (sizeof(unsigned int))
	flag unsupported

#void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, GLvoid *data)
glCompressedTexImage2D
	len data imageSize
    var_flag data nullAllowed

#void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, GLvoid *data)
glCompressedTexSubImage2D
	len data imageSize

#void glDeleteBuffers(GLsizei n, GLuint *buffers)
glDeleteBuffers
	len buffers (n * sizeof(GLuint))
    param_check n if(n<0){ ctx->setError(GL_INVALID_VALUE); return; } 

#void glDeleteTextures(GLsizei n, GLuint *textures)
glDeleteTextures
	len textures (n * sizeof(GLuint))
    param_check n if(n<0){ ctx->setError(GL_INVALID_VALUE); return; } 

#this function is marked as unsupported - it shouldn't be called directly
#instead it translated into - glDrawDirectElements and glDrawIndirectElements
#void glDrawElements(GLenum mode, GLsizei count, GLenum type, GLvoid *indices)
glDrawElements
	flag unsupported


#void glFogxv(GLenum pname, GLfixed *params)
glFogxv
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glGetBooleanv(GLenum pname, GLboolean *params)
glGetBooleanv
	dir params out
	len params (glUtilsParamSize(pname) * sizeof(GLboolean))

#void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
glGetBufferParameteriv
	len params (sizeof(GLint))
	dir params out

#void glGenBuffers(GLsizei n, GLuint *buffers)
glGenBuffers
	len buffers (n * sizeof(GLuint))
	dir buffers out
    param_check n if(n<0){ ctx->setError(GL_INVALID_VALUE); return; } 

#void glGenTextures(GLsizei n, GLuint *textures)
glGenTextures
	len textures (n * sizeof(GLuint))
	dir textures out
    param_check n if(n<0){ ctx->setError(GL_INVALID_VALUE); return; } 

#void glGetFixedv(GLenum pname, GLfixed *params)
glGetFixedv
	dir params out
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glGetIntegerv(GLenum pname, GLint *params)
glGetIntegerv
	dir params out
	len params (glUtilsParamSize(pname) * sizeof(GLint))

#void glGetLightxv(GLenum light, GLenum pname, GLfixed *params)
glGetLightxv
	dir params out
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glGetMaterialxv(GLenum face, GLenum pname, GLfixed *params)
glGetMaterialxv
	dir params out
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glGetPointerv(GLenum pname, void **params)
glGetPointerv
	flag unsupported

#GLubyte* glGetString(GLenum name)
glGetString
  flag unsupported

#void glGetTexEnviv(GLenum env, GLenum pname, GLint *params)
glGetTexEnviv
	dir params out
	len params (glUtilsParamSize(pname) * sizeof(GLint))

#void glGetTexEnvxv(GLenum env, GLenum pname, GLfixed *params)
glGetTexEnvxv
	dir params out
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
glGetTexParameteriv
	dir params out
	len params (sizeof(GLint))

#void glGetTexParameterxv(GLenum target, GLenum pname, GLfixed *params)
glGetTexParameterxv
	dir params out
	len params (sizeof(GLfixed))

#void glLightModelxv(GLenum pname, GLfixed *params)
glLightModelxv
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glLightxv(GLenum light, GLenum pname, GLfixed *params)
glLightxv
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glLoadMatrixx(GLfixed *m)
glLoadMatrixx
	len m (16 * sizeof(GLfixed))

#void glMaterialxv(GLenum face, GLenum pname, GLfixed *params)
glMaterialxv
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glMultMatrixx(GLfixed *m)
glMultMatrixx
	len m (16 * sizeof(GLfixed))

#void glNormalPointer(GLenum type, GLsizei stride, GLvoid *pointer)
#we treat the pointer as an offset to a VBO
glNormalPointer
	len pointer (sizeof(unsigned int))
	flag unsupported

#void glPointParameterxv(GLenum pname, GLfixed *params)
glPointParameterxv
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
glReadPixels
	dir pixels out
	len pixels glesv1_enc::pixelDataSize(self, width, height, format, type, 1)

#void glTexCoordPointer(GLint size, GLenum type, GLsizei stride, GLvoid *pointer)
glTexCoordPointer
	len pointer (sizeof(unsigned int))
	flag unsupported

#void glTexEnviv(GLenum target, GLenum pname, GLint *params)
glTexEnviv
	len params (glUtilsParamSize(pname) * sizeof(GLint))

#void glTexEnvxv(GLenum target, GLenum pname, GLfixed *params)
glTexEnvxv
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, GLvoid *pixels)
glTexImage2D
	dir pixels in
	len pixels glesv1_enc::pixelDataSize(self, width, height, format, type, 0)
	var_flag pixels nullAllowed isLarge

#void glTexParameteriv(GLenum target, GLenum pname, GLint *params)
glTexParameteriv
	len params (glUtilsParamSize(pname) * sizeof(GLint))

#void glTexParameterxv(GLenum target, GLenum pname, GLfixed *params)
glTexParameterxv
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
glTexSubImage2D
	len pixels glesv1_enc::pixelDataSize(self, width, height, format, type, 0)
        var_flag pixels isLarge

#void glVertexPointer(GLint size, GLenum type, GLsizei stride, GLvoid *pointer)
# we treat the pointer as an offset to a VBO
glVertexPointer
	flag unsupported

#void glPointSizePointerOES(GLenum type, GLsizei stride, GLvoid *pointer)
glPointSizePointerOES
	len pointer (sizeof(unsigned int))
	flag unsupported

#void glGetClipPlanef(GLenum pname, GLfloat * eqn)
glGetClipPlanef
	dir eqn out
	len eqn (4 * sizeof(GLfloat))

#void glVertexPointerData(GLint size, GLenum type, GLsizei stride, void *data, GLuint datalen)
glVertexPointerData
	len data datalen
	custom_pack data glUtilsPackPointerData((unsigned char *)ptr, (unsigned char *)data, size, type, stride, datalen)
	flag custom_decoder
	flag not_api

#void glColorPointerData(GLint size, GLenum type, GLsizei stride, void *data, GLuint datalen)
glColorPointerData
	len data datalen
	flag custom_decoder
	custom_pack data glUtilsPackPointerData((unsigned char *)ptr, (unsigned char *)data, size, type, stride, datalen)
	flag not_api

#void glNormalPointerData(GLenum type, GLsizei stride, void *data, GLuint datalen)
glNormalPointerData
	len data datalen
	flag custom_decoder
	custom_pack data glUtilsPackPointerData((unsigned char *)ptr, (unsigned char *)data, 3, type, stride, datalen)
	flag not_api

#void glPointSizePointerData(GLenum type, GLsizei stride, void *data, GLuint datalen)
glPointSizePointerData
	len data datalen
	flag custom_decoder
	custom_pack data glUtilsPackPointerData((unsigned char *)ptr, (unsigned char *)data, 1, type, stride, datalen)
	flag not_api

#void glTexCoordPointerData(GLint size, GLenum type, GLsizei stride, void *data, GLuint datalen)
glTexCoordPointerData
	len data datalen
	flag custom_decoder
	custom_pack data glUtilsPackPointerData((unsigned char *)ptr, (unsigned char *)data, size, type, stride, datalen)
	flag not_api

#void glWeightPointerData(GLint size, GLenum type, GLsizei stride,  void * data, GLuint datalen)
glWeightPointerData
  	len data datalen
  	custom_pack data glUtilsPackPointerData((unsigned char *)ptr, (unsigned char*)data, size, type, stride, datalen)
  	flag custom_decoder
	flag not_api

#void glMatrixIndexPointerData(GLint size, GLenum type, GLsizei stride,  void * data, GLuint datalen)
glMatrixIndexPointerData
	len data datalen
  	custom_pack data glUtilsPackPointerData((unsigned char *)ptr, (unsigned char*)data, size, type, stride, datalen)
  	flag custom_decoder
	flag not_api

glVertexPointerOffset
	flag custom_decoder
	flag not_api
glNormalPointerOffset
	flag custom_decoder
	flag not_api
glTexCoordPointerOffset
	flag custom_decoder
	flag not_api
glPointSizePointerOffset
	flag custom_decoder
	flag not_api
glColorPointerOffset
	flag custom_decoder
	flag not_api
glWeightPointerOffset
    flag custom_decoder
	flag not_api
glMatrixIndexPointerOffset
    flag custom_decoder
	flag not_api

glDrawElementsData
	len data datalen
	flag custom_decoder
	flag not_api

glDrawElementsOffset
	flag custom_decoder
	flag not_api

glGetCompressedTextureFormats
	dir formats out
	len formats (count * sizeof(GLint))
	flag custom_decoder
	flag not_api

glFinishRoundTrip
	flag custom_decoder
	flag not_api

#gles1 extensions

#void glDrawTexsvOES(GLshort *coords)
glDrawTexsvOES
	len coords (5 * sizeof(GLshort))

#void glDrawTexivOES(GLint *coords)
glDrawTexivOES
	len coords (5 * sizeof(GLint))

#void glDrawTexxvOES(GLfixed *coords)
glDrawTexxvOES
	len coords (5 * sizeof(GLfixed))

#void glDrawTexfvOES(GLfloat *coords)
glDrawTexfvOES
	len coords (5 * sizeof(GLfloat))

#glClipPlanexOES(GLenum plane, const GLfixed * equation)
glClipPlanexOES
	dir equation in
	len equation (4 * sizeof(GLfixed))

#glClipPlanexIMG(GLenum plane, const GLfixed * equation)
glClipPlanexIMG
	dir equation in
	len equation (4 * sizeof(GLfixed))

#void glFogxvOES(GLenum pname, GLfixed *params)
glFogxvOES
	dir params in
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glGetClipPlanexOES(GLenum pname,  GLfixed * eqn)
glGetClipPlanexOES
	dir eqn out
	len eqn (4 * sizeof(GLfixed))

#void glGetClipPlanex(GLenum pname,  GLfixed * eqn)
glGetClipPlanex
	dir eqn out
	len eqn (4 * sizeof(GLfixed))

#void glGetFixedvOES(GLenum pname, GLfixed *params)
glGetFixedvOES
	dir params out
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glGetLightxvOES(GLenum light, GLenum pname, GLfixed *params)
glGetLightxvOES
	dir params out
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glGetMaterialxvOES(GLenum face, GLenum pname, GLfixed *params)
glGetMaterialxvOES
	dir params out
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glGetTexEnvxvOES(GLenum env, GLenum pname, GLfixed *params)
glGetTexEnvxvOES
	dir params out
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glGetTexParameterxvOES(GLenum target, GLenum pname, GLfixed *params)
glGetTexParameterxvOES
	dir params out
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glLightModelxvOES(GLenum pname, GLfixed *params)
glLightModelxvOES
	dir params in
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glLightxvOES(GLenum light, GLenum pname, GLfixed *params)
glLightxvOES
	dir params in
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glLoadMatrixxOES(GLfixed *m)
glLoadMatrixxOES
	dir m in
	len m (16 * sizeof(GLfixed))

#void glMaterialxvOES(GLenum face, GLenum pname, GLfixed *params)
glMaterialxvOES
	dir params in
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glMultMatrixxOES(GLfixed *m)
glMultMatrixxOES
	dir m in
	len m (16 * sizeof(GLfixed))

#void glPointParameterxvOES(GLenum pname, GLfixed *params)
glPointParameterxvOES
	dir params in
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glTexEnvxvOES(GLenum target, GLenum pname, GLfixed *params)
glTexEnvxvOES
	dir params in
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glTexParameterxvOES(GLenum target, GLenum pname, GLfixed *params)
glTexParameterxvOES
	dir params in
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glDeleteRenderbuffersOES(GLsizei n, GLuint *renderbuffers)
glDeleteRenderbuffersOES
	dir renderbuffers in
	len renderbuffers (n * sizeof(GLuint))
    param_check n if(n<0){ ctx->setError(GL_INVALID_VALUE); return; } 

#void glGenRenderbuffersOES(GLsizei n, GLuint *renderbuffers)
glGenRenderbuffersOES
	dir renderbuffers out 
	len renderbuffers (n * sizeof(GLuint))
    param_check n if(n<0){ ctx->setError(GL_INVALID_VALUE); return; } 

#void glGetRenderbufferParameterivOES(GLenum target, GLenum pname, GLint *params)
glGetRenderbufferParameterivOES
	dir params out
	len params (glUtilsParamSize(pname) * sizeof(GLint))

#void glDeleteFramebuffersOES(GLsizei n, GLuint *framebuffers)
glDeleteFramebuffersOES
	dir framebuffers in
	len framebuffers (n * sizeof(GLuint))
    param_check n if(n<0){ ctx->setError(GL_INVALID_VALUE); return; } 

#void glGenFramebuffersOES(GLsizei n, GLuint *framebuffers)
glGenFramebuffersOES
	dir framebuffers out
	len framebuffers (n * sizeof(GLuint))
    param_check n if(n<0){ ctx->setError(GL_INVALID_VALUE); return; } 

#void glGetFramebufferAttachmentParameterivOES(GLenum target, GLenum attachment, GLenum pname, GLint *params)
glGetFramebufferAttachmentParameterivOES
	dir params out
	len params (glUtilsParamSize(pname) * sizeof(GLint))

#void* glMapBufferOES(GLenum target, GLenum access)
glMapBufferOES
	flag unsupported

#void glGetBufferPointervOES(GLenum target, GLenum pname, GLvoid ** params)
glGetBufferPointervOES
	flag unsupported

#void glMatrixIndexPointerOES(GLint size, GLenum type, GLsizei stride, GLvoid *pointer)
glMatrixIndexPointerOES
	len pointer (sizeof(unsigned int))
	flag unsupported

#void glWeightPointerOES(GLint size, GLenum type, GLsizei stride, GLvoid *pointer)
glWeightPointerOES
	len pointer (sizeof(unsigned int))
	flag unsupported

#glQueryMatrixxOES(GLfixed * mantissa, GLint * exponent)
glQueryMatrixxOES
	dir mantissa out
	len mantissa (16 * sizeof(GLfixed))
	dir exponent out
	len exponent (16 * sizeof(GLfixed))

#void glClipPlanefOES(GLenum plane, GLfloat *equation)
glClipPlanefOES
	dir equation in
	len equation (4 * sizeof(GLfloat))

#void glClipPlanefIMG(GLenum plane, GLfloat *equation)
glClipPlanefIMG
	dir equation in
	len equation (4 * sizeof(GLfloat))

#void glGetClipPlanefOES(GLenum pname, GLfloat * eqn)
glGetClipPlanefOES
	dir eqn out
	len eqn (4 * sizeof(GLfloat))

#void glTexGenfvOES(GLenum coord, GLenum pname, GLfloat *params)
glTexGenfvOES
	len params (glUtilsParamSize(pname) * sizeof(GLfloat))

#void glTexGenivOES(GLenum coord, GLenum pname, GLint *params)
glTexGenivOES
	len params (glUtilsParamSize(pname) * sizeof(GLint))

#void glTexGenxvOES(GLenum coord, GLenum pname, GLfixed *params)
glTexGenxvOES
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glGetTexGenfvOES(GLenum coord, GLenum pname, GLfloat *params)
glGetTexGenfvOES
	len params (glUtilsParamSize(pname) * sizeof(GLfloat))

#void glGetTexGenivOES(GLenum coord, GLenum pname, GLint *params)
glGetTexGenivOES
	len params (glUtilsParamSize(pname) * sizeof(GLint))

#void glGetTexGenxvOES(GLenum coord, GLenum pname, GLfixed *params)
glGetTexGenxvOES
	len params (glUtilsParamSize(pname) * sizeof(GLfixed))

#void glDeleteVertexArraysOES(GLsizei n, const GLuint *arrays)
glDeleteVertexArraysOES
	dir arrays in
	len arrays (n * sizeof(GLuint))
    param_check n if(n<0){ ctx->setError(GL_INVALID_VALUE); return; } 

#void glGenVertexArraysOES(GLsizei n, GLuint *arrays)
glGenVertexArraysOES
	dir arrays out
	len arrays (n * sizeof(GLuint))
    param_check n if(n<0){ ctx->setError(GL_INVALID_VALUE); return; } 

#void glDiscardFramebufferEXT(GLenum target, GLsizei numAttachments, const GLenum *attachments)
glDiscardFramebufferEXT
	dir attachments in
	len attachments (numAttachments * sizeof(const GLenum))

#void glMultiDrawArraysEXT(GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount)
glMultiDrawArraysEXT
	flag unsupported
	
#void glMultiDrawElementsEXT(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei primcount)
glMultiDrawElementsEXT
	flag unsupported

#void glMultiDrawArraysSUN(GLenum mode, GLint *first, GLsizei *count, GLsizei primcount)
glMultiDrawArraysSUN
	flag unsupported
	
#void glMultiDrawElementsSUN(GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount)
glMultiDrawElementsSUN
	flag unsupported

#void glDeleteFencesNV(GLsizei n, const GLuint *fences)
glDeleteFencesNV
	dir fences in
	len fences (n * sizeof(GLuint))
    param_check n if(n<0){ ctx->setError(GL_INVALID_VALUE); return; } 

#void glGenFencesNV(GLsizei n, GLuint *fences)
glGenFencesNV
	dir fences in
	len fences (n * sizeof(GLuint))
    param_check n if(n<0){ ctx->setError(GL_INVALID_VALUE); return; } 

#void glGetFenceivNV(GLuint fence, GLenum pname, GLint *params)
glGetFenceivNV
	dir params out
	len params (glUtilsParamSize(pname) * sizeof(GLint))

#void glGetDriverControlsQCOM(GLint *num, GLsizei size, GLuint *driverControls)
glGetDriverControlsQCOM
	dir num out
	len num (1 * sizeof(GLint))
	dir driverControls out
	len driverControls (size * sizeof(GLuint))

#void glGetDriverControlStringQCOM(GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString)
glGetDriverControlStringQCOM
	dir length out
	len length (1 * sizeof(GLsizei))
	dir driverControlString out
	len driverControlString (1 * sizeof(GLchar))

#void glExtGetTexturesQCOM(GLuint *textures, GLint maxTextures, GLint *numTextures)
glExtGetTexturesQCOM
	dir textures out
	len textures (maxTextures * sizeof(GLuint))
	dir numTextures out
	len numTextures (1 * sizeof(GLint))

#void glExtGetBuffersQCOM(GLuint *buffers, GLint maxBuffers, GLint *numBuffers)
glExtGetBuffersQCOM
	dir buffers out
	len buffers (maxBuffers * sizeof(GLuint))
	dir numBuffers out
	len numBuffers (1 * sizeof(GLint))

#void glExtGetRenderbuffersQCOM(GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers)
glExtGetRenderbuffersQCOM
	dir renderbuffers out
	len renderbuffers (maxRenderbuffers * sizeof(GLuint))
	dir numRenderbuffers out
	len numRenderbuffers (1 * sizeof(GLint))

#void glExtGetFramebuffersQCOM(GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers)
glExtGetFramebuffersQCOM
	dir framebuffers out
	len framebuffers (maxFramebuffers * sizeof(GLuint))
	dir numFramebuffers out
	len numFramebuffers (1 * sizeof(GLint))

#void glExtGetTexLevelParameterivQCOM(GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params)
glExtGetTexLevelParameterivQCOM
	dir params out
	len params (glUtilsParamSize(pname) * sizeof(GLint))

#void glExtGetTexSubImageQCOM(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid *texels)
glExtGetTexSubImageQCOM
	dir texels out
	len texels (depth * glesv1_enc::pixelDataSize(self, width, height, format, type, 0))

#void glExtGetBufferPointervQCOM(GLenum target, GLvoid **params)
glExtGetBufferPointervQCOM
	flag unsupported

#void glExtGetShadersQCOM(GLuint *shaders, GLint maxShaders, GLint *numShaders)
glExtGetShadersQCOM
	dir shaders out
	len shaders (maxShaders * sizeof(GLuint))
	dir numShaders out
	len numShaders (1 * sizeof(GLint))

#void glExtGetProgramsQCOM(GLuint *programs, GLint maxPrograms, GLint *numPrograms)
glExtGetProgramsQCOM
	dir programs out
	len programs (maxPrograms * sizeof(GLuint))
	dir numPrograms out
	len numPrograms (1 * sizeof(GLint))

#void glExtGetProgramBinarySourceQCOM(GLuint program, GLenum shadertype, GLchar *source, GLint *length)
glExtGetProgramBinarySourceQCOM
	flag unsupported