summaryrefslogtreecommitdiffstats
path: root/src/mesa/main
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/main')
-rw-r--r--src/mesa/main/api_loopback.c1
-rw-r--r--src/mesa/main/api_validate.c140
-rw-r--r--src/mesa/main/attrib.c241
-rw-r--r--src/mesa/main/attrib.h20
-rw-r--r--src/mesa/main/blend.c1
-rw-r--r--src/mesa/main/bufferobj.c142
-rw-r--r--src/mesa/main/bufferobj.h4
-rw-r--r--src/mesa/main/buffers.c196
-rw-r--r--src/mesa/main/buffers.h8
-rw-r--r--src/mesa/main/clear.c9
-rw-r--r--src/mesa/main/colormac.h24
-rw-r--r--src/mesa/main/colortab.c2
-rw-r--r--src/mesa/main/config.h4
-rw-r--r--src/mesa/main/context.c95
-rw-r--r--src/mesa/main/context.h10
-rw-r--r--src/mesa/main/dd.h9
-rw-r--r--src/mesa/main/depthstencil.c6
-rw-r--r--src/mesa/main/descrip.mms258
-rw-r--r--src/mesa/main/dispatch.c2
-rw-r--r--src/mesa/main/dlist.c135
-rw-r--r--src/mesa/main/drawpix.c2
-rw-r--r--src/mesa/main/enable.c21
-rw-r--r--src/mesa/main/enums.c5886
-rw-r--r--src/mesa/main/execmem.c18
-rw-r--r--src/mesa/main/extensions.c22
-rw-r--r--src/mesa/main/fbobject.c34
-rw-r--r--src/mesa/main/ffvertex_prog.c23
-rw-r--r--src/mesa/main/framebuffer.c165
-rw-r--r--src/mesa/main/get.c18
-rw-r--r--src/mesa/main/get_gen.py15
-rw-r--r--src/mesa/main/getstring.c19
-rw-r--r--src/mesa/main/glheader.h43
-rw-r--r--src/mesa/main/histogram.c2
-rw-r--r--src/mesa/main/image.c29
-rw-r--r--src/mesa/main/imports.c57
-rw-r--r--src/mesa/main/imports.h17
-rw-r--r--src/mesa/main/light.c10
-rw-r--r--src/mesa/main/lines.c5
-rw-r--r--src/mesa/main/mfeatures.h3
-rw-r--r--src/mesa/main/mipmap.c151
-rw-r--r--src/mesa/main/mipmap.h6
-rw-r--r--src/mesa/main/mm.c2
-rw-r--r--src/mesa/main/mtypes.h50
-rw-r--r--src/mesa/main/pixel.c6
-rw-r--r--src/mesa/main/points.c18
-rw-r--r--src/mesa/main/polygon.c5
-rw-r--r--src/mesa/main/queryobj.c5
-rw-r--r--src/mesa/main/rastpos.c6
-rw-r--r--src/mesa/main/readpix.c3
-rw-r--r--src/mesa/main/shaders.c18
-rw-r--r--src/mesa/main/state.c106
-rw-r--r--src/mesa/main/texcompress.c6
-rw-r--r--src/mesa/main/texcompress_fxt1.c4
-rw-r--r--src/mesa/main/texcompress_s3tc.c26
-rw-r--r--src/mesa/main/texenvprogram.c42
-rw-r--r--src/mesa/main/texformat.c9
-rw-r--r--src/mesa/main/texformat.h2
-rw-r--r--src/mesa/main/texformat_tmp.h1
-rw-r--r--src/mesa/main/teximage.c190
-rw-r--r--src/mesa/main/teximage.h3
-rw-r--r--src/mesa/main/texparam.c16
-rw-r--r--src/mesa/main/texstate.c81
-rw-r--r--src/mesa/main/texstate.h3
-rw-r--r--src/mesa/main/texstore.c84
-rw-r--r--src/mesa/main/texstore.h4
-rw-r--r--src/mesa/main/varray.c28
-rw-r--r--src/mesa/main/varray.h5
-rw-r--r--src/mesa/main/version.h8
68 files changed, 4684 insertions, 3900 deletions
diff --git a/src/mesa/main/api_loopback.c b/src/mesa/main/api_loopback.c
index 924d7134a27..0e3f5ff9570 100644
--- a/src/mesa/main/api_loopback.c
+++ b/src/mesa/main/api_loopback.c
@@ -31,7 +31,6 @@
#include "glheader.h"
#include "macros.h"
-#include "colormac.h"
#include "api_loopback.h"
#include "mtypes.h"
#include "glapi/glapi.h"
diff --git a/src/mesa/main/api_validate.c b/src/mesa/main/api_validate.c
index 2eb96ae3f4e..bbc5933ab9f 100644
--- a/src/mesa/main/api_validate.c
+++ b/src/mesa/main/api_validate.c
@@ -1,6 +1,6 @@
/*
* Mesa 3-D graphics library
- * Version: 7.0.1
+ * Version: 7.1
*
* Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
*
@@ -30,6 +30,55 @@
#include "state.h"
+/**
+ * Find the max index in the given element/index buffer
+ */
+static GLuint
+max_buffer_index(GLcontext *ctx, GLuint count, GLenum type,
+ const void *indices,
+ struct gl_buffer_object *elementBuf)
+{
+ const GLubyte *map = NULL;
+ GLuint max = 0;
+ GLint i;
+
+ if (elementBuf->Name) {
+ /* elements are in a user-defined buffer object. need to map it */
+ map = ctx->Driver.MapBuffer(ctx,
+ GL_ELEMENT_ARRAY_BUFFER_ARB,
+ GL_READ_ONLY,
+ elementBuf);
+ /* Actual address is the sum of pointers */
+ indices = (const GLvoid *) ADD_POINTERS(map, (const GLubyte *) indices);
+ }
+
+ if (type == GL_UNSIGNED_INT) {
+ for (i = 0; i < count; i++)
+ if (((GLuint *) indices)[i] > max)
+ max = ((GLuint *) indices)[i];
+ }
+ else if (type == GL_UNSIGNED_SHORT) {
+ for (i = 0; i < count; i++)
+ if (((GLushort *) indices)[i] > max)
+ max = ((GLushort *) indices)[i];
+ }
+ else {
+ ASSERT(type == GL_UNSIGNED_BYTE);
+ for (i = 0; i < count; i++)
+ if (((GLubyte *) indices)[i] > max)
+ max = ((GLubyte *) indices)[i];
+ }
+
+ if (map) {
+ ctx->Driver.UnmapBuffer(ctx,
+ GL_ELEMENT_ARRAY_BUFFER_ARB,
+ ctx->Array.ElementArrayBufferObj);
+ }
+
+ return max;
+}
+
+
GLboolean
_mesa_validate_DrawElements(GLcontext *ctx,
GLenum mode, GLsizei count, GLenum type,
@@ -67,16 +116,15 @@ _mesa_validate_DrawElements(GLcontext *ctx,
/* Vertex buffer object tests */
if (ctx->Array.ElementArrayBufferObj->Name) {
+ /* use indices in the buffer object */
GLuint indexBytes;
- /* use indices in the buffer object */
if (!ctx->Array.ElementArrayBufferObj->Size) {
_mesa_warning(ctx,
"glDrawElements called with empty array elements buffer");
return GL_FALSE;
}
- /* make sure count doesn't go outside buffer bounds */
if (type == GL_UNSIGNED_INT) {
indexBytes = count * sizeof(GLuint);
}
@@ -88,6 +136,7 @@ _mesa_validate_DrawElements(GLcontext *ctx,
indexBytes = count * sizeof(GLushort);
}
+ /* make sure count doesn't go outside buffer bounds */
if (indexBytes > (GLuint) ctx->Array.ElementArrayBufferObj->Size) {
_mesa_warning(ctx, "glDrawElements index out of buffer bounds");
return GL_FALSE;
@@ -101,39 +150,8 @@ _mesa_validate_DrawElements(GLcontext *ctx,
if (ctx->Const.CheckArrayBounds) {
/* find max array index */
- const GLubyte *map;
- GLuint max = 0;
- GLint i;
-
- map = ctx->Driver.MapBuffer(ctx,
- GL_ELEMENT_ARRAY_BUFFER_ARB,
- GL_READ_ONLY,
- ctx->Array.ElementArrayBufferObj);
-
- /* Actual address is the sum of pointers */
- indices = (const GLvoid *) ADD_POINTERS(map, (const GLubyte *) indices);
-
- if (type == GL_UNSIGNED_INT) {
- for (i = 0; i < count; i++)
- if (((GLuint *) indices)[i] > max)
- max = ((GLuint *) indices)[i];
- }
- else if (type == GL_UNSIGNED_SHORT) {
- for (i = 0; i < count; i++)
- if (((GLushort *) indices)[i] > max)
- max = ((GLushort *) indices)[i];
- }
- else {
- ASSERT(type == GL_UNSIGNED_BYTE);
- for (i = 0; i < count; i++)
- if (((GLubyte *) indices)[i] > max)
- max = ((GLubyte *) indices)[i];
- }
-
- ctx->Driver.UnmapBuffer(ctx,
- GL_ELEMENT_ARRAY_BUFFER_ARB,
- ctx->Array.ElementArrayBufferObj);
-
+ GLuint max = max_buffer_index(ctx, count, type, indices,
+ ctx->Array.ElementArrayBufferObj);
if (max >= ctx->Array._MaxElement) {
/* the max element is out of bounds of one or more enabled arrays */
return GL_FALSE;
@@ -186,36 +204,35 @@ _mesa_validate_DrawRangeElements(GLcontext *ctx, GLenum mode,
/* Vertex buffer object tests */
if (ctx->Array.ElementArrayBufferObj->Name) {
- /* XXX re-use code from above? */
+ /* use indices in the buffer object */
+ GLuint indexBytes;
+
+ if (type == GL_UNSIGNED_INT) {
+ indexBytes = count * sizeof(GLuint);
+ }
+ else if (type == GL_UNSIGNED_BYTE) {
+ indexBytes = count * sizeof(GLubyte);
+ }
+ else {
+ ASSERT(type == GL_UNSIGNED_SHORT);
+ indexBytes = count * sizeof(GLushort);
+ }
+
+ /* make sure count doesn't go outside buffer bounds */
+ if (indexBytes > ctx->Array.ElementArrayBufferObj->Size) {
+ _mesa_warning(ctx, "glDrawRangeElements index out of buffer bounds");
+ return GL_FALSE;
+ }
}
else {
- /* not using VBO */
+ /* not using a VBO */
if (!indices)
return GL_FALSE;
}
if (ctx->Const.CheckArrayBounds) {
- /* Find max array index.
- * We don't trust the user's start and end values.
- */
- GLuint max = 0;
- GLint i;
- if (type == GL_UNSIGNED_INT) {
- for (i = 0; i < count; i++)
- if (((GLuint *) indices)[i] > max)
- max = ((GLuint *) indices)[i];
- }
- else if (type == GL_UNSIGNED_SHORT) {
- for (i = 0; i < count; i++)
- if (((GLushort *) indices)[i] > max)
- max = ((GLushort *) indices)[i];
- }
- else {
- ASSERT(type == GL_UNSIGNED_BYTE);
- for (i = 0; i < count; i++)
- if (((GLubyte *) indices)[i] > max)
- max = ((GLubyte *) indices)[i];
- }
+ GLuint max = max_buffer_index(ctx, count, type, indices,
+ ctx->Array.ElementArrayBufferObj);
if (max >= ctx->Array._MaxElement) {
/* the max element is out of bounds of one or more enabled arrays */
return GL_FALSE;
@@ -236,8 +253,9 @@ _mesa_validate_DrawArrays(GLcontext *ctx,
{
ASSERT_OUTSIDE_BEGIN_END_WITH_RETVAL(ctx, GL_FALSE);
- if (count < 0) {
- _mesa_error(ctx, GL_INVALID_VALUE, "glDrawArrays(count)" );
+ if (count <= 0) {
+ if (count < 0)
+ _mesa_error(ctx, GL_INVALID_VALUE, "glDrawArrays(count)" );
return GL_FALSE;
}
diff --git a/src/mesa/main/attrib.c b/src/mesa/main/attrib.c
index 7179fba3db3..dc85da2518f 100644
--- a/src/mesa/main/attrib.c
+++ b/src/mesa/main/attrib.c
@@ -53,9 +53,27 @@
#include "texobj.h"
#include "texparam.h"
#include "texstate.h"
+#include "varray.h"
#include "mtypes.h"
#include "math/m_xform.h"
+/**
+ * Special struct for saving/restoring texture state (GL_TEXTURE_BIT)
+ */
+struct texture_state
+{
+ struct gl_texture_attrib Texture; /**< The usual context state */
+
+ /** to save per texture object state (wrap modes, filters, etc): */
+ struct gl_texture_object SavedObj[MAX_TEXTURE_UNITS][NUM_TEXTURE_TARGETS];
+
+ /**
+ * To save references to texture objects (so they don't get accidentally
+ * deleted while saved in the attribute stack).
+ */
+ struct gl_texture_object *SavedTexRef[MAX_TEXTURE_UNITS][NUM_TEXTURE_TARGETS];
+};
+
/**
* Allocate a new attribute state node. These nodes have a
@@ -345,47 +363,61 @@ _mesa_PushAttrib(GLbitfield mask)
}
if (mask & GL_TEXTURE_BIT) {
- struct gl_texture_attrib *attr;
+ struct texture_state *texstate = CALLOC_STRUCT(texture_state);
GLuint u;
+ if (!texstate) {
+ _mesa_error(ctx, GL_OUT_OF_MEMORY, "glPushAttrib(GL_TEXTURE_BIT)");
+ goto end;
+ }
+
_mesa_lock_context_textures(ctx);
- /* Bump the texture object reference counts so that they don't
- * inadvertantly get deleted.
+
+ /* copy/save the bulk of texture state here */
+ _mesa_memcpy(&texstate->Texture, &ctx->Texture, sizeof(ctx->Texture));
+
+ /* Save references to the currently bound texture objects so they don't
+ * accidentally get deleted while referenced in the attribute stack.
*/
for (u = 0; u < ctx->Const.MaxTextureUnits; u++) {
- ctx->Texture.Unit[u].Current1D->RefCount++;
- ctx->Texture.Unit[u].Current2D->RefCount++;
- ctx->Texture.Unit[u].Current3D->RefCount++;
- ctx->Texture.Unit[u].CurrentCubeMap->RefCount++;
- ctx->Texture.Unit[u].CurrentRect->RefCount++;
- ctx->Texture.Unit[u].Current1DArray->RefCount++;
- ctx->Texture.Unit[u].Current2DArray->RefCount++;
+ _mesa_reference_texobj(&texstate->SavedTexRef[u][TEXTURE_1D_INDEX],
+ ctx->Texture.Unit[u].Current1D);
+ _mesa_reference_texobj(&texstate->SavedTexRef[u][TEXTURE_2D_INDEX],
+ ctx->Texture.Unit[u].Current2D);
+ _mesa_reference_texobj(&texstate->SavedTexRef[u][TEXTURE_3D_INDEX],
+ ctx->Texture.Unit[u].Current3D);
+ _mesa_reference_texobj(&texstate->SavedTexRef[u][TEXTURE_CUBE_INDEX],
+ ctx->Texture.Unit[u].CurrentCubeMap);
+ _mesa_reference_texobj(&texstate->SavedTexRef[u][TEXTURE_RECT_INDEX],
+ ctx->Texture.Unit[u].CurrentRect);
+ _mesa_reference_texobj(&texstate->SavedTexRef[u][TEXTURE_1D_ARRAY_INDEX],
+ ctx->Texture.Unit[u].Current1DArray);
+ _mesa_reference_texobj(&texstate->SavedTexRef[u][TEXTURE_2D_ARRAY_INDEX],
+ ctx->Texture.Unit[u].Current2DArray);
}
- attr = MALLOC_STRUCT( gl_texture_attrib );
- MEMCPY( attr, &ctx->Texture, sizeof(struct gl_texture_attrib) );
- /* copy state of the currently bound texture objects */
+ /* copy state/contents of the currently bound texture objects */
for (u = 0; u < ctx->Const.MaxTextureUnits; u++) {
- _mesa_copy_texture_object(&attr->Unit[u].Saved1D,
- attr->Unit[u].Current1D);
- _mesa_copy_texture_object(&attr->Unit[u].Saved2D,
- attr->Unit[u].Current2D);
- _mesa_copy_texture_object(&attr->Unit[u].Saved3D,
- attr->Unit[u].Current3D);
- _mesa_copy_texture_object(&attr->Unit[u].SavedCubeMap,
- attr->Unit[u].CurrentCubeMap);
- _mesa_copy_texture_object(&attr->Unit[u].SavedRect,
- attr->Unit[u].CurrentRect);
- _mesa_copy_texture_object(&attr->Unit[u].Saved1DArray,
- attr->Unit[u].Current1DArray);
- _mesa_copy_texture_object(&attr->Unit[u].Saved2DArray,
- attr->Unit[u].Current2DArray);
+ _mesa_copy_texture_object(&texstate->SavedObj[u][TEXTURE_1D_INDEX],
+ ctx->Texture.Unit[u].Current1D);
+ _mesa_copy_texture_object(&texstate->SavedObj[u][TEXTURE_2D_INDEX],
+ ctx->Texture.Unit[u].Current2D);
+ _mesa_copy_texture_object(&texstate->SavedObj[u][TEXTURE_3D_INDEX],
+ ctx->Texture.Unit[u].Current3D);
+ _mesa_copy_texture_object(&texstate->SavedObj[u][TEXTURE_CUBE_INDEX],
+ ctx->Texture.Unit[u].CurrentCubeMap);
+ _mesa_copy_texture_object(&texstate->SavedObj[u][TEXTURE_RECT_INDEX],
+ ctx->Texture.Unit[u].CurrentRect);
+ _mesa_copy_texture_object(&texstate->SavedObj[u][TEXTURE_1D_ARRAY_INDEX],
+ ctx->Texture.Unit[u].Current1DArray);
+ _mesa_copy_texture_object(&texstate->SavedObj[u][TEXTURE_2D_ARRAY_INDEX],
+ ctx->Texture.Unit[u].Current2DArray);
}
_mesa_unlock_context_textures(ctx);
newnode = new_attrib_node( GL_TEXTURE_BIT );
- newnode->data = attr;
+ newnode->data = texstate;
newnode->next = head;
head = newnode;
}
@@ -421,6 +453,7 @@ _mesa_PushAttrib(GLbitfield mask)
head = newnode;
}
+end:
ctx->AttribStack[ctx->AttribStackDepth] = head;
ctx->AttribStackDepth++;
}
@@ -630,14 +663,19 @@ pop_enable_group(GLcontext *ctx, const struct gl_enable_attrib *enable)
}
+/**
+ * Pop/restore texture attribute/group state.
+ */
static void
-pop_texture_group(GLcontext *ctx, const struct gl_texture_attrib *texAttrib)
+pop_texture_group(GLcontext *ctx, struct texture_state *texstate)
{
GLuint u;
+ _mesa_lock_context_textures(ctx);
+
for (u = 0; u < ctx->Const.MaxTextureUnits; u++) {
- const struct gl_texture_unit *unit = &texAttrib->Unit[u];
- GLuint i;
+ const struct gl_texture_unit *unit = &texstate->Texture.Unit[u];
+ GLuint tgt;
_mesa_ActiveTextureARB(GL_TEXTURE0_ARB + u);
_mesa_set_enable(ctx, GL_TEXTURE_1D,
@@ -730,53 +768,33 @@ pop_texture_group(GLcontext *ctx, const struct gl_texture_attrib *texAttrib)
1 << unit->Combine.ScaleShiftA);
}
- /* Restore texture object state */
- for (i = 0; i < NUM_TEXTURE_TARGETS; i++) {
- GLenum target = 0;
+ /* Restore texture object state for each target */
+ for (tgt = 0; tgt < NUM_TEXTURE_TARGETS; tgt++) {
const struct gl_texture_object *obj = NULL;
GLfloat bordColor[4];
+ GLenum target;
- switch (i) {
- case 0:
- target = GL_TEXTURE_1D;
- obj = &unit->Saved1D;
- break;
- case 1:
- target = GL_TEXTURE_2D;
- obj = &unit->Saved2D;
- break;
- case 2:
- target = GL_TEXTURE_3D;
- obj = &unit->Saved3D;
- break;
- case 3:
- if (!ctx->Extensions.ARB_texture_cube_map)
- continue;
- target = GL_TEXTURE_CUBE_MAP_ARB;
- obj = &unit->SavedCubeMap;
- break;
- case 4:
- if (!ctx->Extensions.NV_texture_rectangle)
- continue;
- target = GL_TEXTURE_RECTANGLE_NV;
- obj = &unit->SavedRect;
- break;
- case 5:
- if (!ctx->Extensions.MESA_texture_array)
- continue;
- target = GL_TEXTURE_1D_ARRAY_EXT;
- obj = &unit->Saved1DArray;
- break;
- case 6:
- if (!ctx->Extensions.MESA_texture_array)
- continue;
- target = GL_TEXTURE_2D_ARRAY_EXT;
- obj = &unit->Saved2DArray;
- break;
- default:
- ; /* silence warnings */
+ obj = &texstate->SavedObj[u][tgt];
+
+ /* don't restore state for unsupported targets to prevent
+ * raising GL errors.
+ */
+ if (obj->Target == GL_TEXTURE_CUBE_MAP_ARB &&
+ !ctx->Extensions.ARB_texture_cube_map) {
+ continue;
+ }
+ else if (obj->Target == GL_TEXTURE_RECTANGLE_NV &&
+ !ctx->Extensions.NV_texture_rectangle) {
+ continue;
+ }
+ else if ((obj->Target == GL_TEXTURE_1D_ARRAY_EXT ||
+ obj->Target == GL_TEXTURE_2D_ARRAY_EXT) &&
+ !ctx->Extensions.MESA_texture_array) {
+ continue;
}
+ target = obj->Target;
+
_mesa_BindTexture(target, obj->Name);
bordColor[0] = CHAN_TO_FLOAT(obj->BorderColor[0]);
@@ -784,8 +802,8 @@ pop_texture_group(GLcontext *ctx, const struct gl_texture_attrib *texAttrib)
bordColor[2] = CHAN_TO_FLOAT(obj->BorderColor[2]);
bordColor[3] = CHAN_TO_FLOAT(obj->BorderColor[3]);
- _mesa_TexParameterf(target, GL_TEXTURE_PRIORITY, obj->Priority);
_mesa_TexParameterfv(target, GL_TEXTURE_BORDER_COLOR, bordColor);
+ _mesa_TexParameterf(target, GL_TEXTURE_PRIORITY, obj->Priority);
_mesa_TexParameteri(target, GL_TEXTURE_WRAP_S, obj->WrapS);
_mesa_TexParameteri(target, GL_TEXTURE_WRAP_T, obj->WrapT);
_mesa_TexParameteri(target, GL_TEXTURE_WRAP_R, obj->WrapR);
@@ -811,25 +829,17 @@ pop_texture_group(GLcontext *ctx, const struct gl_texture_attrib *texAttrib)
_mesa_TexParameterf(target, GL_SHADOW_AMBIENT_SGIX,
obj->ShadowAmbient);
}
+ }
+ /* remove saved references to the texture objects */
+ for (tgt = 0; tgt < NUM_TEXTURE_TARGETS; tgt++) {
+ _mesa_reference_texobj(&texstate->SavedTexRef[u][tgt], NULL);
}
}
- _mesa_ActiveTextureARB(GL_TEXTURE0_ARB
- + texAttrib->CurrentUnit);
- /* "un-bump" the texture object reference counts. We did that so they
- * wouldn't inadvertantly get deleted while they were still referenced
- * inside the attribute state stack.
- */
- for (u = 0; u < ctx->Const.MaxTextureUnits; u++) {
- ctx->Texture.Unit[u].Current1D->RefCount--;
- ctx->Texture.Unit[u].Current2D->RefCount--;
- ctx->Texture.Unit[u].Current3D->RefCount--;
- ctx->Texture.Unit[u].CurrentCubeMap->RefCount--;
- ctx->Texture.Unit[u].CurrentRect->RefCount--;
- ctx->Texture.Unit[u].Current1DArray->RefCount--;
- ctx->Texture.Unit[u].Current2DArray->RefCount--;
- }
+ _mesa_ActiveTextureARB(GL_TEXTURE0_ARB + texstate->Texture.CurrentUnit);
+
+ _mesa_unlock_context_textures(ctx);
}
@@ -1098,8 +1108,9 @@ _mesa_PopAttrib(void)
(GLint) point->CoordReplace[u]);
}
_mesa_set_enable(ctx, GL_POINT_SPRITE_NV,point->PointSprite);
- _mesa_PointParameteri(GL_POINT_SPRITE_R_MODE_NV,
- ctx->Point.SpriteRMode);
+ if (ctx->Extensions.NV_point_sprite)
+ _mesa_PointParameteri(GL_POINT_SPRITE_R_MODE_NV,
+ ctx->Point.SpriteRMode);
_mesa_PointParameterf(GL_POINT_SPRITE_COORD_ORIGIN,
(GLfloat)ctx->Point.SpriteOrigin);
}
@@ -1208,9 +1219,9 @@ _mesa_PopAttrib(void)
case GL_TEXTURE_BIT:
/* Take care of texture object reference counters */
{
- const struct gl_texture_attrib *texture;
- texture = (const struct gl_texture_attrib *) attr->data;
- pop_texture_group(ctx, texture);
+ struct texture_state *texstate
+ = (struct texture_state *) attr->data;
+ pop_texture_group(ctx, texstate);
ctx->NewState |= _NEW_TEXTURE;
}
break;
@@ -1409,8 +1420,10 @@ _mesa_PopClientAttrib(void)
adjust_buffer_object_ref_counts(&ctx->Array, -1);
ctx->Array.ActiveTexture = data->ActiveTexture;
- ctx->Array.LockFirst = data->LockFirst;
- ctx->Array.LockCount = data->LockCount;
+ if (data->LockCount != 0)
+ _mesa_LockArraysEXT(data->LockFirst, data->LockCount);
+ else if (ctx->Array.LockCount)
+ _mesa_UnlockArraysEXT();
_mesa_BindVertexArrayAPPLE( data->ArrayObj->Name );
@@ -1447,6 +1460,42 @@ _mesa_PopClientAttrib(void)
}
+/**
+ * Free any attribute state data that might be attached to the context.
+ */
+void
+_mesa_free_attrib_data(GLcontext *ctx)
+{
+ while (ctx->AttribStackDepth > 0) {
+ struct gl_attrib_node *attr, *next;
+
+ ctx->AttribStackDepth--;
+ attr = ctx->AttribStack[ctx->AttribStackDepth];
+
+ while (attr) {
+ if (attr->kind == GL_TEXTURE_BIT) {
+ struct texture_state *texstate = (struct texture_state*)attr->data;
+ GLuint u, tgt;
+ /* clear references to the saved texture objects */
+ for (u = 0; u < ctx->Const.MaxTextureUnits; u++) {
+ for (tgt = 0; tgt < NUM_TEXTURE_TARGETS; tgt++) {
+ _mesa_reference_texobj(&texstate->SavedTexRef[u][tgt], NULL);
+ }
+ }
+ }
+ else {
+ /* any other chunks of state that requires special handling? */
+ }
+
+ next = attr->next;
+ _mesa_free(attr->data);
+ _mesa_free(attr);
+ attr = next;
+ }
+ }
+}
+
+
void _mesa_init_attrib( GLcontext *ctx )
{
/* Renderer and client attribute stacks */
diff --git a/src/mesa/main/attrib.h b/src/mesa/main/attrib.h
index 09d75196b23..2cf8fe69345 100644
--- a/src/mesa/main/attrib.h
+++ b/src/mesa/main/attrib.h
@@ -1,18 +1,8 @@
-/**
- * \file attrib.h
- * Attribute stacks.
- *
- * \if subset
- * (No-op)
- *
- * \endif
- */
-
/*
* Mesa 3-D graphics library
- * Version: 5.1
+ * Version: 7.1
*
- * Copyright (C) 1999-2003 Brian Paul All Rights Reserved.
+ * Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
@@ -32,8 +22,6 @@
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
-
-
#ifndef ATTRIB_H
#define ATTRIB_H
@@ -58,10 +46,14 @@ _mesa_PopClientAttrib( void );
extern void
_mesa_init_attrib( GLcontext *ctx );
+extern void
+_mesa_free_attrib_data( GLcontext *ctx );
+
#else
/** No-op */
#define _mesa_init_attrib( c ) ((void)0)
+#define _mesa_free_attrib_data( c ) ((void)0)
#endif
diff --git a/src/mesa/main/blend.c b/src/mesa/main/blend.c
index 4d4a8971419..39cf6153e28 100644
--- a/src/mesa/main/blend.c
+++ b/src/mesa/main/blend.c
@@ -31,7 +31,6 @@
#include "glheader.h"
#include "blend.h"
-#include "colormac.h"
#include "context.h"
#include "enums.h"
#include "macros.h"
diff --git a/src/mesa/main/bufferobj.c b/src/mesa/main/bufferobj.c
index dd4ac4679e2..190e6ab5641 100644
--- a/src/mesa/main/bufferobj.c
+++ b/src/mesa/main/bufferobj.c
@@ -446,6 +446,89 @@ _mesa_init_buffer_objects( GLcontext *ctx )
ctx->Array.ElementArrayBufferObj = ctx->Array.NullBufferObj;
}
+/**
+ * Bind the specified target to buffer for the specified context.
+ */
+static void
+bind_buffer_object(GLcontext *ctx, GLenum target, GLuint buffer)
+{
+ struct gl_buffer_object *oldBufObj;
+ struct gl_buffer_object *newBufObj = NULL;
+ struct gl_buffer_object **bindTarget = NULL;
+
+ switch (target) {
+ case GL_ARRAY_BUFFER_ARB:
+ bindTarget = &ctx->Array.ArrayBufferObj;
+ break;
+ case GL_ELEMENT_ARRAY_BUFFER_ARB:
+ bindTarget = &ctx->Array.ElementArrayBufferObj;
+ break;
+ case GL_PIXEL_PACK_BUFFER_EXT:
+ bindTarget = &ctx->Pack.BufferObj;
+ break;
+ case GL_PIXEL_UNPACK_BUFFER_EXT:
+ bindTarget = &ctx->Unpack.BufferObj;
+ break;
+ default:
+ _mesa_error(ctx, GL_INVALID_ENUM, "glBindBufferARB(target)");
+ return;
+ }
+
+ /* Get pointer to old buffer object (to be unbound) */
+ oldBufObj = get_buffer(ctx, target);
+ if (oldBufObj && oldBufObj->Name == buffer)
+ return; /* rebinding the same buffer object- no change */
+
+ /*
+ * Get pointer to new buffer object (newBufObj)
+ */
+ if (buffer == 0) {
+ /* The spec says there's not a buffer object named 0, but we use
+ * one internally because it simplifies things.
+ */
+ newBufObj = ctx->Array.NullBufferObj;
+ }
+ else {
+ /* non-default buffer object */
+ newBufObj = _mesa_lookup_bufferobj(ctx, buffer);
+ if (!newBufObj) {
+ /* if this is a new buffer object id, allocate a buffer object now */
+ ASSERT(ctx->Driver.NewBufferObject);
+ newBufObj = ctx->Driver.NewBufferObject(ctx, buffer, target);
+ if (!newBufObj) {
+ _mesa_error(ctx, GL_OUT_OF_MEMORY, "glBindBufferARB");
+ return;
+ }
+ _mesa_HashInsert(ctx->Shared->BufferObjects, buffer, newBufObj);
+ }
+ }
+
+ /* bind new buffer */
+ _mesa_reference_buffer_object(ctx, bindTarget, newBufObj);
+
+ /* Pass BindBuffer call to device driver */
+ if (ctx->Driver.BindBuffer && newBufObj)
+ ctx->Driver.BindBuffer( ctx, target, newBufObj );
+}
+
+
+/**
+ * Update the default buffer objects in the given context to reference those
+ * specified in the shared state and release those referencing the old
+ * shared state.
+ */
+void
+_mesa_update_default_objects_buffer_objects(GLcontext *ctx)
+{
+ /* Bind the NullBufferObj to remove references to those
+ * in the shared context hash table.
+ */
+ bind_buffer_object( ctx, GL_ARRAY_BUFFER_ARB, 0);
+ bind_buffer_object( ctx, GL_ELEMENT_ARRAY_BUFFER_ARB, 0);
+ bind_buffer_object( ctx, GL_PIXEL_PACK_BUFFER_ARB, 0);
+ bind_buffer_object( ctx, GL_PIXEL_UNPACK_BUFFER_ARB, 0);
+}
+
/**
* When we're about to read pixel data out of a PBO (via glDrawPixels,
@@ -684,64 +767,9 @@ void GLAPIENTRY
_mesa_BindBufferARB(GLenum target, GLuint buffer)
{
GET_CURRENT_CONTEXT(ctx);
- struct gl_buffer_object *oldBufObj;
- struct gl_buffer_object *newBufObj = NULL;
- struct gl_buffer_object **bindTarget = NULL;
ASSERT_OUTSIDE_BEGIN_END(ctx);
- switch (target) {
- case GL_ARRAY_BUFFER_ARB:
- bindTarget = &ctx->Array.ArrayBufferObj;
- break;
- case GL_ELEMENT_ARRAY_BUFFER_ARB:
- bindTarget = &ctx->Array.ElementArrayBufferObj;
- break;
- case GL_PIXEL_PACK_BUFFER_EXT:
- bindTarget = &ctx->Pack.BufferObj;
- break;
- case GL_PIXEL_UNPACK_BUFFER_EXT:
- bindTarget = &ctx->Unpack.BufferObj;
- break;
- default:
- _mesa_error(ctx, GL_INVALID_ENUM, "glBindBufferARB(target)");
- return;
- }
-
- /* Get pointer to old buffer object (to be unbound) */
- oldBufObj = get_buffer(ctx, target);
- if (oldBufObj && oldBufObj->Name == buffer)
- return; /* rebinding the same buffer object- no change */
-
- /*
- * Get pointer to new buffer object (newBufObj)
- */
- if (buffer == 0) {
- /* The spec says there's not a buffer object named 0, but we use
- * one internally because it simplifies things.
- */
- newBufObj = ctx->Array.NullBufferObj;
- }
- else {
- /* non-default buffer object */
- newBufObj = _mesa_lookup_bufferobj(ctx, buffer);
- if (!newBufObj) {
- /* if this is a new buffer object id, allocate a buffer object now */
- ASSERT(ctx->Driver.NewBufferObject);
- newBufObj = ctx->Driver.NewBufferObject(ctx, buffer, target);
- if (!newBufObj) {
- _mesa_error(ctx, GL_OUT_OF_MEMORY, "glBindBufferARB");
- return;
- }
- _mesa_HashInsert(ctx->Shared->BufferObjects, buffer, newBufObj);
- }
- }
-
- /* bind new buffer */
- _mesa_reference_buffer_object(ctx, bindTarget, newBufObj);
-
- /* Pass BindBuffer call to device driver */
- if (ctx->Driver.BindBuffer && newBufObj)
- ctx->Driver.BindBuffer( ctx, target, newBufObj );
+ bind_buffer_object(ctx, target, buffer);
}
@@ -801,7 +829,7 @@ _mesa_DeleteBuffersARB(GLsizei n, const GLuint *ids)
_mesa_BindBufferARB( GL_PIXEL_UNPACK_BUFFER_EXT, 0 );
}
- /* The ID is immediately freed for re-use */
+ /* The ID is immediately freed for re-use */
_mesa_HashRemove(ctx->Shared->BufferObjects, bufObj->Name);
_mesa_reference_buffer_object(ctx, &bufObj, NULL);
}
diff --git a/src/mesa/main/bufferobj.h b/src/mesa/main/bufferobj.h
index 2f908c5c35d..3c08f0083cf 100644
--- a/src/mesa/main/bufferobj.h
+++ b/src/mesa/main/bufferobj.h
@@ -38,6 +38,9 @@
extern void
_mesa_init_buffer_objects( GLcontext *ctx );
+extern void
+_mesa_update_default_objects_buffer_objects(GLcontext *ctx);
+
extern struct gl_buffer_object *
_mesa_new_buffer_object( GLcontext *ctx, GLuint name, GLenum target );
@@ -103,7 +106,6 @@ extern void
_mesa_unmap_drawpix_pbo(GLcontext *ctx,
const struct gl_pixelstore_attrib *unpack);
-
extern void *
_mesa_map_readpix_pbo(GLcontext *ctx,
const struct gl_pixelstore_attrib *pack,
diff --git a/src/mesa/main/buffers.c b/src/mesa/main/buffers.c
index 1d07c68633c..5dd85de272a 100644
--- a/src/mesa/main/buffers.c
+++ b/src/mesa/main/buffers.c
@@ -133,6 +133,14 @@ draw_buffer_enum_to_bitmask(GLenum buffer)
return BUFFER_BIT_COLOR2;
case GL_COLOR_ATTACHMENT3_EXT:
return BUFFER_BIT_COLOR3;
+ case GL_COLOR_ATTACHMENT4_EXT:
+ return BUFFER_BIT_COLOR4;
+ case GL_COLOR_ATTACHMENT5_EXT:
+ return BUFFER_BIT_COLOR5;
+ case GL_COLOR_ATTACHMENT6_EXT:
+ return BUFFER_BIT_COLOR6;
+ case GL_COLOR_ATTACHMENT7_EXT:
+ return BUFFER_BIT_COLOR7;
default:
/* error */
return BAD_MASK;
@@ -182,6 +190,14 @@ read_buffer_enum_to_index(GLenum buffer)
return BUFFER_COLOR2;
case GL_COLOR_ATTACHMENT3_EXT:
return BUFFER_COLOR3;
+ case GL_COLOR_ATTACHMENT4_EXT:
+ return BUFFER_COLOR4;
+ case GL_COLOR_ATTACHMENT5_EXT:
+ return BUFFER_COLOR5;
+ case GL_COLOR_ATTACHMENT6_EXT:
+ return BUFFER_COLOR6;
+ case GL_COLOR_ATTACHMENT7_EXT:
+ return BUFFER_COLOR7;
default:
/* error */
return -1;
@@ -196,6 +212,20 @@ read_buffer_enum_to_index(GLenum buffer)
* \sa _mesa_DrawBuffersARB
*
* \param buffer buffer token such as GL_LEFT or GL_FRONT_AND_BACK, etc.
+ *
+ * Note that the behaviour of this function depends on whether the
+ * current ctx->DrawBuffer is a window-system framebuffer (Name=0) or
+ * a user-created framebuffer object (Name!=0).
+ * In the former case, we update the per-context ctx->Color.DrawBuffer
+ * state var _and_ the FB's ColorDrawBuffer state.
+ * In the later case, we update the FB's ColorDrawBuffer state only.
+ *
+ * Furthermore, upon a MakeCurrent() or BindFramebuffer() call, if the
+ * new FB is a window system FB, we need to re-update the FB's
+ * ColorDrawBuffer state to match the context. This is handled in
+ * _mesa_update_framebuffer().
+ *
+ * See the GL_EXT_framebuffer_object spec for more info.
*/
void GLAPIENTRY
_mesa_DrawBuffer(GLenum buffer)
@@ -315,45 +345,16 @@ _mesa_DrawBuffersARB(GLsizei n, const GLenum *buffers)
/**
- * Set color output state. Traditionally, there was only one color
- * output, but fragment programs can now have several distinct color
- * outputs (see GL_ARB_draw_buffers). This function sets the state
- * for one such color output.
- * \param ctx current context
- * \param output which fragment program output
- * \param buffer buffer to write to (like GL_LEFT)
- * \param destMask BUFFER_* bitmask
- * (like BUFFER_BIT_FRONT_LEFT | BUFFER_BIT_BACK_LEFT).
- */
-static void
-set_color_output(GLcontext *ctx, GLuint output, GLenum buffer,
- GLbitfield destMask)
-{
- struct gl_framebuffer *fb = ctx->DrawBuffer;
-
- ASSERT(output < ctx->Const.MaxDrawBuffers);
-
- /* Set per-FBO state */
- fb->ColorDrawBuffer[output] = buffer;
- fb->_ColorDrawBufferMask[output] = destMask;
- /* not really needed, will be set later */
- fb->_NumColorDrawBuffers[output] = 0;
-
- if (fb->Name == 0)
- /* Set traditional state var */
- ctx->Color.DrawBuffer[output] = buffer;
-}
-
-
-/**
- * Helper routine used by _mesa_DrawBuffer, _mesa_DrawBuffersARB and
- * other places (window fbo fixup) to set fbo (and the old ctx) fields.
+ * Helper function to set the GL_DRAW_BUFFER state in the context and
+ * current FBO.
+ *
* All error checking will have been done prior to calling this function
* so nothing should go wrong at this point.
+ *
* \param ctx current context
* \param n number of color outputs to set
* \param buffers array[n] of colorbuffer names, like GL_LEFT.
- * \param destMask array[n] of BUFFER_* bitmasks which correspond to the
+ * \param destMask array[n] of BUFFER_BIT_* bitmasks which correspond to the
* colorbuffer names. (i.e. GL_FRONT_AND_BACK =>
* BUFFER_BIT_FRONT_LEFT | BUFFER_BIT_BACK_LEFT).
*/
@@ -361,13 +362,13 @@ void
_mesa_drawbuffers(GLcontext *ctx, GLuint n, const GLenum *buffers,
const GLbitfield *destMask)
{
+ struct gl_framebuffer *fb = ctx->DrawBuffer;
GLbitfield mask[MAX_DRAW_BUFFERS];
- GLuint output;
if (!destMask) {
/* compute destMask values now */
- const GLbitfield supportedMask
- = supported_buffer_bitmask(ctx, ctx->DrawBuffer);
+ const GLbitfield supportedMask = supported_buffer_bitmask(ctx, fb);
+ GLuint output;
for (output = 0; output < n; output++) {
mask[output] = draw_buffer_enum_to_bitmask(buffers[output]);
ASSERT(mask[output] != BAD_MASK);
@@ -376,56 +377,75 @@ _mesa_drawbuffers(GLcontext *ctx, GLuint n, const GLenum *buffers,
destMask = mask;
}
- for (output = 0; output < n; output++) {
- set_color_output(ctx, output, buffers[output], destMask[output]);
+ if (n == 1) {
+ GLuint buf, count = 0;
+ /* init to -1 to help catch errors */
+ fb->_ColorDrawBufferIndexes[0] = -1;
+ for (buf = 0; buf < BUFFER_COUNT; buf++) {
+ if (destMask[0] & (1 << buf)) {
+ fb->_ColorDrawBufferIndexes[count] = buf;
+ count++;
+ }
+ }
+ fb->ColorDrawBuffer[0] = buffers[0];
+ fb->_NumColorDrawBuffers = count;
+ }
+ else {
+ GLuint buf, count = 0;
+ for (buf = 0; buf < n; buf++ ) {
+ if (destMask[buf]) {
+ fb->_ColorDrawBufferIndexes[buf] = _mesa_ffs(destMask[buf]) - 1;
+ fb->ColorDrawBuffer[buf] = buffers[buf];
+ count = buf + 1;
+ }
+ else {
+ fb->_ColorDrawBufferIndexes[buf] = -1;
+ }
+ }
+ /* set remaining outputs to -1 (GL_NONE) */
+ while (buf < ctx->Const.MaxDrawBuffers) {
+ fb->_ColorDrawBufferIndexes[buf] = -1;
+ fb->ColorDrawBuffer[buf] = GL_NONE;
+ buf++;
+ }
+ fb->_NumColorDrawBuffers = count;
}
- /* set remaining color outputs to NONE */
- for (output = n; output < ctx->Const.MaxDrawBuffers; output++) {
- set_color_output(ctx, output, GL_NONE, 0x0);
+ if (fb->Name == 0) {
+ /* also set context drawbuffer state */
+ GLuint buf;
+ for (buf = 0; buf < ctx->Const.MaxDrawBuffers; buf++) {
+ ctx->Color.DrawBuffer[buf] = fb->ColorDrawBuffer[buf];
+ }
}
ctx->NewState |= _NEW_BUFFERS;
}
-GLboolean
-_mesa_readbuffer_update_fields(GLcontext *ctx, GLenum buffer)
+/**
+ * Like \sa _mesa_drawbuffers(), this is a helper function for setting
+ * GL_READ_BUFFER state in the context and current FBO.
+ * \param ctx the rendering context
+ * \param buffer GL_FRONT, GL_BACK, GL_COLOR_ATTACHMENT0, etc.
+ * \param bufferIndex the numerical index corresponding to 'buffer'
+ */
+void
+_mesa_readbuffer(GLcontext *ctx, GLenum buffer, GLint bufferIndex)
{
- struct gl_framebuffer *fb;
- GLbitfield supportedMask;
- GLint srcBuffer;
-
- fb = ctx->ReadBuffer;
-
- if (MESA_VERBOSE & VERBOSE_API)
- _mesa_debug(ctx, "glReadBuffer %s\n", _mesa_lookup_enum_by_nr(buffer));
-
- if (fb->Name > 0 && buffer == GL_NONE) {
- /* This is legal for user-created framebuffer objects */
- srcBuffer = -1;
- }
- else {
- /* general case / window-system framebuffer */
- srcBuffer = read_buffer_enum_to_index(buffer);
- if (srcBuffer == -1) {
- _mesa_error(ctx, GL_INVALID_ENUM, "glReadBuffer(buffer=0x%x)", buffer);
- return GL_FALSE;
- }
- supportedMask = supported_buffer_bitmask(ctx, fb);
- if (((1 << srcBuffer) & supportedMask) == 0) {
- _mesa_error(ctx, GL_INVALID_OPERATION, "glReadBuffer(buffer=0x%x)", buffer);
- return GL_FALSE;
- }
- }
+ struct gl_framebuffer *fb = ctx->ReadBuffer;
if (fb->Name == 0) {
+ /* Only update the per-context READ_BUFFER state if we're bound to
+ * a window-system framebuffer.
+ */
ctx->Pixel.ReadBuffer = buffer;
}
+
fb->ColorReadBuffer = buffer;
- fb->_ColorReadBufferIndex = srcBuffer;
+ fb->_ColorReadBufferIndex = bufferIndex;
- return GL_TRUE;
+ ctx->NewState |= _NEW_PIXEL;
}
@@ -437,15 +457,43 @@ _mesa_readbuffer_update_fields(GLcontext *ctx, GLenum buffer)
void GLAPIENTRY
_mesa_ReadBuffer(GLenum buffer)
{
+ struct gl_framebuffer *fb;
+ GLbitfield supportedMask;
+ GLint srcBuffer;
GET_CURRENT_CONTEXT(ctx);
ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx);
if (MESA_VERBOSE & VERBOSE_API)
_mesa_debug(ctx, "glReadBuffer %s\n", _mesa_lookup_enum_by_nr(buffer));
- if (!_mesa_readbuffer_update_fields(ctx, buffer))
- return;
+ fb = ctx->ReadBuffer;
+
+ if (MESA_VERBOSE & VERBOSE_API)
+ _mesa_debug(ctx, "glReadBuffer %s\n", _mesa_lookup_enum_by_nr(buffer));
+
+ if (fb->Name > 0 && buffer == GL_NONE) {
+ /* This is legal for user-created framebuffer objects */
+ srcBuffer = -1;
+ }
+ else {
+ /* general case / window-system framebuffer */
+ srcBuffer = read_buffer_enum_to_index(buffer);
+ if (srcBuffer == -1) {
+ _mesa_error(ctx, GL_INVALID_ENUM,
+ "glReadBuffer(buffer=0x%x)", buffer);
+ return;
+ }
+ supportedMask = supported_buffer_bitmask(ctx, fb);
+ if (((1 << srcBuffer) & supportedMask) == 0) {
+ _mesa_error(ctx, GL_INVALID_OPERATION,
+ "glReadBuffer(buffer=0x%x)", buffer);
+ return;
+ }
+ }
+
+ /* OK, all error checking has been completed now */
+ _mesa_readbuffer(ctx, buffer, srcBuffer);
ctx->NewState |= _NEW_BUFFERS;
/*
diff --git a/src/mesa/main/buffers.h b/src/mesa/main/buffers.h
index 53d5fb80d40..8a7e7b5c1f0 100644
--- a/src/mesa/main/buffers.h
+++ b/src/mesa/main/buffers.h
@@ -5,9 +5,9 @@
/*
* Mesa 3-D graphics library
- * Version: 6.5
+ * Version: 7.1
*
- * Copyright (C) 1999-2005 Brian Paul All Rights Reserved.
+ * Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
@@ -46,8 +46,8 @@ extern void
_mesa_drawbuffers(GLcontext *ctx, GLuint n, const GLenum *buffers,
const GLbitfield *destMask);
-extern GLboolean
-_mesa_readbuffer_update_fields(GLcontext *ctx, GLenum buffer);
+extern void
+_mesa_readbuffer(GLcontext *ctx, GLenum buffer, GLint bufferIndex);
extern void GLAPIENTRY
_mesa_ReadBuffer( GLenum mode );
diff --git a/src/mesa/main/clear.c b/src/mesa/main/clear.c
index 434685984d1..63388f42ee4 100644
--- a/src/mesa/main/clear.c
+++ b/src/mesa/main/clear.c
@@ -138,7 +138,9 @@ _mesa_Clear( GLbitfield mask )
return;
}
- if (ctx->DrawBuffer->Width == 0 || ctx->DrawBuffer->Height == 0)
+ if (ctx->DrawBuffer->Width == 0 || ctx->DrawBuffer->Height == 0 ||
+ ctx->DrawBuffer->_Xmin >= ctx->DrawBuffer->_Xmax ||
+ ctx->DrawBuffer->_Ymin >= ctx->DrawBuffer->_Ymax)
return;
if (ctx->RenderMode == GL_RENDER) {
@@ -155,7 +157,10 @@ _mesa_Clear( GLbitfield mask )
*/
bufferMask = 0;
if (mask & GL_COLOR_BUFFER_BIT) {
- bufferMask |= ctx->DrawBuffer->_ColorDrawBufferMask[0];
+ GLuint i;
+ for (i = 0; i < ctx->DrawBuffer->_NumColorDrawBuffers; i++) {
+ bufferMask |= (1 << ctx->DrawBuffer->_ColorDrawBufferIndexes[i]);
+ }
}
if ((mask & GL_DEPTH_BUFFER_BIT)
diff --git a/src/mesa/main/colormac.h b/src/mesa/main/colormac.h
index a19521fc85b..a34bd2ed388 100644
--- a/src/mesa/main/colormac.h
+++ b/src/mesa/main/colormac.h
@@ -1,8 +1,8 @@
/*
* Mesa 3-D graphics library
- * Version: 6.1
+ * Version: 7.3
*
- * Copyright (C) 1999-2004 Brian Paul All Rights Reserved.
+ * Copyright (C) 1999-2008 Brian Paul All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
@@ -180,20 +180,20 @@ do { \
*/
/*@{*/
-#define PACK_COLOR_8888( R, G, B, A ) \
- (((R) << 24) | ((G) << 16) | ((B) << 8) | (A))
+#define PACK_COLOR_8888( X, Y, Z, W ) \
+ (((X) << 24) | ((Y) << 16) | ((Z) << 8) | (W))
-#define PACK_COLOR_8888_REV( R, G, B, A ) \
- (((A) << 24) | ((B) << 16) | ((G) << 8) | (R))
+#define PACK_COLOR_8888_REV( X, Y, Z, W ) \
+ (((W) << 24) | ((Z) << 16) | ((Y) << 8) | (X))
-#define PACK_COLOR_888( R, G, B ) \
- (((R) << 16) | ((G) << 8) | (B))
+#define PACK_COLOR_888( X, Y, Z ) \
+ (((X) << 16) | ((Y) << 8) | (Z))
-#define PACK_COLOR_565( R, G, B ) \
- ((((R) & 0xf8) << 8) | (((G) & 0xfc) << 3) | (((B) & 0xf8) >> 3))
+#define PACK_COLOR_565( X, Y, Z ) \
+ ((((X) & 0xf8) << 8) | (((Y) & 0xfc) << 3) | (((Z) & 0xf8) >> 3))
-#define PACK_COLOR_565_REV( R, G, B ) \
- (((R) & 0xf8) | ((G) & 0xe0) >> 5 | (((G) & 0x1c) << 11) | (((B) & 0xf8) << 5))
+#define PACK_COLOR_565_REV( X, Y, Z ) \
+ (((X) & 0xf8) | ((Y) & 0xe0) >> 5 | (((Y) & 0x1c) << 11) | (((Z) & 0xf8) << 5))
#define PACK_COLOR_1555( A, B, G, R ) \
((((B) & 0xf8) << 7) | (((G) & 0xf8) << 2) | (((R) & 0xf8) >> 3) | \
diff --git a/src/mesa/main/colortab.c b/src/mesa/main/colortab.c
index 97120398f9b..bd9cf438b4f 100644
--- a/src/mesa/main/colortab.c
+++ b/src/mesa/main/colortab.c
@@ -383,7 +383,7 @@ _mesa_ColorTable( GLenum target, GLenum internalFormat,
return;
}
- if (width < 0 || (width != 0 && _mesa_bitcount(width) != 1)) {
+ if (width < 0 || (width != 0 && !_mesa_is_pow_two(width))) {
/* error */
if (proxy) {
table->Size = 0;
diff --git a/src/mesa/main/config.h b/src/mesa/main/config.h
index 5e9a4f89394..e29964a1e86 100644
--- a/src/mesa/main/config.h
+++ b/src/mesa/main/config.h
@@ -191,6 +191,8 @@
#define MAX_UNIFORMS 128 /**< number of float components */
#define MAX_VARYING 8 /**< number of float[4] vectors */
#define MAX_SAMPLERS 8
+#define MAX_PROGRAM_INPUTS 32
+#define MAX_PROGRAM_OUTPUTS 32
/*@}*/
/** For GL_NV_vertex_program */
@@ -216,7 +218,7 @@
/** For GL_ARB_vertex_shader */
/*@{*/
#define MAX_VERTEX_ATTRIBS 16
-#define MAX_VERTEX_TEXTURE_IMAGE_UNITS 0
+#define MAX_VERTEX_TEXTURE_IMAGE_UNITS MAX_TEXTURE_UNITS
#define MAX_COMBINED_TEXTURE_IMAGE_UNITS (MAX_TEXTURE_IMAGE_UNITS + MAX_VERTEX_TEXTURE_IMAGE_UNITS)
/*@}*/
diff --git a/src/mesa/main/context.c b/src/mesa/main/context.c
index e5ec35c77fd..61c0861cbd4 100644
--- a/src/mesa/main/context.c
+++ b/src/mesa/main/context.c
@@ -6,9 +6,9 @@
/*
* Mesa 3-D graphics library
- * Version: 6.5
+ * Version: 7.1
*
- * Copyright (C) 1999-2006 Brian Paul All Rights Reserved.
+ * Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
@@ -809,7 +809,7 @@ _mesa_init_current(GLcontext *ctx)
}
/* redo special cases: */
- ASSIGN_4V( ctx->Current.Attrib[VERT_ATTRIB_WEIGHT], 1.0, 0.0, 0.0, 1.0 );
+ ASSIGN_4V( ctx->Current.Attrib[VERT_ATTRIB_WEIGHT], 1.0, 0.0, 0.0, 0.0 );
ASSIGN_4V( ctx->Current.Attrib[VERT_ATTRIB_NORMAL], 0.0, 0.0, 1.0, 1.0 );
ASSIGN_4V( ctx->Current.Attrib[VERT_ATTRIB_COLOR0], 1.0, 1.0, 1.0, 1.0 );
ASSIGN_4V( ctx->Current.Attrib[VERT_ATTRIB_COLOR1], 0.0, 0.0, 0.0, 1.0 );
@@ -1063,7 +1063,6 @@ init_attrib_groups(GLcontext *ctx)
/* Miscellaneous */
ctx->NewState = _NEW_ALL;
ctx->ErrorValue = (GLenum) GL_NO_ERROR;
- ctx->_Facing = 0;
ctx->varying_vp_inputs = ~0;
return GL_TRUE;
@@ -1071,6 +1070,28 @@ init_attrib_groups(GLcontext *ctx)
/**
+ * Update default objects in a GL context with respect to shared state.
+ *
+ * \param ctx GL context.
+ *
+ * Removes references to old default objects, (texture objects, program
+ * objects, etc.) and changes to reference those from the current shared
+ * state.
+ */
+static GLboolean
+update_default_objects(GLcontext *ctx)
+{
+ assert(ctx);
+
+ _mesa_update_default_objects_program(ctx);
+ _mesa_update_default_objects_texture(ctx);
+ _mesa_update_default_objects_buffer_objects(ctx);
+
+ return GL_TRUE;
+}
+
+
+/**
* This is the default function we plug into all dispatch table slots
* This helps prevents a segfault when someone calls a GL function without
* first checking if the extension's supported.
@@ -1274,18 +1295,19 @@ _mesa_create_context(const GLvisual *visual,
void
_mesa_free_context_data( GLcontext *ctx )
{
- /* if we're destroying the current context, unbind it first */
- if (ctx == _mesa_get_current_context()) {
- _mesa_make_current(NULL, NULL, NULL);
- }
- else {
- /* unreference WinSysDraw/Read buffers */
- _mesa_unreference_framebuffer(&ctx->WinSysDrawBuffer);
- _mesa_unreference_framebuffer(&ctx->WinSysReadBuffer);
- _mesa_unreference_framebuffer(&ctx->DrawBuffer);
- _mesa_unreference_framebuffer(&ctx->ReadBuffer);
+ if (!_mesa_get_current_context()){
+ /* No current context, but we may need one in order to delete
+ * texture objs, etc. So temporarily bind the context now.
+ */
+ _mesa_make_current(ctx, NULL, NULL);
}
+ /* unreference WinSysDraw/Read buffers */
+ _mesa_unreference_framebuffer(&ctx->WinSysDrawBuffer);
+ _mesa_unreference_framebuffer(&ctx->WinSysReadBuffer);
+ _mesa_unreference_framebuffer(&ctx->DrawBuffer);
+ _mesa_unreference_framebuffer(&ctx->ReadBuffer);
+
_mesa_reference_vertprog(ctx, &ctx->VertexProgram.Current, NULL);
_mesa_reference_vertprog(ctx, &ctx->VertexProgram._Current, NULL);
_mesa_reference_vertprog(ctx, &ctx->VertexProgram._TnlProgram, NULL);
@@ -1294,6 +1316,9 @@ _mesa_free_context_data( GLcontext *ctx )
_mesa_reference_fragprog(ctx, &ctx->FragmentProgram._Current, NULL);
_mesa_reference_fragprog(ctx, &ctx->FragmentProgram._TexEnvProgram, NULL);
+#if FEATURE_attrib_stack
+ _mesa_free_attrib_data(ctx);
+#endif
_mesa_free_lighting_data( ctx );
#if FEATURE_evaluators
_mesa_free_eval_data( ctx );
@@ -1331,6 +1356,11 @@ _mesa_free_context_data( GLcontext *ctx )
if (ctx->Extensions.String)
_mesa_free((void *) ctx->Extensions.String);
+
+ /* unbind the context if it's currently bound */
+ if (ctx == _mesa_get_current_context()) {
+ _mesa_make_current(NULL, NULL, NULL);
+ }
}
@@ -1562,8 +1592,6 @@ void
_mesa_make_current( GLcontext *newCtx, GLframebuffer *drawBuffer,
GLframebuffer *readBuffer )
{
- GET_CURRENT_CONTEXT(oldCtx);
-
if (MESA_VERBOSE & VERBOSE_API)
_mesa_debug(newCtx, "_mesa_make_current()\n");
@@ -1588,13 +1616,6 @@ _mesa_make_current( GLcontext *newCtx, GLframebuffer *drawBuffer,
_glapi_set_context((void *) newCtx);
ASSERT(_mesa_get_current_context() == newCtx);
- if (oldCtx) {
- _mesa_unreference_framebuffer(&oldCtx->WinSysDrawBuffer);
- _mesa_unreference_framebuffer(&oldCtx->WinSysReadBuffer);
- _mesa_unreference_framebuffer(&oldCtx->DrawBuffer);
- _mesa_unreference_framebuffer(&oldCtx->ReadBuffer);
- }
-
if (!newCtx) {
_glapi_set_dispatch(NULL); /* none current */
}
@@ -1614,10 +1635,12 @@ _mesa_make_current( GLcontext *newCtx, GLframebuffer *drawBuffer,
* or not bound to a user-created FBO.
*/
if (!newCtx->DrawBuffer || newCtx->DrawBuffer->Name == 0) {
- /* fix up the fb fields - these will end up wrong otherwise
- * if the DRIdrawable changes, and everything relies on them.
- * This is a bit messy (same as needed in _mesa_BindFramebufferEXT)
- */
+ /* KW: merge conflict here, revisit.
+ */
+ /* fix up the fb fields - these will end up wrong otherwise
+ * if the DRIdrawable changes, and everything relies on them.
+ * This is a bit messy (same as needed in _mesa_BindFramebufferEXT)
+ */
unsigned int i;
GLenum buffers[MAX_DRAW_BUFFERS];
@@ -1631,9 +1654,11 @@ _mesa_make_current( GLcontext *newCtx, GLframebuffer *drawBuffer,
}
if (!newCtx->ReadBuffer || newCtx->ReadBuffer->Name == 0) {
_mesa_reference_framebuffer(&newCtx->ReadBuffer, readBuffer);
- _mesa_readbuffer_update_fields(newCtx, newCtx->Pixel.ReadBuffer);
}
+ /* XXX only set this flag if we're really changing the draw/read
+ * framebuffer bindings.
+ */
newCtx->NewState |= _NEW_BUFFERS;
#if 1
@@ -1701,12 +1726,18 @@ GLboolean
_mesa_share_state(GLcontext *ctx, GLcontext *ctxToShare)
{
if (ctx && ctxToShare && ctx->Shared && ctxToShare->Shared) {
- ctx->Shared->RefCount--;
- if (ctx->Shared->RefCount == 0) {
- free_shared_state(ctx, ctx->Shared);
- }
+ struct gl_shared_state *oldSharedState = ctx->Shared;
+
ctx->Shared = ctxToShare->Shared;
ctx->Shared->RefCount++;
+
+ update_default_objects(ctx);
+
+ oldSharedState->RefCount--;
+ if (oldSharedState->RefCount == 0) {
+ free_shared_state(ctx, oldSharedState);
+ }
+
return GL_TRUE;
}
else {
diff --git a/src/mesa/main/context.h b/src/mesa/main/context.h
index 9423b66a7d8..54f1af911d3 100644
--- a/src/mesa/main/context.h
+++ b/src/mesa/main/context.h
@@ -275,10 +275,12 @@ do { \
(((CTX)->Light.Enabled && \
(CTX)->Light.Model.ColorControl == GL_SEPARATE_SPECULAR_COLOR) \
|| (CTX)->Fog.ColorSumEnabled \
- || ((CTX)->VertexProgram._Enabled && \
- ((CTX)->VertexProgram.Current->Base.InputsRead & VERT_BIT_COLOR1)) \
- || ((CTX)->FragmentProgram._Enabled && \
- ((CTX)->FragmentProgram.Current->Base.InputsRead & FRAG_BIT_COL1)) \
+ || ((CTX)->VertexProgram._Current && \
+ ((CTX)->VertexProgram._Current != (CTX)->VertexProgram._TnlProgram) && \
+ ((CTX)->VertexProgram._Current->Base.InputsRead & VERT_BIT_COLOR1)) \
+ || ((CTX)->FragmentProgram._Current && \
+ ((CTX)->FragmentProgram._Current != (CTX)->FragmentProgram._TexEnvProgram) && \
+ ((CTX)->FragmentProgram._Current->Base.InputsRead & FRAG_BIT_COL1)) \
)
diff --git a/src/mesa/main/dd.h b/src/mesa/main/dd.h
index 7fb0a211d7a..ddb38030bf7 100644
--- a/src/mesa/main/dd.h
+++ b/src/mesa/main/dd.h
@@ -456,8 +456,8 @@ struct dd_function_table {
*/
void (*GetCompressedTexImage)(GLcontext *ctx, GLenum target, GLint level,
GLvoid *img,
- const struct gl_texture_object *texObj,
- const struct gl_texture_image *texImage);
+ struct gl_texture_object *texObj,
+ struct gl_texture_image *texImage);
/**
* Called to query number of bytes of storage needed to store the
@@ -504,6 +504,11 @@ struct dd_function_table {
*/
void (*FreeTexImageData)( GLcontext *ctx, struct gl_texture_image *tImage );
+ /** Map texture image data into user space */
+ void (*MapTexture)( GLcontext *ctx, struct gl_texture_object *tObj );
+ /** Unmap texture images from user space */
+ void (*UnmapTexture)( GLcontext *ctx, struct gl_texture_object *tObj );
+
/**
* Note: no context argument. This function doesn't initially look
* like it belongs here, except that the driver is the only entity
diff --git a/src/mesa/main/depthstencil.c b/src/mesa/main/depthstencil.c
index d4990bb795f..9d208e2997d 100644
--- a/src/mesa/main/depthstencil.c
+++ b/src/mesa/main/depthstencil.c
@@ -213,7 +213,7 @@ put_values_z24(GLcontext *ctx, struct gl_renderbuffer *z24rb, GLuint count,
const void *values, const GLubyte *mask)
{
struct gl_renderbuffer *dsrb = z24rb->Wrapped;
- const GLubyte *src = (const GLubyte *) values;
+ const GLuint *src = (const GLuint *) values;
ASSERT(z24rb->DataType == GL_UNSIGNED_INT);
ASSERT(dsrb->_ActualFormat == GL_DEPTH24_STENCIL8_EXT);
ASSERT(dsrb->DataType == GL_UNSIGNED_INT_24_8_EXT);
@@ -282,8 +282,8 @@ _mesa_new_z24_renderbuffer_wrapper(GLcontext *ctx,
z24rb->RefCount = 1;
z24rb->Width = dsrb->Width;
z24rb->Height = dsrb->Height;
- z24rb->InternalFormat = GL_DEPTH_COMPONENT24_ARB;
- z24rb->_ActualFormat = GL_DEPTH_COMPONENT24_ARB;
+ z24rb->InternalFormat = GL_DEPTH_COMPONENT24;
+ z24rb->_ActualFormat = GL_DEPTH_COMPONENT24;
z24rb->_BaseFormat = GL_DEPTH_COMPONENT;
z24rb->DataType = GL_UNSIGNED_INT;
z24rb->DepthBits = 24;
diff --git a/src/mesa/main/descrip.mms b/src/mesa/main/descrip.mms
new file mode 100644
index 00000000000..e49ec65d42d
--- /dev/null
+++ b/src/mesa/main/descrip.mms
@@ -0,0 +1,258 @@
+# Makefile for core library for VMS
+# contributed by Jouk Jansen [email protected]
+# Last revision : 29 September 2008
+
+.first
+ define gl [---.include.gl]
+ define math [-.math]
+ define shader [-.shader]
+ define glapi [-.glapi]
+ define main [-.main]
+
+.include [---]mms-config.
+
+##### MACROS #####
+
+VPATH = RCS
+
+INCDIR = [---.include],[-.glapi],[-.shader]
+LIBDIR = [---.lib]
+CFLAGS = /include=($(INCDIR),[])/define=(PTHREADS=1)/name=(as_is,short)/float=ieee/ieee=denorm
+
+SOURCES =accum.c \
+ api_arrayelt.c \
+ api_exec.c \
+ api_loopback.c \
+ api_noop.c \
+ api_validate.c \
+ attrib.c \
+ arrayobj.c \
+ blend.c \
+ bufferobj.c \
+ buffers.c \
+ clear.c \
+ clip.c \
+ colortab.c \
+ context.c \
+ convolve.c \
+ debug.c \
+ depth.c \
+ depthstencil.c \
+ dispatch.c \
+ dlist.c \
+ drawpix.c \
+ enable.c \
+ enums.c \
+ eval.c \
+ execmem.c \
+ extensions.c \
+ fbobject.c \
+ feedback.c \
+ ffvertex_prog.c \
+ fog.c \
+ framebuffer.c \
+ get.c \
+ getstring.c \
+ hash.c \
+ hint.c \
+ histogram.c \
+ image.c \
+ imports.c \
+ light.c \
+ lines.c \
+ matrix.c \
+ mipmap.c \
+ mm.c \
+ multisample.c \
+ pixel.c \
+ pixelstore.c \
+ points.c \
+ polygon.c \
+ rastpos.c \
+ rbadaptors.c \
+ readpix.c \
+ renderbuffer.c \
+ scissor.c \
+ shaders.c \
+ state.c \
+ stencil.c \
+ texcompress.c \
+ texcompress_fxt1.c \
+ texcompress_s3tc.c \
+ texenv.c \
+ texenvprogram.c \
+ texformat.c \
+ texgen.c \
+ teximage.c \
+ texobj.c \
+ texparam.c \
+ texrender.c \
+ texstate.c \
+ texstore.c \
+ varray.c \
+ vtxfmt.c \
+ queryobj.c \
+ rbadaptors.c
+
+OBJECTS=accum.obj,\
+api_arrayelt.obj,\
+api_exec.obj,\
+api_loopback.obj,\
+api_noop.obj,\
+api_validate.obj,\
+arrayobj.obj,\
+attrib.obj,\
+blend.obj,\
+bufferobj.obj,\
+buffers.obj,\
+clear.obj,\
+clip.obj,\
+colortab.obj,\
+context.obj,\
+convolve.obj,\
+debug.obj,\
+depth.obj,\
+depthstencil.obj,\
+dispatch.obj,\
+dlist.obj,\
+drawpix.obj,\
+enable.obj,\
+enums.obj,\
+eval.obj,\
+execmem.obj,\
+extensions.obj,\
+fbobject.obj,\
+feedback.obj,\
+ffvertex_prog.obj,\
+fog.obj,\
+framebuffer.obj,\
+get.obj,\
+getstring.obj,\
+hash.obj,\
+hint.obj,\
+histogram.obj,\
+image.obj,\
+imports.obj,\
+light.obj,\
+lines.obj,\
+matrix.obj,\
+mipmap.obj,\
+mm.obj,\
+multisample.obj,\
+pixel.obj,\
+pixelstore.obj,\
+points.obj,\
+polygon.obj,\
+rastpos.obj,\
+readpix.obj,\
+renderbuffer.obj,\
+scissor.obj,\
+shaders.obj,\
+state.obj,\
+stencil.obj,\
+texcompress.obj,\
+texcompress_fxt1.obj,\
+texcompress_s3tc.obj,\
+texenv.obj,\
+texenvprogram.obj,\
+texformat.obj,\
+texgen.obj,\
+teximage.obj,\
+texobj.obj,\
+texparam.obj,\
+texrender.obj,\
+texstate.obj,\
+texstore.obj,\
+varray.obj,\
+vtxfmt.obj,\
+queryobj.obj,\
+rbadaptors.obj
+
+##### RULES #####
+
+VERSION=Mesa V3.4
+
+##### TARGETS #####
+# Make the library
+$(LIBDIR)$(GL_LIB) : $(OBJECTS)
+ @ $(MAKELIB) $(LIBDIR)$(GL_LIB) $(OBJECTS)
+
+clean :
+ purge
+ delete *.obj;*
+
+accum.obj : accum.c
+api_arrayelt.obj : api_arrayelt.c
+api_loopback.obj : api_loopback.c
+api_noop.obj : api_noop.c
+api_validate.obj : api_validate.c
+arrayobj.obj : arrayobj.c
+attrib.obj : attrib.c
+blend.obj : blend.c
+bufferobj.obj : bufferobj.c
+buffers.obj : buffers.c
+clip.obj : clip.c
+colortab.obj : colortab.c
+context.obj : context.c
+convolve.obj : convolve.c
+debug.obj : debug.c
+depth.obj : depth.c
+depthstencil.obj : depthstencil.c
+dispatch.obj : dispatch.c
+dlist.obj : dlist.c
+drawpix.obj : drawpix.c
+enable.obj : enable.c
+enums.obj : enums.c
+eval.obj : eval.c
+execmem.obj : execmem.c
+extensions.obj : extensions.c
+fbobject.obj : fbobject.c
+feedback.obj : feedback.c
+fog.obj : fog.c
+framebuffer.obj : framebuffer.c
+get.obj : get.c
+getstring.obj : getstring.c
+hash.obj : hash.c
+hint.obj : hint.c
+histogram.obj : histogram.c
+image.obj : image.c
+imports.obj : imports.c vsnprintf.c
+light.obj : light.c
+lines.obj : lines.c
+matrix.obj : matrix.c
+mipmap.obj : mipmap.c
+mm.obj : mm.c
+pixel.obj : pixel.c
+points.obj : points.c
+polygon.obj : polygon.c
+rastpos.obj : rastpos.c
+rbadaptors.obj : rbadaptors.c
+renderbuffer.obj : renderbuffer.c
+state.obj : state.c
+stencil.obj : stencil.c
+texcompress.obj : texcompress.c
+texcompress_fxt1.obj : texcompress_fxt1.c
+ cc$(CFLAGS)/warn=(disable=SHIFTCOUNT) texcompress_fxt1.c
+texcompress_s3tc.obj : texcompress_s3tc.c
+texenvprogram.obj : texenvprogram.c
+texformat.obj : texformat.c
+teximage.obj : teximage.c
+texobj.obj : texobj.c
+texrender.obj : texrender.c
+texstate.obj : texstate.c
+texstore.obj : texstore.c
+varray.obj : varray.c
+vtxfmt.obj : vtxfmt.c
+shaders.obj : shaders.c
+queryobj.obj : queryobj.c
+rbadaptors.obj : rbadaptors.c
+clear.obj : clear.c
+multisample.obj : multisample.c
+scissor.obj : scissor.c
+texenv.obj : texenv.c
+texgen.obj : texgen.c
+texparam.obj : texparam.c
+readpix.obj : readpix.c
+ffvertex_prog.obj : ffvertex_prog.c
+api_exec.obj : api_exec.c
+pixelstore.obj : pixelstore.c
diff --git a/src/mesa/main/dispatch.c b/src/mesa/main/dispatch.c
index c12f55a7a1f..34127cb248a 100644
--- a/src/mesa/main/dispatch.c
+++ b/src/mesa/main/dispatch.c
@@ -39,7 +39,7 @@
#ifndef GLX_USE_APPLEGL
-#include "glheader.h"
+#include "main/glheader.h"
#include "glapi/glapi.h"
#include "glapi/glapitable.h"
#include "glapi/glthread.h"
diff --git a/src/mesa/main/dlist.c b/src/mesa/main/dlist.c
index ffe6dbfe08a..d3aee196c74 100644
--- a/src/mesa/main/dlist.c
+++ b/src/mesa/main/dlist.c
@@ -1,8 +1,8 @@
/*
* Mesa 3-D graphics library
- * Version: 6.5.1
+ * Version: 7.1
*
- * Copyright (C) 1999-2006 Brian Paul All Rights Reserved.
+ * Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
@@ -41,7 +41,6 @@
#endif
#include "arrayobj.h"
#include "clip.h"
-#include "colormac.h"
#include "colortab.h"
#include "context.h"
#include "convolve.h"
@@ -612,9 +611,9 @@ destroy_list(GLcontext *ctx, GLuint list)
/*
- * Translate the nth element of list from type to GLuint.
+ * Translate the nth element of list from <type> to GLint.
*/
-static GLuint
+static GLint
translate_id(GLsizei n, GLenum type, const GLvoid * list)
{
GLbyte *bptr;
@@ -628,37 +627,40 @@ translate_id(GLsizei n, GLenum type, const GLvoid * list)
switch (type) {
case GL_BYTE:
bptr = (GLbyte *) list;
- return (GLuint) *(bptr + n);
+ return (GLint) bptr[n];
case GL_UNSIGNED_BYTE:
ubptr = (GLubyte *) list;
- return (GLuint) *(ubptr + n);
+ return (GLint) ubptr[n];
case GL_SHORT:
sptr = (GLshort *) list;
- return (GLuint) *(sptr + n);
+ return (GLint) sptr[n];
case GL_UNSIGNED_SHORT:
usptr = (GLushort *) list;
- return (GLuint) *(usptr + n);
+ return (GLint) usptr[n];
case GL_INT:
iptr = (GLint *) list;
- return (GLuint) *(iptr + n);
+ return iptr[n];
case GL_UNSIGNED_INT:
uiptr = (GLuint *) list;
- return (GLuint) *(uiptr + n);
+ return (GLint) uiptr[n];
case GL_FLOAT:
fptr = (GLfloat *) list;
- return (GLuint) *(fptr + n);
+ return (GLint) FLOORF(fptr[n]);
case GL_2_BYTES:
ubptr = ((GLubyte *) list) + 2 * n;
- return (GLuint) *ubptr * 256 + (GLuint) * (ubptr + 1);
+ return (GLint) ubptr[0] * 256
+ + (GLint) ubptr[1];
case GL_3_BYTES:
ubptr = ((GLubyte *) list) + 3 * n;
- return (GLuint) * ubptr * 65536
- + (GLuint) *(ubptr + 1) * 256 + (GLuint) * (ubptr + 2);
+ return (GLint) ubptr[0] * 65536
+ + (GLint) ubptr[1] * 256
+ + (GLint) ubptr[2];
case GL_4_BYTES:
ubptr = ((GLubyte *) list) + 4 * n;
- return (GLuint) *ubptr * 16777216
- + (GLuint) *(ubptr + 1) * 65536
- + (GLuint) *(ubptr + 2) * 256 + (GLuint) * (ubptr + 3);
+ return (GLint) ubptr[0] * 16777216
+ + (GLint) ubptr[1] * 65536
+ + (GLint) ubptr[2] * 256
+ + (GLint) ubptr[3];
default:
return 0;
}
@@ -1000,10 +1002,10 @@ _mesa_save_CallLists(GLsizei n, GLenum type, const GLvoid * lists)
}
for (i = 0; i < n; i++) {
- GLuint list = translate_id(i, type, lists);
+ GLint list = translate_id(i, type, lists);
Node *n = ALLOC_INSTRUCTION(ctx, OPCODE_CALL_LIST_OFFSET, 2);
if (n) {
- n[1].ui = list;
+ n[1].i = list;
n[2].b = typeErrorFlag;
}
}
@@ -2002,7 +2004,7 @@ save_Lightfv(GLenum light, GLenum pname, const GLfloat *params)
Node *n;
ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx);
n = ALLOC_INSTRUCTION(ctx, OPCODE_LIGHT, 6);
- if (OPCODE_LIGHT) {
+ if (n) {
GLint i, nParams;
n[1].e = light;
n[2].e = pname;
@@ -2723,21 +2725,20 @@ save_PolygonMode(GLenum face, GLenum mode)
}
-/*
- * Polygon stipple must have been upacked already!
- */
static void GLAPIENTRY
save_PolygonStipple(const GLubyte * pattern)
{
GET_CURRENT_CONTEXT(ctx);
+ GLvoid *image = unpack_image(2, 32, 32, 1, GL_COLOR_INDEX, GL_BITMAP,
+ pattern, &ctx->Unpack);
Node *n;
ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx);
n = ALLOC_INSTRUCTION(ctx, OPCODE_POLYGON_STIPPLE, 1);
if (n) {
- void *data;
- n[1].data = _mesa_malloc(32 * 4);
- data = n[1].data; /* This needed for Acorn compiler */
- MEMCPY(data, pattern, 32 * 4);
+ n[1].data = image;
+ }
+ else if (image) {
+ _mesa_free(image);
}
if (ctx->ExecuteFlag) {
CALL_PolygonStipple(ctx->Exec, ((GLubyte *) pattern));
@@ -3254,6 +3255,36 @@ save_StencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
static void GLAPIENTRY
+save_StencilFuncSeparateATI(GLenum frontfunc, GLenum backfunc, GLint ref,
+ GLuint mask)
+{
+ GET_CURRENT_CONTEXT(ctx);
+ Node *n;
+ ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx);
+ /* GL_FRONT */
+ n = ALLOC_INSTRUCTION(ctx, OPCODE_STENCIL_FUNC_SEPARATE, 4);
+ if (n) {
+ n[1].e = GL_FRONT;
+ n[2].e = frontfunc;
+ n[3].i = ref;
+ n[4].ui = mask;
+ }
+ /* GL_BACK */
+ n = ALLOC_INSTRUCTION(ctx, OPCODE_STENCIL_FUNC_SEPARATE, 4);
+ if (n) {
+ n[1].e = GL_BACK;
+ n[2].e = backfunc;
+ n[3].i = ref;
+ n[4].ui = mask;
+ }
+ if (ctx->ExecuteFlag) {
+ CALL_StencilFuncSeparate(ctx->Exec, (GL_FRONT, frontfunc, ref, mask));
+ CALL_StencilFuncSeparate(ctx->Exec, (GL_BACK, backfunc, ref, mask));
+ }
+}
+
+
+static void GLAPIENTRY
save_StencilMaskSeparate(GLenum face, GLuint mask)
{
GET_CURRENT_CONTEXT(ctx);
@@ -5587,6 +5618,27 @@ save_VertexAttrib4fvARB(GLuint index, const GLfloat * v)
}
+/* GL_ARB_shader_objects, GL_ARB_vertex/fragment_shader */
+
+static void GLAPIENTRY
+exec_BindAttribLocationARB(GLuint program, GLuint index, const GLchar *name)
+{
+ GET_CURRENT_CONTEXT(ctx);
+ FLUSH_VERTICES(ctx, 0);
+ CALL_BindAttribLocationARB(ctx->Exec, (program, index, name));
+}
+
+static GLint GLAPIENTRY
+exec_GetAttribLocationARB(GLuint program, const GLchar *name)
+{
+ GET_CURRENT_CONTEXT(ctx);
+ FLUSH_VERTICES(ctx, 0);
+ return CALL_GetAttribLocationARB(ctx->Exec, (program, name));
+}
+/* XXX more shader functions needed here */
+
+
+
#if FEATURE_EXT_framebuffer_blit
static void GLAPIENTRY
save_BlitFramebufferEXT(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1,
@@ -5695,7 +5747,7 @@ execute_list(GLcontext *ctx, GLuint list)
if (!dlist)
return;
- ctx->ListState.CallStack[ctx->ListState.CallDepth++] = dlist;
+ ctx->ListState.CallDepth++;
if (ctx->Driver.BeginCallList)
ctx->Driver.BeginCallList(ctx, dlist);
@@ -5762,7 +5814,8 @@ execute_list(GLcontext *ctx, GLuint list)
_mesa_error(ctx, GL_INVALID_ENUM, "glCallLists(type)");
}
else if (ctx->ListState.CallDepth < MAX_LIST_NESTING) {
- execute_list(ctx, ctx->List.ListBase + n[1].ui);
+ GLuint list = (GLuint) (ctx->List.ListBase + n[1].i);
+ execute_list(ctx, list);
}
break;
case OPCODE_CLEAR:
@@ -6126,7 +6179,12 @@ execute_list(GLcontext *ctx, GLuint list)
CALL_PolygonMode(ctx->Exec, (n[1].e, n[2].e));
break;
case OPCODE_POLYGON_STIPPLE:
- CALL_PolygonStipple(ctx->Exec, ((GLubyte *) n[1].data));
+ {
+ const struct gl_pixelstore_attrib save = ctx->Unpack;
+ ctx->Unpack = ctx->DefaultPacking;
+ CALL_PolygonStipple(ctx->Exec, ((GLubyte *) n[1].data));
+ ctx->Unpack = save; /* restore */
+ }
break;
case OPCODE_POLYGON_OFFSET:
CALL_PolygonOffset(ctx->Exec, (n[1].f, n[2].f));
@@ -6577,7 +6635,7 @@ execute_list(GLcontext *ctx, GLuint list)
if (ctx->Driver.EndCallList)
ctx->Driver.EndCallList(ctx);
- ctx->ListState.CallStack[ctx->ListState.CallDepth--] = NULL;
+ ctx->ListState.CallDepth--;
}
@@ -6808,7 +6866,6 @@ void GLAPIENTRY
_mesa_CallLists(GLsizei n, GLenum type, const GLvoid * lists)
{
GET_CURRENT_CONTEXT(ctx);
- GLuint list;
GLint i;
GLboolean save_compile_flag;
@@ -6840,8 +6897,8 @@ _mesa_CallLists(GLsizei n, GLenum type, const GLvoid * lists)
ctx->CompileFlag = GL_FALSE;
for (i = 0; i < n; i++) {
- list = translate_id(i, type, lists);
- execute_list(ctx, ctx->List.ListBase + list);
+ GLuint list = (GLuint) (ctx->List.ListBase + translate_id(i, type, lists));
+ execute_list(ctx, list);
}
ctx->CompileFlag = save_compile_flag;
@@ -7821,6 +7878,9 @@ _mesa_init_dlist_table(struct _glapi_table *table)
SET_StencilMaskSeparate(table, save_StencilMaskSeparate);
SET_StencilOpSeparate(table, save_StencilOpSeparate);
+ /* ATI_separate_stencil */
+ SET_StencilFuncSeparateATI(table, save_StencilFuncSeparateATI);
+
/* GL_ARB_imaging */
/* Not all are supported */
SET_BlendColor(table, save_BlendColor);
@@ -8118,6 +8178,11 @@ _mesa_init_dlist_table(struct _glapi_table *table)
SET_BlitFramebufferEXT(table, save_BlitFramebufferEXT);
#endif
+ /* ARB 30/31/32. GL_ARB_shader_objects, GL_ARB_vertex/fragment_shader */
+ SET_BindAttribLocationARB(table, exec_BindAttribLocationARB);
+ SET_GetAttribLocationARB(table, exec_GetAttribLocationARB);
+ /* XXX additional functions need to be implemented here! */
+
/* 299. GL_EXT_blend_equation_separate */
SET_BlendEquationSeparateEXT(table, save_BlendEquationSeparateEXT);
diff --git a/src/mesa/main/drawpix.c b/src/mesa/main/drawpix.c
index 6db198ea3bb..13cfa0e756e 100644
--- a/src/mesa/main/drawpix.c
+++ b/src/mesa/main/drawpix.c
@@ -218,7 +218,7 @@ _mesa_Bitmap( GLsizei width, GLsizei height,
if (ctx->RenderMode == GL_RENDER) {
/* Truncate, to satisfy conformance tests (matches SGI's OpenGL). */
- const GLfloat epsilon = (const GLfloat)0.0001;
+ const GLfloat epsilon = 0.0001F;
GLint x = IFLOOR(ctx->Current.RasterPos[0] + epsilon - xorig);
GLint y = IFLOOR(ctx->Current.RasterPos[1] + epsilon - yorig);
diff --git a/src/mesa/main/enable.c b/src/mesa/main/enable.c
index 9dc55d4e69f..248df1badca 100644
--- a/src/mesa/main/enable.c
+++ b/src/mesa/main/enable.c
@@ -5,9 +5,9 @@
/*
* Mesa 3-D graphics library
- * Version: 6.5.1
+ * Version: 7.0.3
*
- * Copyright (C) 1999-2006 Brian Paul All Rights Reserved.
+ * Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
@@ -38,6 +38,7 @@
#include "enums.h"
#include "math/m_matrix.h"
#include "math/m_xform.h"
+#include "api_arrayelt.h"
@@ -136,6 +137,9 @@ client_state(GLcontext *ctx, GLenum cap, GLboolean state)
FLUSH_VERTICES(ctx, _NEW_ARRAY);
ctx->Array.NewState |= flag;
+
+ _ae_invalidate_state(ctx, _NEW_ARRAY);
+
*var = state;
if (state)
@@ -373,18 +377,24 @@ _mesa_set_enable(GLcontext *ctx, GLenum cap, GLboolean state)
return;
FLUSH_VERTICES(ctx, _NEW_LIGHT);
ctx->Light.Enabled = state;
+ if (ctx->Light.Enabled && ctx->Light.Model.TwoSide)
+ ctx->_TriangleCaps |= DD_TRI_LIGHT_TWOSIDE;
+ else
+ ctx->_TriangleCaps &= ~DD_TRI_LIGHT_TWOSIDE;
break;
case GL_LINE_SMOOTH:
if (ctx->Line.SmoothFlag == state)
return;
FLUSH_VERTICES(ctx, _NEW_LINE);
ctx->Line.SmoothFlag = state;
+ ctx->_TriangleCaps ^= DD_LINE_SMOOTH;
break;
case GL_LINE_STIPPLE:
if (ctx->Line.StippleFlag == state)
return;
FLUSH_VERTICES(ctx, _NEW_LINE);
ctx->Line.StippleFlag = state;
+ ctx->_TriangleCaps ^= DD_LINE_STIPPLE;
break;
case GL_INDEX_LOGIC_OP:
if (ctx->Color.IndexLogicOpEnabled == state)
@@ -523,18 +533,21 @@ _mesa_set_enable(GLcontext *ctx, GLenum cap, GLboolean state)
return;
FLUSH_VERTICES(ctx, _NEW_POINT);
ctx->Point.SmoothFlag = state;
+ ctx->_TriangleCaps ^= DD_POINT_SMOOTH;
break;
case GL_POLYGON_SMOOTH:
if (ctx->Polygon.SmoothFlag == state)
return;
FLUSH_VERTICES(ctx, _NEW_POLYGON);
ctx->Polygon.SmoothFlag = state;
+ ctx->_TriangleCaps ^= DD_TRI_SMOOTH;
break;
case GL_POLYGON_STIPPLE:
if (ctx->Polygon.StippleFlag == state)
return;
FLUSH_VERTICES(ctx, _NEW_POLYGON);
ctx->Polygon.StippleFlag = state;
+ ctx->_TriangleCaps ^= DD_TRI_STIPPLE;
break;
case GL_POLYGON_OFFSET_POINT:
if (ctx->Polygon.OffsetPoint == state)
@@ -885,6 +898,10 @@ _mesa_set_enable(GLcontext *ctx, GLenum cap, GLboolean state)
return;
FLUSH_VERTICES(ctx, _NEW_STENCIL);
ctx->Stencil.TestTwoSide = state;
+ if (state)
+ ctx->_TriangleCaps |= DD_TRI_TWOSTENCIL;
+ else
+ ctx->_TriangleCaps &= ~DD_TRI_TWOSTENCIL;
break;
#if FEATURE_ARB_fragment_program
diff --git a/src/mesa/main/enums.c b/src/mesa/main/enums.c
index 8ce6b51d17c..4796f3027ad 100644
--- a/src/mesa/main/enums.c
+++ b/src/mesa/main/enums.c
@@ -88,7 +88,6 @@ LONGSTRING static const char enum_string_table[] =
"GL_AND_INVERTED\0"
"GL_AND_REVERSE\0"
"GL_ARRAY_BUFFER\0"
- "GL_ARRAY_BUFFER_ARB\0"
"GL_ARRAY_BUFFER_BINDING\0"
"GL_ARRAY_BUFFER_BINDING_ARB\0"
"GL_ATTACHED_SHADERS\0"
@@ -456,7 +455,6 @@ LONGSTRING static const char enum_string_table[] =
"GL_EDGE_FLAG_ARRAY_POINTER\0"
"GL_EDGE_FLAG_ARRAY_STRIDE\0"
"GL_ELEMENT_ARRAY_BUFFER\0"
- "GL_ELEMENT_ARRAY_BUFFER_ARB\0"
"GL_ELEMENT_ARRAY_BUFFER_BINDING\0"
"GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB\0"
"GL_EMISSION\0"
@@ -1787,7 +1785,7 @@ LONGSTRING static const char enum_string_table[] =
"GL_ZOOM_Y\0"
;
-static const enum_elt all_enums[1750] =
+static const enum_elt all_enums[1748] =
{
{ 0, 0x00000600 }, /* GL_2D */
{ 6, 0x00001407 }, /* GL_2_BYTES */
@@ -1842,2990 +1840,2988 @@ static const enum_elt all_enums[1750] =
{ 830, 0x00001504 }, /* GL_AND_INVERTED */
{ 846, 0x00001502 }, /* GL_AND_REVERSE */
{ 861, 0x00008892 }, /* GL_ARRAY_BUFFER */
- { 877, 0x00008892 }, /* GL_ARRAY_BUFFER_ARB */
- { 897, 0x00008894 }, /* GL_ARRAY_BUFFER_BINDING */
- { 921, 0x00008894 }, /* GL_ARRAY_BUFFER_BINDING_ARB */
- { 949, 0x00008B85 }, /* GL_ATTACHED_SHADERS */
- { 969, 0x00008645 }, /* GL_ATTRIB_ARRAY_POINTER_NV */
- { 996, 0x00008623 }, /* GL_ATTRIB_ARRAY_SIZE_NV */
- { 1020, 0x00008624 }, /* GL_ATTRIB_ARRAY_STRIDE_NV */
- { 1046, 0x00008625 }, /* GL_ATTRIB_ARRAY_TYPE_NV */
- { 1070, 0x00000BB0 }, /* GL_ATTRIB_STACK_DEPTH */
- { 1092, 0x00000D80 }, /* GL_AUTO_NORMAL */
- { 1107, 0x00000409 }, /* GL_AUX0 */
- { 1115, 0x0000040A }, /* GL_AUX1 */
- { 1123, 0x0000040B }, /* GL_AUX2 */
- { 1131, 0x0000040C }, /* GL_AUX3 */
- { 1139, 0x00000C00 }, /* GL_AUX_BUFFERS */
- { 1154, 0x00000405 }, /* GL_BACK */
- { 1162, 0x00000402 }, /* GL_BACK_LEFT */
- { 1175, 0x00000403 }, /* GL_BACK_RIGHT */
- { 1189, 0x000080E0 }, /* GL_BGR */
- { 1196, 0x000080E1 }, /* GL_BGRA */
- { 1204, 0x00001A00 }, /* GL_BITMAP */
- { 1214, 0x00000704 }, /* GL_BITMAP_TOKEN */
- { 1230, 0x00000BE2 }, /* GL_BLEND */
- { 1239, 0x00008005 }, /* GL_BLEND_COLOR */
- { 1254, 0x00008005 }, /* GL_BLEND_COLOR_EXT */
- { 1273, 0x00000BE0 }, /* GL_BLEND_DST */
- { 1286, 0x000080CA }, /* GL_BLEND_DST_ALPHA */
- { 1305, 0x000080C8 }, /* GL_BLEND_DST_RGB */
- { 1322, 0x00008009 }, /* GL_BLEND_EQUATION */
- { 1340, 0x0000883D }, /* GL_BLEND_EQUATION_ALPHA */
- { 1364, 0x0000883D }, /* GL_BLEND_EQUATION_ALPHA_EXT */
- { 1392, 0x00008009 }, /* GL_BLEND_EQUATION_EXT */
- { 1414, 0x00008009 }, /* GL_BLEND_EQUATION_RGB_EXT */
- { 1440, 0x00000BE1 }, /* GL_BLEND_SRC */
- { 1453, 0x000080CB }, /* GL_BLEND_SRC_ALPHA */
- { 1472, 0x000080C9 }, /* GL_BLEND_SRC_RGB */
- { 1489, 0x00001905 }, /* GL_BLUE */
- { 1497, 0x00000D1B }, /* GL_BLUE_BIAS */
- { 1510, 0x00000D54 }, /* GL_BLUE_BITS */
- { 1523, 0x00000D1A }, /* GL_BLUE_SCALE */
- { 1537, 0x00008B56 }, /* GL_BOOL */
- { 1545, 0x00008B56 }, /* GL_BOOL_ARB */
- { 1557, 0x00008B57 }, /* GL_BOOL_VEC2 */
- { 1570, 0x00008B57 }, /* GL_BOOL_VEC2_ARB */
- { 1587, 0x00008B58 }, /* GL_BOOL_VEC3 */
- { 1600, 0x00008B58 }, /* GL_BOOL_VEC3_ARB */
- { 1617, 0x00008B59 }, /* GL_BOOL_VEC4 */
- { 1630, 0x00008B59 }, /* GL_BOOL_VEC4_ARB */
- { 1647, 0x000088BB }, /* GL_BUFFER_ACCESS */
- { 1664, 0x000088BB }, /* GL_BUFFER_ACCESS_ARB */
- { 1685, 0x000088BC }, /* GL_BUFFER_MAPPED */
- { 1702, 0x000088BC }, /* GL_BUFFER_MAPPED_ARB */
- { 1723, 0x000088BD }, /* GL_BUFFER_MAP_POINTER */
- { 1745, 0x000088BD }, /* GL_BUFFER_MAP_POINTER_ARB */
- { 1771, 0x00008764 }, /* GL_BUFFER_SIZE */
- { 1786, 0x00008764 }, /* GL_BUFFER_SIZE_ARB */
- { 1805, 0x00008765 }, /* GL_BUFFER_USAGE */
- { 1821, 0x00008765 }, /* GL_BUFFER_USAGE_ARB */
- { 1841, 0x00001400 }, /* GL_BYTE */
- { 1849, 0x00002A24 }, /* GL_C3F_V3F */
- { 1860, 0x00002A26 }, /* GL_C4F_N3F_V3F */
- { 1875, 0x00002A22 }, /* GL_C4UB_V2F */
- { 1887, 0x00002A23 }, /* GL_C4UB_V3F */
- { 1899, 0x00000901 }, /* GL_CCW */
- { 1906, 0x00002900 }, /* GL_CLAMP */
- { 1915, 0x0000812D }, /* GL_CLAMP_TO_BORDER */
- { 1934, 0x0000812D }, /* GL_CLAMP_TO_BORDER_ARB */
- { 1957, 0x0000812D }, /* GL_CLAMP_TO_BORDER_SGIS */
- { 1981, 0x0000812F }, /* GL_CLAMP_TO_EDGE */
- { 1998, 0x0000812F }, /* GL_CLAMP_TO_EDGE_SGIS */
- { 2020, 0x00001500 }, /* GL_CLEAR */
- { 2029, 0x000084E1 }, /* GL_CLIENT_ACTIVE_TEXTURE */
- { 2054, 0x000084E1 }, /* GL_CLIENT_ACTIVE_TEXTURE_ARB */
- { 2083, 0xFFFFFFFF }, /* GL_CLIENT_ALL_ATTRIB_BITS */
- { 2109, 0x00000BB1 }, /* GL_CLIENT_ATTRIB_STACK_DEPTH */
- { 2138, 0x00000001 }, /* GL_CLIENT_PIXEL_STORE_BIT */
- { 2164, 0x00000002 }, /* GL_CLIENT_VERTEX_ARRAY_BIT */
- { 2191, 0x00003000 }, /* GL_CLIP_PLANE0 */
- { 2206, 0x00003001 }, /* GL_CLIP_PLANE1 */
- { 2221, 0x00003002 }, /* GL_CLIP_PLANE2 */
- { 2236, 0x00003003 }, /* GL_CLIP_PLANE3 */
- { 2251, 0x00003004 }, /* GL_CLIP_PLANE4 */
- { 2266, 0x00003005 }, /* GL_CLIP_PLANE5 */
- { 2281, 0x000080F0 }, /* GL_CLIP_VOLUME_CLIPPING_HINT_EXT */
- { 2314, 0x00000A00 }, /* GL_COEFF */
- { 2323, 0x00001800 }, /* GL_COLOR */
- { 2332, 0x00008076 }, /* GL_COLOR_ARRAY */
- { 2347, 0x00008898 }, /* GL_COLOR_ARRAY_BUFFER_BINDING */
- { 2377, 0x00008898 }, /* GL_COLOR_ARRAY_BUFFER_BINDING_ARB */
- { 2411, 0x00008090 }, /* GL_COLOR_ARRAY_POINTER */
- { 2434, 0x00008081 }, /* GL_COLOR_ARRAY_SIZE */
- { 2454, 0x00008083 }, /* GL_COLOR_ARRAY_STRIDE */
- { 2476, 0x00008082 }, /* GL_COLOR_ARRAY_TYPE */
- { 2496, 0x00008CE0 }, /* GL_COLOR_ATTACHMENT0_EXT */
- { 2521, 0x00008CEA }, /* GL_COLOR_ATTACHMENT10_EXT */
- { 2547, 0x00008CEB }, /* GL_COLOR_ATTACHMENT11_EXT */
- { 2573, 0x00008CEC }, /* GL_COLOR_ATTACHMENT12_EXT */
- { 2599, 0x00008CED }, /* GL_COLOR_ATTACHMENT13_EXT */
- { 2625, 0x00008CEE }, /* GL_COLOR_ATTACHMENT14_EXT */
- { 2651, 0x00008CEF }, /* GL_COLOR_ATTACHMENT15_EXT */
- { 2677, 0x00008CE1 }, /* GL_COLOR_ATTACHMENT1_EXT */
- { 2702, 0x00008CE2 }, /* GL_COLOR_ATTACHMENT2_EXT */
- { 2727, 0x00008CE3 }, /* GL_COLOR_ATTACHMENT3_EXT */
- { 2752, 0x00008CE4 }, /* GL_COLOR_ATTACHMENT4_EXT */
- { 2777, 0x00008CE5 }, /* GL_COLOR_ATTACHMENT5_EXT */
- { 2802, 0x00008CE6 }, /* GL_COLOR_ATTACHMENT6_EXT */
- { 2827, 0x00008CE7 }, /* GL_COLOR_ATTACHMENT7_EXT */
- { 2852, 0x00008CE8 }, /* GL_COLOR_ATTACHMENT8_EXT */
- { 2877, 0x00008CE9 }, /* GL_COLOR_ATTACHMENT9_EXT */
- { 2902, 0x00004000 }, /* GL_COLOR_BUFFER_BIT */
- { 2922, 0x00000C22 }, /* GL_COLOR_CLEAR_VALUE */
- { 2943, 0x00001900 }, /* GL_COLOR_INDEX */
- { 2958, 0x00001603 }, /* GL_COLOR_INDEXES */
- { 2975, 0x00000BF2 }, /* GL_COLOR_LOGIC_OP */
- { 2993, 0x00000B57 }, /* GL_COLOR_MATERIAL */
- { 3011, 0x00000B55 }, /* GL_COLOR_MATERIAL_FACE */
- { 3034, 0x00000B56 }, /* GL_COLOR_MATERIAL_PARAMETER */
- { 3062, 0x000080B1 }, /* GL_COLOR_MATRIX */
- { 3078, 0x000080B1 }, /* GL_COLOR_MATRIX_SGI */
- { 3098, 0x000080B2 }, /* GL_COLOR_MATRIX_STACK_DEPTH */
- { 3126, 0x000080B2 }, /* GL_COLOR_MATRIX_STACK_DEPTH_SGI */
- { 3158, 0x00008458 }, /* GL_COLOR_SUM */
- { 3171, 0x00008458 }, /* GL_COLOR_SUM_ARB */
- { 3188, 0x000080D0 }, /* GL_COLOR_TABLE */
- { 3203, 0x000080DD }, /* GL_COLOR_TABLE_ALPHA_SIZE */
- { 3229, 0x000080DD }, /* GL_COLOR_TABLE_ALPHA_SIZE_EXT */
- { 3259, 0x000080DD }, /* GL_COLOR_TABLE_ALPHA_SIZE_SGI */
- { 3289, 0x000080D7 }, /* GL_COLOR_TABLE_BIAS */
- { 3309, 0x000080D7 }, /* GL_COLOR_TABLE_BIAS_SGI */
- { 3333, 0x000080DC }, /* GL_COLOR_TABLE_BLUE_SIZE */
- { 3358, 0x000080DC }, /* GL_COLOR_TABLE_BLUE_SIZE_EXT */
- { 3387, 0x000080DC }, /* GL_COLOR_TABLE_BLUE_SIZE_SGI */
- { 3416, 0x000080D8 }, /* GL_COLOR_TABLE_FORMAT */
- { 3438, 0x000080D8 }, /* GL_COLOR_TABLE_FORMAT_EXT */
- { 3464, 0x000080D8 }, /* GL_COLOR_TABLE_FORMAT_SGI */
- { 3490, 0x000080DB }, /* GL_COLOR_TABLE_GREEN_SIZE */
- { 3516, 0x000080DB }, /* GL_COLOR_TABLE_GREEN_SIZE_EXT */
- { 3546, 0x000080DB }, /* GL_COLOR_TABLE_GREEN_SIZE_SGI */
- { 3576, 0x000080DF }, /* GL_COLOR_TABLE_INTENSITY_SIZE */
- { 3606, 0x000080DF }, /* GL_COLOR_TABLE_INTENSITY_SIZE_EXT */
- { 3640, 0x000080DF }, /* GL_COLOR_TABLE_INTENSITY_SIZE_SGI */
- { 3674, 0x000080DE }, /* GL_COLOR_TABLE_LUMINANCE_SIZE */
- { 3704, 0x000080DE }, /* GL_COLOR_TABLE_LUMINANCE_SIZE_EXT */
- { 3738, 0x000080DE }, /* GL_COLOR_TABLE_LUMINANCE_SIZE_SGI */
- { 3772, 0x000080DA }, /* GL_COLOR_TABLE_RED_SIZE */
- { 3796, 0x000080DA }, /* GL_COLOR_TABLE_RED_SIZE_EXT */
- { 3824, 0x000080DA }, /* GL_COLOR_TABLE_RED_SIZE_SGI */
- { 3852, 0x000080D6 }, /* GL_COLOR_TABLE_SCALE */
- { 3873, 0x000080D6 }, /* GL_COLOR_TABLE_SCALE_SGI */
- { 3898, 0x000080D9 }, /* GL_COLOR_TABLE_WIDTH */
- { 3919, 0x000080D9 }, /* GL_COLOR_TABLE_WIDTH_EXT */
- { 3944, 0x000080D9 }, /* GL_COLOR_TABLE_WIDTH_SGI */
- { 3969, 0x00000C23 }, /* GL_COLOR_WRITEMASK */
- { 3988, 0x00008570 }, /* GL_COMBINE */
- { 3999, 0x00008503 }, /* GL_COMBINE4 */
- { 4011, 0x00008572 }, /* GL_COMBINE_ALPHA */
- { 4028, 0x00008572 }, /* GL_COMBINE_ALPHA_ARB */
- { 4049, 0x00008572 }, /* GL_COMBINE_ALPHA_EXT */
- { 4070, 0x00008570 }, /* GL_COMBINE_ARB */
- { 4085, 0x00008570 }, /* GL_COMBINE_EXT */
- { 4100, 0x00008571 }, /* GL_COMBINE_RGB */
- { 4115, 0x00008571 }, /* GL_COMBINE_RGB_ARB */
- { 4134, 0x00008571 }, /* GL_COMBINE_RGB_EXT */
- { 4153, 0x0000884E }, /* GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT */
- { 4189, 0x0000884E }, /* GL_COMPARE_R_TO_TEXTURE */
- { 4213, 0x0000884E }, /* GL_COMPARE_R_TO_TEXTURE_ARB */
- { 4241, 0x00001300 }, /* GL_COMPILE */
- { 4252, 0x00001301 }, /* GL_COMPILE_AND_EXECUTE */
- { 4275, 0x00008B81 }, /* GL_COMPILE_STATUS */
- { 4293, 0x000084E9 }, /* GL_COMPRESSED_ALPHA */
- { 4313, 0x000084E9 }, /* GL_COMPRESSED_ALPHA_ARB */
- { 4337, 0x000084EC }, /* GL_COMPRESSED_INTENSITY */
- { 4361, 0x000084EC }, /* GL_COMPRESSED_INTENSITY_ARB */
- { 4389, 0x000084EA }, /* GL_COMPRESSED_LUMINANCE */
- { 4413, 0x000084EB }, /* GL_COMPRESSED_LUMINANCE_ALPHA */
- { 4443, 0x000084EB }, /* GL_COMPRESSED_LUMINANCE_ALPHA_ARB */
- { 4477, 0x000084EA }, /* GL_COMPRESSED_LUMINANCE_ARB */
- { 4505, 0x000084ED }, /* GL_COMPRESSED_RGB */
- { 4523, 0x000084EE }, /* GL_COMPRESSED_RGBA */
- { 4542, 0x000084EE }, /* GL_COMPRESSED_RGBA_ARB */
- { 4565, 0x000086B1 }, /* GL_COMPRESSED_RGBA_FXT1_3DFX */
- { 4594, 0x000083F1 }, /* GL_COMPRESSED_RGBA_S3TC_DXT1_EXT */
- { 4627, 0x000083F2 }, /* GL_COMPRESSED_RGBA_S3TC_DXT3_EXT */
- { 4660, 0x000083F3 }, /* GL_COMPRESSED_RGBA_S3TC_DXT5_EXT */
- { 4693, 0x000084ED }, /* GL_COMPRESSED_RGB_ARB */
- { 4715, 0x000086B0 }, /* GL_COMPRESSED_RGB_FXT1_3DFX */
- { 4743, 0x000083F0 }, /* GL_COMPRESSED_RGB_S3TC_DXT1_EXT */
- { 4775, 0x000086A3 }, /* GL_COMPRESSED_TEXTURE_FORMATS */
- { 4805, 0x00008576 }, /* GL_CONSTANT */
- { 4817, 0x00008003 }, /* GL_CONSTANT_ALPHA */
- { 4835, 0x00008003 }, /* GL_CONSTANT_ALPHA_EXT */
- { 4857, 0x00008576 }, /* GL_CONSTANT_ARB */
- { 4873, 0x00001207 }, /* GL_CONSTANT_ATTENUATION */
- { 4897, 0x00008151 }, /* GL_CONSTANT_BORDER_HP */
- { 4919, 0x00008001 }, /* GL_CONSTANT_COLOR */
- { 4937, 0x00008001 }, /* GL_CONSTANT_COLOR_EXT */
- { 4959, 0x00008576 }, /* GL_CONSTANT_EXT */
- { 4975, 0x00008010 }, /* GL_CONVOLUTION_1D */
- { 4993, 0x00008011 }, /* GL_CONVOLUTION_2D */
- { 5011, 0x00008154 }, /* GL_CONVOLUTION_BORDER_COLOR */
- { 5039, 0x00008154 }, /* GL_CONVOLUTION_BORDER_COLOR_HP */
- { 5070, 0x00008013 }, /* GL_CONVOLUTION_BORDER_MODE */
- { 5097, 0x00008013 }, /* GL_CONVOLUTION_BORDER_MODE_EXT */
- { 5128, 0x00008015 }, /* GL_CONVOLUTION_FILTER_BIAS */
- { 5155, 0x00008015 }, /* GL_CONVOLUTION_FILTER_BIAS_EXT */
- { 5186, 0x00008014 }, /* GL_CONVOLUTION_FILTER_SCALE */
- { 5214, 0x00008014 }, /* GL_CONVOLUTION_FILTER_SCALE_EXT */
- { 5246, 0x00008017 }, /* GL_CONVOLUTION_FORMAT */
- { 5268, 0x00008017 }, /* GL_CONVOLUTION_FORMAT_EXT */
- { 5294, 0x00008019 }, /* GL_CONVOLUTION_HEIGHT */
- { 5316, 0x00008019 }, /* GL_CONVOLUTION_HEIGHT_EXT */
- { 5342, 0x00008018 }, /* GL_CONVOLUTION_WIDTH */
- { 5363, 0x00008018 }, /* GL_CONVOLUTION_WIDTH_EXT */
- { 5388, 0x00008862 }, /* GL_COORD_REPLACE */
- { 5405, 0x00008862 }, /* GL_COORD_REPLACE_ARB */
- { 5426, 0x00008862 }, /* GL_COORD_REPLACE_NV */
- { 5446, 0x00001503 }, /* GL_COPY */
- { 5454, 0x0000150C }, /* GL_COPY_INVERTED */
- { 5471, 0x00000706 }, /* GL_COPY_PIXEL_TOKEN */
- { 5491, 0x00000B44 }, /* GL_CULL_FACE */
- { 5504, 0x00000B45 }, /* GL_CULL_FACE_MODE */
- { 5522, 0x000081AA }, /* GL_CULL_VERTEX_EXT */
- { 5541, 0x000081AC }, /* GL_CULL_VERTEX_EYE_POSITION_EXT */
- { 5573, 0x000081AB }, /* GL_CULL_VERTEX_OBJECT_POSITION_EXT */
- { 5608, 0x00008626 }, /* GL_CURRENT_ATTRIB_NV */
- { 5629, 0x00000001 }, /* GL_CURRENT_BIT */
- { 5644, 0x00000B00 }, /* GL_CURRENT_COLOR */
- { 5661, 0x00008453 }, /* GL_CURRENT_FOG_COORD */
- { 5682, 0x00008453 }, /* GL_CURRENT_FOG_COORDINATE */
- { 5708, 0x00000B01 }, /* GL_CURRENT_INDEX */
- { 5725, 0x00008641 }, /* GL_CURRENT_MATRIX_ARB */
- { 5747, 0x00008845 }, /* GL_CURRENT_MATRIX_INDEX_ARB */
- { 5775, 0x00008641 }, /* GL_CURRENT_MATRIX_NV */
- { 5796, 0x00008640 }, /* GL_CURRENT_MATRIX_STACK_DEPTH_ARB */
- { 5830, 0x00008640 }, /* GL_CURRENT_MATRIX_STACK_DEPTH_NV */
- { 5863, 0x00000B02 }, /* GL_CURRENT_NORMAL */
- { 5881, 0x00008843 }, /* GL_CURRENT_PALETTE_MATRIX_ARB */
- { 5911, 0x00008B8D }, /* GL_CURRENT_PROGRAM */
- { 5930, 0x00008865 }, /* GL_CURRENT_QUERY */
- { 5947, 0x00008865 }, /* GL_CURRENT_QUERY_ARB */
- { 5968, 0x00000B04 }, /* GL_CURRENT_RASTER_COLOR */
- { 5992, 0x00000B09 }, /* GL_CURRENT_RASTER_DISTANCE */
- { 6019, 0x00000B05 }, /* GL_CURRENT_RASTER_INDEX */
- { 6043, 0x00000B07 }, /* GL_CURRENT_RASTER_POSITION */
- { 6070, 0x00000B08 }, /* GL_CURRENT_RASTER_POSITION_VALID */
- { 6103, 0x00000B06 }, /* GL_CURRENT_RASTER_TEXTURE_COORDS */
- { 6136, 0x00008459 }, /* GL_CURRENT_SECONDARY_COLOR */
- { 6163, 0x00000B03 }, /* GL_CURRENT_TEXTURE_COORDS */
- { 6189, 0x00008626 }, /* GL_CURRENT_VERTEX_ATTRIB */
- { 6214, 0x00008626 }, /* GL_CURRENT_VERTEX_ATTRIB_ARB */
- { 6243, 0x000086A8 }, /* GL_CURRENT_WEIGHT_ARB */
- { 6265, 0x00000900 }, /* GL_CW */
- { 6271, 0x0000875B }, /* GL_DEBUG_ASSERT_MESA */
- { 6292, 0x00008759 }, /* GL_DEBUG_OBJECT_MESA */
- { 6313, 0x0000875A }, /* GL_DEBUG_PRINT_MESA */
- { 6333, 0x00002101 }, /* GL_DECAL */
- { 6342, 0x00001E03 }, /* GL_DECR */
- { 6350, 0x00008508 }, /* GL_DECR_WRAP */
- { 6363, 0x00008508 }, /* GL_DECR_WRAP_EXT */
- { 6380, 0x00008B80 }, /* GL_DELETE_STATUS */
- { 6397, 0x00001801 }, /* GL_DEPTH */
- { 6406, 0x00008D00 }, /* GL_DEPTH_ATTACHMENT_EXT */
- { 6430, 0x00000D1F }, /* GL_DEPTH_BIAS */
- { 6444, 0x00000D56 }, /* GL_DEPTH_BITS */
- { 6458, 0x00008891 }, /* GL_DEPTH_BOUNDS_EXT */
- { 6478, 0x00008890 }, /* GL_DEPTH_BOUNDS_TEST_EXT */
- { 6503, 0x00000100 }, /* GL_DEPTH_BUFFER_BIT */
- { 6523, 0x0000864F }, /* GL_DEPTH_CLAMP_NV */
- { 6541, 0x00000B73 }, /* GL_DEPTH_CLEAR_VALUE */
- { 6562, 0x00001902 }, /* GL_DEPTH_COMPONENT */
- { 6581, 0x000081A5 }, /* GL_DEPTH_COMPONENT16 */
- { 6602, 0x000081A5 }, /* GL_DEPTH_COMPONENT16_ARB */
- { 6627, 0x000081A5 }, /* GL_DEPTH_COMPONENT16_SGIX */
- { 6653, 0x000081A6 }, /* GL_DEPTH_COMPONENT24 */
- { 6674, 0x000081A6 }, /* GL_DEPTH_COMPONENT24_ARB */
- { 6699, 0x000081A6 }, /* GL_DEPTH_COMPONENT24_SGIX */
- { 6725, 0x000081A7 }, /* GL_DEPTH_COMPONENT32 */
- { 6746, 0x000081A7 }, /* GL_DEPTH_COMPONENT32_ARB */
- { 6771, 0x000081A7 }, /* GL_DEPTH_COMPONENT32_SGIX */
- { 6797, 0x00000B74 }, /* GL_DEPTH_FUNC */
- { 6811, 0x00000B70 }, /* GL_DEPTH_RANGE */
- { 6826, 0x00000D1E }, /* GL_DEPTH_SCALE */
- { 6841, 0x000084F9 }, /* GL_DEPTH_STENCIL_NV */
- { 6861, 0x0000886F }, /* GL_DEPTH_STENCIL_TO_BGRA_NV */
- { 6889, 0x0000886E }, /* GL_DEPTH_STENCIL_TO_RGBA_NV */
- { 6917, 0x00000B71 }, /* GL_DEPTH_TEST */
- { 6931, 0x0000884B }, /* GL_DEPTH_TEXTURE_MODE */
- { 6953, 0x0000884B }, /* GL_DEPTH_TEXTURE_MODE_ARB */
- { 6979, 0x00000B72 }, /* GL_DEPTH_WRITEMASK */
- { 6998, 0x00001201 }, /* GL_DIFFUSE */
- { 7009, 0x00000BD0 }, /* GL_DITHER */
- { 7019, 0x00000A02 }, /* GL_DOMAIN */
- { 7029, 0x00001100 }, /* GL_DONT_CARE */
- { 7042, 0x000086AE }, /* GL_DOT3_RGB */
- { 7054, 0x000086AF }, /* GL_DOT3_RGBA */
- { 7067, 0x000086AF }, /* GL_DOT3_RGBA_ARB */
- { 7084, 0x00008741 }, /* GL_DOT3_RGBA_EXT */
- { 7101, 0x000086AE }, /* GL_DOT3_RGB_ARB */
- { 7117, 0x00008740 }, /* GL_DOT3_RGB_EXT */
- { 7133, 0x0000140A }, /* GL_DOUBLE */
- { 7143, 0x00000C32 }, /* GL_DOUBLEBUFFER */
- { 7159, 0x00000C01 }, /* GL_DRAW_BUFFER */
- { 7174, 0x00008825 }, /* GL_DRAW_BUFFER0 */
- { 7190, 0x00008825 }, /* GL_DRAW_BUFFER0_ARB */
- { 7210, 0x00008825 }, /* GL_DRAW_BUFFER0_ATI */
- { 7230, 0x00008826 }, /* GL_DRAW_BUFFER1 */
- { 7246, 0x0000882F }, /* GL_DRAW_BUFFER10 */
- { 7263, 0x0000882F }, /* GL_DRAW_BUFFER10_ARB */
- { 7284, 0x0000882F }, /* GL_DRAW_BUFFER10_ATI */
- { 7305, 0x00008830 }, /* GL_DRAW_BUFFER11 */
- { 7322, 0x00008830 }, /* GL_DRAW_BUFFER11_ARB */
- { 7343, 0x00008830 }, /* GL_DRAW_BUFFER11_ATI */
- { 7364, 0x00008831 }, /* GL_DRAW_BUFFER12 */
- { 7381, 0x00008831 }, /* GL_DRAW_BUFFER12_ARB */
- { 7402, 0x00008831 }, /* GL_DRAW_BUFFER12_ATI */
- { 7423, 0x00008832 }, /* GL_DRAW_BUFFER13 */
- { 7440, 0x00008832 }, /* GL_DRAW_BUFFER13_ARB */
- { 7461, 0x00008832 }, /* GL_DRAW_BUFFER13_ATI */
- { 7482, 0x00008833 }, /* GL_DRAW_BUFFER14 */
- { 7499, 0x00008833 }, /* GL_DRAW_BUFFER14_ARB */
- { 7520, 0x00008833 }, /* GL_DRAW_BUFFER14_ATI */
- { 7541, 0x00008834 }, /* GL_DRAW_BUFFER15 */
- { 7558, 0x00008834 }, /* GL_DRAW_BUFFER15_ARB */
- { 7579, 0x00008834 }, /* GL_DRAW_BUFFER15_ATI */
- { 7600, 0x00008826 }, /* GL_DRAW_BUFFER1_ARB */
- { 7620, 0x00008826 }, /* GL_DRAW_BUFFER1_ATI */
- { 7640, 0x00008827 }, /* GL_DRAW_BUFFER2 */
- { 7656, 0x00008827 }, /* GL_DRAW_BUFFER2_ARB */
- { 7676, 0x00008827 }, /* GL_DRAW_BUFFER2_ATI */
- { 7696, 0x00008828 }, /* GL_DRAW_BUFFER3 */
- { 7712, 0x00008828 }, /* GL_DRAW_BUFFER3_ARB */
- { 7732, 0x00008828 }, /* GL_DRAW_BUFFER3_ATI */
- { 7752, 0x00008829 }, /* GL_DRAW_BUFFER4 */
- { 7768, 0x00008829 }, /* GL_DRAW_BUFFER4_ARB */
- { 7788, 0x00008829 }, /* GL_DRAW_BUFFER4_ATI */
- { 7808, 0x0000882A }, /* GL_DRAW_BUFFER5 */
- { 7824, 0x0000882A }, /* GL_DRAW_BUFFER5_ARB */
- { 7844, 0x0000882A }, /* GL_DRAW_BUFFER5_ATI */
- { 7864, 0x0000882B }, /* GL_DRAW_BUFFER6 */
- { 7880, 0x0000882B }, /* GL_DRAW_BUFFER6_ARB */
- { 7900, 0x0000882B }, /* GL_DRAW_BUFFER6_ATI */
- { 7920, 0x0000882C }, /* GL_DRAW_BUFFER7 */
- { 7936, 0x0000882C }, /* GL_DRAW_BUFFER7_ARB */
- { 7956, 0x0000882C }, /* GL_DRAW_BUFFER7_ATI */
- { 7976, 0x0000882D }, /* GL_DRAW_BUFFER8 */
- { 7992, 0x0000882D }, /* GL_DRAW_BUFFER8_ARB */
- { 8012, 0x0000882D }, /* GL_DRAW_BUFFER8_ATI */
- { 8032, 0x0000882E }, /* GL_DRAW_BUFFER9 */
- { 8048, 0x0000882E }, /* GL_DRAW_BUFFER9_ARB */
- { 8068, 0x0000882E }, /* GL_DRAW_BUFFER9_ATI */
- { 8088, 0x00008CA6 }, /* GL_DRAW_FRAMEBUFFER_BINDING_EXT */
- { 8120, 0x00008CA9 }, /* GL_DRAW_FRAMEBUFFER_EXT */
- { 8144, 0x00000705 }, /* GL_DRAW_PIXEL_TOKEN */
- { 8164, 0x00000304 }, /* GL_DST_ALPHA */
- { 8177, 0x00000306 }, /* GL_DST_COLOR */
- { 8190, 0x000088EA }, /* GL_DYNAMIC_COPY */
- { 8206, 0x000088EA }, /* GL_DYNAMIC_COPY_ARB */
- { 8226, 0x000088E8 }, /* GL_DYNAMIC_DRAW */
- { 8242, 0x000088E8 }, /* GL_DYNAMIC_DRAW_ARB */
- { 8262, 0x000088E9 }, /* GL_DYNAMIC_READ */
- { 8278, 0x000088E9 }, /* GL_DYNAMIC_READ_ARB */
- { 8298, 0x00000B43 }, /* GL_EDGE_FLAG */
- { 8311, 0x00008079 }, /* GL_EDGE_FLAG_ARRAY */
- { 8330, 0x0000889B }, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */
- { 8364, 0x0000889B }, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB */
- { 8402, 0x00008093 }, /* GL_EDGE_FLAG_ARRAY_POINTER */
- { 8429, 0x0000808C }, /* GL_EDGE_FLAG_ARRAY_STRIDE */
- { 8455, 0x00008893 }, /* GL_ELEMENT_ARRAY_BUFFER */
- { 8479, 0x00008893 }, /* GL_ELEMENT_ARRAY_BUFFER_ARB */
- { 8507, 0x00008895 }, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */
- { 8539, 0x00008895 }, /* GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB */
- { 8575, 0x00001600 }, /* GL_EMISSION */
- { 8587, 0x00002000 }, /* GL_ENABLE_BIT */
- { 8601, 0x00000202 }, /* GL_EQUAL */
- { 8610, 0x00001509 }, /* GL_EQUIV */
- { 8619, 0x00010000 }, /* GL_EVAL_BIT */
- { 8631, 0x00000800 }, /* GL_EXP */
- { 8638, 0x00000801 }, /* GL_EXP2 */
- { 8646, 0x00001F03 }, /* GL_EXTENSIONS */
- { 8660, 0x00002400 }, /* GL_EYE_LINEAR */
- { 8674, 0x00002502 }, /* GL_EYE_PLANE */
- { 8687, 0x0000855C }, /* GL_EYE_PLANE_ABSOLUTE_NV */
- { 8712, 0x0000855B }, /* GL_EYE_RADIAL_NV */
- { 8729, 0x00000000 }, /* GL_FALSE */
- { 8738, 0x00001101 }, /* GL_FASTEST */
- { 8749, 0x00001C01 }, /* GL_FEEDBACK */
- { 8761, 0x00000DF0 }, /* GL_FEEDBACK_BUFFER_POINTER */
- { 8788, 0x00000DF1 }, /* GL_FEEDBACK_BUFFER_SIZE */
- { 8812, 0x00000DF2 }, /* GL_FEEDBACK_BUFFER_TYPE */
- { 8836, 0x00001B02 }, /* GL_FILL */
- { 8844, 0x00001D00 }, /* GL_FLAT */
- { 8852, 0x00001406 }, /* GL_FLOAT */
- { 8861, 0x00008B5A }, /* GL_FLOAT_MAT2 */
- { 8875, 0x00008B5A }, /* GL_FLOAT_MAT2_ARB */
- { 8893, 0x00008B5B }, /* GL_FLOAT_MAT3 */
- { 8907, 0x00008B5B }, /* GL_FLOAT_MAT3_ARB */
- { 8925, 0x00008B5C }, /* GL_FLOAT_MAT4 */
- { 8939, 0x00008B5C }, /* GL_FLOAT_MAT4_ARB */
- { 8957, 0x00008B50 }, /* GL_FLOAT_VEC2 */
- { 8971, 0x00008B50 }, /* GL_FLOAT_VEC2_ARB */
- { 8989, 0x00008B51 }, /* GL_FLOAT_VEC3 */
- { 9003, 0x00008B51 }, /* GL_FLOAT_VEC3_ARB */
- { 9021, 0x00008B52 }, /* GL_FLOAT_VEC4 */
- { 9035, 0x00008B52 }, /* GL_FLOAT_VEC4_ARB */
- { 9053, 0x00000B60 }, /* GL_FOG */
- { 9060, 0x00000080 }, /* GL_FOG_BIT */
- { 9071, 0x00000B66 }, /* GL_FOG_COLOR */
- { 9084, 0x00008451 }, /* GL_FOG_COORD */
- { 9097, 0x00008451 }, /* GL_FOG_COORDINATE */
- { 9115, 0x00008457 }, /* GL_FOG_COORDINATE_ARRAY */
- { 9139, 0x0000889D }, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */
- { 9178, 0x0000889D }, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB */
- { 9221, 0x00008456 }, /* GL_FOG_COORDINATE_ARRAY_POINTER */
- { 9253, 0x00008455 }, /* GL_FOG_COORDINATE_ARRAY_STRIDE */
- { 9284, 0x00008454 }, /* GL_FOG_COORDINATE_ARRAY_TYPE */
- { 9313, 0x00008450 }, /* GL_FOG_COORDINATE_SOURCE */
- { 9338, 0x00008457 }, /* GL_FOG_COORD_ARRAY */
- { 9357, 0x0000889D }, /* GL_FOG_COORD_ARRAY_BUFFER_BINDING */
- { 9391, 0x00008456 }, /* GL_FOG_COORD_ARRAY_POINTER */
- { 9418, 0x00008455 }, /* GL_FOG_COORD_ARRAY_STRIDE */
- { 9444, 0x00008454 }, /* GL_FOG_COORD_ARRAY_TYPE */
- { 9468, 0x00008450 }, /* GL_FOG_COORD_SRC */
- { 9485, 0x00000B62 }, /* GL_FOG_DENSITY */
- { 9500, 0x0000855A }, /* GL_FOG_DISTANCE_MODE_NV */
- { 9524, 0x00000B64 }, /* GL_FOG_END */
- { 9535, 0x00000C54 }, /* GL_FOG_HINT */
- { 9547, 0x00000B61 }, /* GL_FOG_INDEX */
- { 9560, 0x00000B65 }, /* GL_FOG_MODE */
- { 9572, 0x00008198 }, /* GL_FOG_OFFSET_SGIX */
- { 9591, 0x00008199 }, /* GL_FOG_OFFSET_VALUE_SGIX */
- { 9616, 0x00000B63 }, /* GL_FOG_START */
- { 9629, 0x00008452 }, /* GL_FRAGMENT_DEPTH */
- { 9647, 0x00008804 }, /* GL_FRAGMENT_PROGRAM_ARB */
- { 9671, 0x00008B30 }, /* GL_FRAGMENT_SHADER */
- { 9690, 0x00008B30 }, /* GL_FRAGMENT_SHADER_ARB */
- { 9713, 0x00008B8B }, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */
- { 9748, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT */
- { 9790, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT */
- { 9832, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT */
- { 9881, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT */
- { 9933, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT */
- { 9977, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT */
- { 10021, 0x00008CA6 }, /* GL_FRAMEBUFFER_BINDING_EXT */
- { 10048, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE_EXT */
- { 10076, 0x00008D40 }, /* GL_FRAMEBUFFER_EXT */
- { 10095, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT */
- { 10136, 0x00008CD9 }, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT */
- { 10177, 0x00008CDB }, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT */
- { 10219, 0x00008CD8 }, /* GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT */
- { 10270, 0x00008CDA }, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT */
- { 10308, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT */
- { 10357, 0x00008CDC }, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT */
- { 10399, 0x00008CDE }, /* GL_FRAMEBUFFER_STATUS_ERROR_EXT */
- { 10431, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED_EXT */
- { 10462, 0x00000404 }, /* GL_FRONT */
- { 10471, 0x00000408 }, /* GL_FRONT_AND_BACK */
- { 10489, 0x00000B46 }, /* GL_FRONT_FACE */
- { 10503, 0x00000400 }, /* GL_FRONT_LEFT */
- { 10517, 0x00000401 }, /* GL_FRONT_RIGHT */
- { 10532, 0x00008006 }, /* GL_FUNC_ADD */
- { 10544, 0x00008006 }, /* GL_FUNC_ADD_EXT */
- { 10560, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT */
- { 10585, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT_EXT */
- { 10614, 0x0000800A }, /* GL_FUNC_SUBTRACT */
- { 10631, 0x0000800A }, /* GL_FUNC_SUBTRACT_EXT */
- { 10652, 0x00008191 }, /* GL_GENERATE_MIPMAP */
- { 10671, 0x00008192 }, /* GL_GENERATE_MIPMAP_HINT */
- { 10695, 0x00008192 }, /* GL_GENERATE_MIPMAP_HINT_SGIS */
- { 10724, 0x00008191 }, /* GL_GENERATE_MIPMAP_SGIS */
- { 10748, 0x00000206 }, /* GL_GEQUAL */
- { 10758, 0x00008009 }, /* GL_GL_BLEND_EQUATION_RGB */
- { 10783, 0x00008C4A }, /* GL_GL_COMPRESSED_SLUMINANCE */
- { 10811, 0x00008C4B }, /* GL_GL_COMPRESSED_SLUMINANCE_ALPHA */
- { 10845, 0x00008C48 }, /* GL_GL_COMPRESSED_SRGB */
- { 10867, 0x00008C49 }, /* GL_GL_COMPRESSED_SRGB_ALPHA */
- { 10895, 0x0000845F }, /* GL_GL_CURRENT_RASTER_SECONDARY_COLOR */
- { 10932, 0x00008B65 }, /* GL_GL_FLOAT_MAT2x3 */
- { 10951, 0x00008B66 }, /* GL_GL_FLOAT_MAT2x4 */
- { 10970, 0x00008B67 }, /* GL_GL_FLOAT_MAT3x2 */
- { 10989, 0x00008B68 }, /* GL_GL_FLOAT_MAT3x4 */
- { 11008, 0x00008B69 }, /* GL_GL_FLOAT_MAT4x2 */
- { 11027, 0x00008B6A }, /* GL_GL_FLOAT_MAT4x3 */
- { 11046, 0x000088EB }, /* GL_GL_PIXEL_PACK_BUFFER */
- { 11070, 0x000088ED }, /* GL_GL_PIXEL_PACK_BUFFER_BINDING */
- { 11102, 0x000088EC }, /* GL_GL_PIXEL_UNPACK_BUFFER */
- { 11128, 0x000088EF }, /* GL_GL_PIXEL_UNPACK_BUFFER_BINDING */
- { 11162, 0x00008C46 }, /* GL_GL_SLUMINANCE */
- { 11179, 0x00008C47 }, /* GL_GL_SLUMINANCE8 */
- { 11197, 0x00008C45 }, /* GL_GL_SLUMINANCE8_ALPHA8 */
- { 11222, 0x00008C44 }, /* GL_GL_SLUMINANCE_ALPHA */
- { 11245, 0x00008C40 }, /* GL_GL_SRGB */
- { 11256, 0x00008C41 }, /* GL_GL_SRGB8 */
- { 11268, 0x00008C43 }, /* GL_GL_SRGB8_ALPHA8 */
- { 11287, 0x00008C42 }, /* GL_GL_SRGB_ALPHA */
- { 11304, 0x00000204 }, /* GL_GREATER */
- { 11315, 0x00001904 }, /* GL_GREEN */
- { 11324, 0x00000D19 }, /* GL_GREEN_BIAS */
- { 11338, 0x00000D53 }, /* GL_GREEN_BITS */
- { 11352, 0x00000D18 }, /* GL_GREEN_SCALE */
- { 11367, 0x00008000 }, /* GL_HINT_BIT */
- { 11379, 0x00008024 }, /* GL_HISTOGRAM */
- { 11392, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE */
- { 11416, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE_EXT */
- { 11444, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE */
- { 11467, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE_EXT */
- { 11494, 0x00008024 }, /* GL_HISTOGRAM_EXT */
- { 11511, 0x00008027 }, /* GL_HISTOGRAM_FORMAT */
- { 11531, 0x00008027 }, /* GL_HISTOGRAM_FORMAT_EXT */
- { 11555, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE */
- { 11579, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE_EXT */
- { 11607, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE */
- { 11635, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE_EXT */
- { 11667, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE */
- { 11689, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE_EXT */
- { 11715, 0x0000802D }, /* GL_HISTOGRAM_SINK */
- { 11733, 0x0000802D }, /* GL_HISTOGRAM_SINK_EXT */
- { 11755, 0x00008026 }, /* GL_HISTOGRAM_WIDTH */
- { 11774, 0x00008026 }, /* GL_HISTOGRAM_WIDTH_EXT */
- { 11797, 0x0000862A }, /* GL_IDENTITY_NV */
- { 11812, 0x00008150 }, /* GL_IGNORE_BORDER_HP */
- { 11832, 0x00008B9B }, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES */
- { 11872, 0x00008B9A }, /* GL_IMPLEMENTATION_COLOR_READ_TYPE_OES */
- { 11910, 0x00001E02 }, /* GL_INCR */
- { 11918, 0x00008507 }, /* GL_INCR_WRAP */
- { 11931, 0x00008507 }, /* GL_INCR_WRAP_EXT */
- { 11948, 0x00008077 }, /* GL_INDEX_ARRAY */
- { 11963, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING */
- { 11993, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING_ARB */
- { 12027, 0x00008091 }, /* GL_INDEX_ARRAY_POINTER */
- { 12050, 0x00008086 }, /* GL_INDEX_ARRAY_STRIDE */
- { 12072, 0x00008085 }, /* GL_INDEX_ARRAY_TYPE */
- { 12092, 0x00000D51 }, /* GL_INDEX_BITS */
- { 12106, 0x00000C20 }, /* GL_INDEX_CLEAR_VALUE */
- { 12127, 0x00000BF1 }, /* GL_INDEX_LOGIC_OP */
- { 12145, 0x00000C30 }, /* GL_INDEX_MODE */
- { 12159, 0x00000D13 }, /* GL_INDEX_OFFSET */
- { 12175, 0x00000D12 }, /* GL_INDEX_SHIFT */
- { 12190, 0x00000C21 }, /* GL_INDEX_WRITEMASK */
- { 12209, 0x00008B84 }, /* GL_INFO_LOG_LENGTH */
- { 12228, 0x00001404 }, /* GL_INT */
- { 12235, 0x00008049 }, /* GL_INTENSITY */
- { 12248, 0x0000804C }, /* GL_INTENSITY12 */
- { 12263, 0x0000804C }, /* GL_INTENSITY12_EXT */
- { 12282, 0x0000804D }, /* GL_INTENSITY16 */
- { 12297, 0x0000804D }, /* GL_INTENSITY16_EXT */
- { 12316, 0x0000804A }, /* GL_INTENSITY4 */
- { 12330, 0x0000804A }, /* GL_INTENSITY4_EXT */
- { 12348, 0x0000804B }, /* GL_INTENSITY8 */
- { 12362, 0x0000804B }, /* GL_INTENSITY8_EXT */
- { 12380, 0x00008049 }, /* GL_INTENSITY_EXT */
- { 12397, 0x00008575 }, /* GL_INTERPOLATE */
- { 12412, 0x00008575 }, /* GL_INTERPOLATE_ARB */
- { 12431, 0x00008575 }, /* GL_INTERPOLATE_EXT */
- { 12450, 0x00008B53 }, /* GL_INT_VEC2 */
- { 12462, 0x00008B53 }, /* GL_INT_VEC2_ARB */
- { 12478, 0x00008B54 }, /* GL_INT_VEC3 */
- { 12490, 0x00008B54 }, /* GL_INT_VEC3_ARB */
- { 12506, 0x00008B55 }, /* GL_INT_VEC4 */
- { 12518, 0x00008B55 }, /* GL_INT_VEC4_ARB */
- { 12534, 0x00000500 }, /* GL_INVALID_ENUM */
- { 12550, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION_EXT */
- { 12587, 0x00000502 }, /* GL_INVALID_OPERATION */
- { 12608, 0x00000501 }, /* GL_INVALID_VALUE */
- { 12625, 0x0000862B }, /* GL_INVERSE_NV */
- { 12639, 0x0000862D }, /* GL_INVERSE_TRANSPOSE_NV */
- { 12663, 0x0000150A }, /* GL_INVERT */
- { 12673, 0x00001E00 }, /* GL_KEEP */
- { 12681, 0x00000406 }, /* GL_LEFT */
- { 12689, 0x00000203 }, /* GL_LEQUAL */
- { 12699, 0x00000201 }, /* GL_LESS */
- { 12707, 0x00004000 }, /* GL_LIGHT0 */
- { 12717, 0x00004001 }, /* GL_LIGHT1 */
- { 12727, 0x00004002 }, /* GL_LIGHT2 */
- { 12737, 0x00004003 }, /* GL_LIGHT3 */
- { 12747, 0x00004004 }, /* GL_LIGHT4 */
- { 12757, 0x00004005 }, /* GL_LIGHT5 */
- { 12767, 0x00004006 }, /* GL_LIGHT6 */
- { 12777, 0x00004007 }, /* GL_LIGHT7 */
- { 12787, 0x00000B50 }, /* GL_LIGHTING */
- { 12799, 0x00000040 }, /* GL_LIGHTING_BIT */
- { 12815, 0x00000B53 }, /* GL_LIGHT_MODEL_AMBIENT */
- { 12838, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL */
- { 12867, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL_EXT */
- { 12900, 0x00000B51 }, /* GL_LIGHT_MODEL_LOCAL_VIEWER */
- { 12928, 0x00000B52 }, /* GL_LIGHT_MODEL_TWO_SIDE */
- { 12952, 0x00001B01 }, /* GL_LINE */
- { 12960, 0x00002601 }, /* GL_LINEAR */
- { 12970, 0x00001208 }, /* GL_LINEAR_ATTENUATION */
- { 12992, 0x00008170 }, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */
- { 13022, 0x0000844F }, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */
- { 13053, 0x00002703 }, /* GL_LINEAR_MIPMAP_LINEAR */
- { 13077, 0x00002701 }, /* GL_LINEAR_MIPMAP_NEAREST */
- { 13102, 0x00000001 }, /* GL_LINES */
- { 13111, 0x00000004 }, /* GL_LINE_BIT */
- { 13123, 0x00000002 }, /* GL_LINE_LOOP */
- { 13136, 0x00000707 }, /* GL_LINE_RESET_TOKEN */
- { 13156, 0x00000B20 }, /* GL_LINE_SMOOTH */
- { 13171, 0x00000C52 }, /* GL_LINE_SMOOTH_HINT */
- { 13191, 0x00000B24 }, /* GL_LINE_STIPPLE */
- { 13207, 0x00000B25 }, /* GL_LINE_STIPPLE_PATTERN */
- { 13231, 0x00000B26 }, /* GL_LINE_STIPPLE_REPEAT */
- { 13254, 0x00000003 }, /* GL_LINE_STRIP */
- { 13268, 0x00000702 }, /* GL_LINE_TOKEN */
- { 13282, 0x00000B21 }, /* GL_LINE_WIDTH */
- { 13296, 0x00000B23 }, /* GL_LINE_WIDTH_GRANULARITY */
- { 13322, 0x00000B22 }, /* GL_LINE_WIDTH_RANGE */
- { 13342, 0x00008B82 }, /* GL_LINK_STATUS */
- { 13357, 0x00000B32 }, /* GL_LIST_BASE */
- { 13370, 0x00020000 }, /* GL_LIST_BIT */
- { 13382, 0x00000B33 }, /* GL_LIST_INDEX */
- { 13396, 0x00000B30 }, /* GL_LIST_MODE */
- { 13409, 0x00000101 }, /* GL_LOAD */
- { 13417, 0x00000BF1 }, /* GL_LOGIC_OP */
- { 13429, 0x00000BF0 }, /* GL_LOGIC_OP_MODE */
- { 13446, 0x00008CA1 }, /* GL_LOWER_LEFT */
- { 13460, 0x00001909 }, /* GL_LUMINANCE */
- { 13473, 0x00008041 }, /* GL_LUMINANCE12 */
- { 13488, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12 */
- { 13511, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12_EXT */
- { 13538, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4 */
- { 13560, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4_EXT */
- { 13586, 0x00008041 }, /* GL_LUMINANCE12_EXT */
- { 13605, 0x00008042 }, /* GL_LUMINANCE16 */
- { 13620, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16 */
- { 13643, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16_EXT */
- { 13670, 0x00008042 }, /* GL_LUMINANCE16_EXT */
- { 13689, 0x0000803F }, /* GL_LUMINANCE4 */
- { 13703, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4 */
- { 13724, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4_EXT */
- { 13749, 0x0000803F }, /* GL_LUMINANCE4_EXT */
- { 13767, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2 */
- { 13788, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2_EXT */
- { 13813, 0x00008040 }, /* GL_LUMINANCE8 */
- { 13827, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8 */
- { 13848, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8_EXT */
- { 13873, 0x00008040 }, /* GL_LUMINANCE8_EXT */
- { 13891, 0x0000190A }, /* GL_LUMINANCE_ALPHA */
- { 13910, 0x00000D90 }, /* GL_MAP1_COLOR_4 */
- { 13926, 0x00000DD0 }, /* GL_MAP1_GRID_DOMAIN */
- { 13946, 0x00000DD1 }, /* GL_MAP1_GRID_SEGMENTS */
- { 13968, 0x00000D91 }, /* GL_MAP1_INDEX */
- { 13982, 0x00000D92 }, /* GL_MAP1_NORMAL */
- { 13997, 0x00000D93 }, /* GL_MAP1_TEXTURE_COORD_1 */
- { 14021, 0x00000D94 }, /* GL_MAP1_TEXTURE_COORD_2 */
- { 14045, 0x00000D95 }, /* GL_MAP1_TEXTURE_COORD_3 */
- { 14069, 0x00000D96 }, /* GL_MAP1_TEXTURE_COORD_4 */
- { 14093, 0x00000D97 }, /* GL_MAP1_VERTEX_3 */
- { 14110, 0x00000D98 }, /* GL_MAP1_VERTEX_4 */
- { 14127, 0x00008660 }, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */
- { 14155, 0x0000866A }, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */
- { 14184, 0x0000866B }, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */
- { 14213, 0x0000866C }, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */
- { 14242, 0x0000866D }, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */
- { 14271, 0x0000866E }, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */
- { 14300, 0x0000866F }, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */
- { 14329, 0x00008661 }, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */
- { 14357, 0x00008662 }, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */
- { 14385, 0x00008663 }, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */
- { 14413, 0x00008664 }, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */
- { 14441, 0x00008665 }, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */
- { 14469, 0x00008666 }, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */
- { 14497, 0x00008667 }, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */
- { 14525, 0x00008668 }, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */
- { 14553, 0x00008669 }, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */
- { 14581, 0x00000DB0 }, /* GL_MAP2_COLOR_4 */
- { 14597, 0x00000DD2 }, /* GL_MAP2_GRID_DOMAIN */
- { 14617, 0x00000DD3 }, /* GL_MAP2_GRID_SEGMENTS */
- { 14639, 0x00000DB1 }, /* GL_MAP2_INDEX */
- { 14653, 0x00000DB2 }, /* GL_MAP2_NORMAL */
- { 14668, 0x00000DB3 }, /* GL_MAP2_TEXTURE_COORD_1 */
- { 14692, 0x00000DB4 }, /* GL_MAP2_TEXTURE_COORD_2 */
- { 14716, 0x00000DB5 }, /* GL_MAP2_TEXTURE_COORD_3 */
- { 14740, 0x00000DB6 }, /* GL_MAP2_TEXTURE_COORD_4 */
- { 14764, 0x00000DB7 }, /* GL_MAP2_VERTEX_3 */
- { 14781, 0x00000DB8 }, /* GL_MAP2_VERTEX_4 */
- { 14798, 0x00008670 }, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */
- { 14826, 0x0000867A }, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */
- { 14855, 0x0000867B }, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */
- { 14884, 0x0000867C }, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */
- { 14913, 0x0000867D }, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */
- { 14942, 0x0000867E }, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */
- { 14971, 0x0000867F }, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */
- { 15000, 0x00008671 }, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */
- { 15028, 0x00008672 }, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */
- { 15056, 0x00008673 }, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */
- { 15084, 0x00008674 }, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */
- { 15112, 0x00008675 }, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */
- { 15140, 0x00008676 }, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */
- { 15168, 0x00008677 }, /* GL_MAP2_VERTEX_ATTRIB7_4_NV */
- { 15196, 0x00008678 }, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */
- { 15224, 0x00008679 }, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */
- { 15252, 0x00000D10 }, /* GL_MAP_COLOR */
- { 15265, 0x00000D11 }, /* GL_MAP_STENCIL */
- { 15280, 0x000088C0 }, /* GL_MATRIX0_ARB */
- { 15295, 0x00008630 }, /* GL_MATRIX0_NV */
- { 15309, 0x000088CA }, /* GL_MATRIX10_ARB */
- { 15325, 0x000088CB }, /* GL_MATRIX11_ARB */
- { 15341, 0x000088CC }, /* GL_MATRIX12_ARB */
- { 15357, 0x000088CD }, /* GL_MATRIX13_ARB */
- { 15373, 0x000088CE }, /* GL_MATRIX14_ARB */
- { 15389, 0x000088CF }, /* GL_MATRIX15_ARB */
- { 15405, 0x000088D0 }, /* GL_MATRIX16_ARB */
- { 15421, 0x000088D1 }, /* GL_MATRIX17_ARB */
- { 15437, 0x000088D2 }, /* GL_MATRIX18_ARB */
- { 15453, 0x000088D3 }, /* GL_MATRIX19_ARB */
- { 15469, 0x000088C1 }, /* GL_MATRIX1_ARB */
- { 15484, 0x00008631 }, /* GL_MATRIX1_NV */
- { 15498, 0x000088D4 }, /* GL_MATRIX20_ARB */
- { 15514, 0x000088D5 }, /* GL_MATRIX21_ARB */
- { 15530, 0x000088D6 }, /* GL_MATRIX22_ARB */
- { 15546, 0x000088D7 }, /* GL_MATRIX23_ARB */
- { 15562, 0x000088D8 }, /* GL_MATRIX24_ARB */
- { 15578, 0x000088D9 }, /* GL_MATRIX25_ARB */
- { 15594, 0x000088DA }, /* GL_MATRIX26_ARB */
- { 15610, 0x000088DB }, /* GL_MATRIX27_ARB */
- { 15626, 0x000088DC }, /* GL_MATRIX28_ARB */
- { 15642, 0x000088DD }, /* GL_MATRIX29_ARB */
- { 15658, 0x000088C2 }, /* GL_MATRIX2_ARB */
- { 15673, 0x00008632 }, /* GL_MATRIX2_NV */
- { 15687, 0x000088DE }, /* GL_MATRIX30_ARB */
- { 15703, 0x000088DF }, /* GL_MATRIX31_ARB */
- { 15719, 0x000088C3 }, /* GL_MATRIX3_ARB */
- { 15734, 0x00008633 }, /* GL_MATRIX3_NV */
- { 15748, 0x000088C4 }, /* GL_MATRIX4_ARB */
- { 15763, 0x00008634 }, /* GL_MATRIX4_NV */
- { 15777, 0x000088C5 }, /* GL_MATRIX5_ARB */
- { 15792, 0x00008635 }, /* GL_MATRIX5_NV */
- { 15806, 0x000088C6 }, /* GL_MATRIX6_ARB */
- { 15821, 0x00008636 }, /* GL_MATRIX6_NV */
- { 15835, 0x000088C7 }, /* GL_MATRIX7_ARB */
- { 15850, 0x00008637 }, /* GL_MATRIX7_NV */
- { 15864, 0x000088C8 }, /* GL_MATRIX8_ARB */
- { 15879, 0x000088C9 }, /* GL_MATRIX9_ARB */
- { 15894, 0x00008844 }, /* GL_MATRIX_INDEX_ARRAY_ARB */
- { 15920, 0x00008849 }, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */
- { 15954, 0x00008846 }, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */
- { 15985, 0x00008848 }, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */
- { 16018, 0x00008847 }, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */
- { 16049, 0x00000BA0 }, /* GL_MATRIX_MODE */
- { 16064, 0x00008840 }, /* GL_MATRIX_PALETTE_ARB */
- { 16086, 0x00008008 }, /* GL_MAX */
- { 16093, 0x00008073 }, /* GL_MAX_3D_TEXTURE_SIZE */
- { 16116, 0x000088FF }, /* GL_MAX_ARRAY_TEXTURE_LAYERS_EXT */
- { 16148, 0x00000D35 }, /* GL_MAX_ATTRIB_STACK_DEPTH */
- { 16174, 0x00000D3B }, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */
- { 16207, 0x00008177 }, /* GL_MAX_CLIPMAP_DEPTH_SGIX */
- { 16233, 0x00008178 }, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */
- { 16267, 0x00000D32 }, /* GL_MAX_CLIP_PLANES */
- { 16286, 0x00008CDF }, /* GL_MAX_COLOR_ATTACHMENTS_EXT */
- { 16315, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */
- { 16347, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI */
- { 16383, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */
- { 16419, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB */
- { 16459, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT */
- { 16485, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT_EXT */
- { 16515, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH */
- { 16540, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH_EXT */
- { 16569, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */
- { 16598, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB */
- { 16631, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS */
- { 16651, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ARB */
- { 16675, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ATI */
- { 16699, 0x000080E9 }, /* GL_MAX_ELEMENTS_INDICES */
- { 16723, 0x000080E8 }, /* GL_MAX_ELEMENTS_VERTICES */
- { 16748, 0x00000D30 }, /* GL_MAX_EVAL_ORDER */
- { 16766, 0x00008008 }, /* GL_MAX_EXT */
- { 16777, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */
- { 16812, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB */
- { 16851, 0x00000D31 }, /* GL_MAX_LIGHTS */
- { 16865, 0x00000B31 }, /* GL_MAX_LIST_NESTING */
- { 16885, 0x00008841 }, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */
- { 16923, 0x00000D36 }, /* GL_MAX_MODELVIEW_STACK_DEPTH */
- { 16952, 0x00000D37 }, /* GL_MAX_NAME_STACK_DEPTH */
- { 16976, 0x00008842 }, /* GL_MAX_PALETTE_MATRICES_ARB */
- { 17004, 0x00000D34 }, /* GL_MAX_PIXEL_MAP_TABLE */
- { 17027, 0x000088B1 }, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */
- { 17064, 0x0000880B }, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */
- { 17100, 0x000088AD }, /* GL_MAX_PROGRAM_ATTRIBS_ARB */
- { 17127, 0x000088F5 }, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */
- { 17156, 0x000088B5 }, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */
- { 17190, 0x000088F4 }, /* GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV */
- { 17226, 0x000088F6 }, /* GL_MAX_PROGRAM_IF_DEPTH_NV */
- { 17253, 0x000088A1 }, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */
- { 17285, 0x000088B4 }, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */
- { 17321, 0x000088F8 }, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */
- { 17350, 0x000088F7 }, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */
- { 17379, 0x0000862F }, /* GL_MAX_PROGRAM_MATRICES_ARB */
- { 17407, 0x0000862E }, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */
- { 17445, 0x000088B3 }, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */
- { 17489, 0x0000880E }, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */
- { 17532, 0x000088AF }, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */
- { 17566, 0x000088A3 }, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */
- { 17605, 0x000088AB }, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */
- { 17642, 0x000088A7 }, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */
- { 17680, 0x00008810 }, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */
- { 17723, 0x0000880F }, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */
- { 17766, 0x000088A9 }, /* GL_MAX_PROGRAM_PARAMETERS_ARB */
- { 17796, 0x000088A5 }, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */
- { 17827, 0x0000880D }, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */
- { 17863, 0x0000880C }, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */
- { 17899, 0x00000D38 }, /* GL_MAX_PROJECTION_STACK_DEPTH */
- { 17929, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB */
- { 17963, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_NV */
- { 17996, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE_EXT */
- { 18025, 0x00008504 }, /* GL_MAX_SHININESS_NV */
- { 18045, 0x00008505 }, /* GL_MAX_SPOT_EXPONENT_NV */
- { 18069, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS */
- { 18091, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS_ARB */
- { 18117, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS */
- { 18144, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS_ARB */
- { 18175, 0x000084FD }, /* GL_MAX_TEXTURE_LOD_BIAS */
- { 18199, 0x000084FF }, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */
- { 18233, 0x00000D33 }, /* GL_MAX_TEXTURE_SIZE */
- { 18253, 0x00000D39 }, /* GL_MAX_TEXTURE_STACK_DEPTH */
- { 18280, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS */
- { 18301, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS_ARB */
- { 18326, 0x0000862F }, /* GL_MAX_TRACK_MATRICES_NV */
- { 18351, 0x0000862E }, /* GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV */
- { 18386, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS */
- { 18408, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS_ARB */
- { 18434, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS */
- { 18456, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS_ARB */
- { 18482, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */
- { 18516, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB */
- { 18554, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */
- { 18587, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB */
- { 18624, 0x000086A4 }, /* GL_MAX_VERTEX_UNITS_ARB */
- { 18648, 0x00000D3A }, /* GL_MAX_VIEWPORT_DIMS */
- { 18669, 0x00008007 }, /* GL_MIN */
- { 18676, 0x0000802E }, /* GL_MINMAX */
- { 18686, 0x0000802E }, /* GL_MINMAX_EXT */
- { 18700, 0x0000802F }, /* GL_MINMAX_FORMAT */
- { 18717, 0x0000802F }, /* GL_MINMAX_FORMAT_EXT */
- { 18738, 0x00008030 }, /* GL_MINMAX_SINK */
- { 18753, 0x00008030 }, /* GL_MINMAX_SINK_EXT */
- { 18772, 0x00008007 }, /* GL_MIN_EXT */
- { 18783, 0x00008370 }, /* GL_MIRRORED_REPEAT */
- { 18802, 0x00008370 }, /* GL_MIRRORED_REPEAT_ARB */
- { 18825, 0x00008370 }, /* GL_MIRRORED_REPEAT_IBM */
- { 18848, 0x00008742 }, /* GL_MIRROR_CLAMP_ATI */
- { 18868, 0x00008742 }, /* GL_MIRROR_CLAMP_EXT */
- { 18888, 0x00008912 }, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */
- { 18918, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_ATI */
- { 18946, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */
- { 18974, 0x00001700 }, /* GL_MODELVIEW */
- { 18987, 0x00001700 }, /* GL_MODELVIEW0_ARB */
- { 19005, 0x0000872A }, /* GL_MODELVIEW10_ARB */
- { 19024, 0x0000872B }, /* GL_MODELVIEW11_ARB */
- { 19043, 0x0000872C }, /* GL_MODELVIEW12_ARB */
- { 19062, 0x0000872D }, /* GL_MODELVIEW13_ARB */
- { 19081, 0x0000872E }, /* GL_MODELVIEW14_ARB */
- { 19100, 0x0000872F }, /* GL_MODELVIEW15_ARB */
- { 19119, 0x00008730 }, /* GL_MODELVIEW16_ARB */
- { 19138, 0x00008731 }, /* GL_MODELVIEW17_ARB */
- { 19157, 0x00008732 }, /* GL_MODELVIEW18_ARB */
- { 19176, 0x00008733 }, /* GL_MODELVIEW19_ARB */
- { 19195, 0x0000850A }, /* GL_MODELVIEW1_ARB */
- { 19213, 0x00008734 }, /* GL_MODELVIEW20_ARB */
- { 19232, 0x00008735 }, /* GL_MODELVIEW21_ARB */
- { 19251, 0x00008736 }, /* GL_MODELVIEW22_ARB */
- { 19270, 0x00008737 }, /* GL_MODELVIEW23_ARB */
- { 19289, 0x00008738 }, /* GL_MODELVIEW24_ARB */
- { 19308, 0x00008739 }, /* GL_MODELVIEW25_ARB */
- { 19327, 0x0000873A }, /* GL_MODELVIEW26_ARB */
- { 19346, 0x0000873B }, /* GL_MODELVIEW27_ARB */
- { 19365, 0x0000873C }, /* GL_MODELVIEW28_ARB */
- { 19384, 0x0000873D }, /* GL_MODELVIEW29_ARB */
- { 19403, 0x00008722 }, /* GL_MODELVIEW2_ARB */
- { 19421, 0x0000873E }, /* GL_MODELVIEW30_ARB */
- { 19440, 0x0000873F }, /* GL_MODELVIEW31_ARB */
- { 19459, 0x00008723 }, /* GL_MODELVIEW3_ARB */
- { 19477, 0x00008724 }, /* GL_MODELVIEW4_ARB */
- { 19495, 0x00008725 }, /* GL_MODELVIEW5_ARB */
- { 19513, 0x00008726 }, /* GL_MODELVIEW6_ARB */
- { 19531, 0x00008727 }, /* GL_MODELVIEW7_ARB */
- { 19549, 0x00008728 }, /* GL_MODELVIEW8_ARB */
- { 19567, 0x00008729 }, /* GL_MODELVIEW9_ARB */
- { 19585, 0x00000BA6 }, /* GL_MODELVIEW_MATRIX */
- { 19605, 0x00008629 }, /* GL_MODELVIEW_PROJECTION_NV */
- { 19632, 0x00000BA3 }, /* GL_MODELVIEW_STACK_DEPTH */
- { 19657, 0x00002100 }, /* GL_MODULATE */
- { 19669, 0x00008744 }, /* GL_MODULATE_ADD_ATI */
- { 19689, 0x00008745 }, /* GL_MODULATE_SIGNED_ADD_ATI */
- { 19716, 0x00008746 }, /* GL_MODULATE_SUBTRACT_ATI */
- { 19741, 0x00000103 }, /* GL_MULT */
- { 19749, 0x0000809D }, /* GL_MULTISAMPLE */
- { 19764, 0x000086B2 }, /* GL_MULTISAMPLE_3DFX */
- { 19784, 0x0000809D }, /* GL_MULTISAMPLE_ARB */
- { 19803, 0x20000000 }, /* GL_MULTISAMPLE_BIT */
- { 19822, 0x20000000 }, /* GL_MULTISAMPLE_BIT_3DFX */
- { 19846, 0x20000000 }, /* GL_MULTISAMPLE_BIT_ARB */
- { 19869, 0x00008534 }, /* GL_MULTISAMPLE_FILTER_HINT_NV */
- { 19899, 0x00002A25 }, /* GL_N3F_V3F */
- { 19910, 0x00000D70 }, /* GL_NAME_STACK_DEPTH */
- { 19930, 0x0000150E }, /* GL_NAND */
- { 19938, 0x00002600 }, /* GL_NEAREST */
- { 19949, 0x0000844E }, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */
- { 19980, 0x0000844D }, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */
- { 20012, 0x00002702 }, /* GL_NEAREST_MIPMAP_LINEAR */
- { 20037, 0x00002700 }, /* GL_NEAREST_MIPMAP_NEAREST */
- { 20063, 0x00000200 }, /* GL_NEVER */
- { 20072, 0x00001102 }, /* GL_NICEST */
- { 20082, 0x00000000 }, /* GL_NONE */
- { 20090, 0x00001505 }, /* GL_NOOP */
- { 20098, 0x00001508 }, /* GL_NOR */
- { 20105, 0x00000BA1 }, /* GL_NORMALIZE */
- { 20118, 0x00008075 }, /* GL_NORMAL_ARRAY */
- { 20134, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING */
- { 20165, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING_ARB */
- { 20200, 0x0000808F }, /* GL_NORMAL_ARRAY_POINTER */
- { 20224, 0x0000807F }, /* GL_NORMAL_ARRAY_STRIDE */
- { 20247, 0x0000807E }, /* GL_NORMAL_ARRAY_TYPE */
- { 20268, 0x00008511 }, /* GL_NORMAL_MAP */
- { 20282, 0x00008511 }, /* GL_NORMAL_MAP_ARB */
- { 20300, 0x00008511 }, /* GL_NORMAL_MAP_NV */
- { 20317, 0x00000205 }, /* GL_NOTEQUAL */
- { 20329, 0x00000000 }, /* GL_NO_ERROR */
- { 20341, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */
- { 20375, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB */
- { 20413, 0x00008B89 }, /* GL_OBJECT_ACTIVE_ATTRIBUTES_ARB */
- { 20445, 0x00008B8A }, /* GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB */
- { 20487, 0x00008B86 }, /* GL_OBJECT_ACTIVE_UNIFORMS_ARB */
- { 20517, 0x00008B87 }, /* GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB */
- { 20557, 0x00008B85 }, /* GL_OBJECT_ATTACHED_OBJECTS_ARB */
- { 20588, 0x00008B81 }, /* GL_OBJECT_COMPILE_STATUS_ARB */
- { 20617, 0x00008B80 }, /* GL_OBJECT_DELETE_STATUS_ARB */
- { 20645, 0x00008B84 }, /* GL_OBJECT_INFO_LOG_LENGTH_ARB */
- { 20675, 0x00002401 }, /* GL_OBJECT_LINEAR */
- { 20692, 0x00008B82 }, /* GL_OBJECT_LINK_STATUS_ARB */
- { 20718, 0x00002501 }, /* GL_OBJECT_PLANE */
- { 20734, 0x00008B88 }, /* GL_OBJECT_SHADER_SOURCE_LENGTH_ARB */
- { 20769, 0x00008B4F }, /* GL_OBJECT_SUBTYPE_ARB */
- { 20791, 0x00008B4E }, /* GL_OBJECT_TYPE_ARB */
- { 20810, 0x00008B83 }, /* GL_OBJECT_VALIDATE_STATUS_ARB */
- { 20840, 0x00008165 }, /* GL_OCCLUSION_TEST_HP */
- { 20861, 0x00008166 }, /* GL_OCCLUSION_TEST_RESULT_HP */
- { 20889, 0x00000001 }, /* GL_ONE */
- { 20896, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA */
- { 20924, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA_EXT */
- { 20956, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR */
- { 20984, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR_EXT */
- { 21016, 0x00000305 }, /* GL_ONE_MINUS_DST_ALPHA */
- { 21039, 0x00000307 }, /* GL_ONE_MINUS_DST_COLOR */
- { 21062, 0x00000303 }, /* GL_ONE_MINUS_SRC_ALPHA */
- { 21085, 0x00000301 }, /* GL_ONE_MINUS_SRC_COLOR */
- { 21108, 0x00008598 }, /* GL_OPERAND0_ALPHA */
- { 21126, 0x00008598 }, /* GL_OPERAND0_ALPHA_ARB */
- { 21148, 0x00008598 }, /* GL_OPERAND0_ALPHA_EXT */
- { 21170, 0x00008590 }, /* GL_OPERAND0_RGB */
- { 21186, 0x00008590 }, /* GL_OPERAND0_RGB_ARB */
- { 21206, 0x00008590 }, /* GL_OPERAND0_RGB_EXT */
- { 21226, 0x00008599 }, /* GL_OPERAND1_ALPHA */
- { 21244, 0x00008599 }, /* GL_OPERAND1_ALPHA_ARB */
- { 21266, 0x00008599 }, /* GL_OPERAND1_ALPHA_EXT */
- { 21288, 0x00008591 }, /* GL_OPERAND1_RGB */
- { 21304, 0x00008591 }, /* GL_OPERAND1_RGB_ARB */
- { 21324, 0x00008591 }, /* GL_OPERAND1_RGB_EXT */
- { 21344, 0x0000859A }, /* GL_OPERAND2_ALPHA */
- { 21362, 0x0000859A }, /* GL_OPERAND2_ALPHA_ARB */
- { 21384, 0x0000859A }, /* GL_OPERAND2_ALPHA_EXT */
- { 21406, 0x00008592 }, /* GL_OPERAND2_RGB */
- { 21422, 0x00008592 }, /* GL_OPERAND2_RGB_ARB */
- { 21442, 0x00008592 }, /* GL_OPERAND2_RGB_EXT */
- { 21462, 0x0000859B }, /* GL_OPERAND3_ALPHA_NV */
- { 21483, 0x00008593 }, /* GL_OPERAND3_RGB_NV */
- { 21502, 0x00001507 }, /* GL_OR */
- { 21508, 0x00000A01 }, /* GL_ORDER */
- { 21517, 0x0000150D }, /* GL_OR_INVERTED */
- { 21532, 0x0000150B }, /* GL_OR_REVERSE */
- { 21546, 0x00000505 }, /* GL_OUT_OF_MEMORY */
- { 21563, 0x00000D05 }, /* GL_PACK_ALIGNMENT */
- { 21581, 0x0000806C }, /* GL_PACK_IMAGE_HEIGHT */
- { 21602, 0x00008758 }, /* GL_PACK_INVERT_MESA */
- { 21622, 0x00000D01 }, /* GL_PACK_LSB_FIRST */
- { 21640, 0x00000D02 }, /* GL_PACK_ROW_LENGTH */
- { 21659, 0x0000806B }, /* GL_PACK_SKIP_IMAGES */
- { 21679, 0x00000D04 }, /* GL_PACK_SKIP_PIXELS */
- { 21699, 0x00000D03 }, /* GL_PACK_SKIP_ROWS */
- { 21717, 0x00000D00 }, /* GL_PACK_SWAP_BYTES */
- { 21736, 0x00008B92 }, /* GL_PALETTE4_R5_G6_B5_OES */
- { 21761, 0x00008B94 }, /* GL_PALETTE4_RGB5_A1_OES */
- { 21785, 0x00008B90 }, /* GL_PALETTE4_RGB8_OES */
- { 21806, 0x00008B93 }, /* GL_PALETTE4_RGBA4_OES */
- { 21828, 0x00008B91 }, /* GL_PALETTE4_RGBA8_OES */
- { 21850, 0x00008B97 }, /* GL_PALETTE8_R5_G6_B5_OES */
- { 21875, 0x00008B99 }, /* GL_PALETTE8_RGB5_A1_OES */
- { 21899, 0x00008B95 }, /* GL_PALETTE8_RGB8_OES */
- { 21920, 0x00008B98 }, /* GL_PALETTE8_RGBA4_OES */
- { 21942, 0x00008B96 }, /* GL_PALETTE8_RGBA8_OES */
- { 21964, 0x00000700 }, /* GL_PASS_THROUGH_TOKEN */
- { 21986, 0x00000C50 }, /* GL_PERSPECTIVE_CORRECTION_HINT */
- { 22017, 0x00000C79 }, /* GL_PIXEL_MAP_A_TO_A */
- { 22037, 0x00000CB9 }, /* GL_PIXEL_MAP_A_TO_A_SIZE */
- { 22062, 0x00000C78 }, /* GL_PIXEL_MAP_B_TO_B */
- { 22082, 0x00000CB8 }, /* GL_PIXEL_MAP_B_TO_B_SIZE */
- { 22107, 0x00000C77 }, /* GL_PIXEL_MAP_G_TO_G */
- { 22127, 0x00000CB7 }, /* GL_PIXEL_MAP_G_TO_G_SIZE */
- { 22152, 0x00000C75 }, /* GL_PIXEL_MAP_I_TO_A */
- { 22172, 0x00000CB5 }, /* GL_PIXEL_MAP_I_TO_A_SIZE */
- { 22197, 0x00000C74 }, /* GL_PIXEL_MAP_I_TO_B */
- { 22217, 0x00000CB4 }, /* GL_PIXEL_MAP_I_TO_B_SIZE */
- { 22242, 0x00000C73 }, /* GL_PIXEL_MAP_I_TO_G */
- { 22262, 0x00000CB3 }, /* GL_PIXEL_MAP_I_TO_G_SIZE */
- { 22287, 0x00000C70 }, /* GL_PIXEL_MAP_I_TO_I */
- { 22307, 0x00000CB0 }, /* GL_PIXEL_MAP_I_TO_I_SIZE */
- { 22332, 0x00000C72 }, /* GL_PIXEL_MAP_I_TO_R */
- { 22352, 0x00000CB2 }, /* GL_PIXEL_MAP_I_TO_R_SIZE */
- { 22377, 0x00000C76 }, /* GL_PIXEL_MAP_R_TO_R */
- { 22397, 0x00000CB6 }, /* GL_PIXEL_MAP_R_TO_R_SIZE */
- { 22422, 0x00000C71 }, /* GL_PIXEL_MAP_S_TO_S */
- { 22442, 0x00000CB1 }, /* GL_PIXEL_MAP_S_TO_S_SIZE */
- { 22467, 0x00000020 }, /* GL_PIXEL_MODE_BIT */
- { 22485, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING_EXT */
- { 22518, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER_EXT */
- { 22543, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING_EXT */
- { 22578, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER_EXT */
- { 22605, 0x00001B00 }, /* GL_POINT */
- { 22614, 0x00000000 }, /* GL_POINTS */
- { 22624, 0x00000002 }, /* GL_POINT_BIT */
- { 22637, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION */
- { 22667, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_ARB */
- { 22701, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_EXT */
- { 22735, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_SGIS */
- { 22770, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE */
- { 22799, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_ARB */
- { 22832, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_EXT */
- { 22865, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_SGIS */
- { 22899, 0x00000B11 }, /* GL_POINT_SIZE */
- { 22913, 0x00000B13 }, /* GL_POINT_SIZE_GRANULARITY */
- { 22939, 0x00008127 }, /* GL_POINT_SIZE_MAX */
- { 22957, 0x00008127 }, /* GL_POINT_SIZE_MAX_ARB */
- { 22979, 0x00008127 }, /* GL_POINT_SIZE_MAX_EXT */
- { 23001, 0x00008127 }, /* GL_POINT_SIZE_MAX_SGIS */
- { 23024, 0x00008126 }, /* GL_POINT_SIZE_MIN */
- { 23042, 0x00008126 }, /* GL_POINT_SIZE_MIN_ARB */
- { 23064, 0x00008126 }, /* GL_POINT_SIZE_MIN_EXT */
- { 23086, 0x00008126 }, /* GL_POINT_SIZE_MIN_SGIS */
- { 23109, 0x00000B12 }, /* GL_POINT_SIZE_RANGE */
- { 23129, 0x00000B10 }, /* GL_POINT_SMOOTH */
- { 23145, 0x00000C51 }, /* GL_POINT_SMOOTH_HINT */
- { 23166, 0x00008861 }, /* GL_POINT_SPRITE */
- { 23182, 0x00008861 }, /* GL_POINT_SPRITE_ARB */
- { 23202, 0x00008CA0 }, /* GL_POINT_SPRITE_COORD_ORIGIN */
- { 23231, 0x00008861 }, /* GL_POINT_SPRITE_NV */
- { 23250, 0x00008863 }, /* GL_POINT_SPRITE_R_MODE_NV */
- { 23276, 0x00000701 }, /* GL_POINT_TOKEN */
- { 23291, 0x00000009 }, /* GL_POLYGON */
- { 23302, 0x00000008 }, /* GL_POLYGON_BIT */
- { 23317, 0x00000B40 }, /* GL_POLYGON_MODE */
- { 23333, 0x00008039 }, /* GL_POLYGON_OFFSET_BIAS */
- { 23356, 0x00008038 }, /* GL_POLYGON_OFFSET_FACTOR */
- { 23381, 0x00008037 }, /* GL_POLYGON_OFFSET_FILL */
- { 23404, 0x00002A02 }, /* GL_POLYGON_OFFSET_LINE */
- { 23427, 0x00002A01 }, /* GL_POLYGON_OFFSET_POINT */
- { 23451, 0x00002A00 }, /* GL_POLYGON_OFFSET_UNITS */
- { 23475, 0x00000B41 }, /* GL_POLYGON_SMOOTH */
- { 23493, 0x00000C53 }, /* GL_POLYGON_SMOOTH_HINT */
- { 23516, 0x00000B42 }, /* GL_POLYGON_STIPPLE */
- { 23535, 0x00000010 }, /* GL_POLYGON_STIPPLE_BIT */
- { 23558, 0x00000703 }, /* GL_POLYGON_TOKEN */
- { 23575, 0x00001203 }, /* GL_POSITION */
- { 23587, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */
- { 23619, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI */
- { 23655, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */
- { 23688, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI */
- { 23725, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */
- { 23756, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI */
- { 23791, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */
- { 23823, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI */
- { 23859, 0x000080D2 }, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */
- { 23892, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */
- { 23924, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI */
- { 23960, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */
- { 23993, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI */
- { 24030, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS */
- { 24060, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS_SGI */
- { 24094, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE */
- { 24125, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE_SGI */
- { 24160, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS */
- { 24191, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS_EXT */
- { 24226, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE */
- { 24258, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE_EXT */
- { 24294, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS */
- { 24324, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS_EXT */
- { 24358, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE */
- { 24389, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE_EXT */
- { 24424, 0x000080D1 }, /* GL_POST_CONVOLUTION_COLOR_TABLE */
- { 24456, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS */
- { 24487, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS_EXT */
- { 24522, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE */
- { 24554, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE_EXT */
- { 24590, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS */
- { 24619, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS_EXT */
- { 24652, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE */
- { 24682, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE_EXT */
- { 24716, 0x0000817B }, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */
- { 24755, 0x00008179 }, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */
- { 24788, 0x0000817C }, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */
- { 24828, 0x0000817A }, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */
- { 24862, 0x00008578 }, /* GL_PREVIOUS */
- { 24874, 0x00008578 }, /* GL_PREVIOUS_ARB */
- { 24890, 0x00008578 }, /* GL_PREVIOUS_EXT */
- { 24906, 0x00008577 }, /* GL_PRIMARY_COLOR */
- { 24923, 0x00008577 }, /* GL_PRIMARY_COLOR_ARB */
- { 24944, 0x00008577 }, /* GL_PRIMARY_COLOR_EXT */
- { 24965, 0x000088B0 }, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */
- { 24998, 0x00008805 }, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */
- { 25030, 0x000088AC }, /* GL_PROGRAM_ATTRIBS_ARB */
- { 25053, 0x00008677 }, /* GL_PROGRAM_BINDING_ARB */
- { 25076, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_ARB */
- { 25106, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_NV */
- { 25135, 0x00008874 }, /* GL_PROGRAM_ERROR_STRING_ARB */
- { 25163, 0x00008876 }, /* GL_PROGRAM_FORMAT_ARB */
- { 25185, 0x00008875 }, /* GL_PROGRAM_FORMAT_ASCII_ARB */
- { 25213, 0x000088A0 }, /* GL_PROGRAM_INSTRUCTIONS_ARB */
- { 25241, 0x00008627 }, /* GL_PROGRAM_LENGTH_ARB */
- { 25263, 0x00008627 }, /* GL_PROGRAM_LENGTH_NV */
- { 25284, 0x000088B2 }, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */
- { 25324, 0x00008808 }, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */
- { 25363, 0x000088AE }, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */
- { 25393, 0x000088A2 }, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */
- { 25428, 0x000088AA }, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */
- { 25461, 0x000088A6 }, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */
- { 25495, 0x0000880A }, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */
- { 25534, 0x00008809 }, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */
- { 25573, 0x00008B40 }, /* GL_PROGRAM_OBJECT_ARB */
- { 25595, 0x000088A8 }, /* GL_PROGRAM_PARAMETERS_ARB */
- { 25621, 0x00008644 }, /* GL_PROGRAM_PARAMETER_NV */
- { 25645, 0x00008647 }, /* GL_PROGRAM_RESIDENT_NV */
- { 25668, 0x00008628 }, /* GL_PROGRAM_STRING_ARB */
- { 25690, 0x00008628 }, /* GL_PROGRAM_STRING_NV */
- { 25711, 0x00008646 }, /* GL_PROGRAM_TARGET_NV */
- { 25732, 0x000088A4 }, /* GL_PROGRAM_TEMPORARIES_ARB */
- { 25759, 0x00008807 }, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */
- { 25791, 0x00008806 }, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */
- { 25823, 0x000088B6 }, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */
- { 25858, 0x00001701 }, /* GL_PROJECTION */
- { 25872, 0x00000BA7 }, /* GL_PROJECTION_MATRIX */
- { 25893, 0x00000BA4 }, /* GL_PROJECTION_STACK_DEPTH */
- { 25919, 0x000080D3 }, /* GL_PROXY_COLOR_TABLE */
- { 25940, 0x00008025 }, /* GL_PROXY_HISTOGRAM */
- { 25959, 0x00008025 }, /* GL_PROXY_HISTOGRAM_EXT */
- { 25982, 0x000080D5 }, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */
- { 26021, 0x000080D4 }, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */
- { 26059, 0x00008063 }, /* GL_PROXY_TEXTURE_1D */
- { 26079, 0x00008C19 }, /* GL_PROXY_TEXTURE_1D_ARRAY_EXT */
- { 26109, 0x00008063 }, /* GL_PROXY_TEXTURE_1D_EXT */
- { 26133, 0x00008064 }, /* GL_PROXY_TEXTURE_2D */
- { 26153, 0x00008C1B }, /* GL_PROXY_TEXTURE_2D_ARRAY_EXT */
- { 26183, 0x00008064 }, /* GL_PROXY_TEXTURE_2D_EXT */
- { 26207, 0x00008070 }, /* GL_PROXY_TEXTURE_3D */
- { 26227, 0x000080BD }, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */
- { 26260, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP */
- { 26286, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP_ARB */
- { 26316, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_ARB */
- { 26347, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_NV */
- { 26377, 0x00002003 }, /* GL_Q */
- { 26382, 0x00001209 }, /* GL_QUADRATIC_ATTENUATION */
- { 26407, 0x00000007 }, /* GL_QUADS */
- { 26416, 0x00008614 }, /* GL_QUAD_MESH_SUN */
- { 26433, 0x00000008 }, /* GL_QUAD_STRIP */
- { 26447, 0x00008864 }, /* GL_QUERY_COUNTER_BITS */
- { 26469, 0x00008864 }, /* GL_QUERY_COUNTER_BITS_ARB */
- { 26495, 0x00008866 }, /* GL_QUERY_RESULT */
- { 26511, 0x00008866 }, /* GL_QUERY_RESULT_ARB */
- { 26531, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE */
- { 26557, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE_ARB */
- { 26587, 0x00002002 }, /* GL_R */
- { 26592, 0x00002A10 }, /* GL_R3_G3_B2 */
- { 26604, 0x00019262 }, /* GL_RASTER_POSITION_UNCLIPPED_IBM */
- { 26637, 0x00000C02 }, /* GL_READ_BUFFER */
- { 26652, 0x00008CAA }, /* GL_READ_FRAMEBUFFER_BINDING_EXT */
- { 26684, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER_EXT */
- { 26708, 0x000088B8 }, /* GL_READ_ONLY */
- { 26721, 0x000088B8 }, /* GL_READ_ONLY_ARB */
- { 26738, 0x000088BA }, /* GL_READ_WRITE */
- { 26752, 0x000088BA }, /* GL_READ_WRITE_ARB */
- { 26770, 0x00001903 }, /* GL_RED */
- { 26777, 0x00008016 }, /* GL_REDUCE */
- { 26787, 0x00008016 }, /* GL_REDUCE_EXT */
- { 26801, 0x00000D15 }, /* GL_RED_BIAS */
- { 26813, 0x00000D52 }, /* GL_RED_BITS */
- { 26825, 0x00000D14 }, /* GL_RED_SCALE */
- { 26838, 0x00008512 }, /* GL_REFLECTION_MAP */
- { 26856, 0x00008512 }, /* GL_REFLECTION_MAP_ARB */
- { 26878, 0x00008512 }, /* GL_REFLECTION_MAP_NV */
- { 26899, 0x00001C00 }, /* GL_RENDER */
- { 26909, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING_EXT */
- { 26937, 0x00008D41 }, /* GL_RENDERBUFFER_EXT */
- { 26957, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT_EXT */
- { 26984, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT_EXT */
- { 27020, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH_EXT */
- { 27046, 0x00001F01 }, /* GL_RENDERER */
- { 27058, 0x00000C40 }, /* GL_RENDER_MODE */
- { 27073, 0x00002901 }, /* GL_REPEAT */
- { 27083, 0x00001E01 }, /* GL_REPLACE */
- { 27094, 0x00008062 }, /* GL_REPLACE_EXT */
- { 27109, 0x00008153 }, /* GL_REPLICATE_BORDER_HP */
- { 27132, 0x0000803A }, /* GL_RESCALE_NORMAL */
- { 27150, 0x0000803A }, /* GL_RESCALE_NORMAL_EXT */
- { 27172, 0x00000102 }, /* GL_RETURN */
- { 27182, 0x00001907 }, /* GL_RGB */
- { 27189, 0x00008052 }, /* GL_RGB10 */
- { 27198, 0x00008059 }, /* GL_RGB10_A2 */
- { 27210, 0x00008059 }, /* GL_RGB10_A2_EXT */
- { 27226, 0x00008052 }, /* GL_RGB10_EXT */
- { 27239, 0x00008053 }, /* GL_RGB12 */
- { 27248, 0x00008053 }, /* GL_RGB12_EXT */
- { 27261, 0x00008054 }, /* GL_RGB16 */
- { 27270, 0x00008054 }, /* GL_RGB16_EXT */
- { 27283, 0x0000804E }, /* GL_RGB2_EXT */
- { 27295, 0x0000804F }, /* GL_RGB4 */
- { 27303, 0x0000804F }, /* GL_RGB4_EXT */
- { 27315, 0x000083A1 }, /* GL_RGB4_S3TC */
- { 27328, 0x00008050 }, /* GL_RGB5 */
- { 27336, 0x00008057 }, /* GL_RGB5_A1 */
- { 27347, 0x00008057 }, /* GL_RGB5_A1_EXT */
- { 27362, 0x00008050 }, /* GL_RGB5_EXT */
- { 27374, 0x00008051 }, /* GL_RGB8 */
- { 27382, 0x00008051 }, /* GL_RGB8_EXT */
- { 27394, 0x00001908 }, /* GL_RGBA */
- { 27402, 0x0000805A }, /* GL_RGBA12 */
- { 27412, 0x0000805A }, /* GL_RGBA12_EXT */
- { 27426, 0x0000805B }, /* GL_RGBA16 */
- { 27436, 0x0000805B }, /* GL_RGBA16_EXT */
- { 27450, 0x00008055 }, /* GL_RGBA2 */
- { 27459, 0x00008055 }, /* GL_RGBA2_EXT */
- { 27472, 0x00008056 }, /* GL_RGBA4 */
- { 27481, 0x000083A5 }, /* GL_RGBA4_DXT5_S3TC */
- { 27500, 0x00008056 }, /* GL_RGBA4_EXT */
- { 27513, 0x000083A3 }, /* GL_RGBA4_S3TC */
- { 27527, 0x00008058 }, /* GL_RGBA8 */
- { 27536, 0x00008058 }, /* GL_RGBA8_EXT */
- { 27549, 0x000083A4 }, /* GL_RGBA_DXT5_S3TC */
- { 27567, 0x00000C31 }, /* GL_RGBA_MODE */
- { 27580, 0x000083A2 }, /* GL_RGBA_S3TC */
- { 27593, 0x000083A0 }, /* GL_RGB_S3TC */
- { 27605, 0x00008573 }, /* GL_RGB_SCALE */
- { 27618, 0x00008573 }, /* GL_RGB_SCALE_ARB */
- { 27635, 0x00008573 }, /* GL_RGB_SCALE_EXT */
- { 27652, 0x00000407 }, /* GL_RIGHT */
- { 27661, 0x00002000 }, /* GL_S */
- { 27666, 0x00008B5D }, /* GL_SAMPLER_1D */
- { 27680, 0x00008B61 }, /* GL_SAMPLER_1D_SHADOW */
- { 27701, 0x00008B5E }, /* GL_SAMPLER_2D */
- { 27715, 0x00008B62 }, /* GL_SAMPLER_2D_SHADOW */
- { 27736, 0x00008B5F }, /* GL_SAMPLER_3D */
- { 27750, 0x00008B60 }, /* GL_SAMPLER_CUBE */
- { 27766, 0x000080A9 }, /* GL_SAMPLES */
- { 27777, 0x000086B4 }, /* GL_SAMPLES_3DFX */
- { 27793, 0x000080A9 }, /* GL_SAMPLES_ARB */
- { 27808, 0x00008914 }, /* GL_SAMPLES_PASSED */
- { 27826, 0x00008914 }, /* GL_SAMPLES_PASSED_ARB */
- { 27848, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE */
- { 27876, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE_ARB */
- { 27908, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE */
- { 27931, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE_ARB */
- { 27958, 0x000080A8 }, /* GL_SAMPLE_BUFFERS */
- { 27976, 0x000086B3 }, /* GL_SAMPLE_BUFFERS_3DFX */
- { 27999, 0x000080A8 }, /* GL_SAMPLE_BUFFERS_ARB */
- { 28021, 0x000080A0 }, /* GL_SAMPLE_COVERAGE */
- { 28040, 0x000080A0 }, /* GL_SAMPLE_COVERAGE_ARB */
- { 28063, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT */
- { 28089, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT_ARB */
- { 28119, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE */
- { 28144, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE_ARB */
- { 28173, 0x00080000 }, /* GL_SCISSOR_BIT */
- { 28188, 0x00000C10 }, /* GL_SCISSOR_BOX */
- { 28203, 0x00000C11 }, /* GL_SCISSOR_TEST */
- { 28219, 0x0000845E }, /* GL_SECONDARY_COLOR_ARRAY */
- { 28244, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */
- { 28284, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB */
- { 28328, 0x0000845D }, /* GL_SECONDARY_COLOR_ARRAY_POINTER */
- { 28361, 0x0000845A }, /* GL_SECONDARY_COLOR_ARRAY_SIZE */
- { 28391, 0x0000845C }, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */
- { 28423, 0x0000845B }, /* GL_SECONDARY_COLOR_ARRAY_TYPE */
- { 28453, 0x00001C02 }, /* GL_SELECT */
- { 28463, 0x00000DF3 }, /* GL_SELECTION_BUFFER_POINTER */
- { 28491, 0x00000DF4 }, /* GL_SELECTION_BUFFER_SIZE */
- { 28516, 0x00008012 }, /* GL_SEPARABLE_2D */
- { 28532, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR */
- { 28559, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR_EXT */
- { 28590, 0x0000150F }, /* GL_SET */
- { 28597, 0x00008B48 }, /* GL_SHADER_OBJECT_ARB */
- { 28618, 0x00008B88 }, /* GL_SHADER_SOURCE_LENGTH */
- { 28642, 0x00008B4F }, /* GL_SHADER_TYPE */
- { 28657, 0x00000B54 }, /* GL_SHADE_MODEL */
- { 28672, 0x00008B8C }, /* GL_SHADING_LANGUAGE_VERSION */
- { 28700, 0x000080BF }, /* GL_SHADOW_AMBIENT_SGIX */
- { 28723, 0x000081FB }, /* GL_SHARED_TEXTURE_PALETTE_EXT */
- { 28753, 0x00001601 }, /* GL_SHININESS */
- { 28766, 0x00001402 }, /* GL_SHORT */
- { 28775, 0x000081F9 }, /* GL_SINGLE_COLOR */
- { 28791, 0x000081F9 }, /* GL_SINGLE_COLOR_EXT */
- { 28811, 0x000085CC }, /* GL_SLICE_ACCUM_SUN */
- { 28830, 0x00001D01 }, /* GL_SMOOTH */
- { 28840, 0x00000B23 }, /* GL_SMOOTH_LINE_WIDTH_GRANULARITY */
- { 28873, 0x00000B22 }, /* GL_SMOOTH_LINE_WIDTH_RANGE */
- { 28900, 0x00000B13 }, /* GL_SMOOTH_POINT_SIZE_GRANULARITY */
- { 28933, 0x00000B12 }, /* GL_SMOOTH_POINT_SIZE_RANGE */
- { 28960, 0x00008588 }, /* GL_SOURCE0_ALPHA */
- { 28977, 0x00008588 }, /* GL_SOURCE0_ALPHA_ARB */
- { 28998, 0x00008588 }, /* GL_SOURCE0_ALPHA_EXT */
- { 29019, 0x00008580 }, /* GL_SOURCE0_RGB */
- { 29034, 0x00008580 }, /* GL_SOURCE0_RGB_ARB */
- { 29053, 0x00008580 }, /* GL_SOURCE0_RGB_EXT */
- { 29072, 0x00008589 }, /* GL_SOURCE1_ALPHA */
- { 29089, 0x00008589 }, /* GL_SOURCE1_ALPHA_ARB */
- { 29110, 0x00008589 }, /* GL_SOURCE1_ALPHA_EXT */
- { 29131, 0x00008581 }, /* GL_SOURCE1_RGB */
- { 29146, 0x00008581 }, /* GL_SOURCE1_RGB_ARB */
- { 29165, 0x00008581 }, /* GL_SOURCE1_RGB_EXT */
- { 29184, 0x0000858A }, /* GL_SOURCE2_ALPHA */
- { 29201, 0x0000858A }, /* GL_SOURCE2_ALPHA_ARB */
- { 29222, 0x0000858A }, /* GL_SOURCE2_ALPHA_EXT */
- { 29243, 0x00008582 }, /* GL_SOURCE2_RGB */
- { 29258, 0x00008582 }, /* GL_SOURCE2_RGB_ARB */
- { 29277, 0x00008582 }, /* GL_SOURCE2_RGB_EXT */
- { 29296, 0x0000858B }, /* GL_SOURCE3_ALPHA_NV */
- { 29316, 0x00008583 }, /* GL_SOURCE3_RGB_NV */
- { 29334, 0x00001202 }, /* GL_SPECULAR */
- { 29346, 0x00002402 }, /* GL_SPHERE_MAP */
- { 29360, 0x00001206 }, /* GL_SPOT_CUTOFF */
- { 29375, 0x00001204 }, /* GL_SPOT_DIRECTION */
- { 29393, 0x00001205 }, /* GL_SPOT_EXPONENT */
- { 29410, 0x00008588 }, /* GL_SRC0_ALPHA */
- { 29424, 0x00008580 }, /* GL_SRC0_RGB */
- { 29436, 0x00008589 }, /* GL_SRC1_ALPHA */
- { 29450, 0x00008581 }, /* GL_SRC1_RGB */
- { 29462, 0x0000858A }, /* GL_SRC2_ALPHA */
- { 29476, 0x00008582 }, /* GL_SRC2_RGB */
- { 29488, 0x00000302 }, /* GL_SRC_ALPHA */
- { 29501, 0x00000308 }, /* GL_SRC_ALPHA_SATURATE */
- { 29523, 0x00000300 }, /* GL_SRC_COLOR */
- { 29536, 0x00000503 }, /* GL_STACK_OVERFLOW */
- { 29554, 0x00000504 }, /* GL_STACK_UNDERFLOW */
- { 29573, 0x000088E6 }, /* GL_STATIC_COPY */
- { 29588, 0x000088E6 }, /* GL_STATIC_COPY_ARB */
- { 29607, 0x000088E4 }, /* GL_STATIC_DRAW */
- { 29622, 0x000088E4 }, /* GL_STATIC_DRAW_ARB */
- { 29641, 0x000088E5 }, /* GL_STATIC_READ */
- { 29656, 0x000088E5 }, /* GL_STATIC_READ_ARB */
- { 29675, 0x00001802 }, /* GL_STENCIL */
- { 29686, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_EXT */
- { 29712, 0x00008801 }, /* GL_STENCIL_BACK_FAIL */
- { 29733, 0x00008801 }, /* GL_STENCIL_BACK_FAIL_ATI */
- { 29758, 0x00008800 }, /* GL_STENCIL_BACK_FUNC */
- { 29779, 0x00008800 }, /* GL_STENCIL_BACK_FUNC_ATI */
- { 29804, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */
- { 29836, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI */
- { 29872, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */
- { 29904, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI */
- { 29940, 0x00008CA3 }, /* GL_STENCIL_BACK_REF */
- { 29960, 0x00008CA4 }, /* GL_STENCIL_BACK_VALUE_MASK */
- { 29987, 0x00008CA5 }, /* GL_STENCIL_BACK_WRITEMASK */
- { 30013, 0x00000D57 }, /* GL_STENCIL_BITS */
- { 30029, 0x00000400 }, /* GL_STENCIL_BUFFER_BIT */
- { 30051, 0x00000B91 }, /* GL_STENCIL_CLEAR_VALUE */
- { 30074, 0x00000B94 }, /* GL_STENCIL_FAIL */
- { 30090, 0x00000B92 }, /* GL_STENCIL_FUNC */
- { 30106, 0x00001901 }, /* GL_STENCIL_INDEX */
- { 30123, 0x00008D49 }, /* GL_STENCIL_INDEX16_EXT */
- { 30146, 0x00008D46 }, /* GL_STENCIL_INDEX1_EXT */
- { 30168, 0x00008D47 }, /* GL_STENCIL_INDEX4_EXT */
- { 30190, 0x00008D48 }, /* GL_STENCIL_INDEX8_EXT */
- { 30212, 0x00008D45 }, /* GL_STENCIL_INDEX_EXT */
- { 30233, 0x00000B95 }, /* GL_STENCIL_PASS_DEPTH_FAIL */
- { 30260, 0x00000B96 }, /* GL_STENCIL_PASS_DEPTH_PASS */
- { 30287, 0x00000B97 }, /* GL_STENCIL_REF */
- { 30302, 0x00000B90 }, /* GL_STENCIL_TEST */
- { 30318, 0x00008910 }, /* GL_STENCIL_TEST_TWO_SIDE_EXT */
- { 30347, 0x00000B93 }, /* GL_STENCIL_VALUE_MASK */
- { 30369, 0x00000B98 }, /* GL_STENCIL_WRITEMASK */
- { 30390, 0x00000C33 }, /* GL_STEREO */
- { 30400, 0x000088E2 }, /* GL_STREAM_COPY */
- { 30415, 0x000088E2 }, /* GL_STREAM_COPY_ARB */
- { 30434, 0x000088E0 }, /* GL_STREAM_DRAW */
- { 30449, 0x000088E0 }, /* GL_STREAM_DRAW_ARB */
- { 30468, 0x000088E1 }, /* GL_STREAM_READ */
- { 30483, 0x000088E1 }, /* GL_STREAM_READ_ARB */
- { 30502, 0x00000D50 }, /* GL_SUBPIXEL_BITS */
- { 30519, 0x000084E7 }, /* GL_SUBTRACT */
- { 30531, 0x000084E7 }, /* GL_SUBTRACT_ARB */
- { 30547, 0x00002001 }, /* GL_T */
- { 30552, 0x00002A2A }, /* GL_T2F_C3F_V3F */
- { 30567, 0x00002A2C }, /* GL_T2F_C4F_N3F_V3F */
- { 30586, 0x00002A29 }, /* GL_T2F_C4UB_V3F */
- { 30602, 0x00002A2B }, /* GL_T2F_N3F_V3F */
- { 30617, 0x00002A27 }, /* GL_T2F_V3F */
- { 30628, 0x00002A2D }, /* GL_T4F_C4F_N3F_V4F */
- { 30647, 0x00002A28 }, /* GL_T4F_V4F */
- { 30658, 0x00008031 }, /* GL_TABLE_TOO_LARGE_EXT */
- { 30681, 0x00001702 }, /* GL_TEXTURE */
- { 30692, 0x000084C0 }, /* GL_TEXTURE0 */
- { 30704, 0x000084C0 }, /* GL_TEXTURE0_ARB */
- { 30720, 0x000084C1 }, /* GL_TEXTURE1 */
- { 30732, 0x000084CA }, /* GL_TEXTURE10 */
- { 30745, 0x000084CA }, /* GL_TEXTURE10_ARB */
- { 30762, 0x000084CB }, /* GL_TEXTURE11 */
- { 30775, 0x000084CB }, /* GL_TEXTURE11_ARB */
- { 30792, 0x000084CC }, /* GL_TEXTURE12 */
- { 30805, 0x000084CC }, /* GL_TEXTURE12_ARB */
- { 30822, 0x000084CD }, /* GL_TEXTURE13 */
- { 30835, 0x000084CD }, /* GL_TEXTURE13_ARB */
- { 30852, 0x000084CE }, /* GL_TEXTURE14 */
- { 30865, 0x000084CE }, /* GL_TEXTURE14_ARB */
- { 30882, 0x000084CF }, /* GL_TEXTURE15 */
- { 30895, 0x000084CF }, /* GL_TEXTURE15_ARB */
- { 30912, 0x000084D0 }, /* GL_TEXTURE16 */
- { 30925, 0x000084D0 }, /* GL_TEXTURE16_ARB */
- { 30942, 0x000084D1 }, /* GL_TEXTURE17 */
- { 30955, 0x000084D1 }, /* GL_TEXTURE17_ARB */
- { 30972, 0x000084D2 }, /* GL_TEXTURE18 */
- { 30985, 0x000084D2 }, /* GL_TEXTURE18_ARB */
- { 31002, 0x000084D3 }, /* GL_TEXTURE19 */
- { 31015, 0x000084D3 }, /* GL_TEXTURE19_ARB */
- { 31032, 0x000084C1 }, /* GL_TEXTURE1_ARB */
- { 31048, 0x000084C2 }, /* GL_TEXTURE2 */
- { 31060, 0x000084D4 }, /* GL_TEXTURE20 */
- { 31073, 0x000084D4 }, /* GL_TEXTURE20_ARB */
- { 31090, 0x000084D5 }, /* GL_TEXTURE21 */
- { 31103, 0x000084D5 }, /* GL_TEXTURE21_ARB */
- { 31120, 0x000084D6 }, /* GL_TEXTURE22 */
- { 31133, 0x000084D6 }, /* GL_TEXTURE22_ARB */
- { 31150, 0x000084D7 }, /* GL_TEXTURE23 */
- { 31163, 0x000084D7 }, /* GL_TEXTURE23_ARB */
- { 31180, 0x000084D8 }, /* GL_TEXTURE24 */
- { 31193, 0x000084D8 }, /* GL_TEXTURE24_ARB */
- { 31210, 0x000084D9 }, /* GL_TEXTURE25 */
- { 31223, 0x000084D9 }, /* GL_TEXTURE25_ARB */
- { 31240, 0x000084DA }, /* GL_TEXTURE26 */
- { 31253, 0x000084DA }, /* GL_TEXTURE26_ARB */
- { 31270, 0x000084DB }, /* GL_TEXTURE27 */
- { 31283, 0x000084DB }, /* GL_TEXTURE27_ARB */
- { 31300, 0x000084DC }, /* GL_TEXTURE28 */
- { 31313, 0x000084DC }, /* GL_TEXTURE28_ARB */
- { 31330, 0x000084DD }, /* GL_TEXTURE29 */
- { 31343, 0x000084DD }, /* GL_TEXTURE29_ARB */
- { 31360, 0x000084C2 }, /* GL_TEXTURE2_ARB */
- { 31376, 0x000084C3 }, /* GL_TEXTURE3 */
- { 31388, 0x000084DE }, /* GL_TEXTURE30 */
- { 31401, 0x000084DE }, /* GL_TEXTURE30_ARB */
- { 31418, 0x000084DF }, /* GL_TEXTURE31 */
- { 31431, 0x000084DF }, /* GL_TEXTURE31_ARB */
- { 31448, 0x000084C3 }, /* GL_TEXTURE3_ARB */
- { 31464, 0x000084C4 }, /* GL_TEXTURE4 */
- { 31476, 0x000084C4 }, /* GL_TEXTURE4_ARB */
- { 31492, 0x000084C5 }, /* GL_TEXTURE5 */
- { 31504, 0x000084C5 }, /* GL_TEXTURE5_ARB */
- { 31520, 0x000084C6 }, /* GL_TEXTURE6 */
- { 31532, 0x000084C6 }, /* GL_TEXTURE6_ARB */
- { 31548, 0x000084C7 }, /* GL_TEXTURE7 */
- { 31560, 0x000084C7 }, /* GL_TEXTURE7_ARB */
- { 31576, 0x000084C8 }, /* GL_TEXTURE8 */
- { 31588, 0x000084C8 }, /* GL_TEXTURE8_ARB */
- { 31604, 0x000084C9 }, /* GL_TEXTURE9 */
- { 31616, 0x000084C9 }, /* GL_TEXTURE9_ARB */
- { 31632, 0x00000DE0 }, /* GL_TEXTURE_1D */
- { 31646, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY_EXT */
- { 31670, 0x00000DE1 }, /* GL_TEXTURE_2D */
- { 31684, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY_EXT */
- { 31708, 0x0000806F }, /* GL_TEXTURE_3D */
- { 31722, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE */
- { 31744, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE_EXT */
- { 31770, 0x0000813C }, /* GL_TEXTURE_BASE_LEVEL */
- { 31792, 0x00008068 }, /* GL_TEXTURE_BINDING_1D */
- { 31814, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY_EXT */
- { 31846, 0x00008069 }, /* GL_TEXTURE_BINDING_2D */
- { 31868, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY_EXT */
- { 31900, 0x0000806A }, /* GL_TEXTURE_BINDING_3D */
- { 31922, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP */
- { 31950, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_ARB */
- { 31982, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */
- { 32015, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_NV */
- { 32047, 0x00040000 }, /* GL_TEXTURE_BIT */
- { 32062, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE */
- { 32083, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE_EXT */
- { 32108, 0x00001005 }, /* GL_TEXTURE_BORDER */
- { 32126, 0x00001004 }, /* GL_TEXTURE_BORDER_COLOR */
- { 32150, 0x00008171 }, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */
- { 32181, 0x00008176 }, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */
- { 32211, 0x00008172 }, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */
- { 32241, 0x00008175 }, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */
- { 32276, 0x00008173 }, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */
- { 32307, 0x00008174 }, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */
- { 32345, 0x000080BC }, /* GL_TEXTURE_COLOR_TABLE_SGI */
- { 32372, 0x000081EF }, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */
- { 32404, 0x000080BF }, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */
- { 32438, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC */
- { 32462, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC_ARB */
- { 32490, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE */
- { 32514, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE_ARB */
- { 32542, 0x0000819B }, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */
- { 32575, 0x0000819A }, /* GL_TEXTURE_COMPARE_SGIX */
- { 32599, 0x00001003 }, /* GL_TEXTURE_COMPONENTS */
- { 32621, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED */
- { 32643, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED_ARB */
- { 32669, 0x000086A3 }, /* GL_TEXTURE_COMPRESSED_FORMATS_ARB */
- { 32703, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */
- { 32736, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB */
- { 32773, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT */
- { 32801, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT_ARB */
- { 32833, 0x00008078 }, /* GL_TEXTURE_COORD_ARRAY */
- { 32856, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */
- { 32894, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB */
- { 32936, 0x00008092 }, /* GL_TEXTURE_COORD_ARRAY_POINTER */
- { 32967, 0x00008088 }, /* GL_TEXTURE_COORD_ARRAY_SIZE */
- { 32995, 0x0000808A }, /* GL_TEXTURE_COORD_ARRAY_STRIDE */
- { 33025, 0x00008089 }, /* GL_TEXTURE_COORD_ARRAY_TYPE */
- { 33053, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP */
- { 33073, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_ARB */
- { 33097, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */
- { 33128, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB */
- { 33163, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */
- { 33194, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB */
- { 33229, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */
- { 33260, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB */
- { 33295, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */
- { 33326, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB */
- { 33361, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */
- { 33392, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB */
- { 33427, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */
- { 33458, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB */
- { 33493, 0x00008071 }, /* GL_TEXTURE_DEPTH */
- { 33510, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE */
- { 33532, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE_ARB */
- { 33558, 0x00002300 }, /* GL_TEXTURE_ENV */
- { 33573, 0x00002201 }, /* GL_TEXTURE_ENV_COLOR */
- { 33594, 0x00002200 }, /* GL_TEXTURE_ENV_MODE */
- { 33614, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL */
- { 33640, 0x00002500 }, /* GL_TEXTURE_GEN_MODE */
- { 33660, 0x00000C63 }, /* GL_TEXTURE_GEN_Q */
- { 33677, 0x00000C62 }, /* GL_TEXTURE_GEN_R */
- { 33694, 0x00000C60 }, /* GL_TEXTURE_GEN_S */
- { 33711, 0x00000C61 }, /* GL_TEXTURE_GEN_T */
- { 33728, 0x0000819D }, /* GL_TEXTURE_GEQUAL_R_SGIX */
- { 33753, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE */
- { 33775, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE_EXT */
- { 33801, 0x00001001 }, /* GL_TEXTURE_HEIGHT */
- { 33819, 0x000080ED }, /* GL_TEXTURE_INDEX_SIZE_EXT */
- { 33845, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE */
- { 33871, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE_EXT */
- { 33901, 0x00001003 }, /* GL_TEXTURE_INTERNAL_FORMAT */
- { 33928, 0x0000819C }, /* GL_TEXTURE_LEQUAL_R_SGIX */
- { 33953, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS */
- { 33973, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS_EXT */
- { 33997, 0x00008190 }, /* GL_TEXTURE_LOD_BIAS_R_SGIX */
- { 34024, 0x0000818E }, /* GL_TEXTURE_LOD_BIAS_S_SGIX */
- { 34051, 0x0000818F }, /* GL_TEXTURE_LOD_BIAS_T_SGIX */
- { 34078, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE */
- { 34104, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE_EXT */
- { 34134, 0x00002800 }, /* GL_TEXTURE_MAG_FILTER */
- { 34156, 0x00000BA8 }, /* GL_TEXTURE_MATRIX */
- { 34174, 0x000084FE }, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */
- { 34204, 0x0000836B }, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */
- { 34232, 0x00008369 }, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */
- { 34260, 0x0000836A }, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */
- { 34288, 0x0000813D }, /* GL_TEXTURE_MAX_LEVEL */
- { 34309, 0x0000813B }, /* GL_TEXTURE_MAX_LOD */
- { 34328, 0x00002801 }, /* GL_TEXTURE_MIN_FILTER */
- { 34350, 0x0000813A }, /* GL_TEXTURE_MIN_LOD */
- { 34369, 0x00008066 }, /* GL_TEXTURE_PRIORITY */
- { 34389, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_ARB */
- { 34414, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_NV */
- { 34438, 0x0000805C }, /* GL_TEXTURE_RED_SIZE */
- { 34458, 0x0000805C }, /* GL_TEXTURE_RED_SIZE_EXT */
- { 34482, 0x00008067 }, /* GL_TEXTURE_RESIDENT */
- { 34502, 0x00000BA5 }, /* GL_TEXTURE_STACK_DEPTH */
- { 34525, 0x00008065 }, /* GL_TEXTURE_TOO_LARGE_EXT */
- { 34550, 0x0000888F }, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */
- { 34584, 0x00001000 }, /* GL_TEXTURE_WIDTH */
- { 34601, 0x00008072 }, /* GL_TEXTURE_WRAP_R */
- { 34619, 0x00002802 }, /* GL_TEXTURE_WRAP_S */
- { 34637, 0x00002803 }, /* GL_TEXTURE_WRAP_T */
- { 34655, 0x000088BF }, /* GL_TIME_ELAPSED_EXT */
- { 34675, 0x00008648 }, /* GL_TRACK_MATRIX_NV */
- { 34694, 0x00008649 }, /* GL_TRACK_MATRIX_TRANSFORM_NV */
- { 34723, 0x00001000 }, /* GL_TRANSFORM_BIT */
- { 34740, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX */
- { 34766, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX_ARB */
- { 34796, 0x000088B7 }, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */
- { 34828, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX */
- { 34858, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX_ARB */
- { 34892, 0x0000862C }, /* GL_TRANSPOSE_NV */
- { 34908, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX */
- { 34939, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX_ARB */
- { 34974, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX */
- { 35002, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX_ARB */
- { 35034, 0x00000004 }, /* GL_TRIANGLES */
- { 35047, 0x00000006 }, /* GL_TRIANGLE_FAN */
- { 35063, 0x00008615 }, /* GL_TRIANGLE_MESH_SUN */
- { 35084, 0x00000005 }, /* GL_TRIANGLE_STRIP */
- { 35102, 0x00000001 }, /* GL_TRUE */
- { 35110, 0x00000CF5 }, /* GL_UNPACK_ALIGNMENT */
- { 35130, 0x0000806E }, /* GL_UNPACK_IMAGE_HEIGHT */
- { 35153, 0x00000CF1 }, /* GL_UNPACK_LSB_FIRST */
- { 35173, 0x00000CF2 }, /* GL_UNPACK_ROW_LENGTH */
- { 35194, 0x0000806D }, /* GL_UNPACK_SKIP_IMAGES */
- { 35216, 0x00000CF4 }, /* GL_UNPACK_SKIP_PIXELS */
- { 35238, 0x00000CF3 }, /* GL_UNPACK_SKIP_ROWS */
- { 35258, 0x00000CF0 }, /* GL_UNPACK_SWAP_BYTES */
- { 35279, 0x00001401 }, /* GL_UNSIGNED_BYTE */
- { 35296, 0x00008362 }, /* GL_UNSIGNED_BYTE_2_3_3_REV */
- { 35323, 0x00008032 }, /* GL_UNSIGNED_BYTE_3_3_2 */
- { 35346, 0x00001405 }, /* GL_UNSIGNED_INT */
- { 35362, 0x00008036 }, /* GL_UNSIGNED_INT_10_10_10_2 */
- { 35389, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_NV */
- { 35413, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV */
- { 35444, 0x00008035 }, /* GL_UNSIGNED_INT_8_8_8_8 */
- { 35468, 0x00008367 }, /* GL_UNSIGNED_INT_8_8_8_8_REV */
- { 35496, 0x00001403 }, /* GL_UNSIGNED_SHORT */
- { 35514, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */
- { 35544, 0x00008033 }, /* GL_UNSIGNED_SHORT_4_4_4_4 */
- { 35570, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */
- { 35600, 0x00008034 }, /* GL_UNSIGNED_SHORT_5_5_5_1 */
- { 35626, 0x00008363 }, /* GL_UNSIGNED_SHORT_5_6_5 */
- { 35650, 0x00008364 }, /* GL_UNSIGNED_SHORT_5_6_5_REV */
- { 35678, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_APPLE */
- { 35706, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_MESA */
- { 35733, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */
- { 35765, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_MESA */
- { 35796, 0x00008CA2 }, /* GL_UPPER_LEFT */
- { 35810, 0x00002A20 }, /* GL_V2F */
- { 35817, 0x00002A21 }, /* GL_V3F */
- { 35824, 0x00008B83 }, /* GL_VALIDATE_STATUS */
- { 35843, 0x00001F00 }, /* GL_VENDOR */
- { 35853, 0x00001F02 }, /* GL_VERSION */
- { 35864, 0x00008074 }, /* GL_VERTEX_ARRAY */
- { 35880, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING_APPLE */
- { 35910, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING */
- { 35941, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING_ARB */
- { 35976, 0x0000808E }, /* GL_VERTEX_ARRAY_POINTER */
- { 36000, 0x0000807A }, /* GL_VERTEX_ARRAY_SIZE */
- { 36021, 0x0000807C }, /* GL_VERTEX_ARRAY_STRIDE */
- { 36044, 0x0000807B }, /* GL_VERTEX_ARRAY_TYPE */
- { 36065, 0x00008650 }, /* GL_VERTEX_ATTRIB_ARRAY0_NV */
- { 36092, 0x0000865A }, /* GL_VERTEX_ATTRIB_ARRAY10_NV */
- { 36120, 0x0000865B }, /* GL_VERTEX_ATTRIB_ARRAY11_NV */
- { 36148, 0x0000865C }, /* GL_VERTEX_ATTRIB_ARRAY12_NV */
- { 36176, 0x0000865D }, /* GL_VERTEX_ATTRIB_ARRAY13_NV */
- { 36204, 0x0000865E }, /* GL_VERTEX_ATTRIB_ARRAY14_NV */
- { 36232, 0x0000865F }, /* GL_VERTEX_ATTRIB_ARRAY15_NV */
- { 36260, 0x00008651 }, /* GL_VERTEX_ATTRIB_ARRAY1_NV */
- { 36287, 0x00008652 }, /* GL_VERTEX_ATTRIB_ARRAY2_NV */
- { 36314, 0x00008653 }, /* GL_VERTEX_ATTRIB_ARRAY3_NV */
- { 36341, 0x00008654 }, /* GL_VERTEX_ATTRIB_ARRAY4_NV */
- { 36368, 0x00008655 }, /* GL_VERTEX_ATTRIB_ARRAY5_NV */
- { 36395, 0x00008656 }, /* GL_VERTEX_ATTRIB_ARRAY6_NV */
- { 36422, 0x00008657 }, /* GL_VERTEX_ATTRIB_ARRAY7_NV */
- { 36449, 0x00008658 }, /* GL_VERTEX_ATTRIB_ARRAY8_NV */
- { 36476, 0x00008659 }, /* GL_VERTEX_ATTRIB_ARRAY9_NV */
- { 36503, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */
- { 36541, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB */
- { 36583, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */
- { 36614, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB */
- { 36649, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */
- { 36683, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB */
- { 36721, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */
- { 36752, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB */
- { 36787, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */
- { 36815, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB */
- { 36847, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */
- { 36877, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB */
- { 36911, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */
- { 36939, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB */
- { 36971, 0x000086A7 }, /* GL_VERTEX_BLEND_ARB */
- { 36991, 0x00008620 }, /* GL_VERTEX_PROGRAM_ARB */
- { 37013, 0x0000864A }, /* GL_VERTEX_PROGRAM_BINDING_NV */
- { 37042, 0x00008620 }, /* GL_VERTEX_PROGRAM_NV */
- { 37063, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE */
- { 37092, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_ARB */
- { 37125, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_NV */
- { 37157, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE */
- { 37184, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_ARB */
- { 37215, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_NV */
- { 37245, 0x00008B31 }, /* GL_VERTEX_SHADER */
- { 37262, 0x00008B31 }, /* GL_VERTEX_SHADER_ARB */
- { 37283, 0x00008621 }, /* GL_VERTEX_STATE_PROGRAM_NV */
- { 37310, 0x00000BA2 }, /* GL_VIEWPORT */
- { 37322, 0x00000800 }, /* GL_VIEWPORT_BIT */
- { 37338, 0x000086AD }, /* GL_WEIGHT_ARRAY_ARB */
- { 37358, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */
- { 37389, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB */
- { 37424, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_ARB */
- { 37452, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_ARB */
- { 37477, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_ARB */
- { 37504, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_ARB */
- { 37529, 0x000086A6 }, /* GL_WEIGHT_SUM_UNITY_ARB */
- { 37553, 0x000081D4 }, /* GL_WRAP_BORDER_SUN */
- { 37572, 0x000088B9 }, /* GL_WRITE_ONLY */
- { 37586, 0x000088B9 }, /* GL_WRITE_ONLY_ARB */
- { 37604, 0x00001506 }, /* GL_XOR */
- { 37611, 0x000085B9 }, /* GL_YCBCR_422_APPLE */
- { 37630, 0x00008757 }, /* GL_YCBCR_MESA */
- { 37644, 0x00000000 }, /* GL_ZERO */
- { 37652, 0x00000D16 }, /* GL_ZOOM_X */
- { 37662, 0x00000D17 }, /* GL_ZOOM_Y */
+ { 877, 0x00008894 }, /* GL_ARRAY_BUFFER_BINDING */
+ { 901, 0x00008894 }, /* GL_ARRAY_BUFFER_BINDING_ARB */
+ { 929, 0x00008B85 }, /* GL_ATTACHED_SHADERS */
+ { 949, 0x00008645 }, /* GL_ATTRIB_ARRAY_POINTER_NV */
+ { 976, 0x00008623 }, /* GL_ATTRIB_ARRAY_SIZE_NV */
+ { 1000, 0x00008624 }, /* GL_ATTRIB_ARRAY_STRIDE_NV */
+ { 1026, 0x00008625 }, /* GL_ATTRIB_ARRAY_TYPE_NV */
+ { 1050, 0x00000BB0 }, /* GL_ATTRIB_STACK_DEPTH */
+ { 1072, 0x00000D80 }, /* GL_AUTO_NORMAL */
+ { 1087, 0x00000409 }, /* GL_AUX0 */
+ { 1095, 0x0000040A }, /* GL_AUX1 */
+ { 1103, 0x0000040B }, /* GL_AUX2 */
+ { 1111, 0x0000040C }, /* GL_AUX3 */
+ { 1119, 0x00000C00 }, /* GL_AUX_BUFFERS */
+ { 1134, 0x00000405 }, /* GL_BACK */
+ { 1142, 0x00000402 }, /* GL_BACK_LEFT */
+ { 1155, 0x00000403 }, /* GL_BACK_RIGHT */
+ { 1169, 0x000080E0 }, /* GL_BGR */
+ { 1176, 0x000080E1 }, /* GL_BGRA */
+ { 1184, 0x00001A00 }, /* GL_BITMAP */
+ { 1194, 0x00000704 }, /* GL_BITMAP_TOKEN */
+ { 1210, 0x00000BE2 }, /* GL_BLEND */
+ { 1219, 0x00008005 }, /* GL_BLEND_COLOR */
+ { 1234, 0x00008005 }, /* GL_BLEND_COLOR_EXT */
+ { 1253, 0x00000BE0 }, /* GL_BLEND_DST */
+ { 1266, 0x000080CA }, /* GL_BLEND_DST_ALPHA */
+ { 1285, 0x000080C8 }, /* GL_BLEND_DST_RGB */
+ { 1302, 0x00008009 }, /* GL_BLEND_EQUATION */
+ { 1320, 0x0000883D }, /* GL_BLEND_EQUATION_ALPHA */
+ { 1344, 0x0000883D }, /* GL_BLEND_EQUATION_ALPHA_EXT */
+ { 1372, 0x00008009 }, /* GL_BLEND_EQUATION_EXT */
+ { 1394, 0x00008009 }, /* GL_BLEND_EQUATION_RGB_EXT */
+ { 1420, 0x00000BE1 }, /* GL_BLEND_SRC */
+ { 1433, 0x000080CB }, /* GL_BLEND_SRC_ALPHA */
+ { 1452, 0x000080C9 }, /* GL_BLEND_SRC_RGB */
+ { 1469, 0x00001905 }, /* GL_BLUE */
+ { 1477, 0x00000D1B }, /* GL_BLUE_BIAS */
+ { 1490, 0x00000D54 }, /* GL_BLUE_BITS */
+ { 1503, 0x00000D1A }, /* GL_BLUE_SCALE */
+ { 1517, 0x00008B56 }, /* GL_BOOL */
+ { 1525, 0x00008B56 }, /* GL_BOOL_ARB */
+ { 1537, 0x00008B57 }, /* GL_BOOL_VEC2 */
+ { 1550, 0x00008B57 }, /* GL_BOOL_VEC2_ARB */
+ { 1567, 0x00008B58 }, /* GL_BOOL_VEC3 */
+ { 1580, 0x00008B58 }, /* GL_BOOL_VEC3_ARB */
+ { 1597, 0x00008B59 }, /* GL_BOOL_VEC4 */
+ { 1610, 0x00008B59 }, /* GL_BOOL_VEC4_ARB */
+ { 1627, 0x000088BB }, /* GL_BUFFER_ACCESS */
+ { 1644, 0x000088BB }, /* GL_BUFFER_ACCESS_ARB */
+ { 1665, 0x000088BC }, /* GL_BUFFER_MAPPED */
+ { 1682, 0x000088BC }, /* GL_BUFFER_MAPPED_ARB */
+ { 1703, 0x000088BD }, /* GL_BUFFER_MAP_POINTER */
+ { 1725, 0x000088BD }, /* GL_BUFFER_MAP_POINTER_ARB */
+ { 1751, 0x00008764 }, /* GL_BUFFER_SIZE */
+ { 1766, 0x00008764 }, /* GL_BUFFER_SIZE_ARB */
+ { 1785, 0x00008765 }, /* GL_BUFFER_USAGE */
+ { 1801, 0x00008765 }, /* GL_BUFFER_USAGE_ARB */
+ { 1821, 0x00001400 }, /* GL_BYTE */
+ { 1829, 0x00002A24 }, /* GL_C3F_V3F */
+ { 1840, 0x00002A26 }, /* GL_C4F_N3F_V3F */
+ { 1855, 0x00002A22 }, /* GL_C4UB_V2F */
+ { 1867, 0x00002A23 }, /* GL_C4UB_V3F */
+ { 1879, 0x00000901 }, /* GL_CCW */
+ { 1886, 0x00002900 }, /* GL_CLAMP */
+ { 1895, 0x0000812D }, /* GL_CLAMP_TO_BORDER */
+ { 1914, 0x0000812D }, /* GL_CLAMP_TO_BORDER_ARB */
+ { 1937, 0x0000812D }, /* GL_CLAMP_TO_BORDER_SGIS */
+ { 1961, 0x0000812F }, /* GL_CLAMP_TO_EDGE */
+ { 1978, 0x0000812F }, /* GL_CLAMP_TO_EDGE_SGIS */
+ { 2000, 0x00001500 }, /* GL_CLEAR */
+ { 2009, 0x000084E1 }, /* GL_CLIENT_ACTIVE_TEXTURE */
+ { 2034, 0x000084E1 }, /* GL_CLIENT_ACTIVE_TEXTURE_ARB */
+ { 2063, 0xFFFFFFFF }, /* GL_CLIENT_ALL_ATTRIB_BITS */
+ { 2089, 0x00000BB1 }, /* GL_CLIENT_ATTRIB_STACK_DEPTH */
+ { 2118, 0x00000001 }, /* GL_CLIENT_PIXEL_STORE_BIT */
+ { 2144, 0x00000002 }, /* GL_CLIENT_VERTEX_ARRAY_BIT */
+ { 2171, 0x00003000 }, /* GL_CLIP_PLANE0 */
+ { 2186, 0x00003001 }, /* GL_CLIP_PLANE1 */
+ { 2201, 0x00003002 }, /* GL_CLIP_PLANE2 */
+ { 2216, 0x00003003 }, /* GL_CLIP_PLANE3 */
+ { 2231, 0x00003004 }, /* GL_CLIP_PLANE4 */
+ { 2246, 0x00003005 }, /* GL_CLIP_PLANE5 */
+ { 2261, 0x000080F0 }, /* GL_CLIP_VOLUME_CLIPPING_HINT_EXT */
+ { 2294, 0x00000A00 }, /* GL_COEFF */
+ { 2303, 0x00001800 }, /* GL_COLOR */
+ { 2312, 0x00008076 }, /* GL_COLOR_ARRAY */
+ { 2327, 0x00008898 }, /* GL_COLOR_ARRAY_BUFFER_BINDING */
+ { 2357, 0x00008898 }, /* GL_COLOR_ARRAY_BUFFER_BINDING_ARB */
+ { 2391, 0x00008090 }, /* GL_COLOR_ARRAY_POINTER */
+ { 2414, 0x00008081 }, /* GL_COLOR_ARRAY_SIZE */
+ { 2434, 0x00008083 }, /* GL_COLOR_ARRAY_STRIDE */
+ { 2456, 0x00008082 }, /* GL_COLOR_ARRAY_TYPE */
+ { 2476, 0x00008CE0 }, /* GL_COLOR_ATTACHMENT0_EXT */
+ { 2501, 0x00008CEA }, /* GL_COLOR_ATTACHMENT10_EXT */
+ { 2527, 0x00008CEB }, /* GL_COLOR_ATTACHMENT11_EXT */
+ { 2553, 0x00008CEC }, /* GL_COLOR_ATTACHMENT12_EXT */
+ { 2579, 0x00008CED }, /* GL_COLOR_ATTACHMENT13_EXT */
+ { 2605, 0x00008CEE }, /* GL_COLOR_ATTACHMENT14_EXT */
+ { 2631, 0x00008CEF }, /* GL_COLOR_ATTACHMENT15_EXT */
+ { 2657, 0x00008CE1 }, /* GL_COLOR_ATTACHMENT1_EXT */
+ { 2682, 0x00008CE2 }, /* GL_COLOR_ATTACHMENT2_EXT */
+ { 2707, 0x00008CE3 }, /* GL_COLOR_ATTACHMENT3_EXT */
+ { 2732, 0x00008CE4 }, /* GL_COLOR_ATTACHMENT4_EXT */
+ { 2757, 0x00008CE5 }, /* GL_COLOR_ATTACHMENT5_EXT */
+ { 2782, 0x00008CE6 }, /* GL_COLOR_ATTACHMENT6_EXT */
+ { 2807, 0x00008CE7 }, /* GL_COLOR_ATTACHMENT7_EXT */
+ { 2832, 0x00008CE8 }, /* GL_COLOR_ATTACHMENT8_EXT */
+ { 2857, 0x00008CE9 }, /* GL_COLOR_ATTACHMENT9_EXT */
+ { 2882, 0x00004000 }, /* GL_COLOR_BUFFER_BIT */
+ { 2902, 0x00000C22 }, /* GL_COLOR_CLEAR_VALUE */
+ { 2923, 0x00001900 }, /* GL_COLOR_INDEX */
+ { 2938, 0x00001603 }, /* GL_COLOR_INDEXES */
+ { 2955, 0x00000BF2 }, /* GL_COLOR_LOGIC_OP */
+ { 2973, 0x00000B57 }, /* GL_COLOR_MATERIAL */
+ { 2991, 0x00000B55 }, /* GL_COLOR_MATERIAL_FACE */
+ { 3014, 0x00000B56 }, /* GL_COLOR_MATERIAL_PARAMETER */
+ { 3042, 0x000080B1 }, /* GL_COLOR_MATRIX */
+ { 3058, 0x000080B1 }, /* GL_COLOR_MATRIX_SGI */
+ { 3078, 0x000080B2 }, /* GL_COLOR_MATRIX_STACK_DEPTH */
+ { 3106, 0x000080B2 }, /* GL_COLOR_MATRIX_STACK_DEPTH_SGI */
+ { 3138, 0x00008458 }, /* GL_COLOR_SUM */
+ { 3151, 0x00008458 }, /* GL_COLOR_SUM_ARB */
+ { 3168, 0x000080D0 }, /* GL_COLOR_TABLE */
+ { 3183, 0x000080DD }, /* GL_COLOR_TABLE_ALPHA_SIZE */
+ { 3209, 0x000080DD }, /* GL_COLOR_TABLE_ALPHA_SIZE_EXT */
+ { 3239, 0x000080DD }, /* GL_COLOR_TABLE_ALPHA_SIZE_SGI */
+ { 3269, 0x000080D7 }, /* GL_COLOR_TABLE_BIAS */
+ { 3289, 0x000080D7 }, /* GL_COLOR_TABLE_BIAS_SGI */
+ { 3313, 0x000080DC }, /* GL_COLOR_TABLE_BLUE_SIZE */
+ { 3338, 0x000080DC }, /* GL_COLOR_TABLE_BLUE_SIZE_EXT */
+ { 3367, 0x000080DC }, /* GL_COLOR_TABLE_BLUE_SIZE_SGI */
+ { 3396, 0x000080D8 }, /* GL_COLOR_TABLE_FORMAT */
+ { 3418, 0x000080D8 }, /* GL_COLOR_TABLE_FORMAT_EXT */
+ { 3444, 0x000080D8 }, /* GL_COLOR_TABLE_FORMAT_SGI */
+ { 3470, 0x000080DB }, /* GL_COLOR_TABLE_GREEN_SIZE */
+ { 3496, 0x000080DB }, /* GL_COLOR_TABLE_GREEN_SIZE_EXT */
+ { 3526, 0x000080DB }, /* GL_COLOR_TABLE_GREEN_SIZE_SGI */
+ { 3556, 0x000080DF }, /* GL_COLOR_TABLE_INTENSITY_SIZE */
+ { 3586, 0x000080DF }, /* GL_COLOR_TABLE_INTENSITY_SIZE_EXT */
+ { 3620, 0x000080DF }, /* GL_COLOR_TABLE_INTENSITY_SIZE_SGI */
+ { 3654, 0x000080DE }, /* GL_COLOR_TABLE_LUMINANCE_SIZE */
+ { 3684, 0x000080DE }, /* GL_COLOR_TABLE_LUMINANCE_SIZE_EXT */
+ { 3718, 0x000080DE }, /* GL_COLOR_TABLE_LUMINANCE_SIZE_SGI */
+ { 3752, 0x000080DA }, /* GL_COLOR_TABLE_RED_SIZE */
+ { 3776, 0x000080DA }, /* GL_COLOR_TABLE_RED_SIZE_EXT */
+ { 3804, 0x000080DA }, /* GL_COLOR_TABLE_RED_SIZE_SGI */
+ { 3832, 0x000080D6 }, /* GL_COLOR_TABLE_SCALE */
+ { 3853, 0x000080D6 }, /* GL_COLOR_TABLE_SCALE_SGI */
+ { 3878, 0x000080D9 }, /* GL_COLOR_TABLE_WIDTH */
+ { 3899, 0x000080D9 }, /* GL_COLOR_TABLE_WIDTH_EXT */
+ { 3924, 0x000080D9 }, /* GL_COLOR_TABLE_WIDTH_SGI */
+ { 3949, 0x00000C23 }, /* GL_COLOR_WRITEMASK */
+ { 3968, 0x00008570 }, /* GL_COMBINE */
+ { 3979, 0x00008503 }, /* GL_COMBINE4 */
+ { 3991, 0x00008572 }, /* GL_COMBINE_ALPHA */
+ { 4008, 0x00008572 }, /* GL_COMBINE_ALPHA_ARB */
+ { 4029, 0x00008572 }, /* GL_COMBINE_ALPHA_EXT */
+ { 4050, 0x00008570 }, /* GL_COMBINE_ARB */
+ { 4065, 0x00008570 }, /* GL_COMBINE_EXT */
+ { 4080, 0x00008571 }, /* GL_COMBINE_RGB */
+ { 4095, 0x00008571 }, /* GL_COMBINE_RGB_ARB */
+ { 4114, 0x00008571 }, /* GL_COMBINE_RGB_EXT */
+ { 4133, 0x0000884E }, /* GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT */
+ { 4169, 0x0000884E }, /* GL_COMPARE_R_TO_TEXTURE */
+ { 4193, 0x0000884E }, /* GL_COMPARE_R_TO_TEXTURE_ARB */
+ { 4221, 0x00001300 }, /* GL_COMPILE */
+ { 4232, 0x00001301 }, /* GL_COMPILE_AND_EXECUTE */
+ { 4255, 0x00008B81 }, /* GL_COMPILE_STATUS */
+ { 4273, 0x000084E9 }, /* GL_COMPRESSED_ALPHA */
+ { 4293, 0x000084E9 }, /* GL_COMPRESSED_ALPHA_ARB */
+ { 4317, 0x000084EC }, /* GL_COMPRESSED_INTENSITY */
+ { 4341, 0x000084EC }, /* GL_COMPRESSED_INTENSITY_ARB */
+ { 4369, 0x000084EA }, /* GL_COMPRESSED_LUMINANCE */
+ { 4393, 0x000084EB }, /* GL_COMPRESSED_LUMINANCE_ALPHA */
+ { 4423, 0x000084EB }, /* GL_COMPRESSED_LUMINANCE_ALPHA_ARB */
+ { 4457, 0x000084EA }, /* GL_COMPRESSED_LUMINANCE_ARB */
+ { 4485, 0x000084ED }, /* GL_COMPRESSED_RGB */
+ { 4503, 0x000084EE }, /* GL_COMPRESSED_RGBA */
+ { 4522, 0x000084EE }, /* GL_COMPRESSED_RGBA_ARB */
+ { 4545, 0x000086B1 }, /* GL_COMPRESSED_RGBA_FXT1_3DFX */
+ { 4574, 0x000083F1 }, /* GL_COMPRESSED_RGBA_S3TC_DXT1_EXT */
+ { 4607, 0x000083F2 }, /* GL_COMPRESSED_RGBA_S3TC_DXT3_EXT */
+ { 4640, 0x000083F3 }, /* GL_COMPRESSED_RGBA_S3TC_DXT5_EXT */
+ { 4673, 0x000084ED }, /* GL_COMPRESSED_RGB_ARB */
+ { 4695, 0x000086B0 }, /* GL_COMPRESSED_RGB_FXT1_3DFX */
+ { 4723, 0x000083F0 }, /* GL_COMPRESSED_RGB_S3TC_DXT1_EXT */
+ { 4755, 0x000086A3 }, /* GL_COMPRESSED_TEXTURE_FORMATS */
+ { 4785, 0x00008576 }, /* GL_CONSTANT */
+ { 4797, 0x00008003 }, /* GL_CONSTANT_ALPHA */
+ { 4815, 0x00008003 }, /* GL_CONSTANT_ALPHA_EXT */
+ { 4837, 0x00008576 }, /* GL_CONSTANT_ARB */
+ { 4853, 0x00001207 }, /* GL_CONSTANT_ATTENUATION */
+ { 4877, 0x00008151 }, /* GL_CONSTANT_BORDER_HP */
+ { 4899, 0x00008001 }, /* GL_CONSTANT_COLOR */
+ { 4917, 0x00008001 }, /* GL_CONSTANT_COLOR_EXT */
+ { 4939, 0x00008576 }, /* GL_CONSTANT_EXT */
+ { 4955, 0x00008010 }, /* GL_CONVOLUTION_1D */
+ { 4973, 0x00008011 }, /* GL_CONVOLUTION_2D */
+ { 4991, 0x00008154 }, /* GL_CONVOLUTION_BORDER_COLOR */
+ { 5019, 0x00008154 }, /* GL_CONVOLUTION_BORDER_COLOR_HP */
+ { 5050, 0x00008013 }, /* GL_CONVOLUTION_BORDER_MODE */
+ { 5077, 0x00008013 }, /* GL_CONVOLUTION_BORDER_MODE_EXT */
+ { 5108, 0x00008015 }, /* GL_CONVOLUTION_FILTER_BIAS */
+ { 5135, 0x00008015 }, /* GL_CONVOLUTION_FILTER_BIAS_EXT */
+ { 5166, 0x00008014 }, /* GL_CONVOLUTION_FILTER_SCALE */
+ { 5194, 0x00008014 }, /* GL_CONVOLUTION_FILTER_SCALE_EXT */
+ { 5226, 0x00008017 }, /* GL_CONVOLUTION_FORMAT */
+ { 5248, 0x00008017 }, /* GL_CONVOLUTION_FORMAT_EXT */
+ { 5274, 0x00008019 }, /* GL_CONVOLUTION_HEIGHT */
+ { 5296, 0x00008019 }, /* GL_CONVOLUTION_HEIGHT_EXT */
+ { 5322, 0x00008018 }, /* GL_CONVOLUTION_WIDTH */
+ { 5343, 0x00008018 }, /* GL_CONVOLUTION_WIDTH_EXT */
+ { 5368, 0x00008862 }, /* GL_COORD_REPLACE */
+ { 5385, 0x00008862 }, /* GL_COORD_REPLACE_ARB */
+ { 5406, 0x00008862 }, /* GL_COORD_REPLACE_NV */
+ { 5426, 0x00001503 }, /* GL_COPY */
+ { 5434, 0x0000150C }, /* GL_COPY_INVERTED */
+ { 5451, 0x00000706 }, /* GL_COPY_PIXEL_TOKEN */
+ { 5471, 0x00000B44 }, /* GL_CULL_FACE */
+ { 5484, 0x00000B45 }, /* GL_CULL_FACE_MODE */
+ { 5502, 0x000081AA }, /* GL_CULL_VERTEX_EXT */
+ { 5521, 0x000081AC }, /* GL_CULL_VERTEX_EYE_POSITION_EXT */
+ { 5553, 0x000081AB }, /* GL_CULL_VERTEX_OBJECT_POSITION_EXT */
+ { 5588, 0x00008626 }, /* GL_CURRENT_ATTRIB_NV */
+ { 5609, 0x00000001 }, /* GL_CURRENT_BIT */
+ { 5624, 0x00000B00 }, /* GL_CURRENT_COLOR */
+ { 5641, 0x00008453 }, /* GL_CURRENT_FOG_COORD */
+ { 5662, 0x00008453 }, /* GL_CURRENT_FOG_COORDINATE */
+ { 5688, 0x00000B01 }, /* GL_CURRENT_INDEX */
+ { 5705, 0x00008641 }, /* GL_CURRENT_MATRIX_ARB */
+ { 5727, 0x00008845 }, /* GL_CURRENT_MATRIX_INDEX_ARB */
+ { 5755, 0x00008641 }, /* GL_CURRENT_MATRIX_NV */
+ { 5776, 0x00008640 }, /* GL_CURRENT_MATRIX_STACK_DEPTH_ARB */
+ { 5810, 0x00008640 }, /* GL_CURRENT_MATRIX_STACK_DEPTH_NV */
+ { 5843, 0x00000B02 }, /* GL_CURRENT_NORMAL */
+ { 5861, 0x00008843 }, /* GL_CURRENT_PALETTE_MATRIX_ARB */
+ { 5891, 0x00008B8D }, /* GL_CURRENT_PROGRAM */
+ { 5910, 0x00008865 }, /* GL_CURRENT_QUERY */
+ { 5927, 0x00008865 }, /* GL_CURRENT_QUERY_ARB */
+ { 5948, 0x00000B04 }, /* GL_CURRENT_RASTER_COLOR */
+ { 5972, 0x00000B09 }, /* GL_CURRENT_RASTER_DISTANCE */
+ { 5999, 0x00000B05 }, /* GL_CURRENT_RASTER_INDEX */
+ { 6023, 0x00000B07 }, /* GL_CURRENT_RASTER_POSITION */
+ { 6050, 0x00000B08 }, /* GL_CURRENT_RASTER_POSITION_VALID */
+ { 6083, 0x00000B06 }, /* GL_CURRENT_RASTER_TEXTURE_COORDS */
+ { 6116, 0x00008459 }, /* GL_CURRENT_SECONDARY_COLOR */
+ { 6143, 0x00000B03 }, /* GL_CURRENT_TEXTURE_COORDS */
+ { 6169, 0x00008626 }, /* GL_CURRENT_VERTEX_ATTRIB */
+ { 6194, 0x00008626 }, /* GL_CURRENT_VERTEX_ATTRIB_ARB */
+ { 6223, 0x000086A8 }, /* GL_CURRENT_WEIGHT_ARB */
+ { 6245, 0x00000900 }, /* GL_CW */
+ { 6251, 0x0000875B }, /* GL_DEBUG_ASSERT_MESA */
+ { 6272, 0x00008759 }, /* GL_DEBUG_OBJECT_MESA */
+ { 6293, 0x0000875A }, /* GL_DEBUG_PRINT_MESA */
+ { 6313, 0x00002101 }, /* GL_DECAL */
+ { 6322, 0x00001E03 }, /* GL_DECR */
+ { 6330, 0x00008508 }, /* GL_DECR_WRAP */
+ { 6343, 0x00008508 }, /* GL_DECR_WRAP_EXT */
+ { 6360, 0x00008B80 }, /* GL_DELETE_STATUS */
+ { 6377, 0x00001801 }, /* GL_DEPTH */
+ { 6386, 0x00008D00 }, /* GL_DEPTH_ATTACHMENT_EXT */
+ { 6410, 0x00000D1F }, /* GL_DEPTH_BIAS */
+ { 6424, 0x00000D56 }, /* GL_DEPTH_BITS */
+ { 6438, 0x00008891 }, /* GL_DEPTH_BOUNDS_EXT */
+ { 6458, 0x00008890 }, /* GL_DEPTH_BOUNDS_TEST_EXT */
+ { 6483, 0x00000100 }, /* GL_DEPTH_BUFFER_BIT */
+ { 6503, 0x0000864F }, /* GL_DEPTH_CLAMP_NV */
+ { 6521, 0x00000B73 }, /* GL_DEPTH_CLEAR_VALUE */
+ { 6542, 0x00001902 }, /* GL_DEPTH_COMPONENT */
+ { 6561, 0x000081A5 }, /* GL_DEPTH_COMPONENT16 */
+ { 6582, 0x000081A5 }, /* GL_DEPTH_COMPONENT16_ARB */
+ { 6607, 0x000081A5 }, /* GL_DEPTH_COMPONENT16_SGIX */
+ { 6633, 0x000081A6 }, /* GL_DEPTH_COMPONENT24 */
+ { 6654, 0x000081A6 }, /* GL_DEPTH_COMPONENT24_ARB */
+ { 6679, 0x000081A6 }, /* GL_DEPTH_COMPONENT24_SGIX */
+ { 6705, 0x000081A7 }, /* GL_DEPTH_COMPONENT32 */
+ { 6726, 0x000081A7 }, /* GL_DEPTH_COMPONENT32_ARB */
+ { 6751, 0x000081A7 }, /* GL_DEPTH_COMPONENT32_SGIX */
+ { 6777, 0x00000B74 }, /* GL_DEPTH_FUNC */
+ { 6791, 0x00000B70 }, /* GL_DEPTH_RANGE */
+ { 6806, 0x00000D1E }, /* GL_DEPTH_SCALE */
+ { 6821, 0x000084F9 }, /* GL_DEPTH_STENCIL_NV */
+ { 6841, 0x0000886F }, /* GL_DEPTH_STENCIL_TO_BGRA_NV */
+ { 6869, 0x0000886E }, /* GL_DEPTH_STENCIL_TO_RGBA_NV */
+ { 6897, 0x00000B71 }, /* GL_DEPTH_TEST */
+ { 6911, 0x0000884B }, /* GL_DEPTH_TEXTURE_MODE */
+ { 6933, 0x0000884B }, /* GL_DEPTH_TEXTURE_MODE_ARB */
+ { 6959, 0x00000B72 }, /* GL_DEPTH_WRITEMASK */
+ { 6978, 0x00001201 }, /* GL_DIFFUSE */
+ { 6989, 0x00000BD0 }, /* GL_DITHER */
+ { 6999, 0x00000A02 }, /* GL_DOMAIN */
+ { 7009, 0x00001100 }, /* GL_DONT_CARE */
+ { 7022, 0x000086AE }, /* GL_DOT3_RGB */
+ { 7034, 0x000086AF }, /* GL_DOT3_RGBA */
+ { 7047, 0x000086AF }, /* GL_DOT3_RGBA_ARB */
+ { 7064, 0x00008741 }, /* GL_DOT3_RGBA_EXT */
+ { 7081, 0x000086AE }, /* GL_DOT3_RGB_ARB */
+ { 7097, 0x00008740 }, /* GL_DOT3_RGB_EXT */
+ { 7113, 0x0000140A }, /* GL_DOUBLE */
+ { 7123, 0x00000C32 }, /* GL_DOUBLEBUFFER */
+ { 7139, 0x00000C01 }, /* GL_DRAW_BUFFER */
+ { 7154, 0x00008825 }, /* GL_DRAW_BUFFER0 */
+ { 7170, 0x00008825 }, /* GL_DRAW_BUFFER0_ARB */
+ { 7190, 0x00008825 }, /* GL_DRAW_BUFFER0_ATI */
+ { 7210, 0x00008826 }, /* GL_DRAW_BUFFER1 */
+ { 7226, 0x0000882F }, /* GL_DRAW_BUFFER10 */
+ { 7243, 0x0000882F }, /* GL_DRAW_BUFFER10_ARB */
+ { 7264, 0x0000882F }, /* GL_DRAW_BUFFER10_ATI */
+ { 7285, 0x00008830 }, /* GL_DRAW_BUFFER11 */
+ { 7302, 0x00008830 }, /* GL_DRAW_BUFFER11_ARB */
+ { 7323, 0x00008830 }, /* GL_DRAW_BUFFER11_ATI */
+ { 7344, 0x00008831 }, /* GL_DRAW_BUFFER12 */
+ { 7361, 0x00008831 }, /* GL_DRAW_BUFFER12_ARB */
+ { 7382, 0x00008831 }, /* GL_DRAW_BUFFER12_ATI */
+ { 7403, 0x00008832 }, /* GL_DRAW_BUFFER13 */
+ { 7420, 0x00008832 }, /* GL_DRAW_BUFFER13_ARB */
+ { 7441, 0x00008832 }, /* GL_DRAW_BUFFER13_ATI */
+ { 7462, 0x00008833 }, /* GL_DRAW_BUFFER14 */
+ { 7479, 0x00008833 }, /* GL_DRAW_BUFFER14_ARB */
+ { 7500, 0x00008833 }, /* GL_DRAW_BUFFER14_ATI */
+ { 7521, 0x00008834 }, /* GL_DRAW_BUFFER15 */
+ { 7538, 0x00008834 }, /* GL_DRAW_BUFFER15_ARB */
+ { 7559, 0x00008834 }, /* GL_DRAW_BUFFER15_ATI */
+ { 7580, 0x00008826 }, /* GL_DRAW_BUFFER1_ARB */
+ { 7600, 0x00008826 }, /* GL_DRAW_BUFFER1_ATI */
+ { 7620, 0x00008827 }, /* GL_DRAW_BUFFER2 */
+ { 7636, 0x00008827 }, /* GL_DRAW_BUFFER2_ARB */
+ { 7656, 0x00008827 }, /* GL_DRAW_BUFFER2_ATI */
+ { 7676, 0x00008828 }, /* GL_DRAW_BUFFER3 */
+ { 7692, 0x00008828 }, /* GL_DRAW_BUFFER3_ARB */
+ { 7712, 0x00008828 }, /* GL_DRAW_BUFFER3_ATI */
+ { 7732, 0x00008829 }, /* GL_DRAW_BUFFER4 */
+ { 7748, 0x00008829 }, /* GL_DRAW_BUFFER4_ARB */
+ { 7768, 0x00008829 }, /* GL_DRAW_BUFFER4_ATI */
+ { 7788, 0x0000882A }, /* GL_DRAW_BUFFER5 */
+ { 7804, 0x0000882A }, /* GL_DRAW_BUFFER5_ARB */
+ { 7824, 0x0000882A }, /* GL_DRAW_BUFFER5_ATI */
+ { 7844, 0x0000882B }, /* GL_DRAW_BUFFER6 */
+ { 7860, 0x0000882B }, /* GL_DRAW_BUFFER6_ARB */
+ { 7880, 0x0000882B }, /* GL_DRAW_BUFFER6_ATI */
+ { 7900, 0x0000882C }, /* GL_DRAW_BUFFER7 */
+ { 7916, 0x0000882C }, /* GL_DRAW_BUFFER7_ARB */
+ { 7936, 0x0000882C }, /* GL_DRAW_BUFFER7_ATI */
+ { 7956, 0x0000882D }, /* GL_DRAW_BUFFER8 */
+ { 7972, 0x0000882D }, /* GL_DRAW_BUFFER8_ARB */
+ { 7992, 0x0000882D }, /* GL_DRAW_BUFFER8_ATI */
+ { 8012, 0x0000882E }, /* GL_DRAW_BUFFER9 */
+ { 8028, 0x0000882E }, /* GL_DRAW_BUFFER9_ARB */
+ { 8048, 0x0000882E }, /* GL_DRAW_BUFFER9_ATI */
+ { 8068, 0x00008CA6 }, /* GL_DRAW_FRAMEBUFFER_BINDING_EXT */
+ { 8100, 0x00008CA9 }, /* GL_DRAW_FRAMEBUFFER_EXT */
+ { 8124, 0x00000705 }, /* GL_DRAW_PIXEL_TOKEN */
+ { 8144, 0x00000304 }, /* GL_DST_ALPHA */
+ { 8157, 0x00000306 }, /* GL_DST_COLOR */
+ { 8170, 0x000088EA }, /* GL_DYNAMIC_COPY */
+ { 8186, 0x000088EA }, /* GL_DYNAMIC_COPY_ARB */
+ { 8206, 0x000088E8 }, /* GL_DYNAMIC_DRAW */
+ { 8222, 0x000088E8 }, /* GL_DYNAMIC_DRAW_ARB */
+ { 8242, 0x000088E9 }, /* GL_DYNAMIC_READ */
+ { 8258, 0x000088E9 }, /* GL_DYNAMIC_READ_ARB */
+ { 8278, 0x00000B43 }, /* GL_EDGE_FLAG */
+ { 8291, 0x00008079 }, /* GL_EDGE_FLAG_ARRAY */
+ { 8310, 0x0000889B }, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */
+ { 8344, 0x0000889B }, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB */
+ { 8382, 0x00008093 }, /* GL_EDGE_FLAG_ARRAY_POINTER */
+ { 8409, 0x0000808C }, /* GL_EDGE_FLAG_ARRAY_STRIDE */
+ { 8435, 0x00008893 }, /* GL_ELEMENT_ARRAY_BUFFER */
+ { 8459, 0x00008895 }, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */
+ { 8491, 0x00008895 }, /* GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB */
+ { 8527, 0x00001600 }, /* GL_EMISSION */
+ { 8539, 0x00002000 }, /* GL_ENABLE_BIT */
+ { 8553, 0x00000202 }, /* GL_EQUAL */
+ { 8562, 0x00001509 }, /* GL_EQUIV */
+ { 8571, 0x00010000 }, /* GL_EVAL_BIT */
+ { 8583, 0x00000800 }, /* GL_EXP */
+ { 8590, 0x00000801 }, /* GL_EXP2 */
+ { 8598, 0x00001F03 }, /* GL_EXTENSIONS */
+ { 8612, 0x00002400 }, /* GL_EYE_LINEAR */
+ { 8626, 0x00002502 }, /* GL_EYE_PLANE */
+ { 8639, 0x0000855C }, /* GL_EYE_PLANE_ABSOLUTE_NV */
+ { 8664, 0x0000855B }, /* GL_EYE_RADIAL_NV */
+ { 8681, 0x00000000 }, /* GL_FALSE */
+ { 8690, 0x00001101 }, /* GL_FASTEST */
+ { 8701, 0x00001C01 }, /* GL_FEEDBACK */
+ { 8713, 0x00000DF0 }, /* GL_FEEDBACK_BUFFER_POINTER */
+ { 8740, 0x00000DF1 }, /* GL_FEEDBACK_BUFFER_SIZE */
+ { 8764, 0x00000DF2 }, /* GL_FEEDBACK_BUFFER_TYPE */
+ { 8788, 0x00001B02 }, /* GL_FILL */
+ { 8796, 0x00001D00 }, /* GL_FLAT */
+ { 8804, 0x00001406 }, /* GL_FLOAT */
+ { 8813, 0x00008B5A }, /* GL_FLOAT_MAT2 */
+ { 8827, 0x00008B5A }, /* GL_FLOAT_MAT2_ARB */
+ { 8845, 0x00008B5B }, /* GL_FLOAT_MAT3 */
+ { 8859, 0x00008B5B }, /* GL_FLOAT_MAT3_ARB */
+ { 8877, 0x00008B5C }, /* GL_FLOAT_MAT4 */
+ { 8891, 0x00008B5C }, /* GL_FLOAT_MAT4_ARB */
+ { 8909, 0x00008B50 }, /* GL_FLOAT_VEC2 */
+ { 8923, 0x00008B50 }, /* GL_FLOAT_VEC2_ARB */
+ { 8941, 0x00008B51 }, /* GL_FLOAT_VEC3 */
+ { 8955, 0x00008B51 }, /* GL_FLOAT_VEC3_ARB */
+ { 8973, 0x00008B52 }, /* GL_FLOAT_VEC4 */
+ { 8987, 0x00008B52 }, /* GL_FLOAT_VEC4_ARB */
+ { 9005, 0x00000B60 }, /* GL_FOG */
+ { 9012, 0x00000080 }, /* GL_FOG_BIT */
+ { 9023, 0x00000B66 }, /* GL_FOG_COLOR */
+ { 9036, 0x00008451 }, /* GL_FOG_COORD */
+ { 9049, 0x00008451 }, /* GL_FOG_COORDINATE */
+ { 9067, 0x00008457 }, /* GL_FOG_COORDINATE_ARRAY */
+ { 9091, 0x0000889D }, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */
+ { 9130, 0x0000889D }, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB */
+ { 9173, 0x00008456 }, /* GL_FOG_COORDINATE_ARRAY_POINTER */
+ { 9205, 0x00008455 }, /* GL_FOG_COORDINATE_ARRAY_STRIDE */
+ { 9236, 0x00008454 }, /* GL_FOG_COORDINATE_ARRAY_TYPE */
+ { 9265, 0x00008450 }, /* GL_FOG_COORDINATE_SOURCE */
+ { 9290, 0x00008457 }, /* GL_FOG_COORD_ARRAY */
+ { 9309, 0x0000889D }, /* GL_FOG_COORD_ARRAY_BUFFER_BINDING */
+ { 9343, 0x00008456 }, /* GL_FOG_COORD_ARRAY_POINTER */
+ { 9370, 0x00008455 }, /* GL_FOG_COORD_ARRAY_STRIDE */
+ { 9396, 0x00008454 }, /* GL_FOG_COORD_ARRAY_TYPE */
+ { 9420, 0x00008450 }, /* GL_FOG_COORD_SRC */
+ { 9437, 0x00000B62 }, /* GL_FOG_DENSITY */
+ { 9452, 0x0000855A }, /* GL_FOG_DISTANCE_MODE_NV */
+ { 9476, 0x00000B64 }, /* GL_FOG_END */
+ { 9487, 0x00000C54 }, /* GL_FOG_HINT */
+ { 9499, 0x00000B61 }, /* GL_FOG_INDEX */
+ { 9512, 0x00000B65 }, /* GL_FOG_MODE */
+ { 9524, 0x00008198 }, /* GL_FOG_OFFSET_SGIX */
+ { 9543, 0x00008199 }, /* GL_FOG_OFFSET_VALUE_SGIX */
+ { 9568, 0x00000B63 }, /* GL_FOG_START */
+ { 9581, 0x00008452 }, /* GL_FRAGMENT_DEPTH */
+ { 9599, 0x00008804 }, /* GL_FRAGMENT_PROGRAM_ARB */
+ { 9623, 0x00008B30 }, /* GL_FRAGMENT_SHADER */
+ { 9642, 0x00008B30 }, /* GL_FRAGMENT_SHADER_ARB */
+ { 9665, 0x00008B8B }, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */
+ { 9700, 0x00008CD1 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT */
+ { 9742, 0x00008CD0 }, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT */
+ { 9784, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT */
+ { 9833, 0x00008CD3 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT */
+ { 9885, 0x00008CD4 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT */
+ { 9929, 0x00008CD2 }, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT */
+ { 9973, 0x00008CA6 }, /* GL_FRAMEBUFFER_BINDING_EXT */
+ { 10000, 0x00008CD5 }, /* GL_FRAMEBUFFER_COMPLETE_EXT */
+ { 10028, 0x00008D40 }, /* GL_FRAMEBUFFER_EXT */
+ { 10047, 0x00008CD6 }, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT */
+ { 10088, 0x00008CD9 }, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT */
+ { 10129, 0x00008CDB }, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT */
+ { 10171, 0x00008CD8 }, /* GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT */
+ { 10222, 0x00008CDA }, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT */
+ { 10260, 0x00008CD7 }, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT */
+ { 10309, 0x00008CDC }, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT */
+ { 10351, 0x00008CDE }, /* GL_FRAMEBUFFER_STATUS_ERROR_EXT */
+ { 10383, 0x00008CDD }, /* GL_FRAMEBUFFER_UNSUPPORTED_EXT */
+ { 10414, 0x00000404 }, /* GL_FRONT */
+ { 10423, 0x00000408 }, /* GL_FRONT_AND_BACK */
+ { 10441, 0x00000B46 }, /* GL_FRONT_FACE */
+ { 10455, 0x00000400 }, /* GL_FRONT_LEFT */
+ { 10469, 0x00000401 }, /* GL_FRONT_RIGHT */
+ { 10484, 0x00008006 }, /* GL_FUNC_ADD */
+ { 10496, 0x00008006 }, /* GL_FUNC_ADD_EXT */
+ { 10512, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT */
+ { 10537, 0x0000800B }, /* GL_FUNC_REVERSE_SUBTRACT_EXT */
+ { 10566, 0x0000800A }, /* GL_FUNC_SUBTRACT */
+ { 10583, 0x0000800A }, /* GL_FUNC_SUBTRACT_EXT */
+ { 10604, 0x00008191 }, /* GL_GENERATE_MIPMAP */
+ { 10623, 0x00008192 }, /* GL_GENERATE_MIPMAP_HINT */
+ { 10647, 0x00008192 }, /* GL_GENERATE_MIPMAP_HINT_SGIS */
+ { 10676, 0x00008191 }, /* GL_GENERATE_MIPMAP_SGIS */
+ { 10700, 0x00000206 }, /* GL_GEQUAL */
+ { 10710, 0x00008009 }, /* GL_GL_BLEND_EQUATION_RGB */
+ { 10735, 0x00008C4A }, /* GL_GL_COMPRESSED_SLUMINANCE */
+ { 10763, 0x00008C4B }, /* GL_GL_COMPRESSED_SLUMINANCE_ALPHA */
+ { 10797, 0x00008C48 }, /* GL_GL_COMPRESSED_SRGB */
+ { 10819, 0x00008C49 }, /* GL_GL_COMPRESSED_SRGB_ALPHA */
+ { 10847, 0x0000845F }, /* GL_GL_CURRENT_RASTER_SECONDARY_COLOR */
+ { 10884, 0x00008B65 }, /* GL_GL_FLOAT_MAT2x3 */
+ { 10903, 0x00008B66 }, /* GL_GL_FLOAT_MAT2x4 */
+ { 10922, 0x00008B67 }, /* GL_GL_FLOAT_MAT3x2 */
+ { 10941, 0x00008B68 }, /* GL_GL_FLOAT_MAT3x4 */
+ { 10960, 0x00008B69 }, /* GL_GL_FLOAT_MAT4x2 */
+ { 10979, 0x00008B6A }, /* GL_GL_FLOAT_MAT4x3 */
+ { 10998, 0x000088EB }, /* GL_GL_PIXEL_PACK_BUFFER */
+ { 11022, 0x000088ED }, /* GL_GL_PIXEL_PACK_BUFFER_BINDING */
+ { 11054, 0x000088EC }, /* GL_GL_PIXEL_UNPACK_BUFFER */
+ { 11080, 0x000088EF }, /* GL_GL_PIXEL_UNPACK_BUFFER_BINDING */
+ { 11114, 0x00008C46 }, /* GL_GL_SLUMINANCE */
+ { 11131, 0x00008C47 }, /* GL_GL_SLUMINANCE8 */
+ { 11149, 0x00008C45 }, /* GL_GL_SLUMINANCE8_ALPHA8 */
+ { 11174, 0x00008C44 }, /* GL_GL_SLUMINANCE_ALPHA */
+ { 11197, 0x00008C40 }, /* GL_GL_SRGB */
+ { 11208, 0x00008C41 }, /* GL_GL_SRGB8 */
+ { 11220, 0x00008C43 }, /* GL_GL_SRGB8_ALPHA8 */
+ { 11239, 0x00008C42 }, /* GL_GL_SRGB_ALPHA */
+ { 11256, 0x00000204 }, /* GL_GREATER */
+ { 11267, 0x00001904 }, /* GL_GREEN */
+ { 11276, 0x00000D19 }, /* GL_GREEN_BIAS */
+ { 11290, 0x00000D53 }, /* GL_GREEN_BITS */
+ { 11304, 0x00000D18 }, /* GL_GREEN_SCALE */
+ { 11319, 0x00008000 }, /* GL_HINT_BIT */
+ { 11331, 0x00008024 }, /* GL_HISTOGRAM */
+ { 11344, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE */
+ { 11368, 0x0000802B }, /* GL_HISTOGRAM_ALPHA_SIZE_EXT */
+ { 11396, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE */
+ { 11419, 0x0000802A }, /* GL_HISTOGRAM_BLUE_SIZE_EXT */
+ { 11446, 0x00008024 }, /* GL_HISTOGRAM_EXT */
+ { 11463, 0x00008027 }, /* GL_HISTOGRAM_FORMAT */
+ { 11483, 0x00008027 }, /* GL_HISTOGRAM_FORMAT_EXT */
+ { 11507, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE */
+ { 11531, 0x00008029 }, /* GL_HISTOGRAM_GREEN_SIZE_EXT */
+ { 11559, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE */
+ { 11587, 0x0000802C }, /* GL_HISTOGRAM_LUMINANCE_SIZE_EXT */
+ { 11619, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE */
+ { 11641, 0x00008028 }, /* GL_HISTOGRAM_RED_SIZE_EXT */
+ { 11667, 0x0000802D }, /* GL_HISTOGRAM_SINK */
+ { 11685, 0x0000802D }, /* GL_HISTOGRAM_SINK_EXT */
+ { 11707, 0x00008026 }, /* GL_HISTOGRAM_WIDTH */
+ { 11726, 0x00008026 }, /* GL_HISTOGRAM_WIDTH_EXT */
+ { 11749, 0x0000862A }, /* GL_IDENTITY_NV */
+ { 11764, 0x00008150 }, /* GL_IGNORE_BORDER_HP */
+ { 11784, 0x00008B9B }, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES */
+ { 11824, 0x00008B9A }, /* GL_IMPLEMENTATION_COLOR_READ_TYPE_OES */
+ { 11862, 0x00001E02 }, /* GL_INCR */
+ { 11870, 0x00008507 }, /* GL_INCR_WRAP */
+ { 11883, 0x00008507 }, /* GL_INCR_WRAP_EXT */
+ { 11900, 0x00008077 }, /* GL_INDEX_ARRAY */
+ { 11915, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING */
+ { 11945, 0x00008899 }, /* GL_INDEX_ARRAY_BUFFER_BINDING_ARB */
+ { 11979, 0x00008091 }, /* GL_INDEX_ARRAY_POINTER */
+ { 12002, 0x00008086 }, /* GL_INDEX_ARRAY_STRIDE */
+ { 12024, 0x00008085 }, /* GL_INDEX_ARRAY_TYPE */
+ { 12044, 0x00000D51 }, /* GL_INDEX_BITS */
+ { 12058, 0x00000C20 }, /* GL_INDEX_CLEAR_VALUE */
+ { 12079, 0x00000BF1 }, /* GL_INDEX_LOGIC_OP */
+ { 12097, 0x00000C30 }, /* GL_INDEX_MODE */
+ { 12111, 0x00000D13 }, /* GL_INDEX_OFFSET */
+ { 12127, 0x00000D12 }, /* GL_INDEX_SHIFT */
+ { 12142, 0x00000C21 }, /* GL_INDEX_WRITEMASK */
+ { 12161, 0x00008B84 }, /* GL_INFO_LOG_LENGTH */
+ { 12180, 0x00001404 }, /* GL_INT */
+ { 12187, 0x00008049 }, /* GL_INTENSITY */
+ { 12200, 0x0000804C }, /* GL_INTENSITY12 */
+ { 12215, 0x0000804C }, /* GL_INTENSITY12_EXT */
+ { 12234, 0x0000804D }, /* GL_INTENSITY16 */
+ { 12249, 0x0000804D }, /* GL_INTENSITY16_EXT */
+ { 12268, 0x0000804A }, /* GL_INTENSITY4 */
+ { 12282, 0x0000804A }, /* GL_INTENSITY4_EXT */
+ { 12300, 0x0000804B }, /* GL_INTENSITY8 */
+ { 12314, 0x0000804B }, /* GL_INTENSITY8_EXT */
+ { 12332, 0x00008049 }, /* GL_INTENSITY_EXT */
+ { 12349, 0x00008575 }, /* GL_INTERPOLATE */
+ { 12364, 0x00008575 }, /* GL_INTERPOLATE_ARB */
+ { 12383, 0x00008575 }, /* GL_INTERPOLATE_EXT */
+ { 12402, 0x00008B53 }, /* GL_INT_VEC2 */
+ { 12414, 0x00008B53 }, /* GL_INT_VEC2_ARB */
+ { 12430, 0x00008B54 }, /* GL_INT_VEC3 */
+ { 12442, 0x00008B54 }, /* GL_INT_VEC3_ARB */
+ { 12458, 0x00008B55 }, /* GL_INT_VEC4 */
+ { 12470, 0x00008B55 }, /* GL_INT_VEC4_ARB */
+ { 12486, 0x00000500 }, /* GL_INVALID_ENUM */
+ { 12502, 0x00000506 }, /* GL_INVALID_FRAMEBUFFER_OPERATION_EXT */
+ { 12539, 0x00000502 }, /* GL_INVALID_OPERATION */
+ { 12560, 0x00000501 }, /* GL_INVALID_VALUE */
+ { 12577, 0x0000862B }, /* GL_INVERSE_NV */
+ { 12591, 0x0000862D }, /* GL_INVERSE_TRANSPOSE_NV */
+ { 12615, 0x0000150A }, /* GL_INVERT */
+ { 12625, 0x00001E00 }, /* GL_KEEP */
+ { 12633, 0x00000406 }, /* GL_LEFT */
+ { 12641, 0x00000203 }, /* GL_LEQUAL */
+ { 12651, 0x00000201 }, /* GL_LESS */
+ { 12659, 0x00004000 }, /* GL_LIGHT0 */
+ { 12669, 0x00004001 }, /* GL_LIGHT1 */
+ { 12679, 0x00004002 }, /* GL_LIGHT2 */
+ { 12689, 0x00004003 }, /* GL_LIGHT3 */
+ { 12699, 0x00004004 }, /* GL_LIGHT4 */
+ { 12709, 0x00004005 }, /* GL_LIGHT5 */
+ { 12719, 0x00004006 }, /* GL_LIGHT6 */
+ { 12729, 0x00004007 }, /* GL_LIGHT7 */
+ { 12739, 0x00000B50 }, /* GL_LIGHTING */
+ { 12751, 0x00000040 }, /* GL_LIGHTING_BIT */
+ { 12767, 0x00000B53 }, /* GL_LIGHT_MODEL_AMBIENT */
+ { 12790, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL */
+ { 12819, 0x000081F8 }, /* GL_LIGHT_MODEL_COLOR_CONTROL_EXT */
+ { 12852, 0x00000B51 }, /* GL_LIGHT_MODEL_LOCAL_VIEWER */
+ { 12880, 0x00000B52 }, /* GL_LIGHT_MODEL_TWO_SIDE */
+ { 12904, 0x00001B01 }, /* GL_LINE */
+ { 12912, 0x00002601 }, /* GL_LINEAR */
+ { 12922, 0x00001208 }, /* GL_LINEAR_ATTENUATION */
+ { 12944, 0x00008170 }, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */
+ { 12974, 0x0000844F }, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */
+ { 13005, 0x00002703 }, /* GL_LINEAR_MIPMAP_LINEAR */
+ { 13029, 0x00002701 }, /* GL_LINEAR_MIPMAP_NEAREST */
+ { 13054, 0x00000001 }, /* GL_LINES */
+ { 13063, 0x00000004 }, /* GL_LINE_BIT */
+ { 13075, 0x00000002 }, /* GL_LINE_LOOP */
+ { 13088, 0x00000707 }, /* GL_LINE_RESET_TOKEN */
+ { 13108, 0x00000B20 }, /* GL_LINE_SMOOTH */
+ { 13123, 0x00000C52 }, /* GL_LINE_SMOOTH_HINT */
+ { 13143, 0x00000B24 }, /* GL_LINE_STIPPLE */
+ { 13159, 0x00000B25 }, /* GL_LINE_STIPPLE_PATTERN */
+ { 13183, 0x00000B26 }, /* GL_LINE_STIPPLE_REPEAT */
+ { 13206, 0x00000003 }, /* GL_LINE_STRIP */
+ { 13220, 0x00000702 }, /* GL_LINE_TOKEN */
+ { 13234, 0x00000B21 }, /* GL_LINE_WIDTH */
+ { 13248, 0x00000B23 }, /* GL_LINE_WIDTH_GRANULARITY */
+ { 13274, 0x00000B22 }, /* GL_LINE_WIDTH_RANGE */
+ { 13294, 0x00008B82 }, /* GL_LINK_STATUS */
+ { 13309, 0x00000B32 }, /* GL_LIST_BASE */
+ { 13322, 0x00020000 }, /* GL_LIST_BIT */
+ { 13334, 0x00000B33 }, /* GL_LIST_INDEX */
+ { 13348, 0x00000B30 }, /* GL_LIST_MODE */
+ { 13361, 0x00000101 }, /* GL_LOAD */
+ { 13369, 0x00000BF1 }, /* GL_LOGIC_OP */
+ { 13381, 0x00000BF0 }, /* GL_LOGIC_OP_MODE */
+ { 13398, 0x00008CA1 }, /* GL_LOWER_LEFT */
+ { 13412, 0x00001909 }, /* GL_LUMINANCE */
+ { 13425, 0x00008041 }, /* GL_LUMINANCE12 */
+ { 13440, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12 */
+ { 13463, 0x00008047 }, /* GL_LUMINANCE12_ALPHA12_EXT */
+ { 13490, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4 */
+ { 13512, 0x00008046 }, /* GL_LUMINANCE12_ALPHA4_EXT */
+ { 13538, 0x00008041 }, /* GL_LUMINANCE12_EXT */
+ { 13557, 0x00008042 }, /* GL_LUMINANCE16 */
+ { 13572, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16 */
+ { 13595, 0x00008048 }, /* GL_LUMINANCE16_ALPHA16_EXT */
+ { 13622, 0x00008042 }, /* GL_LUMINANCE16_EXT */
+ { 13641, 0x0000803F }, /* GL_LUMINANCE4 */
+ { 13655, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4 */
+ { 13676, 0x00008043 }, /* GL_LUMINANCE4_ALPHA4_EXT */
+ { 13701, 0x0000803F }, /* GL_LUMINANCE4_EXT */
+ { 13719, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2 */
+ { 13740, 0x00008044 }, /* GL_LUMINANCE6_ALPHA2_EXT */
+ { 13765, 0x00008040 }, /* GL_LUMINANCE8 */
+ { 13779, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8 */
+ { 13800, 0x00008045 }, /* GL_LUMINANCE8_ALPHA8_EXT */
+ { 13825, 0x00008040 }, /* GL_LUMINANCE8_EXT */
+ { 13843, 0x0000190A }, /* GL_LUMINANCE_ALPHA */
+ { 13862, 0x00000D90 }, /* GL_MAP1_COLOR_4 */
+ { 13878, 0x00000DD0 }, /* GL_MAP1_GRID_DOMAIN */
+ { 13898, 0x00000DD1 }, /* GL_MAP1_GRID_SEGMENTS */
+ { 13920, 0x00000D91 }, /* GL_MAP1_INDEX */
+ { 13934, 0x00000D92 }, /* GL_MAP1_NORMAL */
+ { 13949, 0x00000D93 }, /* GL_MAP1_TEXTURE_COORD_1 */
+ { 13973, 0x00000D94 }, /* GL_MAP1_TEXTURE_COORD_2 */
+ { 13997, 0x00000D95 }, /* GL_MAP1_TEXTURE_COORD_3 */
+ { 14021, 0x00000D96 }, /* GL_MAP1_TEXTURE_COORD_4 */
+ { 14045, 0x00000D97 }, /* GL_MAP1_VERTEX_3 */
+ { 14062, 0x00000D98 }, /* GL_MAP1_VERTEX_4 */
+ { 14079, 0x00008660 }, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */
+ { 14107, 0x0000866A }, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */
+ { 14136, 0x0000866B }, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */
+ { 14165, 0x0000866C }, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */
+ { 14194, 0x0000866D }, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */
+ { 14223, 0x0000866E }, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */
+ { 14252, 0x0000866F }, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */
+ { 14281, 0x00008661 }, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */
+ { 14309, 0x00008662 }, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */
+ { 14337, 0x00008663 }, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */
+ { 14365, 0x00008664 }, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */
+ { 14393, 0x00008665 }, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */
+ { 14421, 0x00008666 }, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */
+ { 14449, 0x00008667 }, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */
+ { 14477, 0x00008668 }, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */
+ { 14505, 0x00008669 }, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */
+ { 14533, 0x00000DB0 }, /* GL_MAP2_COLOR_4 */
+ { 14549, 0x00000DD2 }, /* GL_MAP2_GRID_DOMAIN */
+ { 14569, 0x00000DD3 }, /* GL_MAP2_GRID_SEGMENTS */
+ { 14591, 0x00000DB1 }, /* GL_MAP2_INDEX */
+ { 14605, 0x00000DB2 }, /* GL_MAP2_NORMAL */
+ { 14620, 0x00000DB3 }, /* GL_MAP2_TEXTURE_COORD_1 */
+ { 14644, 0x00000DB4 }, /* GL_MAP2_TEXTURE_COORD_2 */
+ { 14668, 0x00000DB5 }, /* GL_MAP2_TEXTURE_COORD_3 */
+ { 14692, 0x00000DB6 }, /* GL_MAP2_TEXTURE_COORD_4 */
+ { 14716, 0x00000DB7 }, /* GL_MAP2_VERTEX_3 */
+ { 14733, 0x00000DB8 }, /* GL_MAP2_VERTEX_4 */
+ { 14750, 0x00008670 }, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */
+ { 14778, 0x0000867A }, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */
+ { 14807, 0x0000867B }, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */
+ { 14836, 0x0000867C }, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */
+ { 14865, 0x0000867D }, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */
+ { 14894, 0x0000867E }, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */
+ { 14923, 0x0000867F }, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */
+ { 14952, 0x00008671 }, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */
+ { 14980, 0x00008672 }, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */
+ { 15008, 0x00008673 }, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */
+ { 15036, 0x00008674 }, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */
+ { 15064, 0x00008675 }, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */
+ { 15092, 0x00008676 }, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */
+ { 15120, 0x00008677 }, /* GL_MAP2_VERTEX_ATTRIB7_4_NV */
+ { 15148, 0x00008678 }, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */
+ { 15176, 0x00008679 }, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */
+ { 15204, 0x00000D10 }, /* GL_MAP_COLOR */
+ { 15217, 0x00000D11 }, /* GL_MAP_STENCIL */
+ { 15232, 0x000088C0 }, /* GL_MATRIX0_ARB */
+ { 15247, 0x00008630 }, /* GL_MATRIX0_NV */
+ { 15261, 0x000088CA }, /* GL_MATRIX10_ARB */
+ { 15277, 0x000088CB }, /* GL_MATRIX11_ARB */
+ { 15293, 0x000088CC }, /* GL_MATRIX12_ARB */
+ { 15309, 0x000088CD }, /* GL_MATRIX13_ARB */
+ { 15325, 0x000088CE }, /* GL_MATRIX14_ARB */
+ { 15341, 0x000088CF }, /* GL_MATRIX15_ARB */
+ { 15357, 0x000088D0 }, /* GL_MATRIX16_ARB */
+ { 15373, 0x000088D1 }, /* GL_MATRIX17_ARB */
+ { 15389, 0x000088D2 }, /* GL_MATRIX18_ARB */
+ { 15405, 0x000088D3 }, /* GL_MATRIX19_ARB */
+ { 15421, 0x000088C1 }, /* GL_MATRIX1_ARB */
+ { 15436, 0x00008631 }, /* GL_MATRIX1_NV */
+ { 15450, 0x000088D4 }, /* GL_MATRIX20_ARB */
+ { 15466, 0x000088D5 }, /* GL_MATRIX21_ARB */
+ { 15482, 0x000088D6 }, /* GL_MATRIX22_ARB */
+ { 15498, 0x000088D7 }, /* GL_MATRIX23_ARB */
+ { 15514, 0x000088D8 }, /* GL_MATRIX24_ARB */
+ { 15530, 0x000088D9 }, /* GL_MATRIX25_ARB */
+ { 15546, 0x000088DA }, /* GL_MATRIX26_ARB */
+ { 15562, 0x000088DB }, /* GL_MATRIX27_ARB */
+ { 15578, 0x000088DC }, /* GL_MATRIX28_ARB */
+ { 15594, 0x000088DD }, /* GL_MATRIX29_ARB */
+ { 15610, 0x000088C2 }, /* GL_MATRIX2_ARB */
+ { 15625, 0x00008632 }, /* GL_MATRIX2_NV */
+ { 15639, 0x000088DE }, /* GL_MATRIX30_ARB */
+ { 15655, 0x000088DF }, /* GL_MATRIX31_ARB */
+ { 15671, 0x000088C3 }, /* GL_MATRIX3_ARB */
+ { 15686, 0x00008633 }, /* GL_MATRIX3_NV */
+ { 15700, 0x000088C4 }, /* GL_MATRIX4_ARB */
+ { 15715, 0x00008634 }, /* GL_MATRIX4_NV */
+ { 15729, 0x000088C5 }, /* GL_MATRIX5_ARB */
+ { 15744, 0x00008635 }, /* GL_MATRIX5_NV */
+ { 15758, 0x000088C6 }, /* GL_MATRIX6_ARB */
+ { 15773, 0x00008636 }, /* GL_MATRIX6_NV */
+ { 15787, 0x000088C7 }, /* GL_MATRIX7_ARB */
+ { 15802, 0x00008637 }, /* GL_MATRIX7_NV */
+ { 15816, 0x000088C8 }, /* GL_MATRIX8_ARB */
+ { 15831, 0x000088C9 }, /* GL_MATRIX9_ARB */
+ { 15846, 0x00008844 }, /* GL_MATRIX_INDEX_ARRAY_ARB */
+ { 15872, 0x00008849 }, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */
+ { 15906, 0x00008846 }, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */
+ { 15937, 0x00008848 }, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */
+ { 15970, 0x00008847 }, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */
+ { 16001, 0x00000BA0 }, /* GL_MATRIX_MODE */
+ { 16016, 0x00008840 }, /* GL_MATRIX_PALETTE_ARB */
+ { 16038, 0x00008008 }, /* GL_MAX */
+ { 16045, 0x00008073 }, /* GL_MAX_3D_TEXTURE_SIZE */
+ { 16068, 0x000088FF }, /* GL_MAX_ARRAY_TEXTURE_LAYERS_EXT */
+ { 16100, 0x00000D35 }, /* GL_MAX_ATTRIB_STACK_DEPTH */
+ { 16126, 0x00000D3B }, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */
+ { 16159, 0x00008177 }, /* GL_MAX_CLIPMAP_DEPTH_SGIX */
+ { 16185, 0x00008178 }, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */
+ { 16219, 0x00000D32 }, /* GL_MAX_CLIP_PLANES */
+ { 16238, 0x00008CDF }, /* GL_MAX_COLOR_ATTACHMENTS_EXT */
+ { 16267, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */
+ { 16299, 0x000080B3 }, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI */
+ { 16335, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */
+ { 16371, 0x00008B4D }, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB */
+ { 16411, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT */
+ { 16437, 0x0000801B }, /* GL_MAX_CONVOLUTION_HEIGHT_EXT */
+ { 16467, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH */
+ { 16492, 0x0000801A }, /* GL_MAX_CONVOLUTION_WIDTH_EXT */
+ { 16521, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */
+ { 16550, 0x0000851C }, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB */
+ { 16583, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS */
+ { 16603, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ARB */
+ { 16627, 0x00008824 }, /* GL_MAX_DRAW_BUFFERS_ATI */
+ { 16651, 0x000080E9 }, /* GL_MAX_ELEMENTS_INDICES */
+ { 16675, 0x000080E8 }, /* GL_MAX_ELEMENTS_VERTICES */
+ { 16700, 0x00000D30 }, /* GL_MAX_EVAL_ORDER */
+ { 16718, 0x00008008 }, /* GL_MAX_EXT */
+ { 16729, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */
+ { 16764, 0x00008B49 }, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB */
+ { 16803, 0x00000D31 }, /* GL_MAX_LIGHTS */
+ { 16817, 0x00000B31 }, /* GL_MAX_LIST_NESTING */
+ { 16837, 0x00008841 }, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */
+ { 16875, 0x00000D36 }, /* GL_MAX_MODELVIEW_STACK_DEPTH */
+ { 16904, 0x00000D37 }, /* GL_MAX_NAME_STACK_DEPTH */
+ { 16928, 0x00008842 }, /* GL_MAX_PALETTE_MATRICES_ARB */
+ { 16956, 0x00000D34 }, /* GL_MAX_PIXEL_MAP_TABLE */
+ { 16979, 0x000088B1 }, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */
+ { 17016, 0x0000880B }, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */
+ { 17052, 0x000088AD }, /* GL_MAX_PROGRAM_ATTRIBS_ARB */
+ { 17079, 0x000088F5 }, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */
+ { 17108, 0x000088B5 }, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */
+ { 17142, 0x000088F4 }, /* GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV */
+ { 17178, 0x000088F6 }, /* GL_MAX_PROGRAM_IF_DEPTH_NV */
+ { 17205, 0x000088A1 }, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */
+ { 17237, 0x000088B4 }, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */
+ { 17273, 0x000088F8 }, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */
+ { 17302, 0x000088F7 }, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */
+ { 17331, 0x0000862F }, /* GL_MAX_PROGRAM_MATRICES_ARB */
+ { 17359, 0x0000862E }, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */
+ { 17397, 0x000088B3 }, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */
+ { 17441, 0x0000880E }, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */
+ { 17484, 0x000088AF }, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */
+ { 17518, 0x000088A3 }, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */
+ { 17557, 0x000088AB }, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */
+ { 17594, 0x000088A7 }, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */
+ { 17632, 0x00008810 }, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */
+ { 17675, 0x0000880F }, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */
+ { 17718, 0x000088A9 }, /* GL_MAX_PROGRAM_PARAMETERS_ARB */
+ { 17748, 0x000088A5 }, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */
+ { 17779, 0x0000880D }, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */
+ { 17815, 0x0000880C }, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */
+ { 17851, 0x00000D38 }, /* GL_MAX_PROJECTION_STACK_DEPTH */
+ { 17881, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB */
+ { 17915, 0x000084F8 }, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_NV */
+ { 17948, 0x000084E8 }, /* GL_MAX_RENDERBUFFER_SIZE_EXT */
+ { 17977, 0x00008504 }, /* GL_MAX_SHININESS_NV */
+ { 17997, 0x00008505 }, /* GL_MAX_SPOT_EXPONENT_NV */
+ { 18021, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS */
+ { 18043, 0x00008871 }, /* GL_MAX_TEXTURE_COORDS_ARB */
+ { 18069, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS */
+ { 18096, 0x00008872 }, /* GL_MAX_TEXTURE_IMAGE_UNITS_ARB */
+ { 18127, 0x000084FD }, /* GL_MAX_TEXTURE_LOD_BIAS */
+ { 18151, 0x000084FF }, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */
+ { 18185, 0x00000D33 }, /* GL_MAX_TEXTURE_SIZE */
+ { 18205, 0x00000D39 }, /* GL_MAX_TEXTURE_STACK_DEPTH */
+ { 18232, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS */
+ { 18253, 0x000084E2 }, /* GL_MAX_TEXTURE_UNITS_ARB */
+ { 18278, 0x0000862F }, /* GL_MAX_TRACK_MATRICES_NV */
+ { 18303, 0x0000862E }, /* GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV */
+ { 18338, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS */
+ { 18360, 0x00008B4B }, /* GL_MAX_VARYING_FLOATS_ARB */
+ { 18386, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS */
+ { 18408, 0x00008869 }, /* GL_MAX_VERTEX_ATTRIBS_ARB */
+ { 18434, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */
+ { 18468, 0x00008B4C }, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB */
+ { 18506, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */
+ { 18539, 0x00008B4A }, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB */
+ { 18576, 0x000086A4 }, /* GL_MAX_VERTEX_UNITS_ARB */
+ { 18600, 0x00000D3A }, /* GL_MAX_VIEWPORT_DIMS */
+ { 18621, 0x00008007 }, /* GL_MIN */
+ { 18628, 0x0000802E }, /* GL_MINMAX */
+ { 18638, 0x0000802E }, /* GL_MINMAX_EXT */
+ { 18652, 0x0000802F }, /* GL_MINMAX_FORMAT */
+ { 18669, 0x0000802F }, /* GL_MINMAX_FORMAT_EXT */
+ { 18690, 0x00008030 }, /* GL_MINMAX_SINK */
+ { 18705, 0x00008030 }, /* GL_MINMAX_SINK_EXT */
+ { 18724, 0x00008007 }, /* GL_MIN_EXT */
+ { 18735, 0x00008370 }, /* GL_MIRRORED_REPEAT */
+ { 18754, 0x00008370 }, /* GL_MIRRORED_REPEAT_ARB */
+ { 18777, 0x00008370 }, /* GL_MIRRORED_REPEAT_IBM */
+ { 18800, 0x00008742 }, /* GL_MIRROR_CLAMP_ATI */
+ { 18820, 0x00008742 }, /* GL_MIRROR_CLAMP_EXT */
+ { 18840, 0x00008912 }, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */
+ { 18870, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_ATI */
+ { 18898, 0x00008743 }, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */
+ { 18926, 0x00001700 }, /* GL_MODELVIEW */
+ { 18939, 0x00001700 }, /* GL_MODELVIEW0_ARB */
+ { 18957, 0x0000872A }, /* GL_MODELVIEW10_ARB */
+ { 18976, 0x0000872B }, /* GL_MODELVIEW11_ARB */
+ { 18995, 0x0000872C }, /* GL_MODELVIEW12_ARB */
+ { 19014, 0x0000872D }, /* GL_MODELVIEW13_ARB */
+ { 19033, 0x0000872E }, /* GL_MODELVIEW14_ARB */
+ { 19052, 0x0000872F }, /* GL_MODELVIEW15_ARB */
+ { 19071, 0x00008730 }, /* GL_MODELVIEW16_ARB */
+ { 19090, 0x00008731 }, /* GL_MODELVIEW17_ARB */
+ { 19109, 0x00008732 }, /* GL_MODELVIEW18_ARB */
+ { 19128, 0x00008733 }, /* GL_MODELVIEW19_ARB */
+ { 19147, 0x0000850A }, /* GL_MODELVIEW1_ARB */
+ { 19165, 0x00008734 }, /* GL_MODELVIEW20_ARB */
+ { 19184, 0x00008735 }, /* GL_MODELVIEW21_ARB */
+ { 19203, 0x00008736 }, /* GL_MODELVIEW22_ARB */
+ { 19222, 0x00008737 }, /* GL_MODELVIEW23_ARB */
+ { 19241, 0x00008738 }, /* GL_MODELVIEW24_ARB */
+ { 19260, 0x00008739 }, /* GL_MODELVIEW25_ARB */
+ { 19279, 0x0000873A }, /* GL_MODELVIEW26_ARB */
+ { 19298, 0x0000873B }, /* GL_MODELVIEW27_ARB */
+ { 19317, 0x0000873C }, /* GL_MODELVIEW28_ARB */
+ { 19336, 0x0000873D }, /* GL_MODELVIEW29_ARB */
+ { 19355, 0x00008722 }, /* GL_MODELVIEW2_ARB */
+ { 19373, 0x0000873E }, /* GL_MODELVIEW30_ARB */
+ { 19392, 0x0000873F }, /* GL_MODELVIEW31_ARB */
+ { 19411, 0x00008723 }, /* GL_MODELVIEW3_ARB */
+ { 19429, 0x00008724 }, /* GL_MODELVIEW4_ARB */
+ { 19447, 0x00008725 }, /* GL_MODELVIEW5_ARB */
+ { 19465, 0x00008726 }, /* GL_MODELVIEW6_ARB */
+ { 19483, 0x00008727 }, /* GL_MODELVIEW7_ARB */
+ { 19501, 0x00008728 }, /* GL_MODELVIEW8_ARB */
+ { 19519, 0x00008729 }, /* GL_MODELVIEW9_ARB */
+ { 19537, 0x00000BA6 }, /* GL_MODELVIEW_MATRIX */
+ { 19557, 0x00008629 }, /* GL_MODELVIEW_PROJECTION_NV */
+ { 19584, 0x00000BA3 }, /* GL_MODELVIEW_STACK_DEPTH */
+ { 19609, 0x00002100 }, /* GL_MODULATE */
+ { 19621, 0x00008744 }, /* GL_MODULATE_ADD_ATI */
+ { 19641, 0x00008745 }, /* GL_MODULATE_SIGNED_ADD_ATI */
+ { 19668, 0x00008746 }, /* GL_MODULATE_SUBTRACT_ATI */
+ { 19693, 0x00000103 }, /* GL_MULT */
+ { 19701, 0x0000809D }, /* GL_MULTISAMPLE */
+ { 19716, 0x000086B2 }, /* GL_MULTISAMPLE_3DFX */
+ { 19736, 0x0000809D }, /* GL_MULTISAMPLE_ARB */
+ { 19755, 0x20000000 }, /* GL_MULTISAMPLE_BIT */
+ { 19774, 0x20000000 }, /* GL_MULTISAMPLE_BIT_3DFX */
+ { 19798, 0x20000000 }, /* GL_MULTISAMPLE_BIT_ARB */
+ { 19821, 0x00008534 }, /* GL_MULTISAMPLE_FILTER_HINT_NV */
+ { 19851, 0x00002A25 }, /* GL_N3F_V3F */
+ { 19862, 0x00000D70 }, /* GL_NAME_STACK_DEPTH */
+ { 19882, 0x0000150E }, /* GL_NAND */
+ { 19890, 0x00002600 }, /* GL_NEAREST */
+ { 19901, 0x0000844E }, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */
+ { 19932, 0x0000844D }, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */
+ { 19964, 0x00002702 }, /* GL_NEAREST_MIPMAP_LINEAR */
+ { 19989, 0x00002700 }, /* GL_NEAREST_MIPMAP_NEAREST */
+ { 20015, 0x00000200 }, /* GL_NEVER */
+ { 20024, 0x00001102 }, /* GL_NICEST */
+ { 20034, 0x00000000 }, /* GL_NONE */
+ { 20042, 0x00001505 }, /* GL_NOOP */
+ { 20050, 0x00001508 }, /* GL_NOR */
+ { 20057, 0x00000BA1 }, /* GL_NORMALIZE */
+ { 20070, 0x00008075 }, /* GL_NORMAL_ARRAY */
+ { 20086, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING */
+ { 20117, 0x00008897 }, /* GL_NORMAL_ARRAY_BUFFER_BINDING_ARB */
+ { 20152, 0x0000808F }, /* GL_NORMAL_ARRAY_POINTER */
+ { 20176, 0x0000807F }, /* GL_NORMAL_ARRAY_STRIDE */
+ { 20199, 0x0000807E }, /* GL_NORMAL_ARRAY_TYPE */
+ { 20220, 0x00008511 }, /* GL_NORMAL_MAP */
+ { 20234, 0x00008511 }, /* GL_NORMAL_MAP_ARB */
+ { 20252, 0x00008511 }, /* GL_NORMAL_MAP_NV */
+ { 20269, 0x00000205 }, /* GL_NOTEQUAL */
+ { 20281, 0x00000000 }, /* GL_NO_ERROR */
+ { 20293, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */
+ { 20327, 0x000086A2 }, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB */
+ { 20365, 0x00008B89 }, /* GL_OBJECT_ACTIVE_ATTRIBUTES_ARB */
+ { 20397, 0x00008B8A }, /* GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB */
+ { 20439, 0x00008B86 }, /* GL_OBJECT_ACTIVE_UNIFORMS_ARB */
+ { 20469, 0x00008B87 }, /* GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB */
+ { 20509, 0x00008B85 }, /* GL_OBJECT_ATTACHED_OBJECTS_ARB */
+ { 20540, 0x00008B81 }, /* GL_OBJECT_COMPILE_STATUS_ARB */
+ { 20569, 0x00008B80 }, /* GL_OBJECT_DELETE_STATUS_ARB */
+ { 20597, 0x00008B84 }, /* GL_OBJECT_INFO_LOG_LENGTH_ARB */
+ { 20627, 0x00002401 }, /* GL_OBJECT_LINEAR */
+ { 20644, 0x00008B82 }, /* GL_OBJECT_LINK_STATUS_ARB */
+ { 20670, 0x00002501 }, /* GL_OBJECT_PLANE */
+ { 20686, 0x00008B88 }, /* GL_OBJECT_SHADER_SOURCE_LENGTH_ARB */
+ { 20721, 0x00008B4F }, /* GL_OBJECT_SUBTYPE_ARB */
+ { 20743, 0x00008B4E }, /* GL_OBJECT_TYPE_ARB */
+ { 20762, 0x00008B83 }, /* GL_OBJECT_VALIDATE_STATUS_ARB */
+ { 20792, 0x00008165 }, /* GL_OCCLUSION_TEST_HP */
+ { 20813, 0x00008166 }, /* GL_OCCLUSION_TEST_RESULT_HP */
+ { 20841, 0x00000001 }, /* GL_ONE */
+ { 20848, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA */
+ { 20876, 0x00008004 }, /* GL_ONE_MINUS_CONSTANT_ALPHA_EXT */
+ { 20908, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR */
+ { 20936, 0x00008002 }, /* GL_ONE_MINUS_CONSTANT_COLOR_EXT */
+ { 20968, 0x00000305 }, /* GL_ONE_MINUS_DST_ALPHA */
+ { 20991, 0x00000307 }, /* GL_ONE_MINUS_DST_COLOR */
+ { 21014, 0x00000303 }, /* GL_ONE_MINUS_SRC_ALPHA */
+ { 21037, 0x00000301 }, /* GL_ONE_MINUS_SRC_COLOR */
+ { 21060, 0x00008598 }, /* GL_OPERAND0_ALPHA */
+ { 21078, 0x00008598 }, /* GL_OPERAND0_ALPHA_ARB */
+ { 21100, 0x00008598 }, /* GL_OPERAND0_ALPHA_EXT */
+ { 21122, 0x00008590 }, /* GL_OPERAND0_RGB */
+ { 21138, 0x00008590 }, /* GL_OPERAND0_RGB_ARB */
+ { 21158, 0x00008590 }, /* GL_OPERAND0_RGB_EXT */
+ { 21178, 0x00008599 }, /* GL_OPERAND1_ALPHA */
+ { 21196, 0x00008599 }, /* GL_OPERAND1_ALPHA_ARB */
+ { 21218, 0x00008599 }, /* GL_OPERAND1_ALPHA_EXT */
+ { 21240, 0x00008591 }, /* GL_OPERAND1_RGB */
+ { 21256, 0x00008591 }, /* GL_OPERAND1_RGB_ARB */
+ { 21276, 0x00008591 }, /* GL_OPERAND1_RGB_EXT */
+ { 21296, 0x0000859A }, /* GL_OPERAND2_ALPHA */
+ { 21314, 0x0000859A }, /* GL_OPERAND2_ALPHA_ARB */
+ { 21336, 0x0000859A }, /* GL_OPERAND2_ALPHA_EXT */
+ { 21358, 0x00008592 }, /* GL_OPERAND2_RGB */
+ { 21374, 0x00008592 }, /* GL_OPERAND2_RGB_ARB */
+ { 21394, 0x00008592 }, /* GL_OPERAND2_RGB_EXT */
+ { 21414, 0x0000859B }, /* GL_OPERAND3_ALPHA_NV */
+ { 21435, 0x00008593 }, /* GL_OPERAND3_RGB_NV */
+ { 21454, 0x00001507 }, /* GL_OR */
+ { 21460, 0x00000A01 }, /* GL_ORDER */
+ { 21469, 0x0000150D }, /* GL_OR_INVERTED */
+ { 21484, 0x0000150B }, /* GL_OR_REVERSE */
+ { 21498, 0x00000505 }, /* GL_OUT_OF_MEMORY */
+ { 21515, 0x00000D05 }, /* GL_PACK_ALIGNMENT */
+ { 21533, 0x0000806C }, /* GL_PACK_IMAGE_HEIGHT */
+ { 21554, 0x00008758 }, /* GL_PACK_INVERT_MESA */
+ { 21574, 0x00000D01 }, /* GL_PACK_LSB_FIRST */
+ { 21592, 0x00000D02 }, /* GL_PACK_ROW_LENGTH */
+ { 21611, 0x0000806B }, /* GL_PACK_SKIP_IMAGES */
+ { 21631, 0x00000D04 }, /* GL_PACK_SKIP_PIXELS */
+ { 21651, 0x00000D03 }, /* GL_PACK_SKIP_ROWS */
+ { 21669, 0x00000D00 }, /* GL_PACK_SWAP_BYTES */
+ { 21688, 0x00008B92 }, /* GL_PALETTE4_R5_G6_B5_OES */
+ { 21713, 0x00008B94 }, /* GL_PALETTE4_RGB5_A1_OES */
+ { 21737, 0x00008B90 }, /* GL_PALETTE4_RGB8_OES */
+ { 21758, 0x00008B93 }, /* GL_PALETTE4_RGBA4_OES */
+ { 21780, 0x00008B91 }, /* GL_PALETTE4_RGBA8_OES */
+ { 21802, 0x00008B97 }, /* GL_PALETTE8_R5_G6_B5_OES */
+ { 21827, 0x00008B99 }, /* GL_PALETTE8_RGB5_A1_OES */
+ { 21851, 0x00008B95 }, /* GL_PALETTE8_RGB8_OES */
+ { 21872, 0x00008B98 }, /* GL_PALETTE8_RGBA4_OES */
+ { 21894, 0x00008B96 }, /* GL_PALETTE8_RGBA8_OES */
+ { 21916, 0x00000700 }, /* GL_PASS_THROUGH_TOKEN */
+ { 21938, 0x00000C50 }, /* GL_PERSPECTIVE_CORRECTION_HINT */
+ { 21969, 0x00000C79 }, /* GL_PIXEL_MAP_A_TO_A */
+ { 21989, 0x00000CB9 }, /* GL_PIXEL_MAP_A_TO_A_SIZE */
+ { 22014, 0x00000C78 }, /* GL_PIXEL_MAP_B_TO_B */
+ { 22034, 0x00000CB8 }, /* GL_PIXEL_MAP_B_TO_B_SIZE */
+ { 22059, 0x00000C77 }, /* GL_PIXEL_MAP_G_TO_G */
+ { 22079, 0x00000CB7 }, /* GL_PIXEL_MAP_G_TO_G_SIZE */
+ { 22104, 0x00000C75 }, /* GL_PIXEL_MAP_I_TO_A */
+ { 22124, 0x00000CB5 }, /* GL_PIXEL_MAP_I_TO_A_SIZE */
+ { 22149, 0x00000C74 }, /* GL_PIXEL_MAP_I_TO_B */
+ { 22169, 0x00000CB4 }, /* GL_PIXEL_MAP_I_TO_B_SIZE */
+ { 22194, 0x00000C73 }, /* GL_PIXEL_MAP_I_TO_G */
+ { 22214, 0x00000CB3 }, /* GL_PIXEL_MAP_I_TO_G_SIZE */
+ { 22239, 0x00000C70 }, /* GL_PIXEL_MAP_I_TO_I */
+ { 22259, 0x00000CB0 }, /* GL_PIXEL_MAP_I_TO_I_SIZE */
+ { 22284, 0x00000C72 }, /* GL_PIXEL_MAP_I_TO_R */
+ { 22304, 0x00000CB2 }, /* GL_PIXEL_MAP_I_TO_R_SIZE */
+ { 22329, 0x00000C76 }, /* GL_PIXEL_MAP_R_TO_R */
+ { 22349, 0x00000CB6 }, /* GL_PIXEL_MAP_R_TO_R_SIZE */
+ { 22374, 0x00000C71 }, /* GL_PIXEL_MAP_S_TO_S */
+ { 22394, 0x00000CB1 }, /* GL_PIXEL_MAP_S_TO_S_SIZE */
+ { 22419, 0x00000020 }, /* GL_PIXEL_MODE_BIT */
+ { 22437, 0x000088ED }, /* GL_PIXEL_PACK_BUFFER_BINDING_EXT */
+ { 22470, 0x000088EB }, /* GL_PIXEL_PACK_BUFFER_EXT */
+ { 22495, 0x000088EF }, /* GL_PIXEL_UNPACK_BUFFER_BINDING_EXT */
+ { 22530, 0x000088EC }, /* GL_PIXEL_UNPACK_BUFFER_EXT */
+ { 22557, 0x00001B00 }, /* GL_POINT */
+ { 22566, 0x00000000 }, /* GL_POINTS */
+ { 22576, 0x00000002 }, /* GL_POINT_BIT */
+ { 22589, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION */
+ { 22619, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_ARB */
+ { 22653, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_EXT */
+ { 22687, 0x00008129 }, /* GL_POINT_DISTANCE_ATTENUATION_SGIS */
+ { 22722, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE */
+ { 22751, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_ARB */
+ { 22784, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_EXT */
+ { 22817, 0x00008128 }, /* GL_POINT_FADE_THRESHOLD_SIZE_SGIS */
+ { 22851, 0x00000B11 }, /* GL_POINT_SIZE */
+ { 22865, 0x00000B13 }, /* GL_POINT_SIZE_GRANULARITY */
+ { 22891, 0x00008127 }, /* GL_POINT_SIZE_MAX */
+ { 22909, 0x00008127 }, /* GL_POINT_SIZE_MAX_ARB */
+ { 22931, 0x00008127 }, /* GL_POINT_SIZE_MAX_EXT */
+ { 22953, 0x00008127 }, /* GL_POINT_SIZE_MAX_SGIS */
+ { 22976, 0x00008126 }, /* GL_POINT_SIZE_MIN */
+ { 22994, 0x00008126 }, /* GL_POINT_SIZE_MIN_ARB */
+ { 23016, 0x00008126 }, /* GL_POINT_SIZE_MIN_EXT */
+ { 23038, 0x00008126 }, /* GL_POINT_SIZE_MIN_SGIS */
+ { 23061, 0x00000B12 }, /* GL_POINT_SIZE_RANGE */
+ { 23081, 0x00000B10 }, /* GL_POINT_SMOOTH */
+ { 23097, 0x00000C51 }, /* GL_POINT_SMOOTH_HINT */
+ { 23118, 0x00008861 }, /* GL_POINT_SPRITE */
+ { 23134, 0x00008861 }, /* GL_POINT_SPRITE_ARB */
+ { 23154, 0x00008CA0 }, /* GL_POINT_SPRITE_COORD_ORIGIN */
+ { 23183, 0x00008861 }, /* GL_POINT_SPRITE_NV */
+ { 23202, 0x00008863 }, /* GL_POINT_SPRITE_R_MODE_NV */
+ { 23228, 0x00000701 }, /* GL_POINT_TOKEN */
+ { 23243, 0x00000009 }, /* GL_POLYGON */
+ { 23254, 0x00000008 }, /* GL_POLYGON_BIT */
+ { 23269, 0x00000B40 }, /* GL_POLYGON_MODE */
+ { 23285, 0x00008039 }, /* GL_POLYGON_OFFSET_BIAS */
+ { 23308, 0x00008038 }, /* GL_POLYGON_OFFSET_FACTOR */
+ { 23333, 0x00008037 }, /* GL_POLYGON_OFFSET_FILL */
+ { 23356, 0x00002A02 }, /* GL_POLYGON_OFFSET_LINE */
+ { 23379, 0x00002A01 }, /* GL_POLYGON_OFFSET_POINT */
+ { 23403, 0x00002A00 }, /* GL_POLYGON_OFFSET_UNITS */
+ { 23427, 0x00000B41 }, /* GL_POLYGON_SMOOTH */
+ { 23445, 0x00000C53 }, /* GL_POLYGON_SMOOTH_HINT */
+ { 23468, 0x00000B42 }, /* GL_POLYGON_STIPPLE */
+ { 23487, 0x00000010 }, /* GL_POLYGON_STIPPLE_BIT */
+ { 23510, 0x00000703 }, /* GL_POLYGON_TOKEN */
+ { 23527, 0x00001203 }, /* GL_POSITION */
+ { 23539, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */
+ { 23571, 0x000080BB }, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI */
+ { 23607, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */
+ { 23640, 0x000080B7 }, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI */
+ { 23677, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */
+ { 23708, 0x000080BA }, /* GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI */
+ { 23743, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */
+ { 23775, 0x000080B6 }, /* GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI */
+ { 23811, 0x000080D2 }, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */
+ { 23844, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */
+ { 23876, 0x000080B9 }, /* GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI */
+ { 23912, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */
+ { 23945, 0x000080B5 }, /* GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI */
+ { 23982, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS */
+ { 24012, 0x000080B8 }, /* GL_POST_COLOR_MATRIX_RED_BIAS_SGI */
+ { 24046, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE */
+ { 24077, 0x000080B4 }, /* GL_POST_COLOR_MATRIX_RED_SCALE_SGI */
+ { 24112, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS */
+ { 24143, 0x00008023 }, /* GL_POST_CONVOLUTION_ALPHA_BIAS_EXT */
+ { 24178, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE */
+ { 24210, 0x0000801F }, /* GL_POST_CONVOLUTION_ALPHA_SCALE_EXT */
+ { 24246, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS */
+ { 24276, 0x00008022 }, /* GL_POST_CONVOLUTION_BLUE_BIAS_EXT */
+ { 24310, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE */
+ { 24341, 0x0000801E }, /* GL_POST_CONVOLUTION_BLUE_SCALE_EXT */
+ { 24376, 0x000080D1 }, /* GL_POST_CONVOLUTION_COLOR_TABLE */
+ { 24408, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS */
+ { 24439, 0x00008021 }, /* GL_POST_CONVOLUTION_GREEN_BIAS_EXT */
+ { 24474, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE */
+ { 24506, 0x0000801D }, /* GL_POST_CONVOLUTION_GREEN_SCALE_EXT */
+ { 24542, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS */
+ { 24571, 0x00008020 }, /* GL_POST_CONVOLUTION_RED_BIAS_EXT */
+ { 24604, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE */
+ { 24634, 0x0000801C }, /* GL_POST_CONVOLUTION_RED_SCALE_EXT */
+ { 24668, 0x0000817B }, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */
+ { 24707, 0x00008179 }, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */
+ { 24740, 0x0000817C }, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */
+ { 24780, 0x0000817A }, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */
+ { 24814, 0x00008578 }, /* GL_PREVIOUS */
+ { 24826, 0x00008578 }, /* GL_PREVIOUS_ARB */
+ { 24842, 0x00008578 }, /* GL_PREVIOUS_EXT */
+ { 24858, 0x00008577 }, /* GL_PRIMARY_COLOR */
+ { 24875, 0x00008577 }, /* GL_PRIMARY_COLOR_ARB */
+ { 24896, 0x00008577 }, /* GL_PRIMARY_COLOR_EXT */
+ { 24917, 0x000088B0 }, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */
+ { 24950, 0x00008805 }, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */
+ { 24982, 0x000088AC }, /* GL_PROGRAM_ATTRIBS_ARB */
+ { 25005, 0x00008677 }, /* GL_PROGRAM_BINDING_ARB */
+ { 25028, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_ARB */
+ { 25058, 0x0000864B }, /* GL_PROGRAM_ERROR_POSITION_NV */
+ { 25087, 0x00008874 }, /* GL_PROGRAM_ERROR_STRING_ARB */
+ { 25115, 0x00008876 }, /* GL_PROGRAM_FORMAT_ARB */
+ { 25137, 0x00008875 }, /* GL_PROGRAM_FORMAT_ASCII_ARB */
+ { 25165, 0x000088A0 }, /* GL_PROGRAM_INSTRUCTIONS_ARB */
+ { 25193, 0x00008627 }, /* GL_PROGRAM_LENGTH_ARB */
+ { 25215, 0x00008627 }, /* GL_PROGRAM_LENGTH_NV */
+ { 25236, 0x000088B2 }, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */
+ { 25276, 0x00008808 }, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */
+ { 25315, 0x000088AE }, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */
+ { 25345, 0x000088A2 }, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */
+ { 25380, 0x000088AA }, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */
+ { 25413, 0x000088A6 }, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */
+ { 25447, 0x0000880A }, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */
+ { 25486, 0x00008809 }, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */
+ { 25525, 0x00008B40 }, /* GL_PROGRAM_OBJECT_ARB */
+ { 25547, 0x000088A8 }, /* GL_PROGRAM_PARAMETERS_ARB */
+ { 25573, 0x00008644 }, /* GL_PROGRAM_PARAMETER_NV */
+ { 25597, 0x00008647 }, /* GL_PROGRAM_RESIDENT_NV */
+ { 25620, 0x00008628 }, /* GL_PROGRAM_STRING_ARB */
+ { 25642, 0x00008628 }, /* GL_PROGRAM_STRING_NV */
+ { 25663, 0x00008646 }, /* GL_PROGRAM_TARGET_NV */
+ { 25684, 0x000088A4 }, /* GL_PROGRAM_TEMPORARIES_ARB */
+ { 25711, 0x00008807 }, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */
+ { 25743, 0x00008806 }, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */
+ { 25775, 0x000088B6 }, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */
+ { 25810, 0x00001701 }, /* GL_PROJECTION */
+ { 25824, 0x00000BA7 }, /* GL_PROJECTION_MATRIX */
+ { 25845, 0x00000BA4 }, /* GL_PROJECTION_STACK_DEPTH */
+ { 25871, 0x000080D3 }, /* GL_PROXY_COLOR_TABLE */
+ { 25892, 0x00008025 }, /* GL_PROXY_HISTOGRAM */
+ { 25911, 0x00008025 }, /* GL_PROXY_HISTOGRAM_EXT */
+ { 25934, 0x000080D5 }, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */
+ { 25973, 0x000080D4 }, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */
+ { 26011, 0x00008063 }, /* GL_PROXY_TEXTURE_1D */
+ { 26031, 0x00008C19 }, /* GL_PROXY_TEXTURE_1D_ARRAY_EXT */
+ { 26061, 0x00008063 }, /* GL_PROXY_TEXTURE_1D_EXT */
+ { 26085, 0x00008064 }, /* GL_PROXY_TEXTURE_2D */
+ { 26105, 0x00008C1B }, /* GL_PROXY_TEXTURE_2D_ARRAY_EXT */
+ { 26135, 0x00008064 }, /* GL_PROXY_TEXTURE_2D_EXT */
+ { 26159, 0x00008070 }, /* GL_PROXY_TEXTURE_3D */
+ { 26179, 0x000080BD }, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */
+ { 26212, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP */
+ { 26238, 0x0000851B }, /* GL_PROXY_TEXTURE_CUBE_MAP_ARB */
+ { 26268, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_ARB */
+ { 26299, 0x000084F7 }, /* GL_PROXY_TEXTURE_RECTANGLE_NV */
+ { 26329, 0x00002003 }, /* GL_Q */
+ { 26334, 0x00001209 }, /* GL_QUADRATIC_ATTENUATION */
+ { 26359, 0x00000007 }, /* GL_QUADS */
+ { 26368, 0x00008614 }, /* GL_QUAD_MESH_SUN */
+ { 26385, 0x00000008 }, /* GL_QUAD_STRIP */
+ { 26399, 0x00008864 }, /* GL_QUERY_COUNTER_BITS */
+ { 26421, 0x00008864 }, /* GL_QUERY_COUNTER_BITS_ARB */
+ { 26447, 0x00008866 }, /* GL_QUERY_RESULT */
+ { 26463, 0x00008866 }, /* GL_QUERY_RESULT_ARB */
+ { 26483, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE */
+ { 26509, 0x00008867 }, /* GL_QUERY_RESULT_AVAILABLE_ARB */
+ { 26539, 0x00002002 }, /* GL_R */
+ { 26544, 0x00002A10 }, /* GL_R3_G3_B2 */
+ { 26556, 0x00019262 }, /* GL_RASTER_POSITION_UNCLIPPED_IBM */
+ { 26589, 0x00000C02 }, /* GL_READ_BUFFER */
+ { 26604, 0x00008CAA }, /* GL_READ_FRAMEBUFFER_BINDING_EXT */
+ { 26636, 0x00008CA8 }, /* GL_READ_FRAMEBUFFER_EXT */
+ { 26660, 0x000088B8 }, /* GL_READ_ONLY */
+ { 26673, 0x000088B8 }, /* GL_READ_ONLY_ARB */
+ { 26690, 0x000088BA }, /* GL_READ_WRITE */
+ { 26704, 0x000088BA }, /* GL_READ_WRITE_ARB */
+ { 26722, 0x00001903 }, /* GL_RED */
+ { 26729, 0x00008016 }, /* GL_REDUCE */
+ { 26739, 0x00008016 }, /* GL_REDUCE_EXT */
+ { 26753, 0x00000D15 }, /* GL_RED_BIAS */
+ { 26765, 0x00000D52 }, /* GL_RED_BITS */
+ { 26777, 0x00000D14 }, /* GL_RED_SCALE */
+ { 26790, 0x00008512 }, /* GL_REFLECTION_MAP */
+ { 26808, 0x00008512 }, /* GL_REFLECTION_MAP_ARB */
+ { 26830, 0x00008512 }, /* GL_REFLECTION_MAP_NV */
+ { 26851, 0x00001C00 }, /* GL_RENDER */
+ { 26861, 0x00008CA7 }, /* GL_RENDERBUFFER_BINDING_EXT */
+ { 26889, 0x00008D41 }, /* GL_RENDERBUFFER_EXT */
+ { 26909, 0x00008D43 }, /* GL_RENDERBUFFER_HEIGHT_EXT */
+ { 26936, 0x00008D44 }, /* GL_RENDERBUFFER_INTERNAL_FORMAT_EXT */
+ { 26972, 0x00008D42 }, /* GL_RENDERBUFFER_WIDTH_EXT */
+ { 26998, 0x00001F01 }, /* GL_RENDERER */
+ { 27010, 0x00000C40 }, /* GL_RENDER_MODE */
+ { 27025, 0x00002901 }, /* GL_REPEAT */
+ { 27035, 0x00001E01 }, /* GL_REPLACE */
+ { 27046, 0x00008062 }, /* GL_REPLACE_EXT */
+ { 27061, 0x00008153 }, /* GL_REPLICATE_BORDER_HP */
+ { 27084, 0x0000803A }, /* GL_RESCALE_NORMAL */
+ { 27102, 0x0000803A }, /* GL_RESCALE_NORMAL_EXT */
+ { 27124, 0x00000102 }, /* GL_RETURN */
+ { 27134, 0x00001907 }, /* GL_RGB */
+ { 27141, 0x00008052 }, /* GL_RGB10 */
+ { 27150, 0x00008059 }, /* GL_RGB10_A2 */
+ { 27162, 0x00008059 }, /* GL_RGB10_A2_EXT */
+ { 27178, 0x00008052 }, /* GL_RGB10_EXT */
+ { 27191, 0x00008053 }, /* GL_RGB12 */
+ { 27200, 0x00008053 }, /* GL_RGB12_EXT */
+ { 27213, 0x00008054 }, /* GL_RGB16 */
+ { 27222, 0x00008054 }, /* GL_RGB16_EXT */
+ { 27235, 0x0000804E }, /* GL_RGB2_EXT */
+ { 27247, 0x0000804F }, /* GL_RGB4 */
+ { 27255, 0x0000804F }, /* GL_RGB4_EXT */
+ { 27267, 0x000083A1 }, /* GL_RGB4_S3TC */
+ { 27280, 0x00008050 }, /* GL_RGB5 */
+ { 27288, 0x00008057 }, /* GL_RGB5_A1 */
+ { 27299, 0x00008057 }, /* GL_RGB5_A1_EXT */
+ { 27314, 0x00008050 }, /* GL_RGB5_EXT */
+ { 27326, 0x00008051 }, /* GL_RGB8 */
+ { 27334, 0x00008051 }, /* GL_RGB8_EXT */
+ { 27346, 0x00001908 }, /* GL_RGBA */
+ { 27354, 0x0000805A }, /* GL_RGBA12 */
+ { 27364, 0x0000805A }, /* GL_RGBA12_EXT */
+ { 27378, 0x0000805B }, /* GL_RGBA16 */
+ { 27388, 0x0000805B }, /* GL_RGBA16_EXT */
+ { 27402, 0x00008055 }, /* GL_RGBA2 */
+ { 27411, 0x00008055 }, /* GL_RGBA2_EXT */
+ { 27424, 0x00008056 }, /* GL_RGBA4 */
+ { 27433, 0x000083A5 }, /* GL_RGBA4_DXT5_S3TC */
+ { 27452, 0x00008056 }, /* GL_RGBA4_EXT */
+ { 27465, 0x000083A3 }, /* GL_RGBA4_S3TC */
+ { 27479, 0x00008058 }, /* GL_RGBA8 */
+ { 27488, 0x00008058 }, /* GL_RGBA8_EXT */
+ { 27501, 0x000083A4 }, /* GL_RGBA_DXT5_S3TC */
+ { 27519, 0x00000C31 }, /* GL_RGBA_MODE */
+ { 27532, 0x000083A2 }, /* GL_RGBA_S3TC */
+ { 27545, 0x000083A0 }, /* GL_RGB_S3TC */
+ { 27557, 0x00008573 }, /* GL_RGB_SCALE */
+ { 27570, 0x00008573 }, /* GL_RGB_SCALE_ARB */
+ { 27587, 0x00008573 }, /* GL_RGB_SCALE_EXT */
+ { 27604, 0x00000407 }, /* GL_RIGHT */
+ { 27613, 0x00002000 }, /* GL_S */
+ { 27618, 0x00008B5D }, /* GL_SAMPLER_1D */
+ { 27632, 0x00008B61 }, /* GL_SAMPLER_1D_SHADOW */
+ { 27653, 0x00008B5E }, /* GL_SAMPLER_2D */
+ { 27667, 0x00008B62 }, /* GL_SAMPLER_2D_SHADOW */
+ { 27688, 0x00008B5F }, /* GL_SAMPLER_3D */
+ { 27702, 0x00008B60 }, /* GL_SAMPLER_CUBE */
+ { 27718, 0x000080A9 }, /* GL_SAMPLES */
+ { 27729, 0x000086B4 }, /* GL_SAMPLES_3DFX */
+ { 27745, 0x000080A9 }, /* GL_SAMPLES_ARB */
+ { 27760, 0x00008914 }, /* GL_SAMPLES_PASSED */
+ { 27778, 0x00008914 }, /* GL_SAMPLES_PASSED_ARB */
+ { 27800, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE */
+ { 27828, 0x0000809E }, /* GL_SAMPLE_ALPHA_TO_COVERAGE_ARB */
+ { 27860, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE */
+ { 27883, 0x0000809F }, /* GL_SAMPLE_ALPHA_TO_ONE_ARB */
+ { 27910, 0x000080A8 }, /* GL_SAMPLE_BUFFERS */
+ { 27928, 0x000086B3 }, /* GL_SAMPLE_BUFFERS_3DFX */
+ { 27951, 0x000080A8 }, /* GL_SAMPLE_BUFFERS_ARB */
+ { 27973, 0x000080A0 }, /* GL_SAMPLE_COVERAGE */
+ { 27992, 0x000080A0 }, /* GL_SAMPLE_COVERAGE_ARB */
+ { 28015, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT */
+ { 28041, 0x000080AB }, /* GL_SAMPLE_COVERAGE_INVERT_ARB */
+ { 28071, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE */
+ { 28096, 0x000080AA }, /* GL_SAMPLE_COVERAGE_VALUE_ARB */
+ { 28125, 0x00080000 }, /* GL_SCISSOR_BIT */
+ { 28140, 0x00000C10 }, /* GL_SCISSOR_BOX */
+ { 28155, 0x00000C11 }, /* GL_SCISSOR_TEST */
+ { 28171, 0x0000845E }, /* GL_SECONDARY_COLOR_ARRAY */
+ { 28196, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */
+ { 28236, 0x0000889C }, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB */
+ { 28280, 0x0000845D }, /* GL_SECONDARY_COLOR_ARRAY_POINTER */
+ { 28313, 0x0000845A }, /* GL_SECONDARY_COLOR_ARRAY_SIZE */
+ { 28343, 0x0000845C }, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */
+ { 28375, 0x0000845B }, /* GL_SECONDARY_COLOR_ARRAY_TYPE */
+ { 28405, 0x00001C02 }, /* GL_SELECT */
+ { 28415, 0x00000DF3 }, /* GL_SELECTION_BUFFER_POINTER */
+ { 28443, 0x00000DF4 }, /* GL_SELECTION_BUFFER_SIZE */
+ { 28468, 0x00008012 }, /* GL_SEPARABLE_2D */
+ { 28484, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR */
+ { 28511, 0x000081FA }, /* GL_SEPARATE_SPECULAR_COLOR_EXT */
+ { 28542, 0x0000150F }, /* GL_SET */
+ { 28549, 0x00008B48 }, /* GL_SHADER_OBJECT_ARB */
+ { 28570, 0x00008B88 }, /* GL_SHADER_SOURCE_LENGTH */
+ { 28594, 0x00008B4F }, /* GL_SHADER_TYPE */
+ { 28609, 0x00000B54 }, /* GL_SHADE_MODEL */
+ { 28624, 0x00008B8C }, /* GL_SHADING_LANGUAGE_VERSION */
+ { 28652, 0x000080BF }, /* GL_SHADOW_AMBIENT_SGIX */
+ { 28675, 0x000081FB }, /* GL_SHARED_TEXTURE_PALETTE_EXT */
+ { 28705, 0x00001601 }, /* GL_SHININESS */
+ { 28718, 0x00001402 }, /* GL_SHORT */
+ { 28727, 0x000081F9 }, /* GL_SINGLE_COLOR */
+ { 28743, 0x000081F9 }, /* GL_SINGLE_COLOR_EXT */
+ { 28763, 0x000085CC }, /* GL_SLICE_ACCUM_SUN */
+ { 28782, 0x00001D01 }, /* GL_SMOOTH */
+ { 28792, 0x00000B23 }, /* GL_SMOOTH_LINE_WIDTH_GRANULARITY */
+ { 28825, 0x00000B22 }, /* GL_SMOOTH_LINE_WIDTH_RANGE */
+ { 28852, 0x00000B13 }, /* GL_SMOOTH_POINT_SIZE_GRANULARITY */
+ { 28885, 0x00000B12 }, /* GL_SMOOTH_POINT_SIZE_RANGE */
+ { 28912, 0x00008588 }, /* GL_SOURCE0_ALPHA */
+ { 28929, 0x00008588 }, /* GL_SOURCE0_ALPHA_ARB */
+ { 28950, 0x00008588 }, /* GL_SOURCE0_ALPHA_EXT */
+ { 28971, 0x00008580 }, /* GL_SOURCE0_RGB */
+ { 28986, 0x00008580 }, /* GL_SOURCE0_RGB_ARB */
+ { 29005, 0x00008580 }, /* GL_SOURCE0_RGB_EXT */
+ { 29024, 0x00008589 }, /* GL_SOURCE1_ALPHA */
+ { 29041, 0x00008589 }, /* GL_SOURCE1_ALPHA_ARB */
+ { 29062, 0x00008589 }, /* GL_SOURCE1_ALPHA_EXT */
+ { 29083, 0x00008581 }, /* GL_SOURCE1_RGB */
+ { 29098, 0x00008581 }, /* GL_SOURCE1_RGB_ARB */
+ { 29117, 0x00008581 }, /* GL_SOURCE1_RGB_EXT */
+ { 29136, 0x0000858A }, /* GL_SOURCE2_ALPHA */
+ { 29153, 0x0000858A }, /* GL_SOURCE2_ALPHA_ARB */
+ { 29174, 0x0000858A }, /* GL_SOURCE2_ALPHA_EXT */
+ { 29195, 0x00008582 }, /* GL_SOURCE2_RGB */
+ { 29210, 0x00008582 }, /* GL_SOURCE2_RGB_ARB */
+ { 29229, 0x00008582 }, /* GL_SOURCE2_RGB_EXT */
+ { 29248, 0x0000858B }, /* GL_SOURCE3_ALPHA_NV */
+ { 29268, 0x00008583 }, /* GL_SOURCE3_RGB_NV */
+ { 29286, 0x00001202 }, /* GL_SPECULAR */
+ { 29298, 0x00002402 }, /* GL_SPHERE_MAP */
+ { 29312, 0x00001206 }, /* GL_SPOT_CUTOFF */
+ { 29327, 0x00001204 }, /* GL_SPOT_DIRECTION */
+ { 29345, 0x00001205 }, /* GL_SPOT_EXPONENT */
+ { 29362, 0x00008588 }, /* GL_SRC0_ALPHA */
+ { 29376, 0x00008580 }, /* GL_SRC0_RGB */
+ { 29388, 0x00008589 }, /* GL_SRC1_ALPHA */
+ { 29402, 0x00008581 }, /* GL_SRC1_RGB */
+ { 29414, 0x0000858A }, /* GL_SRC2_ALPHA */
+ { 29428, 0x00008582 }, /* GL_SRC2_RGB */
+ { 29440, 0x00000302 }, /* GL_SRC_ALPHA */
+ { 29453, 0x00000308 }, /* GL_SRC_ALPHA_SATURATE */
+ { 29475, 0x00000300 }, /* GL_SRC_COLOR */
+ { 29488, 0x00000503 }, /* GL_STACK_OVERFLOW */
+ { 29506, 0x00000504 }, /* GL_STACK_UNDERFLOW */
+ { 29525, 0x000088E6 }, /* GL_STATIC_COPY */
+ { 29540, 0x000088E6 }, /* GL_STATIC_COPY_ARB */
+ { 29559, 0x000088E4 }, /* GL_STATIC_DRAW */
+ { 29574, 0x000088E4 }, /* GL_STATIC_DRAW_ARB */
+ { 29593, 0x000088E5 }, /* GL_STATIC_READ */
+ { 29608, 0x000088E5 }, /* GL_STATIC_READ_ARB */
+ { 29627, 0x00001802 }, /* GL_STENCIL */
+ { 29638, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_EXT */
+ { 29664, 0x00008801 }, /* GL_STENCIL_BACK_FAIL */
+ { 29685, 0x00008801 }, /* GL_STENCIL_BACK_FAIL_ATI */
+ { 29710, 0x00008800 }, /* GL_STENCIL_BACK_FUNC */
+ { 29731, 0x00008800 }, /* GL_STENCIL_BACK_FUNC_ATI */
+ { 29756, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */
+ { 29788, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI */
+ { 29824, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */
+ { 29856, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI */
+ { 29892, 0x00008CA3 }, /* GL_STENCIL_BACK_REF */
+ { 29912, 0x00008CA4 }, /* GL_STENCIL_BACK_VALUE_MASK */
+ { 29939, 0x00008CA5 }, /* GL_STENCIL_BACK_WRITEMASK */
+ { 29965, 0x00000D57 }, /* GL_STENCIL_BITS */
+ { 29981, 0x00000400 }, /* GL_STENCIL_BUFFER_BIT */
+ { 30003, 0x00000B91 }, /* GL_STENCIL_CLEAR_VALUE */
+ { 30026, 0x00000B94 }, /* GL_STENCIL_FAIL */
+ { 30042, 0x00000B92 }, /* GL_STENCIL_FUNC */
+ { 30058, 0x00001901 }, /* GL_STENCIL_INDEX */
+ { 30075, 0x00008D49 }, /* GL_STENCIL_INDEX16_EXT */
+ { 30098, 0x00008D46 }, /* GL_STENCIL_INDEX1_EXT */
+ { 30120, 0x00008D47 }, /* GL_STENCIL_INDEX4_EXT */
+ { 30142, 0x00008D48 }, /* GL_STENCIL_INDEX8_EXT */
+ { 30164, 0x00008D45 }, /* GL_STENCIL_INDEX_EXT */
+ { 30185, 0x00000B95 }, /* GL_STENCIL_PASS_DEPTH_FAIL */
+ { 30212, 0x00000B96 }, /* GL_STENCIL_PASS_DEPTH_PASS */
+ { 30239, 0x00000B97 }, /* GL_STENCIL_REF */
+ { 30254, 0x00000B90 }, /* GL_STENCIL_TEST */
+ { 30270, 0x00008910 }, /* GL_STENCIL_TEST_TWO_SIDE_EXT */
+ { 30299, 0x00000B93 }, /* GL_STENCIL_VALUE_MASK */
+ { 30321, 0x00000B98 }, /* GL_STENCIL_WRITEMASK */
+ { 30342, 0x00000C33 }, /* GL_STEREO */
+ { 30352, 0x000088E2 }, /* GL_STREAM_COPY */
+ { 30367, 0x000088E2 }, /* GL_STREAM_COPY_ARB */
+ { 30386, 0x000088E0 }, /* GL_STREAM_DRAW */
+ { 30401, 0x000088E0 }, /* GL_STREAM_DRAW_ARB */
+ { 30420, 0x000088E1 }, /* GL_STREAM_READ */
+ { 30435, 0x000088E1 }, /* GL_STREAM_READ_ARB */
+ { 30454, 0x00000D50 }, /* GL_SUBPIXEL_BITS */
+ { 30471, 0x000084E7 }, /* GL_SUBTRACT */
+ { 30483, 0x000084E7 }, /* GL_SUBTRACT_ARB */
+ { 30499, 0x00002001 }, /* GL_T */
+ { 30504, 0x00002A2A }, /* GL_T2F_C3F_V3F */
+ { 30519, 0x00002A2C }, /* GL_T2F_C4F_N3F_V3F */
+ { 30538, 0x00002A29 }, /* GL_T2F_C4UB_V3F */
+ { 30554, 0x00002A2B }, /* GL_T2F_N3F_V3F */
+ { 30569, 0x00002A27 }, /* GL_T2F_V3F */
+ { 30580, 0x00002A2D }, /* GL_T4F_C4F_N3F_V4F */
+ { 30599, 0x00002A28 }, /* GL_T4F_V4F */
+ { 30610, 0x00008031 }, /* GL_TABLE_TOO_LARGE_EXT */
+ { 30633, 0x00001702 }, /* GL_TEXTURE */
+ { 30644, 0x000084C0 }, /* GL_TEXTURE0 */
+ { 30656, 0x000084C0 }, /* GL_TEXTURE0_ARB */
+ { 30672, 0x000084C1 }, /* GL_TEXTURE1 */
+ { 30684, 0x000084CA }, /* GL_TEXTURE10 */
+ { 30697, 0x000084CA }, /* GL_TEXTURE10_ARB */
+ { 30714, 0x000084CB }, /* GL_TEXTURE11 */
+ { 30727, 0x000084CB }, /* GL_TEXTURE11_ARB */
+ { 30744, 0x000084CC }, /* GL_TEXTURE12 */
+ { 30757, 0x000084CC }, /* GL_TEXTURE12_ARB */
+ { 30774, 0x000084CD }, /* GL_TEXTURE13 */
+ { 30787, 0x000084CD }, /* GL_TEXTURE13_ARB */
+ { 30804, 0x000084CE }, /* GL_TEXTURE14 */
+ { 30817, 0x000084CE }, /* GL_TEXTURE14_ARB */
+ { 30834, 0x000084CF }, /* GL_TEXTURE15 */
+ { 30847, 0x000084CF }, /* GL_TEXTURE15_ARB */
+ { 30864, 0x000084D0 }, /* GL_TEXTURE16 */
+ { 30877, 0x000084D0 }, /* GL_TEXTURE16_ARB */
+ { 30894, 0x000084D1 }, /* GL_TEXTURE17 */
+ { 30907, 0x000084D1 }, /* GL_TEXTURE17_ARB */
+ { 30924, 0x000084D2 }, /* GL_TEXTURE18 */
+ { 30937, 0x000084D2 }, /* GL_TEXTURE18_ARB */
+ { 30954, 0x000084D3 }, /* GL_TEXTURE19 */
+ { 30967, 0x000084D3 }, /* GL_TEXTURE19_ARB */
+ { 30984, 0x000084C1 }, /* GL_TEXTURE1_ARB */
+ { 31000, 0x000084C2 }, /* GL_TEXTURE2 */
+ { 31012, 0x000084D4 }, /* GL_TEXTURE20 */
+ { 31025, 0x000084D4 }, /* GL_TEXTURE20_ARB */
+ { 31042, 0x000084D5 }, /* GL_TEXTURE21 */
+ { 31055, 0x000084D5 }, /* GL_TEXTURE21_ARB */
+ { 31072, 0x000084D6 }, /* GL_TEXTURE22 */
+ { 31085, 0x000084D6 }, /* GL_TEXTURE22_ARB */
+ { 31102, 0x000084D7 }, /* GL_TEXTURE23 */
+ { 31115, 0x000084D7 }, /* GL_TEXTURE23_ARB */
+ { 31132, 0x000084D8 }, /* GL_TEXTURE24 */
+ { 31145, 0x000084D8 }, /* GL_TEXTURE24_ARB */
+ { 31162, 0x000084D9 }, /* GL_TEXTURE25 */
+ { 31175, 0x000084D9 }, /* GL_TEXTURE25_ARB */
+ { 31192, 0x000084DA }, /* GL_TEXTURE26 */
+ { 31205, 0x000084DA }, /* GL_TEXTURE26_ARB */
+ { 31222, 0x000084DB }, /* GL_TEXTURE27 */
+ { 31235, 0x000084DB }, /* GL_TEXTURE27_ARB */
+ { 31252, 0x000084DC }, /* GL_TEXTURE28 */
+ { 31265, 0x000084DC }, /* GL_TEXTURE28_ARB */
+ { 31282, 0x000084DD }, /* GL_TEXTURE29 */
+ { 31295, 0x000084DD }, /* GL_TEXTURE29_ARB */
+ { 31312, 0x000084C2 }, /* GL_TEXTURE2_ARB */
+ { 31328, 0x000084C3 }, /* GL_TEXTURE3 */
+ { 31340, 0x000084DE }, /* GL_TEXTURE30 */
+ { 31353, 0x000084DE }, /* GL_TEXTURE30_ARB */
+ { 31370, 0x000084DF }, /* GL_TEXTURE31 */
+ { 31383, 0x000084DF }, /* GL_TEXTURE31_ARB */
+ { 31400, 0x000084C3 }, /* GL_TEXTURE3_ARB */
+ { 31416, 0x000084C4 }, /* GL_TEXTURE4 */
+ { 31428, 0x000084C4 }, /* GL_TEXTURE4_ARB */
+ { 31444, 0x000084C5 }, /* GL_TEXTURE5 */
+ { 31456, 0x000084C5 }, /* GL_TEXTURE5_ARB */
+ { 31472, 0x000084C6 }, /* GL_TEXTURE6 */
+ { 31484, 0x000084C6 }, /* GL_TEXTURE6_ARB */
+ { 31500, 0x000084C7 }, /* GL_TEXTURE7 */
+ { 31512, 0x000084C7 }, /* GL_TEXTURE7_ARB */
+ { 31528, 0x000084C8 }, /* GL_TEXTURE8 */
+ { 31540, 0x000084C8 }, /* GL_TEXTURE8_ARB */
+ { 31556, 0x000084C9 }, /* GL_TEXTURE9 */
+ { 31568, 0x000084C9 }, /* GL_TEXTURE9_ARB */
+ { 31584, 0x00000DE0 }, /* GL_TEXTURE_1D */
+ { 31598, 0x00008C18 }, /* GL_TEXTURE_1D_ARRAY_EXT */
+ { 31622, 0x00000DE1 }, /* GL_TEXTURE_2D */
+ { 31636, 0x00008C1A }, /* GL_TEXTURE_2D_ARRAY_EXT */
+ { 31660, 0x0000806F }, /* GL_TEXTURE_3D */
+ { 31674, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE */
+ { 31696, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE_EXT */
+ { 31722, 0x0000813C }, /* GL_TEXTURE_BASE_LEVEL */
+ { 31744, 0x00008068 }, /* GL_TEXTURE_BINDING_1D */
+ { 31766, 0x00008C1C }, /* GL_TEXTURE_BINDING_1D_ARRAY_EXT */
+ { 31798, 0x00008069 }, /* GL_TEXTURE_BINDING_2D */
+ { 31820, 0x00008C1D }, /* GL_TEXTURE_BINDING_2D_ARRAY_EXT */
+ { 31852, 0x0000806A }, /* GL_TEXTURE_BINDING_3D */
+ { 31874, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP */
+ { 31902, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_ARB */
+ { 31934, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */
+ { 31967, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_NV */
+ { 31999, 0x00040000 }, /* GL_TEXTURE_BIT */
+ { 32014, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE */
+ { 32035, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE_EXT */
+ { 32060, 0x00001005 }, /* GL_TEXTURE_BORDER */
+ { 32078, 0x00001004 }, /* GL_TEXTURE_BORDER_COLOR */
+ { 32102, 0x00008171 }, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */
+ { 32133, 0x00008176 }, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */
+ { 32163, 0x00008172 }, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */
+ { 32193, 0x00008175 }, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */
+ { 32228, 0x00008173 }, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */
+ { 32259, 0x00008174 }, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */
+ { 32297, 0x000080BC }, /* GL_TEXTURE_COLOR_TABLE_SGI */
+ { 32324, 0x000081EF }, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */
+ { 32356, 0x000080BF }, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */
+ { 32390, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC */
+ { 32414, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC_ARB */
+ { 32442, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE */
+ { 32466, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE_ARB */
+ { 32494, 0x0000819B }, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */
+ { 32527, 0x0000819A }, /* GL_TEXTURE_COMPARE_SGIX */
+ { 32551, 0x00001003 }, /* GL_TEXTURE_COMPONENTS */
+ { 32573, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED */
+ { 32595, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED_ARB */
+ { 32621, 0x000086A3 }, /* GL_TEXTURE_COMPRESSED_FORMATS_ARB */
+ { 32655, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */
+ { 32688, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB */
+ { 32725, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT */
+ { 32753, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT_ARB */
+ { 32785, 0x00008078 }, /* GL_TEXTURE_COORD_ARRAY */
+ { 32808, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */
+ { 32846, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB */
+ { 32888, 0x00008092 }, /* GL_TEXTURE_COORD_ARRAY_POINTER */
+ { 32919, 0x00008088 }, /* GL_TEXTURE_COORD_ARRAY_SIZE */
+ { 32947, 0x0000808A }, /* GL_TEXTURE_COORD_ARRAY_STRIDE */
+ { 32977, 0x00008089 }, /* GL_TEXTURE_COORD_ARRAY_TYPE */
+ { 33005, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP */
+ { 33025, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_ARB */
+ { 33049, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */
+ { 33080, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB */
+ { 33115, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */
+ { 33146, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB */
+ { 33181, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */
+ { 33212, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB */
+ { 33247, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */
+ { 33278, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB */
+ { 33313, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */
+ { 33344, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB */
+ { 33379, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */
+ { 33410, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB */
+ { 33445, 0x00008071 }, /* GL_TEXTURE_DEPTH */
+ { 33462, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE */
+ { 33484, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE_ARB */
+ { 33510, 0x00002300 }, /* GL_TEXTURE_ENV */
+ { 33525, 0x00002201 }, /* GL_TEXTURE_ENV_COLOR */
+ { 33546, 0x00002200 }, /* GL_TEXTURE_ENV_MODE */
+ { 33566, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL */
+ { 33592, 0x00002500 }, /* GL_TEXTURE_GEN_MODE */
+ { 33612, 0x00000C63 }, /* GL_TEXTURE_GEN_Q */
+ { 33629, 0x00000C62 }, /* GL_TEXTURE_GEN_R */
+ { 33646, 0x00000C60 }, /* GL_TEXTURE_GEN_S */
+ { 33663, 0x00000C61 }, /* GL_TEXTURE_GEN_T */
+ { 33680, 0x0000819D }, /* GL_TEXTURE_GEQUAL_R_SGIX */
+ { 33705, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE */
+ { 33727, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE_EXT */
+ { 33753, 0x00001001 }, /* GL_TEXTURE_HEIGHT */
+ { 33771, 0x000080ED }, /* GL_TEXTURE_INDEX_SIZE_EXT */
+ { 33797, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE */
+ { 33823, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE_EXT */
+ { 33853, 0x00001003 }, /* GL_TEXTURE_INTERNAL_FORMAT */
+ { 33880, 0x0000819C }, /* GL_TEXTURE_LEQUAL_R_SGIX */
+ { 33905, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS */
+ { 33925, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS_EXT */
+ { 33949, 0x00008190 }, /* GL_TEXTURE_LOD_BIAS_R_SGIX */
+ { 33976, 0x0000818E }, /* GL_TEXTURE_LOD_BIAS_S_SGIX */
+ { 34003, 0x0000818F }, /* GL_TEXTURE_LOD_BIAS_T_SGIX */
+ { 34030, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE */
+ { 34056, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE_EXT */
+ { 34086, 0x00002800 }, /* GL_TEXTURE_MAG_FILTER */
+ { 34108, 0x00000BA8 }, /* GL_TEXTURE_MATRIX */
+ { 34126, 0x000084FE }, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */
+ { 34156, 0x0000836B }, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */
+ { 34184, 0x00008369 }, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */
+ { 34212, 0x0000836A }, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */
+ { 34240, 0x0000813D }, /* GL_TEXTURE_MAX_LEVEL */
+ { 34261, 0x0000813B }, /* GL_TEXTURE_MAX_LOD */
+ { 34280, 0x00002801 }, /* GL_TEXTURE_MIN_FILTER */
+ { 34302, 0x0000813A }, /* GL_TEXTURE_MIN_LOD */
+ { 34321, 0x00008066 }, /* GL_TEXTURE_PRIORITY */
+ { 34341, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_ARB */
+ { 34366, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_NV */
+ { 34390, 0x0000805C }, /* GL_TEXTURE_RED_SIZE */
+ { 34410, 0x0000805C }, /* GL_TEXTURE_RED_SIZE_EXT */
+ { 34434, 0x00008067 }, /* GL_TEXTURE_RESIDENT */
+ { 34454, 0x00000BA5 }, /* GL_TEXTURE_STACK_DEPTH */
+ { 34477, 0x00008065 }, /* GL_TEXTURE_TOO_LARGE_EXT */
+ { 34502, 0x0000888F }, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */
+ { 34536, 0x00001000 }, /* GL_TEXTURE_WIDTH */
+ { 34553, 0x00008072 }, /* GL_TEXTURE_WRAP_R */
+ { 34571, 0x00002802 }, /* GL_TEXTURE_WRAP_S */
+ { 34589, 0x00002803 }, /* GL_TEXTURE_WRAP_T */
+ { 34607, 0x000088BF }, /* GL_TIME_ELAPSED_EXT */
+ { 34627, 0x00008648 }, /* GL_TRACK_MATRIX_NV */
+ { 34646, 0x00008649 }, /* GL_TRACK_MATRIX_TRANSFORM_NV */
+ { 34675, 0x00001000 }, /* GL_TRANSFORM_BIT */
+ { 34692, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX */
+ { 34718, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX_ARB */
+ { 34748, 0x000088B7 }, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */
+ { 34780, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX */
+ { 34810, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX_ARB */
+ { 34844, 0x0000862C }, /* GL_TRANSPOSE_NV */
+ { 34860, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX */
+ { 34891, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX_ARB */
+ { 34926, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX */
+ { 34954, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX_ARB */
+ { 34986, 0x00000004 }, /* GL_TRIANGLES */
+ { 34999, 0x00000006 }, /* GL_TRIANGLE_FAN */
+ { 35015, 0x00008615 }, /* GL_TRIANGLE_MESH_SUN */
+ { 35036, 0x00000005 }, /* GL_TRIANGLE_STRIP */
+ { 35054, 0x00000001 }, /* GL_TRUE */
+ { 35062, 0x00000CF5 }, /* GL_UNPACK_ALIGNMENT */
+ { 35082, 0x0000806E }, /* GL_UNPACK_IMAGE_HEIGHT */
+ { 35105, 0x00000CF1 }, /* GL_UNPACK_LSB_FIRST */
+ { 35125, 0x00000CF2 }, /* GL_UNPACK_ROW_LENGTH */
+ { 35146, 0x0000806D }, /* GL_UNPACK_SKIP_IMAGES */
+ { 35168, 0x00000CF4 }, /* GL_UNPACK_SKIP_PIXELS */
+ { 35190, 0x00000CF3 }, /* GL_UNPACK_SKIP_ROWS */
+ { 35210, 0x00000CF0 }, /* GL_UNPACK_SWAP_BYTES */
+ { 35231, 0x00001401 }, /* GL_UNSIGNED_BYTE */
+ { 35248, 0x00008362 }, /* GL_UNSIGNED_BYTE_2_3_3_REV */
+ { 35275, 0x00008032 }, /* GL_UNSIGNED_BYTE_3_3_2 */
+ { 35298, 0x00001405 }, /* GL_UNSIGNED_INT */
+ { 35314, 0x00008036 }, /* GL_UNSIGNED_INT_10_10_10_2 */
+ { 35341, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_NV */
+ { 35365, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV */
+ { 35396, 0x00008035 }, /* GL_UNSIGNED_INT_8_8_8_8 */
+ { 35420, 0x00008367 }, /* GL_UNSIGNED_INT_8_8_8_8_REV */
+ { 35448, 0x00001403 }, /* GL_UNSIGNED_SHORT */
+ { 35466, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */
+ { 35496, 0x00008033 }, /* GL_UNSIGNED_SHORT_4_4_4_4 */
+ { 35522, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */
+ { 35552, 0x00008034 }, /* GL_UNSIGNED_SHORT_5_5_5_1 */
+ { 35578, 0x00008363 }, /* GL_UNSIGNED_SHORT_5_6_5 */
+ { 35602, 0x00008364 }, /* GL_UNSIGNED_SHORT_5_6_5_REV */
+ { 35630, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_APPLE */
+ { 35658, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_MESA */
+ { 35685, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */
+ { 35717, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_MESA */
+ { 35748, 0x00008CA2 }, /* GL_UPPER_LEFT */
+ { 35762, 0x00002A20 }, /* GL_V2F */
+ { 35769, 0x00002A21 }, /* GL_V3F */
+ { 35776, 0x00008B83 }, /* GL_VALIDATE_STATUS */
+ { 35795, 0x00001F00 }, /* GL_VENDOR */
+ { 35805, 0x00001F02 }, /* GL_VERSION */
+ { 35816, 0x00008074 }, /* GL_VERTEX_ARRAY */
+ { 35832, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING_APPLE */
+ { 35862, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING */
+ { 35893, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING_ARB */
+ { 35928, 0x0000808E }, /* GL_VERTEX_ARRAY_POINTER */
+ { 35952, 0x0000807A }, /* GL_VERTEX_ARRAY_SIZE */
+ { 35973, 0x0000807C }, /* GL_VERTEX_ARRAY_STRIDE */
+ { 35996, 0x0000807B }, /* GL_VERTEX_ARRAY_TYPE */
+ { 36017, 0x00008650 }, /* GL_VERTEX_ATTRIB_ARRAY0_NV */
+ { 36044, 0x0000865A }, /* GL_VERTEX_ATTRIB_ARRAY10_NV */
+ { 36072, 0x0000865B }, /* GL_VERTEX_ATTRIB_ARRAY11_NV */
+ { 36100, 0x0000865C }, /* GL_VERTEX_ATTRIB_ARRAY12_NV */
+ { 36128, 0x0000865D }, /* GL_VERTEX_ATTRIB_ARRAY13_NV */
+ { 36156, 0x0000865E }, /* GL_VERTEX_ATTRIB_ARRAY14_NV */
+ { 36184, 0x0000865F }, /* GL_VERTEX_ATTRIB_ARRAY15_NV */
+ { 36212, 0x00008651 }, /* GL_VERTEX_ATTRIB_ARRAY1_NV */
+ { 36239, 0x00008652 }, /* GL_VERTEX_ATTRIB_ARRAY2_NV */
+ { 36266, 0x00008653 }, /* GL_VERTEX_ATTRIB_ARRAY3_NV */
+ { 36293, 0x00008654 }, /* GL_VERTEX_ATTRIB_ARRAY4_NV */
+ { 36320, 0x00008655 }, /* GL_VERTEX_ATTRIB_ARRAY5_NV */
+ { 36347, 0x00008656 }, /* GL_VERTEX_ATTRIB_ARRAY6_NV */
+ { 36374, 0x00008657 }, /* GL_VERTEX_ATTRIB_ARRAY7_NV */
+ { 36401, 0x00008658 }, /* GL_VERTEX_ATTRIB_ARRAY8_NV */
+ { 36428, 0x00008659 }, /* GL_VERTEX_ATTRIB_ARRAY9_NV */
+ { 36455, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */
+ { 36493, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB */
+ { 36535, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */
+ { 36566, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB */
+ { 36601, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */
+ { 36635, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB */
+ { 36673, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */
+ { 36704, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB */
+ { 36739, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */
+ { 36767, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB */
+ { 36799, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */
+ { 36829, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB */
+ { 36863, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */
+ { 36891, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB */
+ { 36923, 0x000086A7 }, /* GL_VERTEX_BLEND_ARB */
+ { 36943, 0x00008620 }, /* GL_VERTEX_PROGRAM_ARB */
+ { 36965, 0x0000864A }, /* GL_VERTEX_PROGRAM_BINDING_NV */
+ { 36994, 0x00008620 }, /* GL_VERTEX_PROGRAM_NV */
+ { 37015, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE */
+ { 37044, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_ARB */
+ { 37077, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_NV */
+ { 37109, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE */
+ { 37136, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_ARB */
+ { 37167, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_NV */
+ { 37197, 0x00008B31 }, /* GL_VERTEX_SHADER */
+ { 37214, 0x00008B31 }, /* GL_VERTEX_SHADER_ARB */
+ { 37235, 0x00008621 }, /* GL_VERTEX_STATE_PROGRAM_NV */
+ { 37262, 0x00000BA2 }, /* GL_VIEWPORT */
+ { 37274, 0x00000800 }, /* GL_VIEWPORT_BIT */
+ { 37290, 0x000086AD }, /* GL_WEIGHT_ARRAY_ARB */
+ { 37310, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */
+ { 37341, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB */
+ { 37376, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_ARB */
+ { 37404, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_ARB */
+ { 37429, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_ARB */
+ { 37456, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_ARB */
+ { 37481, 0x000086A6 }, /* GL_WEIGHT_SUM_UNITY_ARB */
+ { 37505, 0x000081D4 }, /* GL_WRAP_BORDER_SUN */
+ { 37524, 0x000088B9 }, /* GL_WRITE_ONLY */
+ { 37538, 0x000088B9 }, /* GL_WRITE_ONLY_ARB */
+ { 37556, 0x00001506 }, /* GL_XOR */
+ { 37563, 0x000085B9 }, /* GL_YCBCR_422_APPLE */
+ { 37582, 0x00008757 }, /* GL_YCBCR_MESA */
+ { 37596, 0x00000000 }, /* GL_ZERO */
+ { 37604, 0x00000D16 }, /* GL_ZOOM_X */
+ { 37614, 0x00000D17 }, /* GL_ZOOM_Y */
};
static const unsigned reduced_enums[1284] =
{
- 436, /* GL_FALSE */
- 645, /* GL_LINES */
- 647, /* GL_LINE_LOOP */
- 654, /* GL_LINE_STRIP */
- 1641, /* GL_TRIANGLES */
- 1644, /* GL_TRIANGLE_STRIP */
- 1642, /* GL_TRIANGLE_FAN */
- 1211, /* GL_QUADS */
- 1213, /* GL_QUAD_STRIP */
- 1099, /* GL_POLYGON */
- 1111, /* GL_POLYGON_STIPPLE_BIT */
- 1064, /* GL_PIXEL_MODE_BIT */
- 632, /* GL_LIGHTING_BIT */
- 458, /* GL_FOG_BIT */
+ 434, /* GL_FALSE */
+ 643, /* GL_LINES */
+ 645, /* GL_LINE_LOOP */
+ 652, /* GL_LINE_STRIP */
+ 1639, /* GL_TRIANGLES */
+ 1642, /* GL_TRIANGLE_STRIP */
+ 1640, /* GL_TRIANGLE_FAN */
+ 1209, /* GL_QUADS */
+ 1211, /* GL_QUAD_STRIP */
+ 1097, /* GL_POLYGON */
+ 1109, /* GL_POLYGON_STIPPLE_BIT */
+ 1062, /* GL_PIXEL_MODE_BIT */
+ 630, /* GL_LIGHTING_BIT */
+ 456, /* GL_FOG_BIT */
8, /* GL_ACCUM */
- 664, /* GL_LOAD */
- 1253, /* GL_RETURN */
- 937, /* GL_MULT */
+ 662, /* GL_LOAD */
+ 1251, /* GL_RETURN */
+ 935, /* GL_MULT */
23, /* GL_ADD */
- 953, /* GL_NEVER */
- 622, /* GL_LESS */
- 426, /* GL_EQUAL */
- 621, /* GL_LEQUAL */
- 547, /* GL_GREATER */
- 968, /* GL_NOTEQUAL */
- 522, /* GL_GEQUAL */
+ 951, /* GL_NEVER */
+ 620, /* GL_LESS */
+ 424, /* GL_EQUAL */
+ 619, /* GL_LEQUAL */
+ 545, /* GL_GREATER */
+ 966, /* GL_NOTEQUAL */
+ 520, /* GL_GEQUAL */
46, /* GL_ALWAYS */
- 1386, /* GL_SRC_COLOR */
- 997, /* GL_ONE_MINUS_SRC_COLOR */
- 1384, /* GL_SRC_ALPHA */
- 996, /* GL_ONE_MINUS_SRC_ALPHA */
- 406, /* GL_DST_ALPHA */
- 994, /* GL_ONE_MINUS_DST_ALPHA */
- 407, /* GL_DST_COLOR */
- 995, /* GL_ONE_MINUS_DST_COLOR */
- 1385, /* GL_SRC_ALPHA_SATURATE */
- 510, /* GL_FRONT_LEFT */
- 511, /* GL_FRONT_RIGHT */
- 69, /* GL_BACK_LEFT */
- 70, /* GL_BACK_RIGHT */
- 507, /* GL_FRONT */
- 68, /* GL_BACK */
- 620, /* GL_LEFT */
- 1293, /* GL_RIGHT */
- 508, /* GL_FRONT_AND_BACK */
- 63, /* GL_AUX0 */
- 64, /* GL_AUX1 */
- 65, /* GL_AUX2 */
- 66, /* GL_AUX3 */
- 612, /* GL_INVALID_ENUM */
- 615, /* GL_INVALID_VALUE */
- 614, /* GL_INVALID_OPERATION */
- 1387, /* GL_STACK_OVERFLOW */
- 1388, /* GL_STACK_UNDERFLOW */
- 1022, /* GL_OUT_OF_MEMORY */
- 613, /* GL_INVALID_FRAMEBUFFER_OPERATION_EXT */
+ 1384, /* GL_SRC_COLOR */
+ 995, /* GL_ONE_MINUS_SRC_COLOR */
+ 1382, /* GL_SRC_ALPHA */
+ 994, /* GL_ONE_MINUS_SRC_ALPHA */
+ 405, /* GL_DST_ALPHA */
+ 992, /* GL_ONE_MINUS_DST_ALPHA */
+ 406, /* GL_DST_COLOR */
+ 993, /* GL_ONE_MINUS_DST_COLOR */
+ 1383, /* GL_SRC_ALPHA_SATURATE */
+ 508, /* GL_FRONT_LEFT */
+ 509, /* GL_FRONT_RIGHT */
+ 68, /* GL_BACK_LEFT */
+ 69, /* GL_BACK_RIGHT */
+ 505, /* GL_FRONT */
+ 67, /* GL_BACK */
+ 618, /* GL_LEFT */
+ 1291, /* GL_RIGHT */
+ 506, /* GL_FRONT_AND_BACK */
+ 62, /* GL_AUX0 */
+ 63, /* GL_AUX1 */
+ 64, /* GL_AUX2 */
+ 65, /* GL_AUX3 */
+ 610, /* GL_INVALID_ENUM */
+ 613, /* GL_INVALID_VALUE */
+ 612, /* GL_INVALID_OPERATION */
+ 1385, /* GL_STACK_OVERFLOW */
+ 1386, /* GL_STACK_UNDERFLOW */
+ 1020, /* GL_OUT_OF_MEMORY */
+ 611, /* GL_INVALID_FRAMEBUFFER_OPERATION_EXT */
0, /* GL_2D */
2, /* GL_3D */
3, /* GL_3D_COLOR */
4, /* GL_3D_COLOR_TEXTURE */
6, /* GL_4D_COLOR_TEXTURE */
- 1042, /* GL_PASS_THROUGH_TOKEN */
- 1098, /* GL_POINT_TOKEN */
- 655, /* GL_LINE_TOKEN */
- 1112, /* GL_POLYGON_TOKEN */
- 74, /* GL_BITMAP_TOKEN */
- 405, /* GL_DRAW_PIXEL_TOKEN */
- 271, /* GL_COPY_PIXEL_TOKEN */
- 648, /* GL_LINE_RESET_TOKEN */
- 429, /* GL_EXP */
- 430, /* GL_EXP2 */
- 304, /* GL_CW */
- 116, /* GL_CCW */
- 137, /* GL_COEFF */
- 1019, /* GL_ORDER */
- 344, /* GL_DOMAIN */
- 279, /* GL_CURRENT_COLOR */
- 282, /* GL_CURRENT_INDEX */
- 288, /* GL_CURRENT_NORMAL */
- 300, /* GL_CURRENT_TEXTURE_COORDS */
- 293, /* GL_CURRENT_RASTER_COLOR */
- 295, /* GL_CURRENT_RASTER_INDEX */
- 298, /* GL_CURRENT_RASTER_TEXTURE_COORDS */
- 296, /* GL_CURRENT_RASTER_POSITION */
- 297, /* GL_CURRENT_RASTER_POSITION_VALID */
- 294, /* GL_CURRENT_RASTER_DISTANCE */
- 1091, /* GL_POINT_SMOOTH */
- 1080, /* GL_POINT_SIZE */
- 1090, /* GL_POINT_SIZE_RANGE */
- 1081, /* GL_POINT_SIZE_GRANULARITY */
- 649, /* GL_LINE_SMOOTH */
- 656, /* GL_LINE_WIDTH */
- 658, /* GL_LINE_WIDTH_RANGE */
- 657, /* GL_LINE_WIDTH_GRANULARITY */
- 651, /* GL_LINE_STIPPLE */
- 652, /* GL_LINE_STIPPLE_PATTERN */
- 653, /* GL_LINE_STIPPLE_REPEAT */
- 663, /* GL_LIST_MODE */
- 822, /* GL_MAX_LIST_NESTING */
- 660, /* GL_LIST_BASE */
- 662, /* GL_LIST_INDEX */
- 1101, /* GL_POLYGON_MODE */
- 1108, /* GL_POLYGON_SMOOTH */
- 1110, /* GL_POLYGON_STIPPLE */
- 414, /* GL_EDGE_FLAG */
- 272, /* GL_CULL_FACE */
- 273, /* GL_CULL_FACE_MODE */
- 509, /* GL_FRONT_FACE */
- 631, /* GL_LIGHTING */
- 636, /* GL_LIGHT_MODEL_LOCAL_VIEWER */
- 637, /* GL_LIGHT_MODEL_TWO_SIDE */
- 633, /* GL_LIGHT_MODEL_AMBIENT */
- 1339, /* GL_SHADE_MODEL */
- 168, /* GL_COLOR_MATERIAL_FACE */
- 169, /* GL_COLOR_MATERIAL_PARAMETER */
- 167, /* GL_COLOR_MATERIAL */
- 457, /* GL_FOG */
- 479, /* GL_FOG_INDEX */
- 475, /* GL_FOG_DENSITY */
- 483, /* GL_FOG_START */
- 477, /* GL_FOG_END */
- 480, /* GL_FOG_MODE */
- 459, /* GL_FOG_COLOR */
- 333, /* GL_DEPTH_RANGE */
- 338, /* GL_DEPTH_TEST */
- 341, /* GL_DEPTH_WRITEMASK */
- 321, /* GL_DEPTH_CLEAR_VALUE */
- 332, /* GL_DEPTH_FUNC */
+ 1040, /* GL_PASS_THROUGH_TOKEN */
+ 1096, /* GL_POINT_TOKEN */
+ 653, /* GL_LINE_TOKEN */
+ 1110, /* GL_POLYGON_TOKEN */
+ 73, /* GL_BITMAP_TOKEN */
+ 404, /* GL_DRAW_PIXEL_TOKEN */
+ 270, /* GL_COPY_PIXEL_TOKEN */
+ 646, /* GL_LINE_RESET_TOKEN */
+ 427, /* GL_EXP */
+ 428, /* GL_EXP2 */
+ 303, /* GL_CW */
+ 115, /* GL_CCW */
+ 136, /* GL_COEFF */
+ 1017, /* GL_ORDER */
+ 343, /* GL_DOMAIN */
+ 278, /* GL_CURRENT_COLOR */
+ 281, /* GL_CURRENT_INDEX */
+ 287, /* GL_CURRENT_NORMAL */
+ 299, /* GL_CURRENT_TEXTURE_COORDS */
+ 292, /* GL_CURRENT_RASTER_COLOR */
+ 294, /* GL_CURRENT_RASTER_INDEX */
+ 297, /* GL_CURRENT_RASTER_TEXTURE_COORDS */
+ 295, /* GL_CURRENT_RASTER_POSITION */
+ 296, /* GL_CURRENT_RASTER_POSITION_VALID */
+ 293, /* GL_CURRENT_RASTER_DISTANCE */
+ 1089, /* GL_POINT_SMOOTH */
+ 1078, /* GL_POINT_SIZE */
+ 1088, /* GL_POINT_SIZE_RANGE */
+ 1079, /* GL_POINT_SIZE_GRANULARITY */
+ 647, /* GL_LINE_SMOOTH */
+ 654, /* GL_LINE_WIDTH */
+ 656, /* GL_LINE_WIDTH_RANGE */
+ 655, /* GL_LINE_WIDTH_GRANULARITY */
+ 649, /* GL_LINE_STIPPLE */
+ 650, /* GL_LINE_STIPPLE_PATTERN */
+ 651, /* GL_LINE_STIPPLE_REPEAT */
+ 661, /* GL_LIST_MODE */
+ 820, /* GL_MAX_LIST_NESTING */
+ 658, /* GL_LIST_BASE */
+ 660, /* GL_LIST_INDEX */
+ 1099, /* GL_POLYGON_MODE */
+ 1106, /* GL_POLYGON_SMOOTH */
+ 1108, /* GL_POLYGON_STIPPLE */
+ 413, /* GL_EDGE_FLAG */
+ 271, /* GL_CULL_FACE */
+ 272, /* GL_CULL_FACE_MODE */
+ 507, /* GL_FRONT_FACE */
+ 629, /* GL_LIGHTING */
+ 634, /* GL_LIGHT_MODEL_LOCAL_VIEWER */
+ 635, /* GL_LIGHT_MODEL_TWO_SIDE */
+ 631, /* GL_LIGHT_MODEL_AMBIENT */
+ 1337, /* GL_SHADE_MODEL */
+ 167, /* GL_COLOR_MATERIAL_FACE */
+ 168, /* GL_COLOR_MATERIAL_PARAMETER */
+ 166, /* GL_COLOR_MATERIAL */
+ 455, /* GL_FOG */
+ 477, /* GL_FOG_INDEX */
+ 473, /* GL_FOG_DENSITY */
+ 481, /* GL_FOG_START */
+ 475, /* GL_FOG_END */
+ 478, /* GL_FOG_MODE */
+ 457, /* GL_FOG_COLOR */
+ 332, /* GL_DEPTH_RANGE */
+ 337, /* GL_DEPTH_TEST */
+ 340, /* GL_DEPTH_WRITEMASK */
+ 320, /* GL_DEPTH_CLEAR_VALUE */
+ 331, /* GL_DEPTH_FUNC */
12, /* GL_ACCUM_CLEAR_VALUE */
- 1422, /* GL_STENCIL_TEST */
- 1410, /* GL_STENCIL_CLEAR_VALUE */
- 1412, /* GL_STENCIL_FUNC */
- 1424, /* GL_STENCIL_VALUE_MASK */
- 1411, /* GL_STENCIL_FAIL */
- 1419, /* GL_STENCIL_PASS_DEPTH_FAIL */
- 1420, /* GL_STENCIL_PASS_DEPTH_PASS */
- 1421, /* GL_STENCIL_REF */
- 1425, /* GL_STENCIL_WRITEMASK */
- 791, /* GL_MATRIX_MODE */
- 958, /* GL_NORMALIZE */
- 1731, /* GL_VIEWPORT */
- 932, /* GL_MODELVIEW_STACK_DEPTH */
- 1191, /* GL_PROJECTION_STACK_DEPTH */
- 1620, /* GL_TEXTURE_STACK_DEPTH */
- 930, /* GL_MODELVIEW_MATRIX */
- 1190, /* GL_PROJECTION_MATRIX */
- 1605, /* GL_TEXTURE_MATRIX */
- 61, /* GL_ATTRIB_STACK_DEPTH */
- 127, /* GL_CLIENT_ATTRIB_STACK_DEPTH */
+ 1420, /* GL_STENCIL_TEST */
+ 1408, /* GL_STENCIL_CLEAR_VALUE */
+ 1410, /* GL_STENCIL_FUNC */
+ 1422, /* GL_STENCIL_VALUE_MASK */
+ 1409, /* GL_STENCIL_FAIL */
+ 1417, /* GL_STENCIL_PASS_DEPTH_FAIL */
+ 1418, /* GL_STENCIL_PASS_DEPTH_PASS */
+ 1419, /* GL_STENCIL_REF */
+ 1423, /* GL_STENCIL_WRITEMASK */
+ 789, /* GL_MATRIX_MODE */
+ 956, /* GL_NORMALIZE */
+ 1729, /* GL_VIEWPORT */
+ 930, /* GL_MODELVIEW_STACK_DEPTH */
+ 1189, /* GL_PROJECTION_STACK_DEPTH */
+ 1618, /* GL_TEXTURE_STACK_DEPTH */
+ 928, /* GL_MODELVIEW_MATRIX */
+ 1188, /* GL_PROJECTION_MATRIX */
+ 1603, /* GL_TEXTURE_MATRIX */
+ 60, /* GL_ATTRIB_STACK_DEPTH */
+ 126, /* GL_CLIENT_ATTRIB_STACK_DEPTH */
43, /* GL_ALPHA_TEST */
44, /* GL_ALPHA_TEST_FUNC */
45, /* GL_ALPHA_TEST_REF */
- 343, /* GL_DITHER */
- 78, /* GL_BLEND_DST */
- 86, /* GL_BLEND_SRC */
- 75, /* GL_BLEND */
- 666, /* GL_LOGIC_OP_MODE */
- 586, /* GL_INDEX_LOGIC_OP */
- 166, /* GL_COLOR_LOGIC_OP */
- 67, /* GL_AUX_BUFFERS */
- 354, /* GL_DRAW_BUFFER */
- 1223, /* GL_READ_BUFFER */
- 1320, /* GL_SCISSOR_BOX */
- 1321, /* GL_SCISSOR_TEST */
- 585, /* GL_INDEX_CLEAR_VALUE */
- 590, /* GL_INDEX_WRITEMASK */
- 163, /* GL_COLOR_CLEAR_VALUE */
- 205, /* GL_COLOR_WRITEMASK */
- 587, /* GL_INDEX_MODE */
- 1287, /* GL_RGBA_MODE */
- 353, /* GL_DOUBLEBUFFER */
- 1426, /* GL_STEREO */
- 1246, /* GL_RENDER_MODE */
- 1043, /* GL_PERSPECTIVE_CORRECTION_HINT */
- 1092, /* GL_POINT_SMOOTH_HINT */
- 650, /* GL_LINE_SMOOTH_HINT */
- 1109, /* GL_POLYGON_SMOOTH_HINT */
- 478, /* GL_FOG_HINT */
- 1586, /* GL_TEXTURE_GEN_S */
- 1587, /* GL_TEXTURE_GEN_T */
- 1585, /* GL_TEXTURE_GEN_R */
- 1584, /* GL_TEXTURE_GEN_Q */
- 1056, /* GL_PIXEL_MAP_I_TO_I */
- 1062, /* GL_PIXEL_MAP_S_TO_S */
- 1058, /* GL_PIXEL_MAP_I_TO_R */
- 1054, /* GL_PIXEL_MAP_I_TO_G */
- 1052, /* GL_PIXEL_MAP_I_TO_B */
- 1050, /* GL_PIXEL_MAP_I_TO_A */
- 1060, /* GL_PIXEL_MAP_R_TO_R */
- 1048, /* GL_PIXEL_MAP_G_TO_G */
- 1046, /* GL_PIXEL_MAP_B_TO_B */
- 1044, /* GL_PIXEL_MAP_A_TO_A */
- 1057, /* GL_PIXEL_MAP_I_TO_I_SIZE */
- 1063, /* GL_PIXEL_MAP_S_TO_S_SIZE */
- 1059, /* GL_PIXEL_MAP_I_TO_R_SIZE */
- 1055, /* GL_PIXEL_MAP_I_TO_G_SIZE */
- 1053, /* GL_PIXEL_MAP_I_TO_B_SIZE */
- 1051, /* GL_PIXEL_MAP_I_TO_A_SIZE */
- 1061, /* GL_PIXEL_MAP_R_TO_R_SIZE */
- 1049, /* GL_PIXEL_MAP_G_TO_G_SIZE */
- 1047, /* GL_PIXEL_MAP_B_TO_B_SIZE */
- 1045, /* GL_PIXEL_MAP_A_TO_A_SIZE */
- 1653, /* GL_UNPACK_SWAP_BYTES */
- 1648, /* GL_UNPACK_LSB_FIRST */
- 1649, /* GL_UNPACK_ROW_LENGTH */
- 1652, /* GL_UNPACK_SKIP_ROWS */
- 1651, /* GL_UNPACK_SKIP_PIXELS */
- 1646, /* GL_UNPACK_ALIGNMENT */
- 1031, /* GL_PACK_SWAP_BYTES */
- 1026, /* GL_PACK_LSB_FIRST */
- 1027, /* GL_PACK_ROW_LENGTH */
- 1030, /* GL_PACK_SKIP_ROWS */
- 1029, /* GL_PACK_SKIP_PIXELS */
- 1023, /* GL_PACK_ALIGNMENT */
- 744, /* GL_MAP_COLOR */
- 745, /* GL_MAP_STENCIL */
- 589, /* GL_INDEX_SHIFT */
- 588, /* GL_INDEX_OFFSET */
- 1235, /* GL_RED_SCALE */
- 1233, /* GL_RED_BIAS */
- 1748, /* GL_ZOOM_X */
- 1749, /* GL_ZOOM_Y */
- 551, /* GL_GREEN_SCALE */
- 549, /* GL_GREEN_BIAS */
- 92, /* GL_BLUE_SCALE */
- 90, /* GL_BLUE_BIAS */
+ 342, /* GL_DITHER */
+ 77, /* GL_BLEND_DST */
+ 85, /* GL_BLEND_SRC */
+ 74, /* GL_BLEND */
+ 664, /* GL_LOGIC_OP_MODE */
+ 584, /* GL_INDEX_LOGIC_OP */
+ 165, /* GL_COLOR_LOGIC_OP */
+ 66, /* GL_AUX_BUFFERS */
+ 353, /* GL_DRAW_BUFFER */
+ 1221, /* GL_READ_BUFFER */
+ 1318, /* GL_SCISSOR_BOX */
+ 1319, /* GL_SCISSOR_TEST */
+ 583, /* GL_INDEX_CLEAR_VALUE */
+ 588, /* GL_INDEX_WRITEMASK */
+ 162, /* GL_COLOR_CLEAR_VALUE */
+ 204, /* GL_COLOR_WRITEMASK */
+ 585, /* GL_INDEX_MODE */
+ 1285, /* GL_RGBA_MODE */
+ 352, /* GL_DOUBLEBUFFER */
+ 1424, /* GL_STEREO */
+ 1244, /* GL_RENDER_MODE */
+ 1041, /* GL_PERSPECTIVE_CORRECTION_HINT */
+ 1090, /* GL_POINT_SMOOTH_HINT */
+ 648, /* GL_LINE_SMOOTH_HINT */
+ 1107, /* GL_POLYGON_SMOOTH_HINT */
+ 476, /* GL_FOG_HINT */
+ 1584, /* GL_TEXTURE_GEN_S */
+ 1585, /* GL_TEXTURE_GEN_T */
+ 1583, /* GL_TEXTURE_GEN_R */
+ 1582, /* GL_TEXTURE_GEN_Q */
+ 1054, /* GL_PIXEL_MAP_I_TO_I */
+ 1060, /* GL_PIXEL_MAP_S_TO_S */
+ 1056, /* GL_PIXEL_MAP_I_TO_R */
+ 1052, /* GL_PIXEL_MAP_I_TO_G */
+ 1050, /* GL_PIXEL_MAP_I_TO_B */
+ 1048, /* GL_PIXEL_MAP_I_TO_A */
+ 1058, /* GL_PIXEL_MAP_R_TO_R */
+ 1046, /* GL_PIXEL_MAP_G_TO_G */
+ 1044, /* GL_PIXEL_MAP_B_TO_B */
+ 1042, /* GL_PIXEL_MAP_A_TO_A */
+ 1055, /* GL_PIXEL_MAP_I_TO_I_SIZE */
+ 1061, /* GL_PIXEL_MAP_S_TO_S_SIZE */
+ 1057, /* GL_PIXEL_MAP_I_TO_R_SIZE */
+ 1053, /* GL_PIXEL_MAP_I_TO_G_SIZE */
+ 1051, /* GL_PIXEL_MAP_I_TO_B_SIZE */
+ 1049, /* GL_PIXEL_MAP_I_TO_A_SIZE */
+ 1059, /* GL_PIXEL_MAP_R_TO_R_SIZE */
+ 1047, /* GL_PIXEL_MAP_G_TO_G_SIZE */
+ 1045, /* GL_PIXEL_MAP_B_TO_B_SIZE */
+ 1043, /* GL_PIXEL_MAP_A_TO_A_SIZE */
+ 1651, /* GL_UNPACK_SWAP_BYTES */
+ 1646, /* GL_UNPACK_LSB_FIRST */
+ 1647, /* GL_UNPACK_ROW_LENGTH */
+ 1650, /* GL_UNPACK_SKIP_ROWS */
+ 1649, /* GL_UNPACK_SKIP_PIXELS */
+ 1644, /* GL_UNPACK_ALIGNMENT */
+ 1029, /* GL_PACK_SWAP_BYTES */
+ 1024, /* GL_PACK_LSB_FIRST */
+ 1025, /* GL_PACK_ROW_LENGTH */
+ 1028, /* GL_PACK_SKIP_ROWS */
+ 1027, /* GL_PACK_SKIP_PIXELS */
+ 1021, /* GL_PACK_ALIGNMENT */
+ 742, /* GL_MAP_COLOR */
+ 743, /* GL_MAP_STENCIL */
+ 587, /* GL_INDEX_SHIFT */
+ 586, /* GL_INDEX_OFFSET */
+ 1233, /* GL_RED_SCALE */
+ 1231, /* GL_RED_BIAS */
+ 1746, /* GL_ZOOM_X */
+ 1747, /* GL_ZOOM_Y */
+ 549, /* GL_GREEN_SCALE */
+ 547, /* GL_GREEN_BIAS */
+ 91, /* GL_BLUE_SCALE */
+ 89, /* GL_BLUE_BIAS */
42, /* GL_ALPHA_SCALE */
40, /* GL_ALPHA_BIAS */
- 334, /* GL_DEPTH_SCALE */
- 315, /* GL_DEPTH_BIAS */
- 817, /* GL_MAX_EVAL_ORDER */
- 821, /* GL_MAX_LIGHTS */
- 800, /* GL_MAX_CLIP_PLANES */
- 865, /* GL_MAX_TEXTURE_SIZE */
- 827, /* GL_MAX_PIXEL_MAP_TABLE */
- 796, /* GL_MAX_ATTRIB_STACK_DEPTH */
- 824, /* GL_MAX_MODELVIEW_STACK_DEPTH */
- 825, /* GL_MAX_NAME_STACK_DEPTH */
- 853, /* GL_MAX_PROJECTION_STACK_DEPTH */
- 866, /* GL_MAX_TEXTURE_STACK_DEPTH */
- 880, /* GL_MAX_VIEWPORT_DIMS */
- 797, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */
- 1433, /* GL_SUBPIXEL_BITS */
- 584, /* GL_INDEX_BITS */
- 1234, /* GL_RED_BITS */
- 550, /* GL_GREEN_BITS */
- 91, /* GL_BLUE_BITS */
+ 333, /* GL_DEPTH_SCALE */
+ 314, /* GL_DEPTH_BIAS */
+ 815, /* GL_MAX_EVAL_ORDER */
+ 819, /* GL_MAX_LIGHTS */
+ 798, /* GL_MAX_CLIP_PLANES */
+ 863, /* GL_MAX_TEXTURE_SIZE */
+ 825, /* GL_MAX_PIXEL_MAP_TABLE */
+ 794, /* GL_MAX_ATTRIB_STACK_DEPTH */
+ 822, /* GL_MAX_MODELVIEW_STACK_DEPTH */
+ 823, /* GL_MAX_NAME_STACK_DEPTH */
+ 851, /* GL_MAX_PROJECTION_STACK_DEPTH */
+ 864, /* GL_MAX_TEXTURE_STACK_DEPTH */
+ 878, /* GL_MAX_VIEWPORT_DIMS */
+ 795, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */
+ 1431, /* GL_SUBPIXEL_BITS */
+ 582, /* GL_INDEX_BITS */
+ 1232, /* GL_RED_BITS */
+ 548, /* GL_GREEN_BITS */
+ 90, /* GL_BLUE_BITS */
41, /* GL_ALPHA_BITS */
- 316, /* GL_DEPTH_BITS */
- 1408, /* GL_STENCIL_BITS */
+ 315, /* GL_DEPTH_BITS */
+ 1406, /* GL_STENCIL_BITS */
14, /* GL_ACCUM_RED_BITS */
13, /* GL_ACCUM_GREEN_BITS */
10, /* GL_ACCUM_BLUE_BITS */
9, /* GL_ACCUM_ALPHA_BITS */
- 946, /* GL_NAME_STACK_DEPTH */
- 62, /* GL_AUTO_NORMAL */
- 690, /* GL_MAP1_COLOR_4 */
- 693, /* GL_MAP1_INDEX */
- 694, /* GL_MAP1_NORMAL */
- 695, /* GL_MAP1_TEXTURE_COORD_1 */
- 696, /* GL_MAP1_TEXTURE_COORD_2 */
- 697, /* GL_MAP1_TEXTURE_COORD_3 */
- 698, /* GL_MAP1_TEXTURE_COORD_4 */
- 699, /* GL_MAP1_VERTEX_3 */
- 700, /* GL_MAP1_VERTEX_4 */
- 717, /* GL_MAP2_COLOR_4 */
- 720, /* GL_MAP2_INDEX */
- 721, /* GL_MAP2_NORMAL */
- 722, /* GL_MAP2_TEXTURE_COORD_1 */
- 723, /* GL_MAP2_TEXTURE_COORD_2 */
- 724, /* GL_MAP2_TEXTURE_COORD_3 */
- 725, /* GL_MAP2_TEXTURE_COORD_4 */
- 726, /* GL_MAP2_VERTEX_3 */
- 727, /* GL_MAP2_VERTEX_4 */
- 691, /* GL_MAP1_GRID_DOMAIN */
- 692, /* GL_MAP1_GRID_SEGMENTS */
- 718, /* GL_MAP2_GRID_DOMAIN */
- 719, /* GL_MAP2_GRID_SEGMENTS */
- 1510, /* GL_TEXTURE_1D */
- 1512, /* GL_TEXTURE_2D */
- 439, /* GL_FEEDBACK_BUFFER_POINTER */
- 440, /* GL_FEEDBACK_BUFFER_SIZE */
- 441, /* GL_FEEDBACK_BUFFER_TYPE */
- 1330, /* GL_SELECTION_BUFFER_POINTER */
- 1331, /* GL_SELECTION_BUFFER_SIZE */
- 1623, /* GL_TEXTURE_WIDTH */
- 1591, /* GL_TEXTURE_HEIGHT */
- 1547, /* GL_TEXTURE_COMPONENTS */
- 1531, /* GL_TEXTURE_BORDER_COLOR */
- 1530, /* GL_TEXTURE_BORDER */
- 345, /* GL_DONT_CARE */
- 437, /* GL_FASTEST */
- 954, /* GL_NICEST */
+ 944, /* GL_NAME_STACK_DEPTH */
+ 61, /* GL_AUTO_NORMAL */
+ 688, /* GL_MAP1_COLOR_4 */
+ 691, /* GL_MAP1_INDEX */
+ 692, /* GL_MAP1_NORMAL */
+ 693, /* GL_MAP1_TEXTURE_COORD_1 */
+ 694, /* GL_MAP1_TEXTURE_COORD_2 */
+ 695, /* GL_MAP1_TEXTURE_COORD_3 */
+ 696, /* GL_MAP1_TEXTURE_COORD_4 */
+ 697, /* GL_MAP1_VERTEX_3 */
+ 698, /* GL_MAP1_VERTEX_4 */
+ 715, /* GL_MAP2_COLOR_4 */
+ 718, /* GL_MAP2_INDEX */
+ 719, /* GL_MAP2_NORMAL */
+ 720, /* GL_MAP2_TEXTURE_COORD_1 */
+ 721, /* GL_MAP2_TEXTURE_COORD_2 */
+ 722, /* GL_MAP2_TEXTURE_COORD_3 */
+ 723, /* GL_MAP2_TEXTURE_COORD_4 */
+ 724, /* GL_MAP2_VERTEX_3 */
+ 725, /* GL_MAP2_VERTEX_4 */
+ 689, /* GL_MAP1_GRID_DOMAIN */
+ 690, /* GL_MAP1_GRID_SEGMENTS */
+ 716, /* GL_MAP2_GRID_DOMAIN */
+ 717, /* GL_MAP2_GRID_SEGMENTS */
+ 1508, /* GL_TEXTURE_1D */
+ 1510, /* GL_TEXTURE_2D */
+ 437, /* GL_FEEDBACK_BUFFER_POINTER */
+ 438, /* GL_FEEDBACK_BUFFER_SIZE */
+ 439, /* GL_FEEDBACK_BUFFER_TYPE */
+ 1328, /* GL_SELECTION_BUFFER_POINTER */
+ 1329, /* GL_SELECTION_BUFFER_SIZE */
+ 1621, /* GL_TEXTURE_WIDTH */
+ 1589, /* GL_TEXTURE_HEIGHT */
+ 1545, /* GL_TEXTURE_COMPONENTS */
+ 1529, /* GL_TEXTURE_BORDER_COLOR */
+ 1528, /* GL_TEXTURE_BORDER */
+ 344, /* GL_DONT_CARE */
+ 435, /* GL_FASTEST */
+ 952, /* GL_NICEST */
47, /* GL_AMBIENT */
- 342, /* GL_DIFFUSE */
- 1373, /* GL_SPECULAR */
- 1113, /* GL_POSITION */
- 1376, /* GL_SPOT_DIRECTION */
- 1377, /* GL_SPOT_EXPONENT */
- 1375, /* GL_SPOT_CUTOFF */
- 245, /* GL_CONSTANT_ATTENUATION */
- 640, /* GL_LINEAR_ATTENUATION */
- 1210, /* GL_QUADRATIC_ATTENUATION */
- 219, /* GL_COMPILE */
- 220, /* GL_COMPILE_AND_EXECUTE */
- 111, /* GL_BYTE */
- 1654, /* GL_UNSIGNED_BYTE */
- 1344, /* GL_SHORT */
- 1663, /* GL_UNSIGNED_SHORT */
- 592, /* GL_INT */
- 1657, /* GL_UNSIGNED_INT */
- 444, /* GL_FLOAT */
+ 341, /* GL_DIFFUSE */
+ 1371, /* GL_SPECULAR */
+ 1111, /* GL_POSITION */
+ 1374, /* GL_SPOT_DIRECTION */
+ 1375, /* GL_SPOT_EXPONENT */
+ 1373, /* GL_SPOT_CUTOFF */
+ 244, /* GL_CONSTANT_ATTENUATION */
+ 638, /* GL_LINEAR_ATTENUATION */
+ 1208, /* GL_QUADRATIC_ATTENUATION */
+ 218, /* GL_COMPILE */
+ 219, /* GL_COMPILE_AND_EXECUTE */
+ 110, /* GL_BYTE */
+ 1652, /* GL_UNSIGNED_BYTE */
+ 1342, /* GL_SHORT */
+ 1661, /* GL_UNSIGNED_SHORT */
+ 590, /* GL_INT */
+ 1655, /* GL_UNSIGNED_INT */
+ 442, /* GL_FLOAT */
1, /* GL_2_BYTES */
5, /* GL_3_BYTES */
7, /* GL_4_BYTES */
- 352, /* GL_DOUBLE */
- 123, /* GL_CLEAR */
+ 351, /* GL_DOUBLE */
+ 122, /* GL_CLEAR */
49, /* GL_AND */
51, /* GL_AND_REVERSE */
- 269, /* GL_COPY */
+ 268, /* GL_COPY */
50, /* GL_AND_INVERTED */
- 956, /* GL_NOOP */
- 1744, /* GL_XOR */
- 1018, /* GL_OR */
- 957, /* GL_NOR */
- 427, /* GL_EQUIV */
- 618, /* GL_INVERT */
- 1021, /* GL_OR_REVERSE */
- 270, /* GL_COPY_INVERTED */
- 1020, /* GL_OR_INVERTED */
- 947, /* GL_NAND */
- 1335, /* GL_SET */
- 424, /* GL_EMISSION */
- 1343, /* GL_SHININESS */
+ 954, /* GL_NOOP */
+ 1742, /* GL_XOR */
+ 1016, /* GL_OR */
+ 955, /* GL_NOR */
+ 425, /* GL_EQUIV */
+ 616, /* GL_INVERT */
+ 1019, /* GL_OR_REVERSE */
+ 269, /* GL_COPY_INVERTED */
+ 1018, /* GL_OR_INVERTED */
+ 945, /* GL_NAND */
+ 1333, /* GL_SET */
+ 422, /* GL_EMISSION */
+ 1341, /* GL_SHININESS */
48, /* GL_AMBIENT_AND_DIFFUSE */
- 165, /* GL_COLOR_INDEXES */
- 897, /* GL_MODELVIEW */
- 1189, /* GL_PROJECTION */
- 1445, /* GL_TEXTURE */
- 138, /* GL_COLOR */
- 313, /* GL_DEPTH */
- 1395, /* GL_STENCIL */
- 164, /* GL_COLOR_INDEX */
- 1413, /* GL_STENCIL_INDEX */
- 322, /* GL_DEPTH_COMPONENT */
- 1230, /* GL_RED */
- 548, /* GL_GREEN */
- 89, /* GL_BLUE */
+ 164, /* GL_COLOR_INDEXES */
+ 895, /* GL_MODELVIEW */
+ 1187, /* GL_PROJECTION */
+ 1443, /* GL_TEXTURE */
+ 137, /* GL_COLOR */
+ 312, /* GL_DEPTH */
+ 1393, /* GL_STENCIL */
+ 163, /* GL_COLOR_INDEX */
+ 1411, /* GL_STENCIL_INDEX */
+ 321, /* GL_DEPTH_COMPONENT */
+ 1228, /* GL_RED */
+ 546, /* GL_GREEN */
+ 88, /* GL_BLUE */
31, /* GL_ALPHA */
- 1254, /* GL_RGB */
- 1273, /* GL_RGBA */
- 668, /* GL_LUMINANCE */
- 689, /* GL_LUMINANCE_ALPHA */
- 73, /* GL_BITMAP */
- 1069, /* GL_POINT */
- 638, /* GL_LINE */
- 442, /* GL_FILL */
- 1239, /* GL_RENDER */
- 438, /* GL_FEEDBACK */
- 1329, /* GL_SELECT */
- 443, /* GL_FLAT */
- 1348, /* GL_SMOOTH */
- 619, /* GL_KEEP */
- 1248, /* GL_REPLACE */
- 575, /* GL_INCR */
- 309, /* GL_DECR */
- 1678, /* GL_VENDOR */
- 1245, /* GL_RENDERER */
- 1679, /* GL_VERSION */
- 431, /* GL_EXTENSIONS */
- 1294, /* GL_S */
- 1436, /* GL_T */
- 1220, /* GL_R */
- 1209, /* GL_Q */
- 933, /* GL_MODULATE */
- 308, /* GL_DECAL */
- 1581, /* GL_TEXTURE_ENV_MODE */
- 1580, /* GL_TEXTURE_ENV_COLOR */
- 1579, /* GL_TEXTURE_ENV */
- 432, /* GL_EYE_LINEAR */
- 980, /* GL_OBJECT_LINEAR */
- 1374, /* GL_SPHERE_MAP */
- 1583, /* GL_TEXTURE_GEN_MODE */
- 982, /* GL_OBJECT_PLANE */
- 433, /* GL_EYE_PLANE */
- 948, /* GL_NEAREST */
- 639, /* GL_LINEAR */
- 952, /* GL_NEAREST_MIPMAP_NEAREST */
- 644, /* GL_LINEAR_MIPMAP_NEAREST */
- 951, /* GL_NEAREST_MIPMAP_LINEAR */
- 643, /* GL_LINEAR_MIPMAP_LINEAR */
- 1604, /* GL_TEXTURE_MAG_FILTER */
- 1612, /* GL_TEXTURE_MIN_FILTER */
- 1625, /* GL_TEXTURE_WRAP_S */
- 1626, /* GL_TEXTURE_WRAP_T */
- 117, /* GL_CLAMP */
- 1247, /* GL_REPEAT */
- 1107, /* GL_POLYGON_OFFSET_UNITS */
- 1106, /* GL_POLYGON_OFFSET_POINT */
- 1105, /* GL_POLYGON_OFFSET_LINE */
- 1221, /* GL_R3_G3_B2 */
- 1675, /* GL_V2F */
- 1676, /* GL_V3F */
- 114, /* GL_C4UB_V2F */
- 115, /* GL_C4UB_V3F */
- 112, /* GL_C3F_V3F */
- 945, /* GL_N3F_V3F */
- 113, /* GL_C4F_N3F_V3F */
- 1441, /* GL_T2F_V3F */
- 1443, /* GL_T4F_V4F */
- 1439, /* GL_T2F_C4UB_V3F */
- 1437, /* GL_T2F_C3F_V3F */
- 1440, /* GL_T2F_N3F_V3F */
- 1438, /* GL_T2F_C4F_N3F_V3F */
- 1442, /* GL_T4F_C4F_N3F_V4F */
- 130, /* GL_CLIP_PLANE0 */
- 131, /* GL_CLIP_PLANE1 */
- 132, /* GL_CLIP_PLANE2 */
- 133, /* GL_CLIP_PLANE3 */
- 134, /* GL_CLIP_PLANE4 */
- 135, /* GL_CLIP_PLANE5 */
- 623, /* GL_LIGHT0 */
- 624, /* GL_LIGHT1 */
- 625, /* GL_LIGHT2 */
- 626, /* GL_LIGHT3 */
- 627, /* GL_LIGHT4 */
- 628, /* GL_LIGHT5 */
- 629, /* GL_LIGHT6 */
- 630, /* GL_LIGHT7 */
- 552, /* GL_HINT_BIT */
- 247, /* GL_CONSTANT_COLOR */
- 992, /* GL_ONE_MINUS_CONSTANT_COLOR */
- 242, /* GL_CONSTANT_ALPHA */
- 990, /* GL_ONE_MINUS_CONSTANT_ALPHA */
- 76, /* GL_BLEND_COLOR */
- 512, /* GL_FUNC_ADD */
- 881, /* GL_MIN */
- 793, /* GL_MAX */
- 81, /* GL_BLEND_EQUATION */
- 516, /* GL_FUNC_SUBTRACT */
- 514, /* GL_FUNC_REVERSE_SUBTRACT */
- 250, /* GL_CONVOLUTION_1D */
- 251, /* GL_CONVOLUTION_2D */
- 1332, /* GL_SEPARABLE_2D */
- 254, /* GL_CONVOLUTION_BORDER_MODE */
- 258, /* GL_CONVOLUTION_FILTER_SCALE */
- 256, /* GL_CONVOLUTION_FILTER_BIAS */
- 1231, /* GL_REDUCE */
- 260, /* GL_CONVOLUTION_FORMAT */
- 264, /* GL_CONVOLUTION_WIDTH */
- 262, /* GL_CONVOLUTION_HEIGHT */
- 808, /* GL_MAX_CONVOLUTION_WIDTH */
- 806, /* GL_MAX_CONVOLUTION_HEIGHT */
- 1146, /* GL_POST_CONVOLUTION_RED_SCALE */
- 1142, /* GL_POST_CONVOLUTION_GREEN_SCALE */
- 1137, /* GL_POST_CONVOLUTION_BLUE_SCALE */
- 1133, /* GL_POST_CONVOLUTION_ALPHA_SCALE */
- 1144, /* GL_POST_CONVOLUTION_RED_BIAS */
- 1140, /* GL_POST_CONVOLUTION_GREEN_BIAS */
- 1135, /* GL_POST_CONVOLUTION_BLUE_BIAS */
- 1131, /* GL_POST_CONVOLUTION_ALPHA_BIAS */
- 553, /* GL_HISTOGRAM */
- 1193, /* GL_PROXY_HISTOGRAM */
- 569, /* GL_HISTOGRAM_WIDTH */
- 559, /* GL_HISTOGRAM_FORMAT */
- 565, /* GL_HISTOGRAM_RED_SIZE */
- 561, /* GL_HISTOGRAM_GREEN_SIZE */
- 556, /* GL_HISTOGRAM_BLUE_SIZE */
- 554, /* GL_HISTOGRAM_ALPHA_SIZE */
- 563, /* GL_HISTOGRAM_LUMINANCE_SIZE */
- 567, /* GL_HISTOGRAM_SINK */
- 882, /* GL_MINMAX */
- 884, /* GL_MINMAX_FORMAT */
- 886, /* GL_MINMAX_SINK */
- 1444, /* GL_TABLE_TOO_LARGE_EXT */
- 1656, /* GL_UNSIGNED_BYTE_3_3_2 */
- 1665, /* GL_UNSIGNED_SHORT_4_4_4_4 */
- 1667, /* GL_UNSIGNED_SHORT_5_5_5_1 */
- 1661, /* GL_UNSIGNED_INT_8_8_8_8 */
- 1658, /* GL_UNSIGNED_INT_10_10_10_2 */
- 1104, /* GL_POLYGON_OFFSET_FILL */
- 1103, /* GL_POLYGON_OFFSET_FACTOR */
- 1102, /* GL_POLYGON_OFFSET_BIAS */
- 1251, /* GL_RESCALE_NORMAL */
+ 1252, /* GL_RGB */
+ 1271, /* GL_RGBA */
+ 666, /* GL_LUMINANCE */
+ 687, /* GL_LUMINANCE_ALPHA */
+ 72, /* GL_BITMAP */
+ 1067, /* GL_POINT */
+ 636, /* GL_LINE */
+ 440, /* GL_FILL */
+ 1237, /* GL_RENDER */
+ 436, /* GL_FEEDBACK */
+ 1327, /* GL_SELECT */
+ 441, /* GL_FLAT */
+ 1346, /* GL_SMOOTH */
+ 617, /* GL_KEEP */
+ 1246, /* GL_REPLACE */
+ 573, /* GL_INCR */
+ 308, /* GL_DECR */
+ 1676, /* GL_VENDOR */
+ 1243, /* GL_RENDERER */
+ 1677, /* GL_VERSION */
+ 429, /* GL_EXTENSIONS */
+ 1292, /* GL_S */
+ 1434, /* GL_T */
+ 1218, /* GL_R */
+ 1207, /* GL_Q */
+ 931, /* GL_MODULATE */
+ 307, /* GL_DECAL */
+ 1579, /* GL_TEXTURE_ENV_MODE */
+ 1578, /* GL_TEXTURE_ENV_COLOR */
+ 1577, /* GL_TEXTURE_ENV */
+ 430, /* GL_EYE_LINEAR */
+ 978, /* GL_OBJECT_LINEAR */
+ 1372, /* GL_SPHERE_MAP */
+ 1581, /* GL_TEXTURE_GEN_MODE */
+ 980, /* GL_OBJECT_PLANE */
+ 431, /* GL_EYE_PLANE */
+ 946, /* GL_NEAREST */
+ 637, /* GL_LINEAR */
+ 950, /* GL_NEAREST_MIPMAP_NEAREST */
+ 642, /* GL_LINEAR_MIPMAP_NEAREST */
+ 949, /* GL_NEAREST_MIPMAP_LINEAR */
+ 641, /* GL_LINEAR_MIPMAP_LINEAR */
+ 1602, /* GL_TEXTURE_MAG_FILTER */
+ 1610, /* GL_TEXTURE_MIN_FILTER */
+ 1623, /* GL_TEXTURE_WRAP_S */
+ 1624, /* GL_TEXTURE_WRAP_T */
+ 116, /* GL_CLAMP */
+ 1245, /* GL_REPEAT */
+ 1105, /* GL_POLYGON_OFFSET_UNITS */
+ 1104, /* GL_POLYGON_OFFSET_POINT */
+ 1103, /* GL_POLYGON_OFFSET_LINE */
+ 1219, /* GL_R3_G3_B2 */
+ 1673, /* GL_V2F */
+ 1674, /* GL_V3F */
+ 113, /* GL_C4UB_V2F */
+ 114, /* GL_C4UB_V3F */
+ 111, /* GL_C3F_V3F */
+ 943, /* GL_N3F_V3F */
+ 112, /* GL_C4F_N3F_V3F */
+ 1439, /* GL_T2F_V3F */
+ 1441, /* GL_T4F_V4F */
+ 1437, /* GL_T2F_C4UB_V3F */
+ 1435, /* GL_T2F_C3F_V3F */
+ 1438, /* GL_T2F_N3F_V3F */
+ 1436, /* GL_T2F_C4F_N3F_V3F */
+ 1440, /* GL_T4F_C4F_N3F_V4F */
+ 129, /* GL_CLIP_PLANE0 */
+ 130, /* GL_CLIP_PLANE1 */
+ 131, /* GL_CLIP_PLANE2 */
+ 132, /* GL_CLIP_PLANE3 */
+ 133, /* GL_CLIP_PLANE4 */
+ 134, /* GL_CLIP_PLANE5 */
+ 621, /* GL_LIGHT0 */
+ 622, /* GL_LIGHT1 */
+ 623, /* GL_LIGHT2 */
+ 624, /* GL_LIGHT3 */
+ 625, /* GL_LIGHT4 */
+ 626, /* GL_LIGHT5 */
+ 627, /* GL_LIGHT6 */
+ 628, /* GL_LIGHT7 */
+ 550, /* GL_HINT_BIT */
+ 246, /* GL_CONSTANT_COLOR */
+ 990, /* GL_ONE_MINUS_CONSTANT_COLOR */
+ 241, /* GL_CONSTANT_ALPHA */
+ 988, /* GL_ONE_MINUS_CONSTANT_ALPHA */
+ 75, /* GL_BLEND_COLOR */
+ 510, /* GL_FUNC_ADD */
+ 879, /* GL_MIN */
+ 791, /* GL_MAX */
+ 80, /* GL_BLEND_EQUATION */
+ 514, /* GL_FUNC_SUBTRACT */
+ 512, /* GL_FUNC_REVERSE_SUBTRACT */
+ 249, /* GL_CONVOLUTION_1D */
+ 250, /* GL_CONVOLUTION_2D */
+ 1330, /* GL_SEPARABLE_2D */
+ 253, /* GL_CONVOLUTION_BORDER_MODE */
+ 257, /* GL_CONVOLUTION_FILTER_SCALE */
+ 255, /* GL_CONVOLUTION_FILTER_BIAS */
+ 1229, /* GL_REDUCE */
+ 259, /* GL_CONVOLUTION_FORMAT */
+ 263, /* GL_CONVOLUTION_WIDTH */
+ 261, /* GL_CONVOLUTION_HEIGHT */
+ 806, /* GL_MAX_CONVOLUTION_WIDTH */
+ 804, /* GL_MAX_CONVOLUTION_HEIGHT */
+ 1144, /* GL_POST_CONVOLUTION_RED_SCALE */
+ 1140, /* GL_POST_CONVOLUTION_GREEN_SCALE */
+ 1135, /* GL_POST_CONVOLUTION_BLUE_SCALE */
+ 1131, /* GL_POST_CONVOLUTION_ALPHA_SCALE */
+ 1142, /* GL_POST_CONVOLUTION_RED_BIAS */
+ 1138, /* GL_POST_CONVOLUTION_GREEN_BIAS */
+ 1133, /* GL_POST_CONVOLUTION_BLUE_BIAS */
+ 1129, /* GL_POST_CONVOLUTION_ALPHA_BIAS */
+ 551, /* GL_HISTOGRAM */
+ 1191, /* GL_PROXY_HISTOGRAM */
+ 567, /* GL_HISTOGRAM_WIDTH */
+ 557, /* GL_HISTOGRAM_FORMAT */
+ 563, /* GL_HISTOGRAM_RED_SIZE */
+ 559, /* GL_HISTOGRAM_GREEN_SIZE */
+ 554, /* GL_HISTOGRAM_BLUE_SIZE */
+ 552, /* GL_HISTOGRAM_ALPHA_SIZE */
+ 561, /* GL_HISTOGRAM_LUMINANCE_SIZE */
+ 565, /* GL_HISTOGRAM_SINK */
+ 880, /* GL_MINMAX */
+ 882, /* GL_MINMAX_FORMAT */
+ 884, /* GL_MINMAX_SINK */
+ 1442, /* GL_TABLE_TOO_LARGE_EXT */
+ 1654, /* GL_UNSIGNED_BYTE_3_3_2 */
+ 1663, /* GL_UNSIGNED_SHORT_4_4_4_4 */
+ 1665, /* GL_UNSIGNED_SHORT_5_5_5_1 */
+ 1659, /* GL_UNSIGNED_INT_8_8_8_8 */
+ 1656, /* GL_UNSIGNED_INT_10_10_10_2 */
+ 1102, /* GL_POLYGON_OFFSET_FILL */
+ 1101, /* GL_POLYGON_OFFSET_FACTOR */
+ 1100, /* GL_POLYGON_OFFSET_BIAS */
+ 1249, /* GL_RESCALE_NORMAL */
36, /* GL_ALPHA4 */
38, /* GL_ALPHA8 */
32, /* GL_ALPHA12 */
34, /* GL_ALPHA16 */
- 679, /* GL_LUMINANCE4 */
- 685, /* GL_LUMINANCE8 */
- 669, /* GL_LUMINANCE12 */
- 675, /* GL_LUMINANCE16 */
- 680, /* GL_LUMINANCE4_ALPHA4 */
- 683, /* GL_LUMINANCE6_ALPHA2 */
- 686, /* GL_LUMINANCE8_ALPHA8 */
- 672, /* GL_LUMINANCE12_ALPHA4 */
- 670, /* GL_LUMINANCE12_ALPHA12 */
- 676, /* GL_LUMINANCE16_ALPHA16 */
- 593, /* GL_INTENSITY */
- 598, /* GL_INTENSITY4 */
- 600, /* GL_INTENSITY8 */
- 594, /* GL_INTENSITY12 */
- 596, /* GL_INTENSITY16 */
- 1263, /* GL_RGB2_EXT */
- 1264, /* GL_RGB4 */
- 1267, /* GL_RGB5 */
- 1271, /* GL_RGB8 */
- 1255, /* GL_RGB10 */
- 1259, /* GL_RGB12 */
- 1261, /* GL_RGB16 */
- 1278, /* GL_RGBA2 */
- 1280, /* GL_RGBA4 */
- 1268, /* GL_RGB5_A1 */
- 1284, /* GL_RGBA8 */
- 1256, /* GL_RGB10_A2 */
- 1274, /* GL_RGBA12 */
- 1276, /* GL_RGBA16 */
- 1617, /* GL_TEXTURE_RED_SIZE */
- 1589, /* GL_TEXTURE_GREEN_SIZE */
- 1528, /* GL_TEXTURE_BLUE_SIZE */
- 1515, /* GL_TEXTURE_ALPHA_SIZE */
- 1602, /* GL_TEXTURE_LUMINANCE_SIZE */
- 1593, /* GL_TEXTURE_INTENSITY_SIZE */
- 1249, /* GL_REPLACE_EXT */
- 1197, /* GL_PROXY_TEXTURE_1D */
- 1200, /* GL_PROXY_TEXTURE_2D */
- 1621, /* GL_TEXTURE_TOO_LARGE_EXT */
- 1614, /* GL_TEXTURE_PRIORITY */
- 1619, /* GL_TEXTURE_RESIDENT */
- 1518, /* GL_TEXTURE_BINDING_1D */
- 1520, /* GL_TEXTURE_BINDING_2D */
- 1522, /* GL_TEXTURE_BINDING_3D */
- 1028, /* GL_PACK_SKIP_IMAGES */
- 1024, /* GL_PACK_IMAGE_HEIGHT */
- 1650, /* GL_UNPACK_SKIP_IMAGES */
- 1647, /* GL_UNPACK_IMAGE_HEIGHT */
- 1514, /* GL_TEXTURE_3D */
- 1203, /* GL_PROXY_TEXTURE_3D */
- 1576, /* GL_TEXTURE_DEPTH */
- 1624, /* GL_TEXTURE_WRAP_R */
- 794, /* GL_MAX_3D_TEXTURE_SIZE */
- 1680, /* GL_VERTEX_ARRAY */
- 959, /* GL_NORMAL_ARRAY */
- 139, /* GL_COLOR_ARRAY */
- 578, /* GL_INDEX_ARRAY */
- 1555, /* GL_TEXTURE_COORD_ARRAY */
- 415, /* GL_EDGE_FLAG_ARRAY */
- 1685, /* GL_VERTEX_ARRAY_SIZE */
- 1687, /* GL_VERTEX_ARRAY_TYPE */
- 1686, /* GL_VERTEX_ARRAY_STRIDE */
- 964, /* GL_NORMAL_ARRAY_TYPE */
- 963, /* GL_NORMAL_ARRAY_STRIDE */
- 143, /* GL_COLOR_ARRAY_SIZE */
- 145, /* GL_COLOR_ARRAY_TYPE */
- 144, /* GL_COLOR_ARRAY_STRIDE */
- 583, /* GL_INDEX_ARRAY_TYPE */
- 582, /* GL_INDEX_ARRAY_STRIDE */
- 1559, /* GL_TEXTURE_COORD_ARRAY_SIZE */
- 1561, /* GL_TEXTURE_COORD_ARRAY_TYPE */
- 1560, /* GL_TEXTURE_COORD_ARRAY_STRIDE */
- 419, /* GL_EDGE_FLAG_ARRAY_STRIDE */
- 1684, /* GL_VERTEX_ARRAY_POINTER */
- 962, /* GL_NORMAL_ARRAY_POINTER */
- 142, /* GL_COLOR_ARRAY_POINTER */
- 581, /* GL_INDEX_ARRAY_POINTER */
- 1558, /* GL_TEXTURE_COORD_ARRAY_POINTER */
- 418, /* GL_EDGE_FLAG_ARRAY_POINTER */
- 938, /* GL_MULTISAMPLE */
- 1306, /* GL_SAMPLE_ALPHA_TO_COVERAGE */
- 1308, /* GL_SAMPLE_ALPHA_TO_ONE */
- 1313, /* GL_SAMPLE_COVERAGE */
- 1310, /* GL_SAMPLE_BUFFERS */
- 1301, /* GL_SAMPLES */
- 1317, /* GL_SAMPLE_COVERAGE_VALUE */
- 1315, /* GL_SAMPLE_COVERAGE_INVERT */
- 170, /* GL_COLOR_MATRIX */
- 172, /* GL_COLOR_MATRIX_STACK_DEPTH */
- 802, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */
- 1129, /* GL_POST_COLOR_MATRIX_RED_SCALE */
- 1125, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */
- 1120, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */
- 1116, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */
- 1127, /* GL_POST_COLOR_MATRIX_RED_BIAS */
- 1123, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */
- 1118, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */
- 1114, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */
- 1538, /* GL_TEXTURE_COLOR_TABLE_SGI */
- 1204, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */
- 1540, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */
- 80, /* GL_BLEND_DST_RGB */
- 88, /* GL_BLEND_SRC_RGB */
- 79, /* GL_BLEND_DST_ALPHA */
- 87, /* GL_BLEND_SRC_ALPHA */
- 176, /* GL_COLOR_TABLE */
- 1139, /* GL_POST_CONVOLUTION_COLOR_TABLE */
- 1122, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */
- 1192, /* GL_PROXY_COLOR_TABLE */
- 1196, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */
- 1195, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */
- 200, /* GL_COLOR_TABLE_SCALE */
- 180, /* GL_COLOR_TABLE_BIAS */
- 185, /* GL_COLOR_TABLE_FORMAT */
- 202, /* GL_COLOR_TABLE_WIDTH */
- 197, /* GL_COLOR_TABLE_RED_SIZE */
- 188, /* GL_COLOR_TABLE_GREEN_SIZE */
- 182, /* GL_COLOR_TABLE_BLUE_SIZE */
- 177, /* GL_COLOR_TABLE_ALPHA_SIZE */
- 194, /* GL_COLOR_TABLE_LUMINANCE_SIZE */
- 191, /* GL_COLOR_TABLE_INTENSITY_SIZE */
- 71, /* GL_BGR */
- 72, /* GL_BGRA */
- 816, /* GL_MAX_ELEMENTS_VERTICES */
- 815, /* GL_MAX_ELEMENTS_INDICES */
- 1592, /* GL_TEXTURE_INDEX_SIZE_EXT */
- 136, /* GL_CLIP_VOLUME_CLIPPING_HINT_EXT */
- 1086, /* GL_POINT_SIZE_MIN */
- 1082, /* GL_POINT_SIZE_MAX */
- 1076, /* GL_POINT_FADE_THRESHOLD_SIZE */
- 1072, /* GL_POINT_DISTANCE_ATTENUATION */
- 118, /* GL_CLAMP_TO_BORDER */
- 121, /* GL_CLAMP_TO_EDGE */
- 1613, /* GL_TEXTURE_MIN_LOD */
- 1611, /* GL_TEXTURE_MAX_LOD */
- 1517, /* GL_TEXTURE_BASE_LEVEL */
- 1610, /* GL_TEXTURE_MAX_LEVEL */
- 572, /* GL_IGNORE_BORDER_HP */
- 246, /* GL_CONSTANT_BORDER_HP */
- 1250, /* GL_REPLICATE_BORDER_HP */
- 252, /* GL_CONVOLUTION_BORDER_COLOR */
- 987, /* GL_OCCLUSION_TEST_HP */
- 988, /* GL_OCCLUSION_TEST_RESULT_HP */
- 641, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */
- 1532, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */
- 1534, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */
- 1536, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */
- 1537, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */
- 1535, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */
- 1533, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */
- 798, /* GL_MAX_CLIPMAP_DEPTH_SGIX */
- 799, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */
- 1149, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */
- 1151, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */
- 1148, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */
- 1150, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */
- 1600, /* GL_TEXTURE_LOD_BIAS_S_SGIX */
- 1601, /* GL_TEXTURE_LOD_BIAS_T_SGIX */
- 1599, /* GL_TEXTURE_LOD_BIAS_R_SGIX */
- 518, /* GL_GENERATE_MIPMAP */
- 519, /* GL_GENERATE_MIPMAP_HINT */
- 481, /* GL_FOG_OFFSET_SGIX */
- 482, /* GL_FOG_OFFSET_VALUE_SGIX */
- 1546, /* GL_TEXTURE_COMPARE_SGIX */
- 1545, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */
- 1596, /* GL_TEXTURE_LEQUAL_R_SGIX */
- 1588, /* GL_TEXTURE_GEQUAL_R_SGIX */
- 323, /* GL_DEPTH_COMPONENT16 */
- 326, /* GL_DEPTH_COMPONENT24 */
- 329, /* GL_DEPTH_COMPONENT32 */
- 274, /* GL_CULL_VERTEX_EXT */
- 276, /* GL_CULL_VERTEX_OBJECT_POSITION_EXT */
- 275, /* GL_CULL_VERTEX_EYE_POSITION_EXT */
- 1741, /* GL_WRAP_BORDER_SUN */
- 1539, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */
- 634, /* GL_LIGHT_MODEL_COLOR_CONTROL */
- 1345, /* GL_SINGLE_COLOR */
- 1333, /* GL_SEPARATE_SPECULAR_COLOR */
- 1342, /* GL_SHARED_TEXTURE_PALETTE_EXT */
- 1655, /* GL_UNSIGNED_BYTE_2_3_3_REV */
- 1668, /* GL_UNSIGNED_SHORT_5_6_5 */
- 1669, /* GL_UNSIGNED_SHORT_5_6_5_REV */
- 1666, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */
- 1664, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */
- 1662, /* GL_UNSIGNED_INT_8_8_8_8_REV */
- 1660, /* GL_UNSIGNED_INT_2_10_10_10_REV */
- 1608, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */
- 1609, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */
- 1607, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */
- 889, /* GL_MIRRORED_REPEAT */
- 1289, /* GL_RGB_S3TC */
- 1266, /* GL_RGB4_S3TC */
- 1288, /* GL_RGBA_S3TC */
- 1283, /* GL_RGBA4_S3TC */
- 1286, /* GL_RGBA_DXT5_S3TC */
- 1281, /* GL_RGBA4_DXT5_S3TC */
- 239, /* GL_COMPRESSED_RGB_S3TC_DXT1_EXT */
- 234, /* GL_COMPRESSED_RGBA_S3TC_DXT1_EXT */
- 235, /* GL_COMPRESSED_RGBA_S3TC_DXT3_EXT */
- 236, /* GL_COMPRESSED_RGBA_S3TC_DXT5_EXT */
- 950, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */
- 949, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */
- 642, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */
- 468, /* GL_FOG_COORDINATE_SOURCE */
- 460, /* GL_FOG_COORD */
- 484, /* GL_FRAGMENT_DEPTH */
- 280, /* GL_CURRENT_FOG_COORD */
- 467, /* GL_FOG_COORDINATE_ARRAY_TYPE */
- 466, /* GL_FOG_COORDINATE_ARRAY_STRIDE */
- 465, /* GL_FOG_COORDINATE_ARRAY_POINTER */
- 462, /* GL_FOG_COORDINATE_ARRAY */
- 174, /* GL_COLOR_SUM */
- 299, /* GL_CURRENT_SECONDARY_COLOR */
- 1326, /* GL_SECONDARY_COLOR_ARRAY_SIZE */
- 1328, /* GL_SECONDARY_COLOR_ARRAY_TYPE */
- 1327, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */
- 1325, /* GL_SECONDARY_COLOR_ARRAY_POINTER */
- 1322, /* GL_SECONDARY_COLOR_ARRAY */
- 528, /* GL_GL_CURRENT_RASTER_SECONDARY_COLOR */
+ 677, /* GL_LUMINANCE4 */
+ 683, /* GL_LUMINANCE8 */
+ 667, /* GL_LUMINANCE12 */
+ 673, /* GL_LUMINANCE16 */
+ 678, /* GL_LUMINANCE4_ALPHA4 */
+ 681, /* GL_LUMINANCE6_ALPHA2 */
+ 684, /* GL_LUMINANCE8_ALPHA8 */
+ 670, /* GL_LUMINANCE12_ALPHA4 */
+ 668, /* GL_LUMINANCE12_ALPHA12 */
+ 674, /* GL_LUMINANCE16_ALPHA16 */
+ 591, /* GL_INTENSITY */
+ 596, /* GL_INTENSITY4 */
+ 598, /* GL_INTENSITY8 */
+ 592, /* GL_INTENSITY12 */
+ 594, /* GL_INTENSITY16 */
+ 1261, /* GL_RGB2_EXT */
+ 1262, /* GL_RGB4 */
+ 1265, /* GL_RGB5 */
+ 1269, /* GL_RGB8 */
+ 1253, /* GL_RGB10 */
+ 1257, /* GL_RGB12 */
+ 1259, /* GL_RGB16 */
+ 1276, /* GL_RGBA2 */
+ 1278, /* GL_RGBA4 */
+ 1266, /* GL_RGB5_A1 */
+ 1282, /* GL_RGBA8 */
+ 1254, /* GL_RGB10_A2 */
+ 1272, /* GL_RGBA12 */
+ 1274, /* GL_RGBA16 */
+ 1615, /* GL_TEXTURE_RED_SIZE */
+ 1587, /* GL_TEXTURE_GREEN_SIZE */
+ 1526, /* GL_TEXTURE_BLUE_SIZE */
+ 1513, /* GL_TEXTURE_ALPHA_SIZE */
+ 1600, /* GL_TEXTURE_LUMINANCE_SIZE */
+ 1591, /* GL_TEXTURE_INTENSITY_SIZE */
+ 1247, /* GL_REPLACE_EXT */
+ 1195, /* GL_PROXY_TEXTURE_1D */
+ 1198, /* GL_PROXY_TEXTURE_2D */
+ 1619, /* GL_TEXTURE_TOO_LARGE_EXT */
+ 1612, /* GL_TEXTURE_PRIORITY */
+ 1617, /* GL_TEXTURE_RESIDENT */
+ 1516, /* GL_TEXTURE_BINDING_1D */
+ 1518, /* GL_TEXTURE_BINDING_2D */
+ 1520, /* GL_TEXTURE_BINDING_3D */
+ 1026, /* GL_PACK_SKIP_IMAGES */
+ 1022, /* GL_PACK_IMAGE_HEIGHT */
+ 1648, /* GL_UNPACK_SKIP_IMAGES */
+ 1645, /* GL_UNPACK_IMAGE_HEIGHT */
+ 1512, /* GL_TEXTURE_3D */
+ 1201, /* GL_PROXY_TEXTURE_3D */
+ 1574, /* GL_TEXTURE_DEPTH */
+ 1622, /* GL_TEXTURE_WRAP_R */
+ 792, /* GL_MAX_3D_TEXTURE_SIZE */
+ 1678, /* GL_VERTEX_ARRAY */
+ 957, /* GL_NORMAL_ARRAY */
+ 138, /* GL_COLOR_ARRAY */
+ 576, /* GL_INDEX_ARRAY */
+ 1553, /* GL_TEXTURE_COORD_ARRAY */
+ 414, /* GL_EDGE_FLAG_ARRAY */
+ 1683, /* GL_VERTEX_ARRAY_SIZE */
+ 1685, /* GL_VERTEX_ARRAY_TYPE */
+ 1684, /* GL_VERTEX_ARRAY_STRIDE */
+ 962, /* GL_NORMAL_ARRAY_TYPE */
+ 961, /* GL_NORMAL_ARRAY_STRIDE */
+ 142, /* GL_COLOR_ARRAY_SIZE */
+ 144, /* GL_COLOR_ARRAY_TYPE */
+ 143, /* GL_COLOR_ARRAY_STRIDE */
+ 581, /* GL_INDEX_ARRAY_TYPE */
+ 580, /* GL_INDEX_ARRAY_STRIDE */
+ 1557, /* GL_TEXTURE_COORD_ARRAY_SIZE */
+ 1559, /* GL_TEXTURE_COORD_ARRAY_TYPE */
+ 1558, /* GL_TEXTURE_COORD_ARRAY_STRIDE */
+ 418, /* GL_EDGE_FLAG_ARRAY_STRIDE */
+ 1682, /* GL_VERTEX_ARRAY_POINTER */
+ 960, /* GL_NORMAL_ARRAY_POINTER */
+ 141, /* GL_COLOR_ARRAY_POINTER */
+ 579, /* GL_INDEX_ARRAY_POINTER */
+ 1556, /* GL_TEXTURE_COORD_ARRAY_POINTER */
+ 417, /* GL_EDGE_FLAG_ARRAY_POINTER */
+ 936, /* GL_MULTISAMPLE */
+ 1304, /* GL_SAMPLE_ALPHA_TO_COVERAGE */
+ 1306, /* GL_SAMPLE_ALPHA_TO_ONE */
+ 1311, /* GL_SAMPLE_COVERAGE */
+ 1308, /* GL_SAMPLE_BUFFERS */
+ 1299, /* GL_SAMPLES */
+ 1315, /* GL_SAMPLE_COVERAGE_VALUE */
+ 1313, /* GL_SAMPLE_COVERAGE_INVERT */
+ 169, /* GL_COLOR_MATRIX */
+ 171, /* GL_COLOR_MATRIX_STACK_DEPTH */
+ 800, /* GL_MAX_COLOR_MATRIX_STACK_DEPTH */
+ 1127, /* GL_POST_COLOR_MATRIX_RED_SCALE */
+ 1123, /* GL_POST_COLOR_MATRIX_GREEN_SCALE */
+ 1118, /* GL_POST_COLOR_MATRIX_BLUE_SCALE */
+ 1114, /* GL_POST_COLOR_MATRIX_ALPHA_SCALE */
+ 1125, /* GL_POST_COLOR_MATRIX_RED_BIAS */
+ 1121, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */
+ 1116, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */
+ 1112, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */
+ 1536, /* GL_TEXTURE_COLOR_TABLE_SGI */
+ 1202, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */
+ 1538, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */
+ 79, /* GL_BLEND_DST_RGB */
+ 87, /* GL_BLEND_SRC_RGB */
+ 78, /* GL_BLEND_DST_ALPHA */
+ 86, /* GL_BLEND_SRC_ALPHA */
+ 175, /* GL_COLOR_TABLE */
+ 1137, /* GL_POST_CONVOLUTION_COLOR_TABLE */
+ 1120, /* GL_POST_COLOR_MATRIX_COLOR_TABLE */
+ 1190, /* GL_PROXY_COLOR_TABLE */
+ 1194, /* GL_PROXY_POST_CONVOLUTION_COLOR_TABLE */
+ 1193, /* GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE */
+ 199, /* GL_COLOR_TABLE_SCALE */
+ 179, /* GL_COLOR_TABLE_BIAS */
+ 184, /* GL_COLOR_TABLE_FORMAT */
+ 201, /* GL_COLOR_TABLE_WIDTH */
+ 196, /* GL_COLOR_TABLE_RED_SIZE */
+ 187, /* GL_COLOR_TABLE_GREEN_SIZE */
+ 181, /* GL_COLOR_TABLE_BLUE_SIZE */
+ 176, /* GL_COLOR_TABLE_ALPHA_SIZE */
+ 193, /* GL_COLOR_TABLE_LUMINANCE_SIZE */
+ 190, /* GL_COLOR_TABLE_INTENSITY_SIZE */
+ 70, /* GL_BGR */
+ 71, /* GL_BGRA */
+ 814, /* GL_MAX_ELEMENTS_VERTICES */
+ 813, /* GL_MAX_ELEMENTS_INDICES */
+ 1590, /* GL_TEXTURE_INDEX_SIZE_EXT */
+ 135, /* GL_CLIP_VOLUME_CLIPPING_HINT_EXT */
+ 1084, /* GL_POINT_SIZE_MIN */
+ 1080, /* GL_POINT_SIZE_MAX */
+ 1074, /* GL_POINT_FADE_THRESHOLD_SIZE */
+ 1070, /* GL_POINT_DISTANCE_ATTENUATION */
+ 117, /* GL_CLAMP_TO_BORDER */
+ 120, /* GL_CLAMP_TO_EDGE */
+ 1611, /* GL_TEXTURE_MIN_LOD */
+ 1609, /* GL_TEXTURE_MAX_LOD */
+ 1515, /* GL_TEXTURE_BASE_LEVEL */
+ 1608, /* GL_TEXTURE_MAX_LEVEL */
+ 570, /* GL_IGNORE_BORDER_HP */
+ 245, /* GL_CONSTANT_BORDER_HP */
+ 1248, /* GL_REPLICATE_BORDER_HP */
+ 251, /* GL_CONVOLUTION_BORDER_COLOR */
+ 985, /* GL_OCCLUSION_TEST_HP */
+ 986, /* GL_OCCLUSION_TEST_RESULT_HP */
+ 639, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */
+ 1530, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */
+ 1532, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */
+ 1534, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */
+ 1535, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */
+ 1533, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */
+ 1531, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */
+ 796, /* GL_MAX_CLIPMAP_DEPTH_SGIX */
+ 797, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */
+ 1147, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */
+ 1149, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */
+ 1146, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */
+ 1148, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */
+ 1598, /* GL_TEXTURE_LOD_BIAS_S_SGIX */
+ 1599, /* GL_TEXTURE_LOD_BIAS_T_SGIX */
+ 1597, /* GL_TEXTURE_LOD_BIAS_R_SGIX */
+ 516, /* GL_GENERATE_MIPMAP */
+ 517, /* GL_GENERATE_MIPMAP_HINT */
+ 479, /* GL_FOG_OFFSET_SGIX */
+ 480, /* GL_FOG_OFFSET_VALUE_SGIX */
+ 1544, /* GL_TEXTURE_COMPARE_SGIX */
+ 1543, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */
+ 1594, /* GL_TEXTURE_LEQUAL_R_SGIX */
+ 1586, /* GL_TEXTURE_GEQUAL_R_SGIX */
+ 322, /* GL_DEPTH_COMPONENT16 */
+ 325, /* GL_DEPTH_COMPONENT24 */
+ 328, /* GL_DEPTH_COMPONENT32 */
+ 273, /* GL_CULL_VERTEX_EXT */
+ 275, /* GL_CULL_VERTEX_OBJECT_POSITION_EXT */
+ 274, /* GL_CULL_VERTEX_EYE_POSITION_EXT */
+ 1739, /* GL_WRAP_BORDER_SUN */
+ 1537, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */
+ 632, /* GL_LIGHT_MODEL_COLOR_CONTROL */
+ 1343, /* GL_SINGLE_COLOR */
+ 1331, /* GL_SEPARATE_SPECULAR_COLOR */
+ 1340, /* GL_SHARED_TEXTURE_PALETTE_EXT */
+ 1653, /* GL_UNSIGNED_BYTE_2_3_3_REV */
+ 1666, /* GL_UNSIGNED_SHORT_5_6_5 */
+ 1667, /* GL_UNSIGNED_SHORT_5_6_5_REV */
+ 1664, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */
+ 1662, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */
+ 1660, /* GL_UNSIGNED_INT_8_8_8_8_REV */
+ 1658, /* GL_UNSIGNED_INT_2_10_10_10_REV */
+ 1606, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */
+ 1607, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */
+ 1605, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */
+ 887, /* GL_MIRRORED_REPEAT */
+ 1287, /* GL_RGB_S3TC */
+ 1264, /* GL_RGB4_S3TC */
+ 1286, /* GL_RGBA_S3TC */
+ 1281, /* GL_RGBA4_S3TC */
+ 1284, /* GL_RGBA_DXT5_S3TC */
+ 1279, /* GL_RGBA4_DXT5_S3TC */
+ 238, /* GL_COMPRESSED_RGB_S3TC_DXT1_EXT */
+ 233, /* GL_COMPRESSED_RGBA_S3TC_DXT1_EXT */
+ 234, /* GL_COMPRESSED_RGBA_S3TC_DXT3_EXT */
+ 235, /* GL_COMPRESSED_RGBA_S3TC_DXT5_EXT */
+ 948, /* GL_NEAREST_CLIPMAP_NEAREST_SGIX */
+ 947, /* GL_NEAREST_CLIPMAP_LINEAR_SGIX */
+ 640, /* GL_LINEAR_CLIPMAP_NEAREST_SGIX */
+ 466, /* GL_FOG_COORDINATE_SOURCE */
+ 458, /* GL_FOG_COORD */
+ 482, /* GL_FRAGMENT_DEPTH */
+ 279, /* GL_CURRENT_FOG_COORD */
+ 465, /* GL_FOG_COORDINATE_ARRAY_TYPE */
+ 464, /* GL_FOG_COORDINATE_ARRAY_STRIDE */
+ 463, /* GL_FOG_COORDINATE_ARRAY_POINTER */
+ 460, /* GL_FOG_COORDINATE_ARRAY */
+ 173, /* GL_COLOR_SUM */
+ 298, /* GL_CURRENT_SECONDARY_COLOR */
+ 1324, /* GL_SECONDARY_COLOR_ARRAY_SIZE */
+ 1326, /* GL_SECONDARY_COLOR_ARRAY_TYPE */
+ 1325, /* GL_SECONDARY_COLOR_ARRAY_STRIDE */
+ 1323, /* GL_SECONDARY_COLOR_ARRAY_POINTER */
+ 1320, /* GL_SECONDARY_COLOR_ARRAY */
+ 526, /* GL_GL_CURRENT_RASTER_SECONDARY_COLOR */
28, /* GL_ALIASED_POINT_SIZE_RANGE */
27, /* GL_ALIASED_LINE_WIDTH_RANGE */
- 1446, /* GL_TEXTURE0 */
- 1448, /* GL_TEXTURE1 */
- 1470, /* GL_TEXTURE2 */
- 1492, /* GL_TEXTURE3 */
- 1498, /* GL_TEXTURE4 */
- 1500, /* GL_TEXTURE5 */
- 1502, /* GL_TEXTURE6 */
- 1504, /* GL_TEXTURE7 */
- 1506, /* GL_TEXTURE8 */
- 1508, /* GL_TEXTURE9 */
- 1449, /* GL_TEXTURE10 */
- 1451, /* GL_TEXTURE11 */
- 1453, /* GL_TEXTURE12 */
- 1455, /* GL_TEXTURE13 */
- 1457, /* GL_TEXTURE14 */
- 1459, /* GL_TEXTURE15 */
- 1461, /* GL_TEXTURE16 */
- 1463, /* GL_TEXTURE17 */
- 1465, /* GL_TEXTURE18 */
- 1467, /* GL_TEXTURE19 */
- 1471, /* GL_TEXTURE20 */
- 1473, /* GL_TEXTURE21 */
- 1475, /* GL_TEXTURE22 */
- 1477, /* GL_TEXTURE23 */
- 1479, /* GL_TEXTURE24 */
- 1481, /* GL_TEXTURE25 */
- 1483, /* GL_TEXTURE26 */
- 1485, /* GL_TEXTURE27 */
- 1487, /* GL_TEXTURE28 */
- 1489, /* GL_TEXTURE29 */
- 1493, /* GL_TEXTURE30 */
- 1495, /* GL_TEXTURE31 */
+ 1444, /* GL_TEXTURE0 */
+ 1446, /* GL_TEXTURE1 */
+ 1468, /* GL_TEXTURE2 */
+ 1490, /* GL_TEXTURE3 */
+ 1496, /* GL_TEXTURE4 */
+ 1498, /* GL_TEXTURE5 */
+ 1500, /* GL_TEXTURE6 */
+ 1502, /* GL_TEXTURE7 */
+ 1504, /* GL_TEXTURE8 */
+ 1506, /* GL_TEXTURE9 */
+ 1447, /* GL_TEXTURE10 */
+ 1449, /* GL_TEXTURE11 */
+ 1451, /* GL_TEXTURE12 */
+ 1453, /* GL_TEXTURE13 */
+ 1455, /* GL_TEXTURE14 */
+ 1457, /* GL_TEXTURE15 */
+ 1459, /* GL_TEXTURE16 */
+ 1461, /* GL_TEXTURE17 */
+ 1463, /* GL_TEXTURE18 */
+ 1465, /* GL_TEXTURE19 */
+ 1469, /* GL_TEXTURE20 */
+ 1471, /* GL_TEXTURE21 */
+ 1473, /* GL_TEXTURE22 */
+ 1475, /* GL_TEXTURE23 */
+ 1477, /* GL_TEXTURE24 */
+ 1479, /* GL_TEXTURE25 */
+ 1481, /* GL_TEXTURE26 */
+ 1483, /* GL_TEXTURE27 */
+ 1485, /* GL_TEXTURE28 */
+ 1487, /* GL_TEXTURE29 */
+ 1491, /* GL_TEXTURE30 */
+ 1493, /* GL_TEXTURE31 */
18, /* GL_ACTIVE_TEXTURE */
- 124, /* GL_CLIENT_ACTIVE_TEXTURE */
- 867, /* GL_MAX_TEXTURE_UNITS */
- 1634, /* GL_TRANSPOSE_MODELVIEW_MATRIX */
- 1637, /* GL_TRANSPOSE_PROJECTION_MATRIX */
- 1639, /* GL_TRANSPOSE_TEXTURE_MATRIX */
- 1631, /* GL_TRANSPOSE_COLOR_MATRIX */
- 1434, /* GL_SUBTRACT */
- 856, /* GL_MAX_RENDERBUFFER_SIZE_EXT */
- 222, /* GL_COMPRESSED_ALPHA */
- 226, /* GL_COMPRESSED_LUMINANCE */
- 227, /* GL_COMPRESSED_LUMINANCE_ALPHA */
- 224, /* GL_COMPRESSED_INTENSITY */
- 230, /* GL_COMPRESSED_RGB */
- 231, /* GL_COMPRESSED_RGBA */
- 1553, /* GL_TEXTURE_COMPRESSION_HINT */
- 1615, /* GL_TEXTURE_RECTANGLE_ARB */
- 1525, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */
- 1207, /* GL_PROXY_TEXTURE_RECTANGLE_ARB */
- 854, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB */
- 335, /* GL_DEPTH_STENCIL_NV */
- 1659, /* GL_UNSIGNED_INT_24_8_NV */
- 863, /* GL_MAX_TEXTURE_LOD_BIAS */
- 1606, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */
- 864, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */
- 1582, /* GL_TEXTURE_FILTER_CONTROL */
- 1597, /* GL_TEXTURE_LOD_BIAS */
- 207, /* GL_COMBINE4 */
- 857, /* GL_MAX_SHININESS_NV */
- 858, /* GL_MAX_SPOT_EXPONENT_NV */
- 576, /* GL_INCR_WRAP */
- 310, /* GL_DECR_WRAP */
- 909, /* GL_MODELVIEW1_ARB */
- 965, /* GL_NORMAL_MAP */
- 1236, /* GL_REFLECTION_MAP */
- 1562, /* GL_TEXTURE_CUBE_MAP */
- 1523, /* GL_TEXTURE_BINDING_CUBE_MAP */
- 1570, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */
- 1564, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */
- 1572, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */
- 1566, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */
- 1574, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */
- 1568, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */
- 1205, /* GL_PROXY_TEXTURE_CUBE_MAP */
- 810, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */
- 944, /* GL_MULTISAMPLE_FILTER_HINT_NV */
- 476, /* GL_FOG_DISTANCE_MODE_NV */
- 435, /* GL_EYE_RADIAL_NV */
- 434, /* GL_EYE_PLANE_ABSOLUTE_NV */
- 206, /* GL_COMBINE */
- 213, /* GL_COMBINE_RGB */
- 208, /* GL_COMBINE_ALPHA */
- 1290, /* GL_RGB_SCALE */
+ 123, /* GL_CLIENT_ACTIVE_TEXTURE */
+ 865, /* GL_MAX_TEXTURE_UNITS */
+ 1632, /* GL_TRANSPOSE_MODELVIEW_MATRIX */
+ 1635, /* GL_TRANSPOSE_PROJECTION_MATRIX */
+ 1637, /* GL_TRANSPOSE_TEXTURE_MATRIX */
+ 1629, /* GL_TRANSPOSE_COLOR_MATRIX */
+ 1432, /* GL_SUBTRACT */
+ 854, /* GL_MAX_RENDERBUFFER_SIZE_EXT */
+ 221, /* GL_COMPRESSED_ALPHA */
+ 225, /* GL_COMPRESSED_LUMINANCE */
+ 226, /* GL_COMPRESSED_LUMINANCE_ALPHA */
+ 223, /* GL_COMPRESSED_INTENSITY */
+ 229, /* GL_COMPRESSED_RGB */
+ 230, /* GL_COMPRESSED_RGBA */
+ 1551, /* GL_TEXTURE_COMPRESSION_HINT */
+ 1613, /* GL_TEXTURE_RECTANGLE_ARB */
+ 1523, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */
+ 1205, /* GL_PROXY_TEXTURE_RECTANGLE_ARB */
+ 852, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB */
+ 334, /* GL_DEPTH_STENCIL_NV */
+ 1657, /* GL_UNSIGNED_INT_24_8_NV */
+ 861, /* GL_MAX_TEXTURE_LOD_BIAS */
+ 1604, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */
+ 862, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */
+ 1580, /* GL_TEXTURE_FILTER_CONTROL */
+ 1595, /* GL_TEXTURE_LOD_BIAS */
+ 206, /* GL_COMBINE4 */
+ 855, /* GL_MAX_SHININESS_NV */
+ 856, /* GL_MAX_SPOT_EXPONENT_NV */
+ 574, /* GL_INCR_WRAP */
+ 309, /* GL_DECR_WRAP */
+ 907, /* GL_MODELVIEW1_ARB */
+ 963, /* GL_NORMAL_MAP */
+ 1234, /* GL_REFLECTION_MAP */
+ 1560, /* GL_TEXTURE_CUBE_MAP */
+ 1521, /* GL_TEXTURE_BINDING_CUBE_MAP */
+ 1568, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */
+ 1562, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */
+ 1570, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */
+ 1564, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */
+ 1572, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */
+ 1566, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */
+ 1203, /* GL_PROXY_TEXTURE_CUBE_MAP */
+ 808, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */
+ 942, /* GL_MULTISAMPLE_FILTER_HINT_NV */
+ 474, /* GL_FOG_DISTANCE_MODE_NV */
+ 433, /* GL_EYE_RADIAL_NV */
+ 432, /* GL_EYE_PLANE_ABSOLUTE_NV */
+ 205, /* GL_COMBINE */
+ 212, /* GL_COMBINE_RGB */
+ 207, /* GL_COMBINE_ALPHA */
+ 1288, /* GL_RGB_SCALE */
24, /* GL_ADD_SIGNED */
- 603, /* GL_INTERPOLATE */
- 241, /* GL_CONSTANT */
- 1155, /* GL_PRIMARY_COLOR */
- 1152, /* GL_PREVIOUS */
- 1356, /* GL_SOURCE0_RGB */
- 1362, /* GL_SOURCE1_RGB */
- 1368, /* GL_SOURCE2_RGB */
- 1372, /* GL_SOURCE3_RGB_NV */
- 1353, /* GL_SOURCE0_ALPHA */
- 1359, /* GL_SOURCE1_ALPHA */
- 1365, /* GL_SOURCE2_ALPHA */
- 1371, /* GL_SOURCE3_ALPHA_NV */
- 1001, /* GL_OPERAND0_RGB */
- 1007, /* GL_OPERAND1_RGB */
- 1013, /* GL_OPERAND2_RGB */
- 1017, /* GL_OPERAND3_RGB_NV */
- 998, /* GL_OPERAND0_ALPHA */
- 1004, /* GL_OPERAND1_ALPHA */
- 1010, /* GL_OPERAND2_ALPHA */
- 1016, /* GL_OPERAND3_ALPHA_NV */
- 1681, /* GL_VERTEX_ARRAY_BINDING_APPLE */
- 1745, /* GL_YCBCR_422_APPLE */
- 1670, /* GL_UNSIGNED_SHORT_8_8_APPLE */
- 1672, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */
- 1347, /* GL_SLICE_ACCUM_SUN */
- 1212, /* GL_QUAD_MESH_SUN */
- 1643, /* GL_TRIANGLE_MESH_SUN */
- 1719, /* GL_VERTEX_PROGRAM_ARB */
- 1730, /* GL_VERTEX_STATE_PROGRAM_NV */
- 1706, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */
- 1712, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */
- 1714, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */
- 1716, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */
- 301, /* GL_CURRENT_VERTEX_ATTRIB */
- 1168, /* GL_PROGRAM_LENGTH_ARB */
- 1182, /* GL_PROGRAM_STRING_ARB */
- 931, /* GL_MODELVIEW_PROJECTION_NV */
- 571, /* GL_IDENTITY_NV */
- 616, /* GL_INVERSE_NV */
- 1636, /* GL_TRANSPOSE_NV */
- 617, /* GL_INVERSE_TRANSPOSE_NV */
- 840, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */
- 839, /* GL_MAX_PROGRAM_MATRICES_ARB */
- 747, /* GL_MATRIX0_NV */
- 759, /* GL_MATRIX1_NV */
- 771, /* GL_MATRIX2_NV */
- 775, /* GL_MATRIX3_NV */
- 777, /* GL_MATRIX4_NV */
- 779, /* GL_MATRIX5_NV */
- 781, /* GL_MATRIX6_NV */
- 783, /* GL_MATRIX7_NV */
- 286, /* GL_CURRENT_MATRIX_STACK_DEPTH_ARB */
- 283, /* GL_CURRENT_MATRIX_ARB */
- 1722, /* GL_VERTEX_PROGRAM_POINT_SIZE */
- 1725, /* GL_VERTEX_PROGRAM_TWO_SIDE */
- 1180, /* GL_PROGRAM_PARAMETER_NV */
- 1710, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */
- 1184, /* GL_PROGRAM_TARGET_NV */
- 1181, /* GL_PROGRAM_RESIDENT_NV */
- 1628, /* GL_TRACK_MATRIX_NV */
- 1629, /* GL_TRACK_MATRIX_TRANSFORM_NV */
- 1720, /* GL_VERTEX_PROGRAM_BINDING_NV */
- 1162, /* GL_PROGRAM_ERROR_POSITION_ARB */
- 320, /* GL_DEPTH_CLAMP_NV */
- 1688, /* GL_VERTEX_ATTRIB_ARRAY0_NV */
- 1695, /* GL_VERTEX_ATTRIB_ARRAY1_NV */
- 1696, /* GL_VERTEX_ATTRIB_ARRAY2_NV */
- 1697, /* GL_VERTEX_ATTRIB_ARRAY3_NV */
- 1698, /* GL_VERTEX_ATTRIB_ARRAY4_NV */
- 1699, /* GL_VERTEX_ATTRIB_ARRAY5_NV */
- 1700, /* GL_VERTEX_ATTRIB_ARRAY6_NV */
- 1701, /* GL_VERTEX_ATTRIB_ARRAY7_NV */
- 1702, /* GL_VERTEX_ATTRIB_ARRAY8_NV */
- 1703, /* GL_VERTEX_ATTRIB_ARRAY9_NV */
- 1689, /* GL_VERTEX_ATTRIB_ARRAY10_NV */
- 1690, /* GL_VERTEX_ATTRIB_ARRAY11_NV */
- 1691, /* GL_VERTEX_ATTRIB_ARRAY12_NV */
- 1692, /* GL_VERTEX_ATTRIB_ARRAY13_NV */
- 1693, /* GL_VERTEX_ATTRIB_ARRAY14_NV */
- 1694, /* GL_VERTEX_ATTRIB_ARRAY15_NV */
- 701, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */
- 708, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */
- 709, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */
- 710, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */
- 711, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */
- 712, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */
- 713, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */
- 714, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */
- 715, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */
- 716, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */
- 702, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */
- 703, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */
- 704, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */
- 705, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */
- 706, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */
- 707, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */
- 728, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */
- 735, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */
- 736, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */
- 737, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */
- 738, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */
- 739, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */
- 740, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */
- 1161, /* GL_PROGRAM_BINDING_ARB */
- 742, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */
- 743, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */
- 729, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */
- 730, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */
- 731, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */
- 732, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */
- 733, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */
- 734, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */
- 1551, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */
- 1548, /* GL_TEXTURE_COMPRESSED */
- 970, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */
- 240, /* GL_COMPRESSED_TEXTURE_FORMATS */
- 879, /* GL_MAX_VERTEX_UNITS_ARB */
+ 601, /* GL_INTERPOLATE */
+ 240, /* GL_CONSTANT */
+ 1153, /* GL_PRIMARY_COLOR */
+ 1150, /* GL_PREVIOUS */
+ 1354, /* GL_SOURCE0_RGB */
+ 1360, /* GL_SOURCE1_RGB */
+ 1366, /* GL_SOURCE2_RGB */
+ 1370, /* GL_SOURCE3_RGB_NV */
+ 1351, /* GL_SOURCE0_ALPHA */
+ 1357, /* GL_SOURCE1_ALPHA */
+ 1363, /* GL_SOURCE2_ALPHA */
+ 1369, /* GL_SOURCE3_ALPHA_NV */
+ 999, /* GL_OPERAND0_RGB */
+ 1005, /* GL_OPERAND1_RGB */
+ 1011, /* GL_OPERAND2_RGB */
+ 1015, /* GL_OPERAND3_RGB_NV */
+ 996, /* GL_OPERAND0_ALPHA */
+ 1002, /* GL_OPERAND1_ALPHA */
+ 1008, /* GL_OPERAND2_ALPHA */
+ 1014, /* GL_OPERAND3_ALPHA_NV */
+ 1679, /* GL_VERTEX_ARRAY_BINDING_APPLE */
+ 1743, /* GL_YCBCR_422_APPLE */
+ 1668, /* GL_UNSIGNED_SHORT_8_8_APPLE */
+ 1670, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */
+ 1345, /* GL_SLICE_ACCUM_SUN */
+ 1210, /* GL_QUAD_MESH_SUN */
+ 1641, /* GL_TRIANGLE_MESH_SUN */
+ 1717, /* GL_VERTEX_PROGRAM_ARB */
+ 1728, /* GL_VERTEX_STATE_PROGRAM_NV */
+ 1704, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */
+ 1710, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */
+ 1712, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */
+ 1714, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */
+ 300, /* GL_CURRENT_VERTEX_ATTRIB */
+ 1166, /* GL_PROGRAM_LENGTH_ARB */
+ 1180, /* GL_PROGRAM_STRING_ARB */
+ 929, /* GL_MODELVIEW_PROJECTION_NV */
+ 569, /* GL_IDENTITY_NV */
+ 614, /* GL_INVERSE_NV */
+ 1634, /* GL_TRANSPOSE_NV */
+ 615, /* GL_INVERSE_TRANSPOSE_NV */
+ 838, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */
+ 837, /* GL_MAX_PROGRAM_MATRICES_ARB */
+ 745, /* GL_MATRIX0_NV */
+ 757, /* GL_MATRIX1_NV */
+ 769, /* GL_MATRIX2_NV */
+ 773, /* GL_MATRIX3_NV */
+ 775, /* GL_MATRIX4_NV */
+ 777, /* GL_MATRIX5_NV */
+ 779, /* GL_MATRIX6_NV */
+ 781, /* GL_MATRIX7_NV */
+ 285, /* GL_CURRENT_MATRIX_STACK_DEPTH_ARB */
+ 282, /* GL_CURRENT_MATRIX_ARB */
+ 1720, /* GL_VERTEX_PROGRAM_POINT_SIZE */
+ 1723, /* GL_VERTEX_PROGRAM_TWO_SIDE */
+ 1178, /* GL_PROGRAM_PARAMETER_NV */
+ 1708, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */
+ 1182, /* GL_PROGRAM_TARGET_NV */
+ 1179, /* GL_PROGRAM_RESIDENT_NV */
+ 1626, /* GL_TRACK_MATRIX_NV */
+ 1627, /* GL_TRACK_MATRIX_TRANSFORM_NV */
+ 1718, /* GL_VERTEX_PROGRAM_BINDING_NV */
+ 1160, /* GL_PROGRAM_ERROR_POSITION_ARB */
+ 319, /* GL_DEPTH_CLAMP_NV */
+ 1686, /* GL_VERTEX_ATTRIB_ARRAY0_NV */
+ 1693, /* GL_VERTEX_ATTRIB_ARRAY1_NV */
+ 1694, /* GL_VERTEX_ATTRIB_ARRAY2_NV */
+ 1695, /* GL_VERTEX_ATTRIB_ARRAY3_NV */
+ 1696, /* GL_VERTEX_ATTRIB_ARRAY4_NV */
+ 1697, /* GL_VERTEX_ATTRIB_ARRAY5_NV */
+ 1698, /* GL_VERTEX_ATTRIB_ARRAY6_NV */
+ 1699, /* GL_VERTEX_ATTRIB_ARRAY7_NV */
+ 1700, /* GL_VERTEX_ATTRIB_ARRAY8_NV */
+ 1701, /* GL_VERTEX_ATTRIB_ARRAY9_NV */
+ 1687, /* GL_VERTEX_ATTRIB_ARRAY10_NV */
+ 1688, /* GL_VERTEX_ATTRIB_ARRAY11_NV */
+ 1689, /* GL_VERTEX_ATTRIB_ARRAY12_NV */
+ 1690, /* GL_VERTEX_ATTRIB_ARRAY13_NV */
+ 1691, /* GL_VERTEX_ATTRIB_ARRAY14_NV */
+ 1692, /* GL_VERTEX_ATTRIB_ARRAY15_NV */
+ 699, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */
+ 706, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */
+ 707, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */
+ 708, /* GL_MAP1_VERTEX_ATTRIB3_4_NV */
+ 709, /* GL_MAP1_VERTEX_ATTRIB4_4_NV */
+ 710, /* GL_MAP1_VERTEX_ATTRIB5_4_NV */
+ 711, /* GL_MAP1_VERTEX_ATTRIB6_4_NV */
+ 712, /* GL_MAP1_VERTEX_ATTRIB7_4_NV */
+ 713, /* GL_MAP1_VERTEX_ATTRIB8_4_NV */
+ 714, /* GL_MAP1_VERTEX_ATTRIB9_4_NV */
+ 700, /* GL_MAP1_VERTEX_ATTRIB10_4_NV */
+ 701, /* GL_MAP1_VERTEX_ATTRIB11_4_NV */
+ 702, /* GL_MAP1_VERTEX_ATTRIB12_4_NV */
+ 703, /* GL_MAP1_VERTEX_ATTRIB13_4_NV */
+ 704, /* GL_MAP1_VERTEX_ATTRIB14_4_NV */
+ 705, /* GL_MAP1_VERTEX_ATTRIB15_4_NV */
+ 726, /* GL_MAP2_VERTEX_ATTRIB0_4_NV */
+ 733, /* GL_MAP2_VERTEX_ATTRIB1_4_NV */
+ 734, /* GL_MAP2_VERTEX_ATTRIB2_4_NV */
+ 735, /* GL_MAP2_VERTEX_ATTRIB3_4_NV */
+ 736, /* GL_MAP2_VERTEX_ATTRIB4_4_NV */
+ 737, /* GL_MAP2_VERTEX_ATTRIB5_4_NV */
+ 738, /* GL_MAP2_VERTEX_ATTRIB6_4_NV */
+ 1159, /* GL_PROGRAM_BINDING_ARB */
+ 740, /* GL_MAP2_VERTEX_ATTRIB8_4_NV */
+ 741, /* GL_MAP2_VERTEX_ATTRIB9_4_NV */
+ 727, /* GL_MAP2_VERTEX_ATTRIB10_4_NV */
+ 728, /* GL_MAP2_VERTEX_ATTRIB11_4_NV */
+ 729, /* GL_MAP2_VERTEX_ATTRIB12_4_NV */
+ 730, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */
+ 731, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */
+ 732, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */
+ 1549, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */
+ 1546, /* GL_TEXTURE_COMPRESSED */
+ 968, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */
+ 239, /* GL_COMPRESSED_TEXTURE_FORMATS */
+ 877, /* GL_MAX_VERTEX_UNITS_ARB */
22, /* GL_ACTIVE_VERTEX_UNITS_ARB */
- 1740, /* GL_WEIGHT_SUM_UNITY_ARB */
- 1718, /* GL_VERTEX_BLEND_ARB */
- 303, /* GL_CURRENT_WEIGHT_ARB */
- 1739, /* GL_WEIGHT_ARRAY_TYPE_ARB */
- 1738, /* GL_WEIGHT_ARRAY_STRIDE_ARB */
- 1737, /* GL_WEIGHT_ARRAY_SIZE_ARB */
- 1736, /* GL_WEIGHT_ARRAY_POINTER_ARB */
- 1733, /* GL_WEIGHT_ARRAY_ARB */
- 346, /* GL_DOT3_RGB */
- 347, /* GL_DOT3_RGBA */
- 238, /* GL_COMPRESSED_RGB_FXT1_3DFX */
- 233, /* GL_COMPRESSED_RGBA_FXT1_3DFX */
- 939, /* GL_MULTISAMPLE_3DFX */
- 1311, /* GL_SAMPLE_BUFFERS_3DFX */
- 1302, /* GL_SAMPLES_3DFX */
- 920, /* GL_MODELVIEW2_ARB */
- 923, /* GL_MODELVIEW3_ARB */
- 924, /* GL_MODELVIEW4_ARB */
- 925, /* GL_MODELVIEW5_ARB */
- 926, /* GL_MODELVIEW6_ARB */
- 927, /* GL_MODELVIEW7_ARB */
- 928, /* GL_MODELVIEW8_ARB */
- 929, /* GL_MODELVIEW9_ARB */
- 899, /* GL_MODELVIEW10_ARB */
- 900, /* GL_MODELVIEW11_ARB */
- 901, /* GL_MODELVIEW12_ARB */
- 902, /* GL_MODELVIEW13_ARB */
- 903, /* GL_MODELVIEW14_ARB */
- 904, /* GL_MODELVIEW15_ARB */
- 905, /* GL_MODELVIEW16_ARB */
- 906, /* GL_MODELVIEW17_ARB */
- 907, /* GL_MODELVIEW18_ARB */
- 908, /* GL_MODELVIEW19_ARB */
- 910, /* GL_MODELVIEW20_ARB */
- 911, /* GL_MODELVIEW21_ARB */
- 912, /* GL_MODELVIEW22_ARB */
- 913, /* GL_MODELVIEW23_ARB */
- 914, /* GL_MODELVIEW24_ARB */
- 915, /* GL_MODELVIEW25_ARB */
- 916, /* GL_MODELVIEW26_ARB */
- 917, /* GL_MODELVIEW27_ARB */
- 918, /* GL_MODELVIEW28_ARB */
- 919, /* GL_MODELVIEW29_ARB */
- 921, /* GL_MODELVIEW30_ARB */
- 922, /* GL_MODELVIEW31_ARB */
- 351, /* GL_DOT3_RGB_EXT */
- 349, /* GL_DOT3_RGBA_EXT */
- 893, /* GL_MIRROR_CLAMP_EXT */
- 896, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */
- 934, /* GL_MODULATE_ADD_ATI */
- 935, /* GL_MODULATE_SIGNED_ADD_ATI */
- 936, /* GL_MODULATE_SUBTRACT_ATI */
- 1746, /* GL_YCBCR_MESA */
- 1025, /* GL_PACK_INVERT_MESA */
- 306, /* GL_DEBUG_OBJECT_MESA */
- 307, /* GL_DEBUG_PRINT_MESA */
- 305, /* GL_DEBUG_ASSERT_MESA */
- 107, /* GL_BUFFER_SIZE */
- 109, /* GL_BUFFER_USAGE */
- 1399, /* GL_STENCIL_BACK_FUNC */
- 1397, /* GL_STENCIL_BACK_FAIL */
- 1401, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */
- 1403, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */
- 485, /* GL_FRAGMENT_PROGRAM_ARB */
- 1159, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */
- 1187, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */
- 1186, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */
- 1171, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */
- 1177, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */
- 1176, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */
- 829, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */
- 852, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */
- 851, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */
- 842, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */
- 848, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */
- 847, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */
- 812, /* GL_MAX_DRAW_BUFFERS */
- 355, /* GL_DRAW_BUFFER0 */
- 358, /* GL_DRAW_BUFFER1 */
- 379, /* GL_DRAW_BUFFER2 */
- 382, /* GL_DRAW_BUFFER3 */
- 385, /* GL_DRAW_BUFFER4 */
- 388, /* GL_DRAW_BUFFER5 */
- 391, /* GL_DRAW_BUFFER6 */
- 394, /* GL_DRAW_BUFFER7 */
- 397, /* GL_DRAW_BUFFER8 */
- 400, /* GL_DRAW_BUFFER9 */
- 359, /* GL_DRAW_BUFFER10 */
- 362, /* GL_DRAW_BUFFER11 */
- 365, /* GL_DRAW_BUFFER12 */
- 368, /* GL_DRAW_BUFFER13 */
- 371, /* GL_DRAW_BUFFER14 */
- 374, /* GL_DRAW_BUFFER15 */
- 82, /* GL_BLEND_EQUATION_ALPHA */
- 792, /* GL_MATRIX_PALETTE_ARB */
- 823, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */
- 826, /* GL_MAX_PALETTE_MATRICES_ARB */
- 289, /* GL_CURRENT_PALETTE_MATRIX_ARB */
- 786, /* GL_MATRIX_INDEX_ARRAY_ARB */
- 284, /* GL_CURRENT_MATRIX_INDEX_ARB */
- 788, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */
- 790, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */
- 789, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */
- 787, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */
- 1577, /* GL_TEXTURE_DEPTH_SIZE */
- 339, /* GL_DEPTH_TEXTURE_MODE */
- 1543, /* GL_TEXTURE_COMPARE_MODE */
- 1541, /* GL_TEXTURE_COMPARE_FUNC */
- 217, /* GL_COMPARE_R_TO_TEXTURE */
- 1093, /* GL_POINT_SPRITE */
- 266, /* GL_COORD_REPLACE */
- 1097, /* GL_POINT_SPRITE_R_MODE_NV */
- 1214, /* GL_QUERY_COUNTER_BITS */
- 291, /* GL_CURRENT_QUERY */
- 1216, /* GL_QUERY_RESULT */
- 1218, /* GL_QUERY_RESULT_AVAILABLE */
- 873, /* GL_MAX_VERTEX_ATTRIBS */
- 1708, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */
- 337, /* GL_DEPTH_STENCIL_TO_RGBA_NV */
- 336, /* GL_DEPTH_STENCIL_TO_BGRA_NV */
- 859, /* GL_MAX_TEXTURE_COORDS */
- 861, /* GL_MAX_TEXTURE_IMAGE_UNITS */
- 1164, /* GL_PROGRAM_ERROR_STRING_ARB */
- 1166, /* GL_PROGRAM_FORMAT_ASCII_ARB */
- 1165, /* GL_PROGRAM_FORMAT_ARB */
- 1622, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */
- 318, /* GL_DEPTH_BOUNDS_TEST_EXT */
- 317, /* GL_DEPTH_BOUNDS_EXT */
+ 1738, /* GL_WEIGHT_SUM_UNITY_ARB */
+ 1716, /* GL_VERTEX_BLEND_ARB */
+ 302, /* GL_CURRENT_WEIGHT_ARB */
+ 1737, /* GL_WEIGHT_ARRAY_TYPE_ARB */
+ 1736, /* GL_WEIGHT_ARRAY_STRIDE_ARB */
+ 1735, /* GL_WEIGHT_ARRAY_SIZE_ARB */
+ 1734, /* GL_WEIGHT_ARRAY_POINTER_ARB */
+ 1731, /* GL_WEIGHT_ARRAY_ARB */
+ 345, /* GL_DOT3_RGB */
+ 346, /* GL_DOT3_RGBA */
+ 237, /* GL_COMPRESSED_RGB_FXT1_3DFX */
+ 232, /* GL_COMPRESSED_RGBA_FXT1_3DFX */
+ 937, /* GL_MULTISAMPLE_3DFX */
+ 1309, /* GL_SAMPLE_BUFFERS_3DFX */
+ 1300, /* GL_SAMPLES_3DFX */
+ 918, /* GL_MODELVIEW2_ARB */
+ 921, /* GL_MODELVIEW3_ARB */
+ 922, /* GL_MODELVIEW4_ARB */
+ 923, /* GL_MODELVIEW5_ARB */
+ 924, /* GL_MODELVIEW6_ARB */
+ 925, /* GL_MODELVIEW7_ARB */
+ 926, /* GL_MODELVIEW8_ARB */
+ 927, /* GL_MODELVIEW9_ARB */
+ 897, /* GL_MODELVIEW10_ARB */
+ 898, /* GL_MODELVIEW11_ARB */
+ 899, /* GL_MODELVIEW12_ARB */
+ 900, /* GL_MODELVIEW13_ARB */
+ 901, /* GL_MODELVIEW14_ARB */
+ 902, /* GL_MODELVIEW15_ARB */
+ 903, /* GL_MODELVIEW16_ARB */
+ 904, /* GL_MODELVIEW17_ARB */
+ 905, /* GL_MODELVIEW18_ARB */
+ 906, /* GL_MODELVIEW19_ARB */
+ 908, /* GL_MODELVIEW20_ARB */
+ 909, /* GL_MODELVIEW21_ARB */
+ 910, /* GL_MODELVIEW22_ARB */
+ 911, /* GL_MODELVIEW23_ARB */
+ 912, /* GL_MODELVIEW24_ARB */
+ 913, /* GL_MODELVIEW25_ARB */
+ 914, /* GL_MODELVIEW26_ARB */
+ 915, /* GL_MODELVIEW27_ARB */
+ 916, /* GL_MODELVIEW28_ARB */
+ 917, /* GL_MODELVIEW29_ARB */
+ 919, /* GL_MODELVIEW30_ARB */
+ 920, /* GL_MODELVIEW31_ARB */
+ 350, /* GL_DOT3_RGB_EXT */
+ 348, /* GL_DOT3_RGBA_EXT */
+ 891, /* GL_MIRROR_CLAMP_EXT */
+ 894, /* GL_MIRROR_CLAMP_TO_EDGE_EXT */
+ 932, /* GL_MODULATE_ADD_ATI */
+ 933, /* GL_MODULATE_SIGNED_ADD_ATI */
+ 934, /* GL_MODULATE_SUBTRACT_ATI */
+ 1744, /* GL_YCBCR_MESA */
+ 1023, /* GL_PACK_INVERT_MESA */
+ 305, /* GL_DEBUG_OBJECT_MESA */
+ 306, /* GL_DEBUG_PRINT_MESA */
+ 304, /* GL_DEBUG_ASSERT_MESA */
+ 106, /* GL_BUFFER_SIZE */
+ 108, /* GL_BUFFER_USAGE */
+ 1397, /* GL_STENCIL_BACK_FUNC */
+ 1395, /* GL_STENCIL_BACK_FAIL */
+ 1399, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */
+ 1401, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */
+ 483, /* GL_FRAGMENT_PROGRAM_ARB */
+ 1157, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */
+ 1185, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */
+ 1184, /* GL_PROGRAM_TEX_INDIRECTIONS_ARB */
+ 1169, /* GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */
+ 1175, /* GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */
+ 1174, /* GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */
+ 827, /* GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB */
+ 850, /* GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB */
+ 849, /* GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB */
+ 840, /* GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB */
+ 846, /* GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB */
+ 845, /* GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB */
+ 810, /* GL_MAX_DRAW_BUFFERS */
+ 354, /* GL_DRAW_BUFFER0 */
+ 357, /* GL_DRAW_BUFFER1 */
+ 378, /* GL_DRAW_BUFFER2 */
+ 381, /* GL_DRAW_BUFFER3 */
+ 384, /* GL_DRAW_BUFFER4 */
+ 387, /* GL_DRAW_BUFFER5 */
+ 390, /* GL_DRAW_BUFFER6 */
+ 393, /* GL_DRAW_BUFFER7 */
+ 396, /* GL_DRAW_BUFFER8 */
+ 399, /* GL_DRAW_BUFFER9 */
+ 358, /* GL_DRAW_BUFFER10 */
+ 361, /* GL_DRAW_BUFFER11 */
+ 364, /* GL_DRAW_BUFFER12 */
+ 367, /* GL_DRAW_BUFFER13 */
+ 370, /* GL_DRAW_BUFFER14 */
+ 373, /* GL_DRAW_BUFFER15 */
+ 81, /* GL_BLEND_EQUATION_ALPHA */
+ 790, /* GL_MATRIX_PALETTE_ARB */
+ 821, /* GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB */
+ 824, /* GL_MAX_PALETTE_MATRICES_ARB */
+ 288, /* GL_CURRENT_PALETTE_MATRIX_ARB */
+ 784, /* GL_MATRIX_INDEX_ARRAY_ARB */
+ 283, /* GL_CURRENT_MATRIX_INDEX_ARB */
+ 786, /* GL_MATRIX_INDEX_ARRAY_SIZE_ARB */
+ 788, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */
+ 787, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */
+ 785, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */
+ 1575, /* GL_TEXTURE_DEPTH_SIZE */
+ 338, /* GL_DEPTH_TEXTURE_MODE */
+ 1541, /* GL_TEXTURE_COMPARE_MODE */
+ 1539, /* GL_TEXTURE_COMPARE_FUNC */
+ 216, /* GL_COMPARE_R_TO_TEXTURE */
+ 1091, /* GL_POINT_SPRITE */
+ 265, /* GL_COORD_REPLACE */
+ 1095, /* GL_POINT_SPRITE_R_MODE_NV */
+ 1212, /* GL_QUERY_COUNTER_BITS */
+ 290, /* GL_CURRENT_QUERY */
+ 1214, /* GL_QUERY_RESULT */
+ 1216, /* GL_QUERY_RESULT_AVAILABLE */
+ 871, /* GL_MAX_VERTEX_ATTRIBS */
+ 1706, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */
+ 336, /* GL_DEPTH_STENCIL_TO_RGBA_NV */
+ 335, /* GL_DEPTH_STENCIL_TO_BGRA_NV */
+ 857, /* GL_MAX_TEXTURE_COORDS */
+ 859, /* GL_MAX_TEXTURE_IMAGE_UNITS */
+ 1162, /* GL_PROGRAM_ERROR_STRING_ARB */
+ 1164, /* GL_PROGRAM_FORMAT_ASCII_ARB */
+ 1163, /* GL_PROGRAM_FORMAT_ARB */
+ 1620, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */
+ 317, /* GL_DEPTH_BOUNDS_TEST_EXT */
+ 316, /* GL_DEPTH_BOUNDS_EXT */
52, /* GL_ARRAY_BUFFER */
- 420, /* GL_ELEMENT_ARRAY_BUFFER */
- 54, /* GL_ARRAY_BUFFER_BINDING */
- 422, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */
- 1682, /* GL_VERTEX_ARRAY_BUFFER_BINDING */
- 960, /* GL_NORMAL_ARRAY_BUFFER_BINDING */
- 140, /* GL_COLOR_ARRAY_BUFFER_BINDING */
- 579, /* GL_INDEX_ARRAY_BUFFER_BINDING */
- 1556, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */
- 416, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */
- 1323, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */
- 463, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */
- 1734, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */
- 1704, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */
- 1167, /* GL_PROGRAM_INSTRUCTIONS_ARB */
- 835, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */
- 1173, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */
- 844, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */
- 1185, /* GL_PROGRAM_TEMPORARIES_ARB */
- 850, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */
- 1175, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */
- 846, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */
- 1179, /* GL_PROGRAM_PARAMETERS_ARB */
- 849, /* GL_MAX_PROGRAM_PARAMETERS_ARB */
- 1174, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */
- 845, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */
- 1160, /* GL_PROGRAM_ATTRIBS_ARB */
- 830, /* GL_MAX_PROGRAM_ATTRIBS_ARB */
- 1172, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */
- 843, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */
- 1158, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */
- 828, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */
- 1170, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */
- 841, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */
- 836, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */
- 832, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */
- 1188, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */
- 1633, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */
- 1226, /* GL_READ_ONLY */
- 1742, /* GL_WRITE_ONLY */
- 1228, /* GL_READ_WRITE */
- 101, /* GL_BUFFER_ACCESS */
- 103, /* GL_BUFFER_MAPPED */
- 105, /* GL_BUFFER_MAP_POINTER */
- 1627, /* GL_TIME_ELAPSED_EXT */
- 746, /* GL_MATRIX0_ARB */
- 758, /* GL_MATRIX1_ARB */
- 770, /* GL_MATRIX2_ARB */
- 774, /* GL_MATRIX3_ARB */
- 776, /* GL_MATRIX4_ARB */
- 778, /* GL_MATRIX5_ARB */
- 780, /* GL_MATRIX6_ARB */
- 782, /* GL_MATRIX7_ARB */
- 784, /* GL_MATRIX8_ARB */
- 785, /* GL_MATRIX9_ARB */
- 748, /* GL_MATRIX10_ARB */
- 749, /* GL_MATRIX11_ARB */
- 750, /* GL_MATRIX12_ARB */
- 751, /* GL_MATRIX13_ARB */
- 752, /* GL_MATRIX14_ARB */
- 753, /* GL_MATRIX15_ARB */
- 754, /* GL_MATRIX16_ARB */
- 755, /* GL_MATRIX17_ARB */
- 756, /* GL_MATRIX18_ARB */
- 757, /* GL_MATRIX19_ARB */
- 760, /* GL_MATRIX20_ARB */
- 761, /* GL_MATRIX21_ARB */
- 762, /* GL_MATRIX22_ARB */
- 763, /* GL_MATRIX23_ARB */
- 764, /* GL_MATRIX24_ARB */
- 765, /* GL_MATRIX25_ARB */
- 766, /* GL_MATRIX26_ARB */
- 767, /* GL_MATRIX27_ARB */
- 768, /* GL_MATRIX28_ARB */
- 769, /* GL_MATRIX29_ARB */
- 772, /* GL_MATRIX30_ARB */
- 773, /* GL_MATRIX31_ARB */
- 1429, /* GL_STREAM_DRAW */
- 1431, /* GL_STREAM_READ */
- 1427, /* GL_STREAM_COPY */
- 1391, /* GL_STATIC_DRAW */
- 1393, /* GL_STATIC_READ */
- 1389, /* GL_STATIC_COPY */
- 410, /* GL_DYNAMIC_DRAW */
- 412, /* GL_DYNAMIC_READ */
- 408, /* GL_DYNAMIC_COPY */
- 535, /* GL_GL_PIXEL_PACK_BUFFER */
- 537, /* GL_GL_PIXEL_UNPACK_BUFFER */
- 536, /* GL_GL_PIXEL_PACK_BUFFER_BINDING */
- 538, /* GL_GL_PIXEL_UNPACK_BUFFER_BINDING */
- 833, /* GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV */
- 831, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */
- 834, /* GL_MAX_PROGRAM_IF_DEPTH_NV */
- 838, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */
- 837, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */
- 795, /* GL_MAX_ARRAY_TEXTURE_LAYERS_EXT */
- 1423, /* GL_STENCIL_TEST_TWO_SIDE_EXT */
+ 419, /* GL_ELEMENT_ARRAY_BUFFER */
+ 53, /* GL_ARRAY_BUFFER_BINDING */
+ 420, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */
+ 1680, /* GL_VERTEX_ARRAY_BUFFER_BINDING */
+ 958, /* GL_NORMAL_ARRAY_BUFFER_BINDING */
+ 139, /* GL_COLOR_ARRAY_BUFFER_BINDING */
+ 577, /* GL_INDEX_ARRAY_BUFFER_BINDING */
+ 1554, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */
+ 415, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */
+ 1321, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */
+ 461, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */
+ 1732, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */
+ 1702, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */
+ 1165, /* GL_PROGRAM_INSTRUCTIONS_ARB */
+ 833, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */
+ 1171, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */
+ 842, /* GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB */
+ 1183, /* GL_PROGRAM_TEMPORARIES_ARB */
+ 848, /* GL_MAX_PROGRAM_TEMPORARIES_ARB */
+ 1173, /* GL_PROGRAM_NATIVE_TEMPORARIES_ARB */
+ 844, /* GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB */
+ 1177, /* GL_PROGRAM_PARAMETERS_ARB */
+ 847, /* GL_MAX_PROGRAM_PARAMETERS_ARB */
+ 1172, /* GL_PROGRAM_NATIVE_PARAMETERS_ARB */
+ 843, /* GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB */
+ 1158, /* GL_PROGRAM_ATTRIBS_ARB */
+ 828, /* GL_MAX_PROGRAM_ATTRIBS_ARB */
+ 1170, /* GL_PROGRAM_NATIVE_ATTRIBS_ARB */
+ 841, /* GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB */
+ 1156, /* GL_PROGRAM_ADDRESS_REGISTERS_ARB */
+ 826, /* GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB */
+ 1168, /* GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */
+ 839, /* GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB */
+ 834, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */
+ 830, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */
+ 1186, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */
+ 1631, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */
+ 1224, /* GL_READ_ONLY */
+ 1740, /* GL_WRITE_ONLY */
+ 1226, /* GL_READ_WRITE */
+ 100, /* GL_BUFFER_ACCESS */
+ 102, /* GL_BUFFER_MAPPED */
+ 104, /* GL_BUFFER_MAP_POINTER */
+ 1625, /* GL_TIME_ELAPSED_EXT */
+ 744, /* GL_MATRIX0_ARB */
+ 756, /* GL_MATRIX1_ARB */
+ 768, /* GL_MATRIX2_ARB */
+ 772, /* GL_MATRIX3_ARB */
+ 774, /* GL_MATRIX4_ARB */
+ 776, /* GL_MATRIX5_ARB */
+ 778, /* GL_MATRIX6_ARB */
+ 780, /* GL_MATRIX7_ARB */
+ 782, /* GL_MATRIX8_ARB */
+ 783, /* GL_MATRIX9_ARB */
+ 746, /* GL_MATRIX10_ARB */
+ 747, /* GL_MATRIX11_ARB */
+ 748, /* GL_MATRIX12_ARB */
+ 749, /* GL_MATRIX13_ARB */
+ 750, /* GL_MATRIX14_ARB */
+ 751, /* GL_MATRIX15_ARB */
+ 752, /* GL_MATRIX16_ARB */
+ 753, /* GL_MATRIX17_ARB */
+ 754, /* GL_MATRIX18_ARB */
+ 755, /* GL_MATRIX19_ARB */
+ 758, /* GL_MATRIX20_ARB */
+ 759, /* GL_MATRIX21_ARB */
+ 760, /* GL_MATRIX22_ARB */
+ 761, /* GL_MATRIX23_ARB */
+ 762, /* GL_MATRIX24_ARB */
+ 763, /* GL_MATRIX25_ARB */
+ 764, /* GL_MATRIX26_ARB */
+ 765, /* GL_MATRIX27_ARB */
+ 766, /* GL_MATRIX28_ARB */
+ 767, /* GL_MATRIX29_ARB */
+ 770, /* GL_MATRIX30_ARB */
+ 771, /* GL_MATRIX31_ARB */
+ 1427, /* GL_STREAM_DRAW */
+ 1429, /* GL_STREAM_READ */
+ 1425, /* GL_STREAM_COPY */
+ 1389, /* GL_STATIC_DRAW */
+ 1391, /* GL_STATIC_READ */
+ 1387, /* GL_STATIC_COPY */
+ 409, /* GL_DYNAMIC_DRAW */
+ 411, /* GL_DYNAMIC_READ */
+ 407, /* GL_DYNAMIC_COPY */
+ 533, /* GL_GL_PIXEL_PACK_BUFFER */
+ 535, /* GL_GL_PIXEL_UNPACK_BUFFER */
+ 534, /* GL_GL_PIXEL_PACK_BUFFER_BINDING */
+ 536, /* GL_GL_PIXEL_UNPACK_BUFFER_BINDING */
+ 831, /* GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV */
+ 829, /* GL_MAX_PROGRAM_CALL_DEPTH_NV */
+ 832, /* GL_MAX_PROGRAM_IF_DEPTH_NV */
+ 836, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */
+ 835, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */
+ 793, /* GL_MAX_ARRAY_TEXTURE_LAYERS_EXT */
+ 1421, /* GL_STENCIL_TEST_TWO_SIDE_EXT */
17, /* GL_ACTIVE_STENCIL_FACE_EXT */
- 894, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */
- 1304, /* GL_SAMPLES_PASSED */
- 486, /* GL_FRAGMENT_SHADER */
- 1728, /* GL_VERTEX_SHADER */
- 1178, /* GL_PROGRAM_OBJECT_ARB */
- 1336, /* GL_SHADER_OBJECT_ARB */
- 819, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */
- 877, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */
- 871, /* GL_MAX_VARYING_FLOATS */
- 875, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */
- 804, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */
- 985, /* GL_OBJECT_TYPE_ARB */
- 1338, /* GL_SHADER_TYPE */
- 451, /* GL_FLOAT_VEC2 */
- 453, /* GL_FLOAT_VEC3 */
- 455, /* GL_FLOAT_VEC4 */
- 606, /* GL_INT_VEC2 */
- 608, /* GL_INT_VEC3 */
- 610, /* GL_INT_VEC4 */
- 93, /* GL_BOOL */
- 95, /* GL_BOOL_VEC2 */
- 97, /* GL_BOOL_VEC3 */
- 99, /* GL_BOOL_VEC4 */
- 445, /* GL_FLOAT_MAT2 */
- 447, /* GL_FLOAT_MAT3 */
- 449, /* GL_FLOAT_MAT4 */
- 1295, /* GL_SAMPLER_1D */
- 1297, /* GL_SAMPLER_2D */
- 1299, /* GL_SAMPLER_3D */
- 1300, /* GL_SAMPLER_CUBE */
- 1296, /* GL_SAMPLER_1D_SHADOW */
- 1298, /* GL_SAMPLER_2D_SHADOW */
- 529, /* GL_GL_FLOAT_MAT2x3 */
- 530, /* GL_GL_FLOAT_MAT2x4 */
- 531, /* GL_GL_FLOAT_MAT3x2 */
- 532, /* GL_GL_FLOAT_MAT3x4 */
- 533, /* GL_GL_FLOAT_MAT4x2 */
- 534, /* GL_GL_FLOAT_MAT4x3 */
- 312, /* GL_DELETE_STATUS */
- 221, /* GL_COMPILE_STATUS */
- 659, /* GL_LINK_STATUS */
- 1677, /* GL_VALIDATE_STATUS */
- 591, /* GL_INFO_LOG_LENGTH */
- 56, /* GL_ATTACHED_SHADERS */
+ 892, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */
+ 1302, /* GL_SAMPLES_PASSED */
+ 484, /* GL_FRAGMENT_SHADER */
+ 1726, /* GL_VERTEX_SHADER */
+ 1176, /* GL_PROGRAM_OBJECT_ARB */
+ 1334, /* GL_SHADER_OBJECT_ARB */
+ 817, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */
+ 875, /* GL_MAX_VERTEX_UNIFORM_COMPONENTS */
+ 869, /* GL_MAX_VARYING_FLOATS */
+ 873, /* GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS */
+ 802, /* GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS */
+ 983, /* GL_OBJECT_TYPE_ARB */
+ 1336, /* GL_SHADER_TYPE */
+ 449, /* GL_FLOAT_VEC2 */
+ 451, /* GL_FLOAT_VEC3 */
+ 453, /* GL_FLOAT_VEC4 */
+ 604, /* GL_INT_VEC2 */
+ 606, /* GL_INT_VEC3 */
+ 608, /* GL_INT_VEC4 */
+ 92, /* GL_BOOL */
+ 94, /* GL_BOOL_VEC2 */
+ 96, /* GL_BOOL_VEC3 */
+ 98, /* GL_BOOL_VEC4 */
+ 443, /* GL_FLOAT_MAT2 */
+ 445, /* GL_FLOAT_MAT3 */
+ 447, /* GL_FLOAT_MAT4 */
+ 1293, /* GL_SAMPLER_1D */
+ 1295, /* GL_SAMPLER_2D */
+ 1297, /* GL_SAMPLER_3D */
+ 1298, /* GL_SAMPLER_CUBE */
+ 1294, /* GL_SAMPLER_1D_SHADOW */
+ 1296, /* GL_SAMPLER_2D_SHADOW */
+ 527, /* GL_GL_FLOAT_MAT2x3 */
+ 528, /* GL_GL_FLOAT_MAT2x4 */
+ 529, /* GL_GL_FLOAT_MAT3x2 */
+ 530, /* GL_GL_FLOAT_MAT3x4 */
+ 531, /* GL_GL_FLOAT_MAT4x2 */
+ 532, /* GL_GL_FLOAT_MAT4x3 */
+ 311, /* GL_DELETE_STATUS */
+ 220, /* GL_COMPILE_STATUS */
+ 657, /* GL_LINK_STATUS */
+ 1675, /* GL_VALIDATE_STATUS */
+ 589, /* GL_INFO_LOG_LENGTH */
+ 55, /* GL_ATTACHED_SHADERS */
20, /* GL_ACTIVE_UNIFORMS */
21, /* GL_ACTIVE_UNIFORM_MAX_LENGTH */
- 1337, /* GL_SHADER_SOURCE_LENGTH */
+ 1335, /* GL_SHADER_SOURCE_LENGTH */
15, /* GL_ACTIVE_ATTRIBUTES */
16, /* GL_ACTIVE_ATTRIBUTE_MAX_LENGTH */
- 488, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */
- 1340, /* GL_SHADING_LANGUAGE_VERSION */
- 290, /* GL_CURRENT_PROGRAM */
- 1034, /* GL_PALETTE4_RGB8_OES */
- 1036, /* GL_PALETTE4_RGBA8_OES */
- 1032, /* GL_PALETTE4_R5_G6_B5_OES */
- 1035, /* GL_PALETTE4_RGBA4_OES */
- 1033, /* GL_PALETTE4_RGB5_A1_OES */
- 1039, /* GL_PALETTE8_RGB8_OES */
- 1041, /* GL_PALETTE8_RGBA8_OES */
- 1037, /* GL_PALETTE8_R5_G6_B5_OES */
- 1040, /* GL_PALETTE8_RGBA4_OES */
- 1038, /* GL_PALETTE8_RGB5_A1_OES */
- 574, /* GL_IMPLEMENTATION_COLOR_READ_TYPE_OES */
- 573, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES */
- 1511, /* GL_TEXTURE_1D_ARRAY_EXT */
- 1198, /* GL_PROXY_TEXTURE_1D_ARRAY_EXT */
- 1513, /* GL_TEXTURE_2D_ARRAY_EXT */
- 1201, /* GL_PROXY_TEXTURE_2D_ARRAY_EXT */
- 1519, /* GL_TEXTURE_BINDING_1D_ARRAY_EXT */
- 1521, /* GL_TEXTURE_BINDING_2D_ARRAY_EXT */
- 543, /* GL_GL_SRGB */
- 544, /* GL_GL_SRGB8 */
- 546, /* GL_GL_SRGB_ALPHA */
- 545, /* GL_GL_SRGB8_ALPHA8 */
- 542, /* GL_GL_SLUMINANCE_ALPHA */
- 541, /* GL_GL_SLUMINANCE8_ALPHA8 */
- 539, /* GL_GL_SLUMINANCE */
- 540, /* GL_GL_SLUMINANCE8 */
- 526, /* GL_GL_COMPRESSED_SRGB */
- 527, /* GL_GL_COMPRESSED_SRGB_ALPHA */
- 524, /* GL_GL_COMPRESSED_SLUMINANCE */
- 525, /* GL_GL_COMPRESSED_SLUMINANCE_ALPHA */
- 1095, /* GL_POINT_SPRITE_COORD_ORIGIN */
- 667, /* GL_LOWER_LEFT */
- 1674, /* GL_UPPER_LEFT */
- 1405, /* GL_STENCIL_BACK_REF */
- 1406, /* GL_STENCIL_BACK_VALUE_MASK */
- 1407, /* GL_STENCIL_BACK_WRITEMASK */
- 403, /* GL_DRAW_FRAMEBUFFER_BINDING_EXT */
- 1240, /* GL_RENDERBUFFER_BINDING_EXT */
- 1225, /* GL_READ_FRAMEBUFFER_EXT */
- 404, /* GL_DRAW_FRAMEBUFFER_EXT */
- 1224, /* GL_READ_FRAMEBUFFER_BINDING_EXT */
- 490, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT */
- 489, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT */
- 494, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT */
- 492, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT */
- 491, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT */
- 496, /* GL_FRAMEBUFFER_COMPLETE_EXT */
- 498, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT */
- 503, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT */
- 501, /* GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT */
- 499, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT */
- 502, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT */
- 500, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT */
- 504, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT */
- 506, /* GL_FRAMEBUFFER_UNSUPPORTED_EXT */
- 505, /* GL_FRAMEBUFFER_STATUS_ERROR_EXT */
- 801, /* GL_MAX_COLOR_ATTACHMENTS_EXT */
- 146, /* GL_COLOR_ATTACHMENT0_EXT */
- 153, /* GL_COLOR_ATTACHMENT1_EXT */
- 154, /* GL_COLOR_ATTACHMENT2_EXT */
- 155, /* GL_COLOR_ATTACHMENT3_EXT */
- 156, /* GL_COLOR_ATTACHMENT4_EXT */
- 157, /* GL_COLOR_ATTACHMENT5_EXT */
- 158, /* GL_COLOR_ATTACHMENT6_EXT */
- 159, /* GL_COLOR_ATTACHMENT7_EXT */
- 160, /* GL_COLOR_ATTACHMENT8_EXT */
- 161, /* GL_COLOR_ATTACHMENT9_EXT */
- 147, /* GL_COLOR_ATTACHMENT10_EXT */
- 148, /* GL_COLOR_ATTACHMENT11_EXT */
- 149, /* GL_COLOR_ATTACHMENT12_EXT */
- 150, /* GL_COLOR_ATTACHMENT13_EXT */
- 151, /* GL_COLOR_ATTACHMENT14_EXT */
- 152, /* GL_COLOR_ATTACHMENT15_EXT */
- 314, /* GL_DEPTH_ATTACHMENT_EXT */
- 1396, /* GL_STENCIL_ATTACHMENT_EXT */
- 497, /* GL_FRAMEBUFFER_EXT */
- 1241, /* GL_RENDERBUFFER_EXT */
- 1244, /* GL_RENDERBUFFER_WIDTH_EXT */
- 1242, /* GL_RENDERBUFFER_HEIGHT_EXT */
- 1243, /* GL_RENDERBUFFER_INTERNAL_FORMAT_EXT */
- 1418, /* GL_STENCIL_INDEX_EXT */
- 1415, /* GL_STENCIL_INDEX1_EXT */
- 1416, /* GL_STENCIL_INDEX4_EXT */
- 1417, /* GL_STENCIL_INDEX8_EXT */
- 1414, /* GL_STENCIL_INDEX16_EXT */
- 428, /* GL_EVAL_BIT */
- 1222, /* GL_RASTER_POSITION_UNCLIPPED_IBM */
- 661, /* GL_LIST_BIT */
- 1527, /* GL_TEXTURE_BIT */
- 1319, /* GL_SCISSOR_BIT */
+ 486, /* GL_FRAGMENT_SHADER_DERIVATIVE_HINT */
+ 1338, /* GL_SHADING_LANGUAGE_VERSION */
+ 289, /* GL_CURRENT_PROGRAM */
+ 1032, /* GL_PALETTE4_RGB8_OES */
+ 1034, /* GL_PALETTE4_RGBA8_OES */
+ 1030, /* GL_PALETTE4_R5_G6_B5_OES */
+ 1033, /* GL_PALETTE4_RGBA4_OES */
+ 1031, /* GL_PALETTE4_RGB5_A1_OES */
+ 1037, /* GL_PALETTE8_RGB8_OES */
+ 1039, /* GL_PALETTE8_RGBA8_OES */
+ 1035, /* GL_PALETTE8_R5_G6_B5_OES */
+ 1038, /* GL_PALETTE8_RGBA4_OES */
+ 1036, /* GL_PALETTE8_RGB5_A1_OES */
+ 572, /* GL_IMPLEMENTATION_COLOR_READ_TYPE_OES */
+ 571, /* GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES */
+ 1509, /* GL_TEXTURE_1D_ARRAY_EXT */
+ 1196, /* GL_PROXY_TEXTURE_1D_ARRAY_EXT */
+ 1511, /* GL_TEXTURE_2D_ARRAY_EXT */
+ 1199, /* GL_PROXY_TEXTURE_2D_ARRAY_EXT */
+ 1517, /* GL_TEXTURE_BINDING_1D_ARRAY_EXT */
+ 1519, /* GL_TEXTURE_BINDING_2D_ARRAY_EXT */
+ 541, /* GL_GL_SRGB */
+ 542, /* GL_GL_SRGB8 */
+ 544, /* GL_GL_SRGB_ALPHA */
+ 543, /* GL_GL_SRGB8_ALPHA8 */
+ 540, /* GL_GL_SLUMINANCE_ALPHA */
+ 539, /* GL_GL_SLUMINANCE8_ALPHA8 */
+ 537, /* GL_GL_SLUMINANCE */
+ 538, /* GL_GL_SLUMINANCE8 */
+ 524, /* GL_GL_COMPRESSED_SRGB */
+ 525, /* GL_GL_COMPRESSED_SRGB_ALPHA */
+ 522, /* GL_GL_COMPRESSED_SLUMINANCE */
+ 523, /* GL_GL_COMPRESSED_SLUMINANCE_ALPHA */
+ 1093, /* GL_POINT_SPRITE_COORD_ORIGIN */
+ 665, /* GL_LOWER_LEFT */
+ 1672, /* GL_UPPER_LEFT */
+ 1403, /* GL_STENCIL_BACK_REF */
+ 1404, /* GL_STENCIL_BACK_VALUE_MASK */
+ 1405, /* GL_STENCIL_BACK_WRITEMASK */
+ 402, /* GL_DRAW_FRAMEBUFFER_BINDING_EXT */
+ 1238, /* GL_RENDERBUFFER_BINDING_EXT */
+ 1223, /* GL_READ_FRAMEBUFFER_EXT */
+ 403, /* GL_DRAW_FRAMEBUFFER_EXT */
+ 1222, /* GL_READ_FRAMEBUFFER_BINDING_EXT */
+ 488, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT */
+ 487, /* GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT */
+ 492, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT */
+ 490, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT */
+ 489, /* GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT */
+ 494, /* GL_FRAMEBUFFER_COMPLETE_EXT */
+ 496, /* GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT */
+ 501, /* GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT */
+ 499, /* GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT */
+ 497, /* GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT */
+ 500, /* GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT */
+ 498, /* GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT */
+ 502, /* GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT */
+ 504, /* GL_FRAMEBUFFER_UNSUPPORTED_EXT */
+ 503, /* GL_FRAMEBUFFER_STATUS_ERROR_EXT */
+ 799, /* GL_MAX_COLOR_ATTACHMENTS_EXT */
+ 145, /* GL_COLOR_ATTACHMENT0_EXT */
+ 152, /* GL_COLOR_ATTACHMENT1_EXT */
+ 153, /* GL_COLOR_ATTACHMENT2_EXT */
+ 154, /* GL_COLOR_ATTACHMENT3_EXT */
+ 155, /* GL_COLOR_ATTACHMENT4_EXT */
+ 156, /* GL_COLOR_ATTACHMENT5_EXT */
+ 157, /* GL_COLOR_ATTACHMENT6_EXT */
+ 158, /* GL_COLOR_ATTACHMENT7_EXT */
+ 159, /* GL_COLOR_ATTACHMENT8_EXT */
+ 160, /* GL_COLOR_ATTACHMENT9_EXT */
+ 146, /* GL_COLOR_ATTACHMENT10_EXT */
+ 147, /* GL_COLOR_ATTACHMENT11_EXT */
+ 148, /* GL_COLOR_ATTACHMENT12_EXT */
+ 149, /* GL_COLOR_ATTACHMENT13_EXT */
+ 150, /* GL_COLOR_ATTACHMENT14_EXT */
+ 151, /* GL_COLOR_ATTACHMENT15_EXT */
+ 313, /* GL_DEPTH_ATTACHMENT_EXT */
+ 1394, /* GL_STENCIL_ATTACHMENT_EXT */
+ 495, /* GL_FRAMEBUFFER_EXT */
+ 1239, /* GL_RENDERBUFFER_EXT */
+ 1242, /* GL_RENDERBUFFER_WIDTH_EXT */
+ 1240, /* GL_RENDERBUFFER_HEIGHT_EXT */
+ 1241, /* GL_RENDERBUFFER_INTERNAL_FORMAT_EXT */
+ 1416, /* GL_STENCIL_INDEX_EXT */
+ 1413, /* GL_STENCIL_INDEX1_EXT */
+ 1414, /* GL_STENCIL_INDEX4_EXT */
+ 1415, /* GL_STENCIL_INDEX8_EXT */
+ 1412, /* GL_STENCIL_INDEX16_EXT */
+ 426, /* GL_EVAL_BIT */
+ 1220, /* GL_RASTER_POSITION_UNCLIPPED_IBM */
+ 659, /* GL_LIST_BIT */
+ 1525, /* GL_TEXTURE_BIT */
+ 1317, /* GL_SCISSOR_BIT */
29, /* GL_ALL_ATTRIB_BITS */
- 941, /* GL_MULTISAMPLE_BIT */
+ 939, /* GL_MULTISAMPLE_BIT */
30, /* GL_ALL_CLIENT_ATTRIB_BITS */
};
@@ -4870,8 +4866,10 @@ const char *_mesa_lookup_enum_by_nr( int nr )
{
unsigned * i;
- i = (unsigned *)_mesa_bsearch( & nr, reduced_enums, Elements(reduced_enums),
- sizeof(reduced_enums[0]), (cfunc) compar_nr );
+ i = (unsigned *) _mesa_bsearch(& nr, reduced_enums,
+ Elements(reduced_enums),
+ sizeof(reduced_enums[0]),
+ (cfunc) compar_nr);
if ( i != NULL ) {
return & enum_string_table[ all_enums[ *i ].offset ];
@@ -4888,8 +4886,10 @@ int _mesa_lookup_enum_by_name( const char *symbol )
enum_elt * f = NULL;
if ( symbol != NULL ) {
- f = (enum_elt *)_mesa_bsearch( symbol, all_enums, Elements(all_enums),
- sizeof( enum_elt ), (cfunc) compar_name );
+ f = (enum_elt *) _mesa_bsearch(symbol, all_enums,
+ Elements(all_enums),
+ sizeof( enum_elt ),
+ (cfunc) compar_name);
}
return (f != NULL) ? f->n : -1;
diff --git a/src/mesa/main/execmem.c b/src/mesa/main/execmem.c
index 0fe85af93e0..f95c31862a5 100644
--- a/src/mesa/main/execmem.c
+++ b/src/mesa/main/execmem.c
@@ -65,9 +65,17 @@ static struct mem_block *exec_heap = NULL;
static unsigned char *exec_mem = NULL;
-static void
+static int
init_heap(void)
{
+#ifdef MESA_SELINUX
+ if (is_selinux_enabled()) {
+ if (!security_get_boolean_active("allow_execmem") ||
+ !security_get_boolean_pending("allow_execmem"))
+ return 0;
+ }
+#endif
+
if (!exec_heap)
exec_heap = mmInit( 0, EXEC_HEAP_SIZE );
@@ -75,6 +83,8 @@ init_heap(void)
exec_mem = (unsigned char *) mmap(0, EXEC_HEAP_SIZE,
PROT_EXEC | PROT_READ | PROT_WRITE,
MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);
+
+ return (exec_mem != NULL);
}
@@ -86,7 +96,8 @@ _mesa_exec_malloc(GLuint size)
_glthread_LOCK_MUTEX(exec_mutex);
- init_heap();
+ if (!init_heap())
+ goto bail;
if (exec_heap) {
size = (size + 31) & ~31;
@@ -97,7 +108,8 @@ _mesa_exec_malloc(GLuint size)
addr = exec_mem + block->ofs;
else
_mesa_printf("_mesa_exec_malloc failed\n");
-
+
+bail:
_glthread_UNLOCK_MUTEX(exec_mutex);
return addr;
diff --git a/src/mesa/main/extensions.c b/src/mesa/main/extensions.c
index e5279e7f3eb..aa5b1721234 100644
--- a/src/mesa/main/extensions.c
+++ b/src/mesa/main/extensions.c
@@ -1,8 +1,8 @@
/*
* Mesa 3-D graphics library
- * Version: 6.5.1
+ * Version: 7.3
*
- * Copyright (C) 1999-2006 Brian Paul All Rights Reserved.
+ * Copyright (C) 1999-2008 Brian Paul All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
@@ -165,7 +165,7 @@ static const struct {
{ OFF, "GL_SGIS_texture_border_clamp", F(ARB_texture_border_clamp) },
{ ON, "GL_SGIS_texture_edge_clamp", F(SGIS_texture_edge_clamp) },
{ ON, "GL_SGIS_texture_lod", F(SGIS_texture_lod) },
- { OFF, "GL_SGIX_depth_texture", F(SGIX_depth_texture) },
+ { OFF, "GL_SGIX_depth_texture", F(ARB_depth_texture) },
{ OFF, "GL_SGIX_shadow", F(SGIX_shadow) },
{ OFF, "GL_SGIX_shadow_ambient", F(SGIX_shadow_ambient) },
{ OFF, "GL_SUN_multi_draw_arrays", F(EXT_multi_draw_arrays) },
@@ -204,7 +204,7 @@ _mesa_enable_sw_extensions(GLcontext *ctx)
ctx->Extensions.ARB_shading_language_100 = GL_TRUE;
#endif
#if FEATURE_ARB_shading_language_120
- ctx->Extensions.ARB_shading_language_120 = GL_TRUE;
+ ctx->Extensions.ARB_shading_language_120 = GL_FALSE; /* not quite done */
#endif
ctx->Extensions.ARB_shadow = GL_TRUE;
ctx->Extensions.ARB_texture_border_clamp = GL_TRUE;
@@ -292,12 +292,20 @@ _mesa_enable_sw_extensions(GLcontext *ctx)
ctx->Extensions.SGI_texture_color_table = GL_TRUE;
ctx->Extensions.SGIS_generate_mipmap = GL_TRUE;
ctx->Extensions.SGIS_texture_edge_clamp = GL_TRUE;
- ctx->Extensions.SGIX_depth_texture = GL_TRUE;
ctx->Extensions.SGIX_shadow = GL_TRUE;
ctx->Extensions.SGIX_shadow_ambient = GL_TRUE;
#if FEATURE_ARB_vertex_program || FEATURE_ARB_fragment_program
ctx->Extensions.EXT_gpu_program_parameters = GL_TRUE;
#endif
+#if FEATURE_texture_fxt1
+ _mesa_enable_extension(ctx, "GL_3DFX_texture_compression_FXT1");
+#endif
+#if FEATURE_texture_s3tc
+ if (ctx->Mesa_DXTn) {
+ _mesa_enable_extension(ctx, "GL_EXT_texture_compression_s3tc");
+ _mesa_enable_extension(ctx, "GL_S3_s3tc");
+ }
+#endif
}
@@ -309,6 +317,7 @@ _mesa_enable_imaging_extensions(GLcontext *ctx)
{
ctx->Extensions.ARB_imaging = GL_TRUE;
ctx->Extensions.EXT_blend_color = GL_TRUE;
+ ctx->Extensions.EXT_blend_logic_op = GL_TRUE;
ctx->Extensions.EXT_blend_minmax = GL_TRUE;
ctx->Extensions.EXT_blend_subtract = GL_TRUE;
ctx->Extensions.EXT_convolution = GL_TRUE;
@@ -353,7 +362,6 @@ _mesa_enable_1_4_extensions(GLcontext *ctx)
ctx->Extensions.ARB_window_pos = GL_TRUE;
ctx->Extensions.EXT_blend_color = GL_TRUE;
ctx->Extensions.EXT_blend_func_separate = GL_TRUE;
- ctx->Extensions.EXT_blend_logic_op = GL_TRUE;
ctx->Extensions.EXT_blend_minmax = GL_TRUE;
ctx->Extensions.EXT_blend_subtract = GL_TRUE;
ctx->Extensions.EXT_fog_coord = GL_TRUE;
@@ -419,7 +427,7 @@ _mesa_enable_2_1_extensions(GLcontext *ctx)
ctx->Extensions.EXT_texture_sRGB = GL_TRUE;
#endif
#ifdef FEATURE_ARB_shading_language_120
- ctx->Extensions.ARB_shading_language_120 = GL_TRUE;
+ ctx->Extensions.ARB_shading_language_120 = GL_FALSE; /* not quite done */
#endif
}
diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c
index b5605a199c5..718c97568b5 100644
--- a/src/mesa/main/fbobject.c
+++ b/src/mesa/main/fbobject.c
@@ -983,9 +983,11 @@ _mesa_BindFramebufferEXT(GLenum target, GLuint framebuffer)
}
FLUSH_VERTICES(ctx, _NEW_BUFFERS);
+
if (ctx->Driver.Flush) {
ctx->Driver.Flush(ctx);
}
+
if (framebuffer) {
/* Binding a user-created framebuffer object */
newFb = _mesa_lookup_framebuffer(ctx, framebuffer);
@@ -1019,32 +1021,18 @@ _mesa_BindFramebufferEXT(GLenum target, GLuint framebuffer)
* XXX check if re-binding same buffer and skip some of this code.
*/
- /* for window-framebuffers, re-initialize the fbo values, as they
- could be wrong (makecurrent with a new drawable while still a fbo
- was bound will lead to default init fbo values).
- note that therefore the context ReadBuffer/DrawBuffer values are not
- valid while fbo's are bound!!! */
if (bindReadBuf) {
_mesa_reference_framebuffer(&ctx->ReadBuffer, newFbread);
- if (!newFbread->Name) {
- _mesa_readbuffer_update_fields(ctx, ctx->Pixel.ReadBuffer);
- }
}
if (bindDrawBuf) {
/* check if old FB had any texture attachments */
check_end_texture_render(ctx, ctx->DrawBuffer);
+
/* check if time to delete this framebuffer */
_mesa_reference_framebuffer(&ctx->DrawBuffer, newFb);
- if (!newFb->Name) {
- GLuint i;
- GLenum buffers[MAX_DRAW_BUFFERS];
- for(i = 0; i < ctx->Const.MaxDrawBuffers; i++) {
- buffers[i] = ctx->Color.DrawBuffer[i];
- }
- _mesa_drawbuffers(ctx, ctx->Const.MaxDrawBuffers, buffers, NULL);
- }
- else {
+
+ if (newFb->Name != 0) {
/* check if newly bound framebuffer has any texture attachments */
check_begin_texture_render(ctx, newFb);
}
@@ -1586,9 +1574,17 @@ _mesa_GenerateMipmapEXT(GLenum target)
texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit];
texObj = _mesa_select_tex_object(ctx, texUnit, target);
- /* XXX this might not handle cube maps correctly */
_mesa_lock_texture(ctx, texObj);
- ctx->Driver.GenerateMipmap(ctx, target, texObj);
+ if (target == GL_TEXTURE_CUBE_MAP) {
+ int face;
+
+ for (face = 0; face < 6; face++)
+ ctx->Driver.GenerateMipmap(ctx,
+ GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB + face,
+ texObj);
+ } else {
+ ctx->Driver.GenerateMipmap(ctx, target, texObj);
+ }
_mesa_unlock_texture(ctx, texObj);
}
diff --git a/src/mesa/main/ffvertex_prog.c b/src/mesa/main/ffvertex_prog.c
index b87c443fecf..ec0a5e3896d 100644
--- a/src/mesa/main/ffvertex_prog.c
+++ b/src/mesa/main/ffvertex_prog.c
@@ -180,12 +180,12 @@ static GLboolean check_active_shininess( GLcontext *ctx,
-static struct state_key *make_state_key( GLcontext *ctx )
+static void make_state_key( GLcontext *ctx, struct state_key *key )
{
const struct gl_fragment_program *fp;
- struct state_key *key = CALLOC_STRUCT(state_key);
GLuint i;
+ memset(key, 0, sizeof(struct state_key));
fp = ctx->FragmentProgram._Current;
/* This now relies on texenvprogram.c being active:
@@ -304,8 +304,6 @@ static struct state_key *make_state_key( GLcontext *ctx )
texUnit->GenModeQ );
}
}
-
- return key;
}
@@ -738,11 +736,16 @@ static void emit_normalize_vec3( struct tnl_program *p,
struct ureg dest,
struct ureg src )
{
+#if 0
+ /* XXX use this when drivers are ready for NRM3 */
+ emit_op1(p, OPCODE_NRM3, dest, WRITEMASK_XYZ, src);
+#else
struct ureg tmp = get_temp(p);
emit_op2(p, OPCODE_DP3, tmp, WRITEMASK_X, src, src);
emit_op1(p, OPCODE_RSQ, tmp, WRITEMASK_X, tmp);
emit_op2(p, OPCODE_MUL, dest, 0, src, swizzle1(tmp, X));
release_temp(p, tmp);
+#endif
}
static void emit_passthrough( struct tnl_program *p,
@@ -1726,16 +1729,16 @@ struct gl_vertex_program *
_mesa_get_fixed_func_vertex_program(GLcontext *ctx)
{
struct gl_vertex_program *prog;
- struct state_key *key;
+ struct state_key key;
/* Grab all the relevent state and put it in a single structure:
*/
- key = make_state_key(ctx);
+ make_state_key(ctx, &key);
/* Look for an already-prepared program for this state:
*/
prog = (struct gl_vertex_program *)
- _mesa_search_program_cache(ctx->VertexProgram.Cache, key, sizeof(*key));
+ _mesa_search_program_cache(ctx->VertexProgram.Cache, &key, sizeof(key));
if (!prog) {
/* OK, we'll have to build a new one */
@@ -1747,7 +1750,7 @@ _mesa_get_fixed_func_vertex_program(GLcontext *ctx)
if (!prog)
return NULL;
- create_new_program( key, prog,
+ create_new_program( &key, prog,
ctx->Const.VertexProgram.MaxTemps );
#if 0
@@ -1756,10 +1759,8 @@ _mesa_get_fixed_func_vertex_program(GLcontext *ctx)
&prog->Base );
#endif
_mesa_program_cache_insert(ctx, ctx->VertexProgram.Cache,
- key, sizeof(*key), &prog->Base);
+ &key, sizeof(key), &prog->Base);
}
- _mesa_free(key);
-
return prog;
}
diff --git a/src/mesa/main/framebuffer.c b/src/mesa/main/framebuffer.c
index 494743f1349..af78363ad3a 100644
--- a/src/mesa/main/framebuffer.c
+++ b/src/mesa/main/framebuffer.c
@@ -32,6 +32,7 @@
#include "glheader.h"
#include "imports.h"
+#include "buffers.h"
#include "context.h"
#include "depthstencil.h"
#include "mtypes.h"
@@ -108,8 +109,9 @@ _mesa_new_framebuffer(GLcontext *ctx, GLuint name)
if (fb) {
fb->Name = name;
fb->RefCount = 1;
+ fb->_NumColorDrawBuffers = 1;
fb->ColorDrawBuffer[0] = GL_COLOR_ATTACHMENT0_EXT;
- fb->_ColorDrawBufferMask[0] = BUFFER_BIT_COLOR0;
+ fb->_ColorDrawBufferIndexes[0] = BUFFER_COLOR0;
fb->ColorReadBuffer = GL_COLOR_ATTACHMENT0_EXT;
fb->_ColorReadBufferIndex = BUFFER_COLOR0;
fb->Delete = _mesa_destroy_framebuffer;
@@ -138,16 +140,18 @@ _mesa_initialize_framebuffer(struct gl_framebuffer *fb, const GLvisual *visual)
/* save the visual */
fb->Visual = *visual;
- /* Init glRead/DrawBuffer state */
+ /* Init read/draw renderbuffer state */
if (visual->doubleBufferMode) {
+ fb->_NumColorDrawBuffers = 1;
fb->ColorDrawBuffer[0] = GL_BACK;
- fb->_ColorDrawBufferMask[0] = BUFFER_BIT_BACK_LEFT;
+ fb->_ColorDrawBufferIndexes[0] = BUFFER_BACK_LEFT;
fb->ColorReadBuffer = GL_BACK;
fb->_ColorReadBufferIndex = BUFFER_BACK_LEFT;
}
else {
+ fb->_NumColorDrawBuffers = 1;
fb->ColorDrawBuffer[0] = GL_FRONT;
- fb->_ColorDrawBufferMask[0] = BUFFER_BIT_FRONT_LEFT;
+ fb->_ColorDrawBufferIndexes[0] = BUFFER_FRONT_LEFT;
fb->ColorReadBuffer = GL_FRONT;
fb->_ColorReadBufferIndex = BUFFER_FRONT_LEFT;
}
@@ -660,8 +664,53 @@ _mesa_update_stencil_buffer(GLcontext *ctx,
}
+/*
+ * Example DrawBuffers scenarios:
+ *
+ * 1. glDrawBuffer(GL_FRONT_AND_BACK), fixed-func or shader writes to
+ * "gl_FragColor" or program writes to the "result.color" register:
+ *
+ * fragment color output renderbuffer
+ * --------------------- ---------------
+ * color[0] Front, Back
+ *
+ *
+ * 2. glDrawBuffers(3, [GL_FRONT, GL_AUX0, GL_AUX1]), shader writes to
+ * gl_FragData[i] or program writes to result.color[i] registers:
+ *
+ * fragment color output renderbuffer
+ * --------------------- ---------------
+ * color[0] Front
+ * color[1] Aux0
+ * color[3] Aux1
+ *
+ *
+ * 3. glDrawBuffers(3, [GL_FRONT, GL_AUX0, GL_AUX1]) and shader writes to
+ * gl_FragColor, or fixed function:
+ *
+ * fragment color output renderbuffer
+ * --------------------- ---------------
+ * color[0] Front, Aux0, Aux1
+ *
+ *
+ * In either case, the list of renderbuffers is stored in the
+ * framebuffer->_ColorDrawBuffers[] array and
+ * framebuffer->_NumColorDrawBuffers indicates the number of buffers.
+ * The renderer (like swrast) has to look at the current fragment shader
+ * to see if it writes to gl_FragColor vs. gl_FragData[i] to determine
+ * how to map color outputs to renderbuffers.
+ *
+ * Note that these two calls are equivalent (for fixed function fragment
+ * shading anyway):
+ * a) glDrawBuffer(GL_FRONT_AND_BACK); (assuming non-stereo framebuffer)
+ * b) glDrawBuffers(2, [GL_FRONT_LEFT, GL_BACK_LEFT]);
+ */
+
+
+
+
/**
- * Update the list of color drawing renderbuffer pointers.
+ * Update the (derived) list of color drawing renderbuffer pointers.
* Later, when we're rendering we'll loop from 0 to _NumColorDrawBuffers
* writing colors.
*/
@@ -670,42 +719,23 @@ update_color_draw_buffers(GLcontext *ctx, struct gl_framebuffer *fb)
{
GLuint output;
- /*
- * Fragment programs can write to multiple colorbuffers with
- * the GL_ARB_draw_buffers extension.
- */
- for (output = 0; output < ctx->Const.MaxDrawBuffers; output++) {
- GLbitfield bufferMask = fb->_ColorDrawBufferMask[output];
- GLuint count = 0;
- GLuint i;
- if (!fb->DeletePending) {
- /* We need the inner loop here because glDrawBuffer(GL_FRONT_AND_BACK)
- * can specify writing to two or four color buffers (for example).
- */
- for (i = 0; bufferMask && i < BUFFER_COUNT; i++) {
- const GLuint bufferBit = 1 << i;
- if (bufferBit & bufferMask) {
- struct gl_renderbuffer *rb = fb->Attachment[i].Renderbuffer;
- if (rb && rb->Width > 0 && rb->Height > 0) {
- fb->_ColorDrawBuffers[output][count] = rb;
- count++;
- }
- else {
- /*
- _mesa_warning(ctx, "DrawBuffer names a missing buffer!\n");
- */
- }
- bufferMask &= ~bufferBit;
- }
- }
+ /* set 0th buffer to NULL now in case _NumColorDrawBuffers is zero */
+ fb->_ColorDrawBuffers[0] = NULL;
+
+ for (output = 0; output < fb->_NumColorDrawBuffers; output++) {
+ GLint buf = fb->_ColorDrawBufferIndexes[output];
+ if (buf >= 0) {
+ fb->_ColorDrawBuffers[output] = fb->Attachment[buf].Renderbuffer;
+ }
+ else {
+ fb->_ColorDrawBuffers[output] = NULL;
}
- fb->_NumColorDrawBuffers[output] = count;
}
}
/**
- * Update the color read renderbuffer pointer.
+ * Update the (derived) color read renderbuffer pointer.
* Unlike the DrawBuffer, we can only read from one (or zero) color buffers.
*/
static void
@@ -727,19 +757,51 @@ update_color_read_buffer(GLcontext *ctx, struct gl_framebuffer *fb)
}
+/**
+ * Update a gl_framebuffer's derived state.
+ *
+ * Specifically, update these framebuffer fields:
+ * _ColorDrawBuffers
+ * _NumColorDrawBuffers
+ * _ColorReadBuffer
+ * _DepthBuffer
+ * _StencilBuffer
+ *
+ * If the framebuffer is user-created, make sure it's complete.
+ *
+ * The following functions (at least) can effect framebuffer state:
+ * glReadBuffer, glDrawBuffer, glDrawBuffersARB, glFramebufferRenderbufferEXT,
+ * glRenderbufferStorageEXT.
+ */
static void
update_framebuffer(GLcontext *ctx, struct gl_framebuffer *fb)
{
- /* Completeness only matters for user-created framebuffers */
- if (fb->Name != 0) {
- /* XXX: EXT_framebuffer_blit:
- framebuffer must still be complete wrt read/draw? */
+ if (fb->Name == 0) {
+ /* This is a window-system framebuffer */
+ /* Need to update the FB's GL_DRAW_BUFFER state to match the
+ * context state (GL_READ_BUFFER too).
+ */
+ if (fb->ColorDrawBuffer[0] != ctx->Color.DrawBuffer[0]) {
+ _mesa_drawbuffers(ctx, ctx->Const.MaxDrawBuffers,
+ ctx->Color.DrawBuffer, NULL);
+ }
+ if (fb->ColorReadBuffer != ctx->Pixel.ReadBuffer) {
+
+ }
+ }
+ else {
+ /* This is a user-created framebuffer.
+ * Completeness only matters for user-created framebuffers.
+ */
_mesa_test_framebuffer_completeness(ctx, fb);
_mesa_update_framebuffer_visual(fb);
}
- /* update_color_draw/read_buffers not needed for
- read/draw only fb, but shouldn't hurt ??? */
+ /* Strictly speaking, we don't need to update the draw-state
+ * if this FB is bound as ctx->ReadBuffer (and conversely, the
+ * read-state if this FB is bound as ctx->DrawBuffer), but no
+ * harm.
+ */
update_color_draw_buffers(ctx, fb);
update_color_read_buffer(ctx, fb);
_mesa_update_depth_buffer(ctx, fb, BUFFER_DEPTH);
@@ -748,28 +810,19 @@ update_framebuffer(GLcontext *ctx, struct gl_framebuffer *fb)
compute_depth_max(fb);
}
+
/**
* Update state related to the current draw/read framebuffers.
- * Specifically, update these framebuffer fields:
- * _ColorDrawBuffers
- * _NumColorDrawBuffers
- * _ColorReadBuffer
- * _DepthBuffer
- * _StencilBuffer
- * If the current framebuffer is user-created, make sure it's complete.
- * The following functions can effect this state: glReadBuffer,
- * glDrawBuffer, glDrawBuffersARB, glFramebufferRenderbufferEXT,
- * glRenderbufferStorageEXT.
*/
void
_mesa_update_framebuffer(GLcontext *ctx)
{
- struct gl_framebuffer *fb = ctx->DrawBuffer;
- struct gl_framebuffer *fbread = ctx->ReadBuffer;
+ struct gl_framebuffer *drawFb = ctx->DrawBuffer;
+ struct gl_framebuffer *readFb = ctx->ReadBuffer;
- update_framebuffer(ctx, fb);
- if (fbread != fb)
- update_framebuffer(ctx, fbread);
+ update_framebuffer(ctx, drawFb);
+ if (readFb != drawFb)
+ update_framebuffer(ctx, readFb);
}
diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c
index 4674c44a3f2..f72aa6a2882 100644
--- a/src/mesa/main/get.c
+++ b/src/mesa/main/get.c
@@ -1092,7 +1092,7 @@ _mesa_GetBooleanv( GLenum pname, GLboolean *params )
GLuint i, n = _mesa_get_compressed_formats(ctx, formats, GL_FALSE);
ASSERT(n <= 100);
for (i = 0; i < n; i++)
- params[i] = ENUM_TO_INT(formats[i]);
+ params[i] = ENUM_TO_BOOLEAN(formats[i]);
}
break;
case GL_ARRAY_ELEMENT_LOCK_FIRST_EXT:
@@ -1873,6 +1873,10 @@ _mesa_GetBooleanv( GLenum pname, GLboolean *params )
CHECK_EXT1(EXT_framebuffer_object, "GetBooleanv");
params[0] = INT_TO_BOOLEAN(ctx->Const.MaxRenderbufferSize);
break;
+ case GL_READ_FRAMEBUFFER_BINDING_EXT:
+ CHECK_EXT1(EXT_framebuffer_blit, "GetBooleanv");
+ params[0] = INT_TO_BOOLEAN(ctx->ReadBuffer->Name);
+ break;
case GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB:
CHECK_EXT1(ARB_fragment_shader, "GetBooleanv");
params[0] = INT_TO_BOOLEAN(ctx->Const.FragmentProgram.MaxUniformComponents);
@@ -2936,7 +2940,7 @@ _mesa_GetFloatv( GLenum pname, GLfloat *params )
GLuint i, n = _mesa_get_compressed_formats(ctx, formats, GL_FALSE);
ASSERT(n <= 100);
for (i = 0; i < n; i++)
- params[i] = ENUM_TO_INT(formats[i]);
+ params[i] = ENUM_TO_FLOAT(formats[i]);
}
break;
case GL_ARRAY_ELEMENT_LOCK_FIRST_EXT:
@@ -3717,6 +3721,10 @@ _mesa_GetFloatv( GLenum pname, GLfloat *params )
CHECK_EXT1(EXT_framebuffer_object, "GetFloatv");
params[0] = (GLfloat)(ctx->Const.MaxRenderbufferSize);
break;
+ case GL_READ_FRAMEBUFFER_BINDING_EXT:
+ CHECK_EXT1(EXT_framebuffer_blit, "GetFloatv");
+ params[0] = (GLfloat)(ctx->ReadBuffer->Name);
+ break;
case GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB:
CHECK_EXT1(ARB_fragment_shader, "GetFloatv");
params[0] = (GLfloat)(ctx->Const.FragmentProgram.MaxUniformComponents);
@@ -3977,7 +3985,7 @@ _mesa_GetIntegerv( GLenum pname, GLint *params )
params[0] = ctx->DrawBuffer->Visual.depthBits;
break;
case GL_DEPTH_CLEAR_VALUE:
- params[0] = IROUND(ctx->Depth.Clear);
+ params[0] = FLOAT_TO_INT(ctx->Depth.Clear);
break;
case GL_DEPTH_FUNC:
params[0] = ENUM_TO_INT(ctx->Depth.Func);
@@ -5561,6 +5569,10 @@ _mesa_GetIntegerv( GLenum pname, GLint *params )
CHECK_EXT1(EXT_framebuffer_object, "GetIntegerv");
params[0] = ctx->Const.MaxRenderbufferSize;
break;
+ case GL_READ_FRAMEBUFFER_BINDING_EXT:
+ CHECK_EXT1(EXT_framebuffer_blit, "GetIntegerv");
+ params[0] = ctx->ReadBuffer->Name;
+ break;
case GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB:
CHECK_EXT1(ARB_fragment_shader, "GetIntegerv");
params[0] = ctx->Const.FragmentProgram.MaxUniformComponents;
diff --git a/src/mesa/main/get_gen.py b/src/mesa/main/get_gen.py
index 653deefa726..152e378b4fe 100644
--- a/src/mesa/main/get_gen.py
+++ b/src/mesa/main/get_gen.py
@@ -50,7 +50,8 @@ TypeStrings = {
# - the GL state name, such as GL_CURRENT_COLOR
# - the state datatype, one of GLint, GLfloat, GLboolean or GLenum
# - list of code fragments to get the state, such as ["ctx->Foo.Bar"]
-# - optional extra code or empty string
+# - optional extra code or empty string. If present, "CONVERSION" will be
+# replaced by ENUM_TO_FLOAT, INT_TO_FLOAT, etc.
# - optional extensions to check, or None
#
StateVars = [
@@ -179,7 +180,7 @@ StateVars = [
( "GL_DEPTH_BIAS", GLfloat, ["ctx->Pixel.DepthBias"], "", None ),
( "GL_DEPTH_BITS", GLint, ["ctx->DrawBuffer->Visual.depthBits"],
"", None ),
- ( "GL_DEPTH_CLEAR_VALUE", GLfloat, ["ctx->Depth.Clear"], "", None ),
+ ( "GL_DEPTH_CLEAR_VALUE", GLfloatN, ["ctx->Depth.Clear"], "", None ),
( "GL_DEPTH_FUNC", GLenum, ["ctx->Depth.Func"], "", None ),
( "GL_DEPTH_RANGE", GLfloatN,
[ "ctx->Viewport.Near", "ctx->Viewport.Far" ], "", None ),
@@ -532,7 +533,7 @@ StateVars = [
GLuint i, n = _mesa_get_compressed_formats(ctx, formats, GL_FALSE);
ASSERT(n <= 100);
for (i = 0; i < n; i++)
- params[i] = ENUM_TO_INT(formats[i]);""",
+ params[i] = CONVERSION(formats[i]);""",
["ARB_texture_compression"] ),
# GL_EXT_compiled_vertex_array
@@ -980,6 +981,11 @@ StateVars = [
["ctx->Const.MaxRenderbufferSize"], "",
["EXT_framebuffer_object"] ),
+ # GL_EXT_framebuffer_blit
+ # NOTE: GL_DRAW_FRAMEBUFFER_BINDING_EXT == GL_FRAMEBUFFER_BINDING_EXT
+ ( "GL_READ_FRAMEBUFFER_BINDING_EXT", GLint, ["ctx->ReadBuffer->Name"], "",
+ ["EXT_framebuffer_blit"] ),
+
# GL_ARB_fragment_shader
( "GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB", GLint,
["ctx->Const.FragmentProgram.MaxUniformComponents"], "",
@@ -1078,10 +1084,11 @@ def EmitGetFunction(stateVars, returnType):
assert len(extensions) == 4
print (' CHECK_EXT4(%s, %s, %s, %s, "%s");' %
(extensions[0], extensions[1], extensions[2], extensions[3], function))
+ conversion = ConversionFunc(varType, returnType)
if optionalCode:
+ optionalCode = string.replace(optionalCode, "CONVERSION", conversion);
print " {"
print " " + optionalCode
- conversion = ConversionFunc(varType, returnType)
n = len(state)
for i in range(n):
if conversion:
diff --git a/src/mesa/main/getstring.c b/src/mesa/main/getstring.c
index 89daa0e21db..94bf5de1e8b 100644
--- a/src/mesa/main/getstring.c
+++ b/src/mesa/main/getstring.c
@@ -1,8 +1,8 @@
/*
* Mesa 3-D graphics library
- * Version: 6.5.2
+ * Version: 7.1
*
- * Copyright (C) 1999-2006 Brian Paul All Rights Reserved.
+ * Copyright (C) 1999-2008 Brian Paul All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
@@ -25,7 +25,6 @@
#include "glheader.h"
-#include "colormac.h"
#include "context.h"
#include "get.h"
#include "version.h"
@@ -85,7 +84,7 @@ compute_version(const GLcontext *ctx)
ctx->Extensions.ARB_texture_non_power_of_two &&
ctx->Extensions.EXT_blend_equation_separate);
const GLboolean ver_2_1 = (ver_2_0 &&
- ctx->Extensions.ARB_shading_language_120 &&
+ /*ctx->Extensions.ARB_shading_language_120 &&*/
ctx->Extensions.EXT_pixel_buffer_object &&
ctx->Extensions.EXT_texture_sRGB);
if (ver_2_1)
@@ -121,12 +120,6 @@ _mesa_GetString( GLenum name )
static const char *vendor = "Brian Paul";
static const char *renderer = "Mesa";
-#if FEATURE_ARB_shading_language_120_foo /* support not complete! */
- static const char *sl_version = "1.20";
-#elif FEATURE_ARB_shading_language_100
- static const char *sl_version = "1.10";
-#endif
-
if (!ctx)
return NULL;
@@ -154,8 +147,10 @@ _mesa_GetString( GLenum name )
return (const GLubyte *) ctx->Extensions.String;
#if FEATURE_ARB_shading_language_100
case GL_SHADING_LANGUAGE_VERSION_ARB:
- if (ctx->Extensions.ARB_shading_language_100)
- return (const GLubyte *) sl_version;
+ if (ctx->Extensions.ARB_shading_language_120)
+ return (const GLubyte *) "1.20";
+ else if (ctx->Extensions.ARB_shading_language_100)
+ return (const GLubyte *) "1.10";
goto error;
#endif
#if FEATURE_NV_fragment_program || FEATURE_ARB_fragment_program || \
diff --git a/src/mesa/main/glheader.h b/src/mesa/main/glheader.h
index f0f97c218c2..d69c7bbb21d 100644
--- a/src/mesa/main/glheader.h
+++ b/src/mesa/main/glheader.h
@@ -46,11 +46,6 @@
#ifndef GLHEADER_H
#define GLHEADER_H
-/* This allows Mesa to be integrated into XFree86 */
-#ifdef HAVE_DIX_CONFIG_H
-#include "dix-config.h"
-#endif
-
#include <assert.h>
#include <ctype.h>
#if defined(__alpha__) && defined(CCPML)
@@ -98,6 +93,21 @@
# include <stdint.h>
#endif
+
+/* Sun compilers define __i386 instead of the gcc-style __i386__ */
+#ifdef __SUNPRO_C
+# if !defined(__i386__) && defined(__i386)
+# define __i386__
+# elif !defined(__amd64__) && defined(__amd64)
+# define __amd64__
+# elif !defined(__sparc__) && defined(__sparc)
+# define __sparc__
+# endif
+# if !defined(__volatile)
+# define __volatile volatile
+# endif
+#endif
+
#if defined(_WIN32) && !defined(__WIN32__) && !defined(__CYGWIN__) && !defined(BUILD_FOR_SNAP)
# define __WIN32__
# define finite _finite
@@ -236,6 +246,12 @@
# define INLINE inline
#elif defined(__WATCOMC__) && (__WATCOMC__ >= 1100)
# define INLINE __inline
+#elif defined(__SUNPRO_C) && defined(__C99FEATURES__)
+# define INLINE inline
+# define __inline inline
+# define __inline__ inline
+#elif (__STDC_VERSION__ >= 199901L) /* C99 */
+# define INLINE inline
#else
# define INLINE
#endif
@@ -275,7 +291,7 @@
#endif
-#if !defined __GNUC__ || __GNUC__ < 3
+#if (!defined(__GNUC__) || __GNUC__ < 3) && (!defined(__IBMC__) || __IBMC__ < 900)
# define __builtin_expect(x, y) x
#endif
@@ -283,12 +299,17 @@
* If we're not using gcc, define __FUNCTION__ as a cpp symbol here.
* Don't define it if using a newer Windows compiler.
*/
-#if defined(__VMS)
-# define __FUNCTION__ "VMS$NL:"
-#elif __STDC_VERSION__ < 199901L
-# if ((!defined __GNUC__) || (__GNUC__ < 2)) && (!defined __xlC__) && \
+#ifndef __FUNCTION__
+# if defined(__VMS)
+# define __FUNCTION__ "VMS$NL:"
+# elif ((!defined __GNUC__) || (__GNUC__ < 2)) && (!defined __xlC__) && \
(!defined(_MSC_VER) || _MSC_VER < 1300)
-# define __FUNCTION__ "<unknown>"
+# if (__STDC_VERSION__ >= 199901L) /* C99 */ || \
+ (defined(__SUNPRO_C) && defined(__C99FEATURES__))
+# define __FUNCTION__ __func__
+# else
+# define __FUNCTION__ "<unknown>"
+# endif
# endif
#endif
diff --git a/src/mesa/main/histogram.c b/src/mesa/main/histogram.c
index 77c458d540c..905c1ad8301 100644
--- a/src/mesa/main/histogram.c
+++ b/src/mesa/main/histogram.c
@@ -955,7 +955,7 @@ _mesa_Histogram(GLenum target, GLsizei width, GLenum internalFormat, GLboolean s
}
}
- if (width != 0 && _mesa_bitcount(width) != 1) {
+ if (width != 0 && !_mesa_is_pow_two(width)) {
if (target == GL_PROXY_HISTOGRAM) {
error = GL_TRUE;
}
diff --git a/src/mesa/main/image.c b/src/mesa/main/image.c
index 52c4999e16e..d3282d42e99 100644
--- a/src/mesa/main/image.c
+++ b/src/mesa/main/image.c
@@ -849,7 +849,7 @@ _mesa_unpack_bitmap( GLint width, GLint height, const GLubyte *pixels,
return NULL;
}
- if (packing->SkipPixels == 0) {
+ if ((packing->SkipPixels & 7) == 0) {
_mesa_memcpy( dst, src, width_in_bytes );
if (packing->LsbFirst) {
flip_bytes( dst, width_in_bytes );
@@ -941,7 +941,7 @@ _mesa_pack_bitmap( GLint width, GLint height, const GLubyte *source,
if (!dst)
return;
- if (packing->SkipPixels == 0) {
+ if ((packing->SkipPixels & 7) == 0) {
_mesa_memcpy( dst, src, width_in_bytes );
if (packing->LsbFirst) {
flip_bytes( dst, width_in_bytes );
@@ -960,20 +960,20 @@ _mesa_pack_bitmap( GLint width, GLint height, const GLubyte *source,
if (*s & srcMask) {
*d |= dstMask;
}
- if (srcMask == 128) {
- srcMask = 1;
+ if (srcMask == 1) {
+ srcMask = 128;
s++;
}
else {
- srcMask = srcMask << 1;
+ srcMask = srcMask >> 1;
}
- if (dstMask == 1) {
- dstMask = 128;
+ if (dstMask == 128) {
+ dstMask = 1;
d++;
*d = 0;
}
else {
- dstMask = dstMask >> 1;
+ dstMask = dstMask << 1;
}
}
}
@@ -1689,7 +1689,7 @@ _mesa_pack_rgba_span_float(GLcontext *ctx, GLuint n, GLfloat rgba[][4],
if (dstFormat == GL_LUMINANCE || dstFormat == GL_LUMINANCE_ALPHA) {
/* compute luminance values */
- if (dstType != GL_FLOAT || ctx->Color.ClampReadColor == GL_TRUE) {
+ if (transferOps & IMAGE_CLAMP_BIT) {
for (i = 0; i < n; i++) {
GLfloat sum = rgba[i][RCOMP] + rgba[i][GCOMP] + rgba[i][BCOMP];
luminance[i] = CLAMP(sum, 0.0F, 1.0F);
@@ -4214,7 +4214,7 @@ _mesa_pack_stencil_span( const GLcontext *ctx, GLuint n,
switch (dstType) {
case GL_UNSIGNED_BYTE:
- if (sizeof(GLstencil) == 8) {
+ if (sizeof(GLstencil) == 1) {
_mesa_memcpy( dest, source, n );
}
else {
@@ -4226,14 +4226,11 @@ _mesa_pack_stencil_span( const GLcontext *ctx, GLuint n,
}
break;
case GL_BYTE:
- if (sizeof(GLstencil) == 8) {
- _mesa_memcpy( dest, source, n );
- }
- else {
+ {
GLbyte *dst = (GLbyte *) dest;
GLuint i;
for (i=0;i<n;i++) {
- dst[i] = (GLbyte) source[i];
+ dst[i] = (GLbyte) (source[i] & 0x7f);
}
}
break;
@@ -4278,7 +4275,7 @@ _mesa_pack_stencil_span( const GLcontext *ctx, GLuint n,
GLint *dst = (GLint *) dest;
GLuint i;
for (i=0;i<n;i++) {
- *dst++ = (GLint) source[i];
+ dst[i] = (GLint) source[i];
}
if (dstPacking->SwapBytes) {
_mesa_swap4( (GLuint *) dst, n );
diff --git a/src/mesa/main/imports.c b/src/mesa/main/imports.c
index 7231fa699cb..6cfd7ccc723 100644
--- a/src/mesa/main/imports.c
+++ b/src/mesa/main/imports.c
@@ -104,6 +104,8 @@ _mesa_align_malloc(size_t bytes, unsigned long alignment)
(void) posix_memalign(& mem, alignment, bytes);
return mem;
+#elif defined(_WIN32) && defined(_MSC_VER)
+ return _aligned_malloc(bytes, alignment);
#else
uintptr_t ptr, buf;
@@ -144,6 +146,15 @@ _mesa_align_calloc(size_t bytes, unsigned long alignment)
}
return mem;
+#elif defined(_WIN32) && defined(_MSC_VER)
+ void *mem;
+
+ mem = _aligned_malloc(bytes, alignment);
+ if (mem != NULL) {
+ (void) memset(mem, 0, bytes);
+ }
+
+ return mem;
#else
uintptr_t ptr, buf;
@@ -180,6 +191,8 @@ _mesa_align_free(void *ptr)
{
#if defined(HAVE_POSIX_MEMALIGN)
free(ptr);
+#elif defined(_WIN32) && defined(_MSC_VER)
+ _aligned_free(ptr);
#else
void **cubbyHole = (void **) ((char *) ptr - sizeof(void *));
void *realAddr = *cubbyHole;
@@ -194,6 +207,10 @@ void *
_mesa_align_realloc(void *oldBuffer, size_t oldSize, size_t newSize,
unsigned long alignment)
{
+#if defined(_WIN32) && defined(_MSC_VER)
+ (void) oldSize;
+ return _aligned_realloc(oldBuffer, newSize, alignment);
+#else
const size_t copySize = (oldSize < newSize) ? oldSize : newSize;
void *newBuf = _mesa_align_malloc(newSize, alignment);
if (newBuf && oldBuffer && copySize > 0) {
@@ -202,6 +219,7 @@ _mesa_align_realloc(void *oldBuffer, size_t oldSize, size_t newSize,
if (oldBuffer)
_mesa_align_free(oldBuffer);
return newBuf;
+#endif
}
@@ -541,25 +559,28 @@ _mesa_pow(double x, double y)
int
_mesa_ffs(int32_t i)
{
-#if (defined(_WIN32) && !defined(__MINGW32__) ) || defined(__IBMC__) || defined(__IBMCPP__)
- register int32_t bit = 1;
- if ((i & 0xffff) == 0) {
- bit += 16;
- i >>= 16;
- }
- if ((i & 0xff) == 0) {
- bit += 8;
- i >>= 8;
- }
- if ((i & 0xf) == 0) {
- bit += 4;
- i >>= 4;
- }
- if ((i & 0x3) == 0) {
- bit += 2;
- i >>= 2;
+#if (defined(_WIN32) ) || defined(__IBMC__) || defined(__IBMCPP__)
+ register int bit = 0;
+ if (i != 0) {
+ if ((i & 0xffff) == 0) {
+ bit += 16;
+ i >>= 16;
+ }
+ if ((i & 0xff) == 0) {
+ bit += 8;
+ i >>= 8;
+ }
+ if ((i & 0xf) == 0) {
+ bit += 4;
+ i >>= 4;
+ }
+ while ((i & 1) == 0) {
+ bit++;
+ i >>= 1;
+ }
+ bit++;
}
- return (i) ? (bit + ((i + 1) & 0x01)) : 0;
+ return bit;
#else
return ffs(i);
#endif
diff --git a/src/mesa/main/imports.h b/src/mesa/main/imports.h
index d91a1366b07..bab00420710 100644
--- a/src/mesa/main/imports.h
+++ b/src/mesa/main/imports.h
@@ -1,8 +1,8 @@
/*
* Mesa 3-D graphics library
- * Version: 6.5.2
+ * Version: 7.1
*
- * Copyright (C) 1999-2006 Brian Paul All Rights Reserved.
+ * Copyright (C) 1999-2008 Brian Paul All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
@@ -159,12 +159,13 @@ typedef union { GLfloat f; GLint i; } fi_type;
***/
#if defined(__i386__) || defined(__386__) || defined(__sparc__) || \
defined(__s390x__) || defined(__powerpc__) || \
- defined(__amd64__) || \
+ defined(__x86_64__) || \
defined(ia64) || defined(__ia64__) || \
defined(__hppa__) || defined(hpux) || \
defined(__mips) || defined(_MIPS_ARCH) || \
defined(__arm__) || \
defined(__sh__) || defined(__m32r__) || \
+ (defined(__sun) && defined(_IEEE_754)) || \
(defined(__alpha__) && (defined(__IEEE_FLOAT) || !defined(VMS)))
#define USE_IEEE
#define IEEE_ONE 0x3f800000
@@ -461,6 +462,16 @@ static INLINE int iceil(float f)
#endif
+/**
+ * Is x a power of two?
+ */
+static INLINE int
+_mesa_is_pow_two(int x)
+{
+ return !(x & (x - 1));
+}
+
+
/***
*** UNCLAMPED_FLOAT_TO_UBYTE: clamp float to [0,1] and map to ubyte in [0,255]
*** CLAMPED_FLOAT_TO_UBYTE: map float known to be in [0,1] to ubyte in [0,255]
diff --git a/src/mesa/main/light.c b/src/mesa/main/light.c
index f37d1f216fc..d4db960f1b9 100644
--- a/src/mesa/main/light.c
+++ b/src/mesa/main/light.c
@@ -53,6 +53,11 @@ _mesa_ShadeModel( GLenum mode )
FLUSH_VERTICES(ctx, _NEW_LIGHT);
ctx->Light.ShadeModel = mode;
+ if (mode == GL_FLAT)
+ ctx->_TriangleCaps |= DD_FLATSHADE;
+ else
+ ctx->_TriangleCaps &= ~DD_FLATSHADE;
+
if (ctx->Driver.ShadeModel)
ctx->Driver.ShadeModel( ctx, mode );
}
@@ -179,6 +184,7 @@ _mesa_Lightfv( GLenum light, GLenum pname, const GLfloat *params )
GET_CURRENT_CONTEXT(ctx);
GLint i = (GLint) (light - GL_LIGHT0);
GLfloat temp[4];
+ ASSERT_OUTSIDE_BEGIN_END(ctx);
if (i < 0 || i >= (GLint) ctx->Const.MaxLights) {
_mesa_error( ctx, GL_INVALID_ENUM, "glLight(light=0x%x)", light );
@@ -441,6 +447,10 @@ _mesa_LightModelfv( GLenum pname, const GLfloat *params )
return;
FLUSH_VERTICES(ctx, _NEW_LIGHT);
ctx->Light.Model.TwoSide = newbool;
+ if (ctx->Light.Enabled && ctx->Light.Model.TwoSide)
+ ctx->_TriangleCaps |= DD_TRI_LIGHT_TWOSIDE;
+ else
+ ctx->_TriangleCaps &= ~DD_TRI_LIGHT_TWOSIDE;
break;
case GL_LIGHT_MODEL_COLOR_CONTROL:
if (params[0] == (GLfloat) GL_SINGLE_COLOR)
diff --git a/src/mesa/main/lines.c b/src/mesa/main/lines.c
index 0c2dbf915a1..81d0d33abb4 100644
--- a/src/mesa/main/lines.c
+++ b/src/mesa/main/lines.c
@@ -56,6 +56,11 @@ _mesa_LineWidth( GLfloat width )
FLUSH_VERTICES(ctx, _NEW_LINE);
ctx->Line.Width = width;
+ if (width != 1.0F)
+ ctx->_TriangleCaps |= DD_LINE_WIDTH;
+ else
+ ctx->_TriangleCaps &= ~DD_LINE_WIDTH;
+
if (ctx->Driver.LineWidth)
ctx->Driver.LineWidth(ctx, width);
}
diff --git a/src/mesa/main/mfeatures.h b/src/mesa/main/mfeatures.h
index 487493f88e1..3819da3d680 100644
--- a/src/mesa/main/mfeatures.h
+++ b/src/mesa/main/mfeatures.h
@@ -44,7 +44,6 @@
#define FEATURE_dlist _HAVE_FULL_GL
#define FEATURE_draw_read_buffer _HAVE_FULL_GL
#define FEATURE_drawpix _HAVE_FULL_GL
-#define FEATURE_es2_glsl 0
#define FEATURE_evaluators _HAVE_FULL_GL
#define FEATURE_feedback _HAVE_FULL_GL
#define FEATURE_fixedpt 0
@@ -56,6 +55,8 @@
#define FEATURE_texture_s3tc _HAVE_FULL_GL
#define FEATURE_userclip _HAVE_FULL_GL
#define FEATURE_vertex_array_byte 0
+#define FEATURE_windowpos _HAVE_FULL_GL
+#define FEATURE_es2_glsl 0
#define FEATURE_ARB_occlusion_query _HAVE_FULL_GL
#define FEATURE_ARB_fragment_program _HAVE_FULL_GL
diff --git a/src/mesa/main/mipmap.c b/src/mesa/main/mipmap.c
index 061378f3b77..13d90e78fe4 100644
--- a/src/mesa/main/mipmap.c
+++ b/src/mesa/main/mipmap.c
@@ -1,8 +1,8 @@
/*
* Mesa 3-D graphics library
- * Version: 6.5.2
+ * Version: 7.1
*
- * Copyright (C) 1999-2006 Brian Paul All Rights Reserved.
+ * Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
@@ -446,34 +446,27 @@ make_1d_mipmap(GLenum datatype, GLuint comps, GLint border,
}
-/**
- * Strides are in bytes. If zero, it'll be computed as width * bpp.
- */
static void
make_2d_mipmap(GLenum datatype, GLuint comps, GLint border,
GLint srcWidth, GLint srcHeight,
- GLint srcRowStride, const GLubyte *srcPtr,
+ const GLubyte *srcPtr, GLint srcRowStride,
GLint dstWidth, GLint dstHeight,
- GLint dstRowStride, GLubyte *dstPtr)
+ GLubyte *dstPtr, GLint dstRowStride)
{
const GLint bpt = bytes_per_pixel(datatype, comps);
const GLint srcWidthNB = srcWidth - 2 * border; /* sizes w/out border */
const GLint dstWidthNB = dstWidth - 2 * border;
const GLint dstHeightNB = dstHeight - 2 * border;
+ const GLint srcRowBytes = bpt * srcRowStride;
+ const GLint dstRowBytes = bpt * dstRowStride;
const GLubyte *srcA, *srcB;
GLubyte *dst;
GLint row;
- if (!srcRowStride)
- srcRowStride = bpt * srcWidth;
-
- if (!dstRowStride)
- dstRowStride = bpt * dstWidth;
-
/* Compute src and dst pointers, skipping any border */
srcA = srcPtr + border * ((srcWidth + 1) * bpt);
if (srcHeight > 1)
- srcB = srcA + srcRowStride;
+ srcB = srcA + srcRowBytes;
else
srcB = srcA;
dst = dstPtr + border * ((dstWidth + 1) * bpt);
@@ -481,9 +474,9 @@ make_2d_mipmap(GLenum datatype, GLuint comps, GLint border,
for (row = 0; row < dstHeightNB; row++) {
do_row(datatype, comps, srcWidthNB, srcA, srcB,
dstWidthNB, dst);
- srcA += 2 * srcRowStride;
- srcB += 2 * srcRowStride;
- dst += dstRowStride;
+ srcA += 2 * srcRowBytes;
+ srcB += 2 * srcRowBytes;
+ dst += dstRowBytes;
}
/* This is ugly but probably won't be used much */
@@ -541,11 +534,9 @@ make_2d_mipmap(GLenum datatype, GLuint comps, GLint border,
static void
make_3d_mipmap(GLenum datatype, GLuint comps, GLint border,
GLint srcWidth, GLint srcHeight, GLint srcDepth,
- GLint srcRowStride,
- const GLubyte *srcPtr,
+ const GLubyte *srcPtr, GLint srcRowStride,
GLint dstWidth, GLint dstHeight, GLint dstDepth,
- GLint dstRowStride,
- GLubyte *dstPtr)
+ GLubyte *dstPtr, GLint dstRowStride)
{
const GLint bpt = bytes_per_pixel(datatype, comps);
const GLint srcWidthNB = srcWidth - 2 * border; /* sizes w/out border */
@@ -556,6 +547,7 @@ make_3d_mipmap(GLenum datatype, GLuint comps, GLint border,
GLvoid *tmpRowA, *tmpRowB;
GLint img, row;
GLint bytesPerSrcImage, bytesPerDstImage;
+ GLint bytesPerSrcRow, bytesPerDstRow;
GLint srcImageOffset, srcRowOffset;
(void) srcDepthNB; /* silence warnings */
@@ -573,10 +565,8 @@ make_3d_mipmap(GLenum datatype, GLuint comps, GLint border,
bytesPerSrcImage = srcWidth * srcHeight * bpt;
bytesPerDstImage = dstWidth * dstHeight * bpt;
- if (!srcRowStride)
- srcRowStride = srcWidth * bpt;
- if (!dstRowStride)
- dstRowStride = dstWidth * bpt;
+ bytesPerSrcRow = srcWidth * bpt;
+ bytesPerDstRow = dstWidth * bpt;
/* Offset between adjacent src images to be averaged together */
srcImageOffset = (srcDepth == dstDepth) ? 0 : bytesPerSrcImage;
@@ -600,13 +590,13 @@ make_3d_mipmap(GLenum datatype, GLuint comps, GLint border,
for (img = 0; img < dstDepthNB; img++) {
/* first source image pointer, skipping border */
const GLubyte *imgSrcA = srcPtr
- + (bytesPerSrcImage + srcRowStride + border) * bpt * border
+ + (bytesPerSrcImage + bytesPerSrcRow + border) * bpt * border
+ img * (bytesPerSrcImage + srcImageOffset);
/* second source image pointer, skipping border */
const GLubyte *imgSrcB = imgSrcA + srcImageOffset;
/* address of the dest image, skipping border */
GLubyte *imgDst = dstPtr
- + (bytesPerDstImage + dstRowStride + border) * bpt * border
+ + (bytesPerDstImage + bytesPerDstRow + border) * bpt * border
+ img * bytesPerDstImage;
/* setup the four source row pointers and the dest row pointer */
@@ -627,11 +617,11 @@ make_3d_mipmap(GLenum datatype, GLuint comps, GLint border,
do_row(datatype, comps, srcWidthNB, tmpRowA, tmpRowB,
dstWidthNB, dstImgRow);
/* advance to next rows */
- srcImgARowA += srcRowStride + srcRowOffset;
- srcImgARowB += srcRowStride + srcRowOffset;
- srcImgBRowA += srcRowStride + srcRowOffset;
- srcImgBRowB += srcRowStride + srcRowOffset;
- dstImgRow += dstRowStride;
+ srcImgARowA += bytesPerSrcRow + srcRowOffset;
+ srcImgARowB += bytesPerSrcRow + srcRowOffset;
+ srcImgBRowA += bytesPerSrcRow + srcRowOffset;
+ srcImgBRowB += bytesPerSrcRow + srcRowOffset;
+ dstImgRow += bytesPerDstRow;
}
}
@@ -641,15 +631,13 @@ make_3d_mipmap(GLenum datatype, GLuint comps, GLint border,
/* Luckily we can leverage the make_2d_mipmap() function here! */
if (border > 0) {
/* do front border image */
- make_2d_mipmap(datatype, comps, 1, srcWidth, srcHeight, 0, srcPtr,
- dstWidth, dstHeight, 0, dstPtr);
+ make_2d_mipmap(datatype, comps, 1, srcWidth, srcHeight, srcPtr, srcRowStride,
+ dstWidth, dstHeight, dstPtr, dstRowStride);
/* do back border image */
make_2d_mipmap(datatype, comps, 1, srcWidth, srcHeight,
- 0,
- srcPtr + bytesPerSrcImage * (srcDepth - 1),
+ srcPtr + bytesPerSrcImage * (srcDepth - 1), srcRowStride,
dstWidth, dstHeight,
- 0,
- dstPtr + bytesPerDstImage * (dstDepth - 1));
+ dstPtr + bytesPerDstImage * (dstDepth - 1), dstRowStride);
/* do four remaining border edges that span the image slices */
if (srcDepth == dstDepth) {
/* just copy border pixels from src to dst */
@@ -664,9 +652,9 @@ make_3d_mipmap(GLenum datatype, GLuint comps, GLint border,
/* do border along [img][row=dstHeight-1][col=0] */
src = srcPtr + (img * 2 + 1) * bytesPerSrcImage
- + (srcHeight - 1) * srcRowStride;
+ + (srcHeight - 1) * bytesPerSrcRow;
dst = dstPtr + (img + 1) * bytesPerDstImage
- + (dstHeight - 1) * dstRowStride;
+ + (dstHeight - 1) * bytesPerDstRow;
MEMCPY(dst, src, bpt);
/* do border along [img][row=0][col=dstWidth-1] */
@@ -698,9 +686,9 @@ make_3d_mipmap(GLenum datatype, GLuint comps, GLint border,
/* do border along [img][row=dstHeight-1][col=0] */
src = srcPtr + (img * 2 + 1) * bytesPerSrcImage
- + (srcHeight - 1) * srcRowStride;
+ + (srcHeight - 1) * bytesPerSrcRow;
dst = dstPtr + (img + 1) * bytesPerDstImage
- + (dstHeight - 1) * dstRowStride;
+ + (dstHeight - 1) * bytesPerDstRow;
do_row(datatype, comps, 1, src, src + srcImageOffset, 1, dst);
/* do border along [img][row=0][col=dstWidth-1] */
@@ -724,15 +712,16 @@ make_3d_mipmap(GLenum datatype, GLuint comps, GLint border,
static void
make_1d_stack_mipmap(GLenum datatype, GLuint comps, GLint border,
- GLint srcWidth, const GLubyte *srcPtr,
- GLint dstWidth, GLint dstHeight, GLubyte *dstPtr)
+ GLint srcWidth, const GLubyte *srcPtr, GLuint srcRowStride,
+ GLint dstWidth, GLint dstHeight,
+ GLubyte *dstPtr, GLuint dstRowStride )
{
const GLint bpt = bytes_per_pixel(datatype, comps);
const GLint srcWidthNB = srcWidth - 2 * border; /* sizes w/out border */
const GLint dstWidthNB = dstWidth - 2 * border;
const GLint dstHeightNB = dstHeight - 2 * border;
- const GLint srcRowStride = bpt * srcWidth;
- const GLint dstRowStride = bpt * dstWidth;
+ const GLint srcRowBytes = bpt * srcRowStride;
+ const GLint dstRowBytes = bpt * dstRowStride;
const GLubyte *src;
GLubyte *dst;
GLint row;
@@ -744,8 +733,8 @@ make_1d_stack_mipmap(GLenum datatype, GLuint comps, GLint border,
for (row = 0; row < dstHeightNB; row++) {
do_row(datatype, comps, srcWidthNB, src, src,
dstWidthNB, dst);
- src += srcRowStride;
- dst += dstRowStride;
+ src += srcRowBytes;
+ dst += dstRowBytes;
}
if (border) {
@@ -767,32 +756,26 @@ make_1d_stack_mipmap(GLenum datatype, GLuint comps, GLint border,
static void
make_2d_stack_mipmap(GLenum datatype, GLuint comps, GLint border,
GLint srcWidth, GLint srcHeight,
- GLint srcRowStride,
- const GLubyte *srcPtr,
+ const GLubyte *srcPtr, GLint srcRowStride,
GLint dstWidth, GLint dstHeight, GLint dstDepth,
- GLint dstRowStride,
- GLubyte *dstPtr)
+ GLubyte *dstPtr, GLint dstRowStride)
{
const GLint bpt = bytes_per_pixel(datatype, comps);
const GLint srcWidthNB = srcWidth - 2 * border; /* sizes w/out border */
const GLint dstWidthNB = dstWidth - 2 * border;
const GLint dstHeightNB = dstHeight - 2 * border;
const GLint dstDepthNB = dstDepth - 2 * border;
+ const GLint srcRowBytes = bpt * srcRowStride;
+ const GLint dstRowBytes = bpt * dstRowStride;
const GLubyte *srcA, *srcB;
GLubyte *dst;
GLint layer;
GLint row;
- if (!srcRowStride)
- srcRowStride = bpt * srcWidth;
-
- if (!dstRowStride)
- dstRowStride = bpt * dstWidth;
-
/* Compute src and dst pointers, skipping any border */
srcA = srcPtr + border * ((srcWidth + 1) * bpt);
if (srcHeight > 1)
- srcB = srcA + srcRowStride;
+ srcB = srcA + srcRowBytes;
else
srcB = srcA;
dst = dstPtr + border * ((dstWidth + 1) * bpt);
@@ -801,9 +784,9 @@ make_2d_stack_mipmap(GLenum datatype, GLuint comps, GLint border,
for (row = 0; row < dstHeightNB; row++) {
do_row(datatype, comps, srcWidthNB, srcA, srcB,
dstWidthNB, dst);
- srcA += 2 * srcRowStride;
- srcB += 2 * srcRowStride;
- dst += dstRowStride;
+ srcA += 2 * srcRowBytes;
+ srcB += 2 * srcRowBytes;
+ dst += dstRowBytes;
}
/* This is ugly but probably won't be used much */
@@ -867,12 +850,15 @@ _mesa_generate_mipmap_level(GLenum target,
GLenum datatype, GLuint comps,
GLint border,
GLint srcWidth, GLint srcHeight, GLint srcDepth,
- GLint srcRowStride,
const GLubyte *srcData,
+ GLint srcRowStride,
GLint dstWidth, GLint dstHeight, GLint dstDepth,
- GLint dstRowStride,
- GLubyte *dstData)
+ GLubyte *dstData,
+ GLint dstRowStride)
{
+ /*
+ * We use simple 2x2 averaging to compute the next mipmap level.
+ */
switch (target) {
case GL_TEXTURE_1D:
make_1d_mipmap(datatype, comps, border,
@@ -887,29 +873,35 @@ _mesa_generate_mipmap_level(GLenum target,
case GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB:
case GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB:
make_2d_mipmap(datatype, comps, border,
- srcWidth, srcHeight, srcRowStride, srcData,
- dstWidth, dstHeight, dstRowStride, dstData);
+ srcWidth, srcHeight, srcData, srcRowStride,
+ dstWidth, dstHeight, dstData, dstRowStride);
break;
case GL_TEXTURE_3D:
make_3d_mipmap(datatype, comps, border,
- srcWidth, srcHeight, srcDepth, srcRowStride, srcData,
- dstWidth, dstHeight, dstDepth, dstRowStride, dstData);
+ srcWidth, srcHeight, srcDepth,
+ srcData, srcRowStride,
+ dstWidth, dstHeight, dstDepth,
+ dstData, dstRowStride);
break;
case GL_TEXTURE_1D_ARRAY_EXT:
make_1d_stack_mipmap(datatype, comps, border,
- srcWidth, srcData,
- dstWidth, dstHeight, dstData);
+ srcWidth, srcData, srcRowStride,
+ dstWidth, dstHeight,
+ dstData, dstRowStride);
break;
case GL_TEXTURE_2D_ARRAY_EXT:
make_2d_stack_mipmap(datatype, comps, border,
- srcWidth, srcHeight, srcRowStride, srcData,
- dstWidth, dstHeight, dstDepth, dstRowStride, dstData);
+ srcWidth, srcHeight,
+ srcData, srcRowStride,
+ dstWidth, dstHeight,
+ dstDepth, dstData, dstRowStride);
break;
case GL_TEXTURE_RECTANGLE_NV:
/* no mipmaps, do nothing */
break;
default:
- _mesa_problem(NULL, "bad target in _mesa_generate_mipmap_level");
+ _mesa_problem(NULL, "bad dimensions in _mesa_generate_mipmaps");
+ return;
}
}
@@ -991,7 +983,8 @@ _mesa_generate_mipmap(GLcontext *ctx, GLenum target,
GLint components, size;
GLchan *dst;
- assert(texObj->Target == GL_TEXTURE_2D);
+ assert(texObj->Target == GL_TEXTURE_2D ||
+ texObj->Target == GL_TEXTURE_CUBE_MAP_ARB);
if (srcImage->_BaseFormat == GL_RGB) {
convertFormat = &_mesa_texformat_rgb;
@@ -1130,10 +1123,12 @@ _mesa_generate_mipmap(GLcontext *ctx, GLenum target,
dstData = (GLubyte *) dstImage->Data;
}
- /* Note, 0 indicates default row strides */
_mesa_generate_mipmap_level(target, datatype, comps, border,
- srcWidth, srcHeight, srcDepth, 0, srcData,
- dstWidth, dstHeight, dstDepth, 0, dstData);
+ srcWidth, srcHeight, srcDepth,
+ srcData, srcImage->RowStride,
+ dstWidth, dstHeight, dstDepth,
+ dstData, dstImage->RowStride);
+
if (dstImage->IsCompressed) {
GLubyte *temp;
diff --git a/src/mesa/main/mipmap.h b/src/mesa/main/mipmap.h
index 44ecdddb277..22094c34372 100644
--- a/src/mesa/main/mipmap.h
+++ b/src/mesa/main/mipmap.h
@@ -34,11 +34,11 @@ _mesa_generate_mipmap_level(GLenum target,
GLenum datatype, GLuint comps,
GLint border,
GLint srcWidth, GLint srcHeight, GLint srcDepth,
- GLint srcRowStride,
const GLubyte *srcData,
+ GLint srcRowStride,
GLint dstWidth, GLint dstHeight, GLint dstDepth,
- GLint dstRowStride,
- GLubyte *dstData);
+ GLubyte *dstData,
+ GLint dstRowStride);
extern void
diff --git a/src/mesa/main/mm.c b/src/mesa/main/mm.c
index 6f381b02a7f..d430bcdb840 100644
--- a/src/mesa/main/mm.c
+++ b/src/mesa/main/mm.c
@@ -167,7 +167,7 @@ mmAllocMem(struct mem_block *heap, unsigned size, unsigned align2, unsigned star
unsigned startofs = 0;
unsigned endofs;
- if (!heap || !align2 || !size)
+ if (!heap || !size)
return NULL;
for (p = heap->next_free; p != heap; p = p->next_free) {
diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h
index 732de2bb432..556b4ed0164 100644
--- a/src/mesa/main/mtypes.h
+++ b/src/mesa/main/mtypes.h
@@ -1369,7 +1369,7 @@ struct gl_texture_image
GLboolean IsCompressed; /**< GL_ARB_texture_compression */
GLuint CompressedSize; /**< GL_ARB_texture_compression */
- GLuint RowStride; /**< == Width unless IsClientData and padded */
+ GLuint RowStride; /**< Padded width in units of texels */
GLuint *ImageOffsets; /**< if 3D texture: array [Depth] of offsets to
each 2D slice in 'Data', in texels */
GLvoid *Data; /**< Image data, accessed via FetchTexel() */
@@ -1540,17 +1540,6 @@ struct gl_texture_unit
struct gl_texture_object *_Current; /**< Points to really enabled tex obj */
- /** These are used for glPush/PopAttrib */
- /*@{*/
- struct gl_texture_object Saved1D;
- struct gl_texture_object Saved2D;
- struct gl_texture_object Saved3D;
- struct gl_texture_object SavedCubeMap;
- struct gl_texture_object SavedRect;
- struct gl_texture_object Saved1DArray;
- struct gl_texture_object Saved2DArray;
- /*@}*/
-
/** GL_SGI_texture_color_table */
/*@{*/
struct gl_color_table ColorTable;
@@ -1560,6 +1549,7 @@ struct gl_texture_unit
};
+
/**
* Texture attribute group (GL_TEXTURE_BIT).
*/
@@ -1579,17 +1569,7 @@ struct gl_texture_attrib
struct gl_texture_unit Unit[MAX_TEXTURE_UNITS];
-#if 0
- struct gl_texture_object *Proxy1D;
- struct gl_texture_object *Proxy2D;
- struct gl_texture_object *Proxy3D;
- struct gl_texture_object *ProxyCubeMap;
- struct gl_texture_object *ProxyRect;
- struct gl_texture_object *Proxy1DArray;
- struct gl_texture_object *Proxy2DArray;
-#else
struct gl_texture_object *ProxyTex[NUM_TEXTURE_TARGETS];
-#endif
/** GL_EXT_shared_texture_palette */
GLboolean SharedPalette;
@@ -1894,10 +1874,13 @@ struct gl_program
GLbitfield InputsRead; /**< Bitmask of which input regs are read */
GLbitfield OutputsWritten; /**< Bitmask of which output regs are written to */
+ GLbitfield InputFlags[MAX_PROGRAM_INPUTS]; /**< PROG_PARAM_BIT_x flags */
+ GLbitfield OutputFlags[MAX_PROGRAM_OUTPUTS]; /**< PROG_PARAM_BIT_x flags */
GLbitfield TexturesUsed[MAX_TEXTURE_IMAGE_UNITS]; /**< TEXTURE_x_BIT bitmask */
GLbitfield SamplersUsed; /**< Bitfield of which samplers are used */
GLbitfield ShadowSamplers; /**< Texture units used for shadow sampling. */
+
/** Named parameters, constants, etc. from program text */
struct gl_program_parameter_list *Parameters;
/** Numbered local parameters */
@@ -2428,13 +2411,11 @@ struct gl_framebuffer
GLenum ColorDrawBuffer[MAX_DRAW_BUFFERS];
GLenum ColorReadBuffer;
- /* These are computed from ColorDrawBuffer and ColorReadBuffer */
- GLbitfield _ColorDrawBufferMask[MAX_DRAW_BUFFERS]; /* Mask of BUFFER_BIT_* flags */
+ /** Computed from ColorDraw/ReadBuffer above */
+ GLuint _NumColorDrawBuffers;
+ GLint _ColorDrawBufferIndexes[MAX_DRAW_BUFFERS]; /**< BUFFER_x or -1 */
GLint _ColorReadBufferIndex; /* -1 = None */
-
- /* These are computed from _ColorDrawBufferMask and _ColorReadBufferIndex */
- GLuint _NumColorDrawBuffers[MAX_DRAW_BUFFERS];
- struct gl_renderbuffer *_ColorDrawBuffers[MAX_DRAW_BUFFERS][4];
+ struct gl_renderbuffer *_ColorDrawBuffers[MAX_DRAW_BUFFERS];
struct gl_renderbuffer *_ColorReadBuffer;
/** The Actual depth/stencil buffers to use. May be wrappers around the
@@ -2652,7 +2633,6 @@ struct gl_extensions
GLboolean SGIS_generate_mipmap;
GLboolean SGIS_texture_edge_clamp;
GLboolean SGIS_texture_lod;
- GLboolean SGIX_depth_texture;
GLboolean SGIX_shadow;
GLboolean SGIX_shadow_ambient; /* or GL_ARB_shadow_ambient */
GLboolean TDFX_texture_compression_FXT1;
@@ -2902,7 +2882,6 @@ struct mesa_display_list
*/
struct gl_dlist_state
{
- struct mesa_display_list *CallStack[MAX_LIST_NESTING];
GLuint CallDepth; /**< Current recursion calling depth */
struct mesa_display_list *CurrentList;
@@ -3079,7 +3058,10 @@ struct __GLcontextRec
/** \name Derived state */
/*@{*/
- GLbitfield _TriangleCaps; /**< bitwise-or of DD_* flags */
+ /** Bitwise-or of DD_* flags. Note that this bitfield may be used before
+ * state validation so they need to always be current.
+ */
+ GLbitfield _TriangleCaps;
GLbitfield _ImageTransferState;/**< bitwise-or of IMAGE_*_BIT flags */
GLfloat _EyeZDir[3];
GLfloat _ModelViewInvScale;
@@ -3095,12 +3077,6 @@ struct __GLcontextRec
struct gl_list_extensions ListExt; /**< driver dlist extensions */
-
- GLuint _Facing; /**< This is a hack for 2-sided stencil test.
- *
- * We don't have a better way to communicate this value from
- * swrast_setup to swrast. */
-
/** \name For debugging/development only */
/*@{*/
GLboolean FirstTimeCurrent;
diff --git a/src/mesa/main/pixel.c b/src/mesa/main/pixel.c
index c98506b2bb0..8d24a201f07 100644
--- a/src/mesa/main/pixel.c
+++ b/src/mesa/main/pixel.c
@@ -150,7 +150,7 @@ _mesa_PixelMapfv( GLenum map, GLsizei mapsize, const GLfloat *values )
if (map >= GL_PIXEL_MAP_S_TO_S && map <= GL_PIXEL_MAP_I_TO_A) {
/* test that mapsize is a power of two */
- if (_mesa_bitcount((GLuint) mapsize) != 1) {
+ if (!_mesa_is_pow_two(mapsize)) {
_mesa_error( ctx, GL_INVALID_VALUE, "glPixelMapfv(mapsize)" );
return;
}
@@ -209,7 +209,7 @@ _mesa_PixelMapuiv(GLenum map, GLsizei mapsize, const GLuint *values )
if (map >= GL_PIXEL_MAP_S_TO_S && map <= GL_PIXEL_MAP_I_TO_A) {
/* test that mapsize is a power of two */
- if (_mesa_bitcount((GLuint) mapsize) != 1) {
+ if (!_mesa_is_pow_two(mapsize)) {
_mesa_error( ctx, GL_INVALID_VALUE, "glPixelMapuiv(mapsize)" );
return;
}
@@ -282,7 +282,7 @@ _mesa_PixelMapusv(GLenum map, GLsizei mapsize, const GLushort *values )
if (map >= GL_PIXEL_MAP_S_TO_S && map <= GL_PIXEL_MAP_I_TO_A) {
/* test that mapsize is a power of two */
- if (_mesa_bitcount((GLuint) mapsize) != 1) {
+ if (!_mesa_is_pow_two(mapsize)) {
_mesa_error( ctx, GL_INVALID_VALUE, "glPixelMapuiv(mapsize)" );
return;
}
diff --git a/src/mesa/main/points.c b/src/mesa/main/points.c
index fbedbcb22c4..1fe697033f1 100644
--- a/src/mesa/main/points.c
+++ b/src/mesa/main/points.c
@@ -5,7 +5,7 @@
/*
* Mesa 3-D graphics library
- * Version: 7.0
+ * Version: 7.1
*
* Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
*
@@ -77,8 +77,13 @@ _mesa_PointParameteri( GLenum pname, GLint param )
void GLAPIENTRY
_mesa_PointParameteriv( GLenum pname, const GLint *params )
{
- const GLfloat value = (GLfloat) params[0];
- _mesa_PointParameterfv(pname, &value);
+ GLfloat p[3];
+ p[0] = (GLfloat) params[0];
+ if (pname == GL_DISTANCE_ATTENUATION_EXT) {
+ p[1] = (GLfloat) params[1];
+ p[2] = (GLfloat) params[2];
+ }
+ _mesa_PointParameterfv(pname, p);
}
@@ -105,6 +110,11 @@ _mesa_PointParameterfv( GLenum pname, const GLfloat *params)
ctx->Point._Attenuated = (ctx->Point.Params[0] != 1.0 ||
ctx->Point.Params[1] != 0.0 ||
ctx->Point.Params[2] != 0.0);
+
+ if (ctx->Point._Attenuated)
+ ctx->_TriangleCaps |= DD_POINT_ATTEN;
+ else
+ ctx->_TriangleCaps &= ~DD_POINT_ATTEN;
}
else {
_mesa_error(ctx, GL_INVALID_ENUM,
@@ -190,7 +200,7 @@ _mesa_PointParameterfv( GLenum pname, const GLfloat *params)
}
break;
case GL_POINT_SPRITE_COORD_ORIGIN:
- if (ctx->Extensions.ARB_point_sprite) {
+ if (ctx->Extensions.ARB_point_sprite || ctx->Extensions.NV_point_sprite) {
GLenum value = (GLenum) params[0];
if (value != GL_LOWER_LEFT && value != GL_UPPER_LEFT) {
_mesa_error(ctx, GL_INVALID_VALUE,
diff --git a/src/mesa/main/polygon.c b/src/mesa/main/polygon.c
index fd02e5a652d..564250b881c 100644
--- a/src/mesa/main/polygon.c
+++ b/src/mesa/main/polygon.c
@@ -167,6 +167,11 @@ _mesa_PolygonMode( GLenum face, GLenum mode )
return;
}
+ if (ctx->Polygon.FrontMode == GL_FILL && ctx->Polygon.BackMode == GL_FILL)
+ ctx->_TriangleCaps &= ~DD_TRI_UNFILLED;
+ else
+ ctx->_TriangleCaps |= DD_TRI_UNFILLED;
+
if (ctx->Driver.PolygonMode)
ctx->Driver.PolygonMode(ctx, face, mode);
}
diff --git a/src/mesa/main/queryobj.c b/src/mesa/main/queryobj.c
index 2d060300300..554e0b0d181 100644
--- a/src/mesa/main/queryobj.c
+++ b/src/mesa/main/queryobj.c
@@ -90,9 +90,8 @@ _mesa_wait_query(GLcontext *ctx, struct gl_query_object *q)
/**
- * Delete an occlusion query object.
+ * Delete a query object. Called via ctx->Driver.DeleteQuery().
* Not removed from hash table here.
- * XXX maybe add Delete() method to gl_query_object class and call that instead
*/
void
_mesa_delete_query(GLcontext *ctx, struct gl_query_object *q)
@@ -546,6 +545,6 @@ delete_queryobj_cb(GLuint id, void *data, void *userData)
void
_mesa_free_query_data(GLcontext *ctx)
{
- _mesa_HashDeleteAll(ctx->Query.QueryObjects, delete_queryobj_cb, NULL);
+ _mesa_HashDeleteAll(ctx->Query.QueryObjects, delete_queryobj_cb, ctx);
_mesa_DeleteHashTable(ctx->Query.QueryObjects);
}
diff --git a/src/mesa/main/rastpos.c b/src/mesa/main/rastpos.c
index 155140f3ccc..9842172f460 100644
--- a/src/mesa/main/rastpos.c
+++ b/src/mesa/main/rastpos.c
@@ -50,12 +50,12 @@ rasterpos(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
p[2] = z;
p[3] = w;
- if (ctx->NewState)
- _mesa_update_state( ctx );
-
ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx);
FLUSH_CURRENT(ctx, 0);
+ if (ctx->NewState)
+ _mesa_update_state( ctx );
+
ctx->Driver.RasterPos(ctx, p);
}
diff --git a/src/mesa/main/readpix.c b/src/mesa/main/readpix.c
index dc22808e5bb..dfdd297b6e7 100644
--- a/src/mesa/main/readpix.c
+++ b/src/mesa/main/readpix.c
@@ -105,8 +105,7 @@ _mesa_error_check_format_type(GLcontext *ctx, GLenum format, GLenum type,
}
break;
case GL_DEPTH_COMPONENT:
- if ((drawing && !_mesa_dest_buffer_exists(ctx, format)) ||
- (!drawing && !_mesa_source_buffer_exists(ctx, format))) {
+ if ((drawing && !_mesa_dest_buffer_exists(ctx, format))) {
_mesa_error(ctx, GL_INVALID_OPERATION,
"gl%sPixels(no depth buffer)", readDraw);
return GL_TRUE;
diff --git a/src/mesa/main/shaders.c b/src/mesa/main/shaders.c
index f0db0d2a818..7491d00c357 100644
--- a/src/mesa/main/shaders.c
+++ b/src/mesa/main/shaders.c
@@ -1,6 +1,6 @@
/*
* Mesa 3-D graphics library
- * Version: 7.1
+ * Version: 7.3
*
* Copyright (C) 2004-2008 Brian Paul All Rights Reserved.
*
@@ -233,13 +233,23 @@ _mesa_GetObjectParameterivARB(GLhandleARB object, GLenum pname, GLint *params)
GET_CURRENT_CONTEXT(ctx);
/* Implement in terms of GetProgramiv, GetShaderiv */
if (ctx->Driver.IsProgram(ctx, object)) {
- ctx->Driver.GetProgramiv(ctx, object, pname, params);
+ if (pname == GL_OBJECT_TYPE_ARB) {
+ *params = GL_PROGRAM_OBJECT_ARB;
+ }
+ else {
+ ctx->Driver.GetProgramiv(ctx, object, pname, params);
+ }
}
else if (ctx->Driver.IsShader(ctx, object)) {
- ctx->Driver.GetShaderiv(ctx, object, pname, params);
+ if (pname == GL_OBJECT_TYPE_ARB) {
+ *params = GL_SHADER_OBJECT_ARB;
+ }
+ else {
+ ctx->Driver.GetShaderiv(ctx, object, pname, params);
+ }
}
else {
- _mesa_error(ctx, GL_INVALID_OPERATION, "glGetObjectParameterivARB");
+ _mesa_error(ctx, GL_INVALID_VALUE, "glGetObjectParameterivARB");
}
}
diff --git a/src/mesa/main/state.c b/src/mesa/main/state.c
index a962f1cb41d..0d452fd8791 100644
--- a/src/mesa/main/state.c
+++ b/src/mesa/main/state.c
@@ -51,6 +51,16 @@
#include "texstate.h"
+static void
+update_separate_specular(GLcontext *ctx)
+{
+ if (NEED_SECONDARY_COLOR(ctx))
+ ctx->_TriangleCaps |= DD_SEPARATE_SPECULAR;
+ else
+ ctx->_TriangleCaps &= ~DD_SEPARATE_SPECULAR;
+}
+
+
/**
* Update state dependent on vertex arrays.
*/
@@ -176,7 +186,7 @@ update_program(GLcontext *ctx)
ctx->FragmentProgram._Enabled = ctx->FragmentProgram.Enabled
&& ctx->FragmentProgram.Current->Base.Instructions;
ctx->ATIFragmentShader._Enabled = ctx->ATIFragmentShader.Enabled
- && ctx->ATIFragmentShader.Current->Instructions;
+ && ctx->ATIFragmentShader.Current->Instructions[0];
/*
* Set the ctx->VertexProgram._Current and ctx->FragmentProgram._Current
@@ -194,56 +204,39 @@ update_program(GLcontext *ctx)
* come up, or matter.
*/
- /**
- ** Fragment program
- **/
-#if 1
- /* XXX get rid of this someday? */
- ctx->FragmentProgram._Active = GL_FALSE;
-#endif
+ _mesa_reference_fragprog(ctx, &ctx->FragmentProgram._Current, NULL);
+
if (shProg && shProg->LinkStatus && shProg->FragmentProgram) {
- /* user-defined fragment shader */
+ /* Use shader programs */
_mesa_reference_fragprog(ctx, &ctx->FragmentProgram._Current,
shProg->FragmentProgram);
}
else if (ctx->FragmentProgram._Enabled) {
- /* use user-defined fragment program */
+ /* use user-defined vertex program */
_mesa_reference_fragprog(ctx, &ctx->FragmentProgram._Current,
ctx->FragmentProgram.Current);
}
else if (ctx->FragmentProgram._MaintainTexEnvProgram) {
- /* fragment program generated from fixed-function state */
+ /* Use fragment program generated from fixed-function state.
+ */
_mesa_reference_fragprog(ctx, &ctx->FragmentProgram._Current,
_mesa_get_fixed_func_fragment_program(ctx));
_mesa_reference_fragprog(ctx, &ctx->FragmentProgram._TexEnvProgram,
ctx->FragmentProgram._Current);
-
- /* XXX get rid of this confusing stuff someday? */
- ctx->FragmentProgram._Active = ctx->FragmentProgram._Enabled;
- if (ctx->FragmentProgram._UseTexEnvProgram)
- ctx->FragmentProgram._Active = GL_TRUE;
}
else {
/* no fragment program */
_mesa_reference_fragprog(ctx, &ctx->FragmentProgram._Current, NULL);
}
- if (ctx->FragmentProgram._Current != prevFP && ctx->Driver.BindProgram) {
- ctx->Driver.BindProgram(ctx, GL_FRAGMENT_PROGRAM_ARB,
- (struct gl_program *) ctx->FragmentProgram._Current);
- }
-
- /**
- ** Vertex program
- **/
-#if 1
- /* XXX get rid of this someday? */
- _mesa_reference_vertprog(ctx, &ctx->VertexProgram._TnlProgram, NULL);
-#endif
+ /* Examine vertex program after fragment program as
+ * _mesa_get_fixed_func_vertex_program() needs to know active
+ * fragprog inputs.
+ */
if (shProg && shProg->LinkStatus && shProg->VertexProgram) {
- /* user-defined vertex shader */
+ /* Use shader programs */
_mesa_reference_vertprog(ctx, &ctx->VertexProgram._Current,
- shProg->VertexProgram);
+ shProg->VertexProgram);
}
else if (ctx->VertexProgram._Enabled) {
/* use user-defined vertex program */
@@ -251,20 +244,39 @@ update_program(GLcontext *ctx)
ctx->VertexProgram.Current);
}
else if (ctx->VertexProgram._MaintainTnlProgram) {
- /* vertex program generated from fixed-function state */
+ /* Use vertex program generated from fixed-function state.
+ */
_mesa_reference_vertprog(ctx, &ctx->VertexProgram._Current,
_mesa_get_fixed_func_vertex_program(ctx));
_mesa_reference_vertprog(ctx, &ctx->VertexProgram._TnlProgram,
ctx->VertexProgram._Current);
}
else {
- /* no vertex program / used fixed-function code */
+ /* no vertex program */
_mesa_reference_vertprog(ctx, &ctx->VertexProgram._Current, NULL);
}
+ /* XXX: get rid of _Active flag.
+ */
+#if 1
+ ctx->FragmentProgram._Active = ctx->FragmentProgram._Enabled;
+ if (ctx->FragmentProgram._MaintainTexEnvProgram &&
+ !ctx->FragmentProgram._Enabled) {
+ if (ctx->FragmentProgram._UseTexEnvProgram)
+ ctx->FragmentProgram._Active = GL_TRUE;
+ }
+#endif
+
+ /* Let the driver know what's happening:
+ */
+ if (ctx->FragmentProgram._Current != prevFP && ctx->Driver.BindProgram) {
+ ctx->Driver.BindProgram(ctx, GL_FRAGMENT_PROGRAM_ARB,
+ (struct gl_program *) ctx->FragmentProgram._Current);
+ }
+
if (ctx->VertexProgram._Current != prevVP && ctx->Driver.BindProgram) {
ctx->Driver.BindProgram(ctx, GL_VERTEX_PROGRAM_ARB,
- (struct gl_program *) ctx->VertexProgram._Current);
+ (struct gl_program *) ctx->VertexProgram._Current);
}
}
@@ -315,6 +327,24 @@ update_color(GLcontext *ctx)
}
+/*
+ * Check polygon state and set DD_TRI_CULL_FRONT_BACK and/or DD_TRI_OFFSET
+ * in ctx->_TriangleCaps if needed.
+ */
+static void
+update_polygon(GLcontext *ctx)
+{
+ ctx->_TriangleCaps &= ~(DD_TRI_CULL_FRONT_BACK | DD_TRI_OFFSET);
+
+ if (ctx->Polygon.CullFlag && ctx->Polygon.CullFaceMode == GL_FRONT_AND_BACK)
+ ctx->_TriangleCaps |= DD_TRI_CULL_FRONT_BACK;
+
+ if ( ctx->Polygon.OffsetPoint
+ || ctx->Polygon.OffsetLine
+ || ctx->Polygon.OffsetFill)
+ ctx->_TriangleCaps |= DD_TRI_OFFSET;
+}
+
/**
* Update the ctx->_TriangleCaps bitfield.
@@ -322,6 +352,7 @@ update_color(GLcontext *ctx)
* This function must be called after other update_*() functions since
* there are dependencies on some other derived values.
*/
+#if 0
static void
update_tricaps(GLcontext *ctx, GLbitfield new_state)
{
@@ -387,6 +418,7 @@ update_tricaps(GLcontext *ctx, GLbitfield new_state)
if (ctx->Stencil._TestTwoSide)
ctx->_TriangleCaps |= DD_TRI_TWOSTENCIL;
}
+#endif
/**
@@ -425,6 +457,9 @@ _mesa_update_state_locked( GLcontext *ctx )
if (new_state & (_NEW_SCISSOR | _NEW_BUFFERS | _NEW_VIEWPORT))
_mesa_update_draw_buffer_bounds( ctx );
+ if (new_state & _NEW_POLYGON)
+ update_polygon( ctx );
+
if (new_state & _NEW_LIGHT)
_mesa_update_lighting( ctx );
@@ -436,6 +471,9 @@ _mesa_update_state_locked( GLcontext *ctx )
_mesa_update_pixel( ctx, new_state );
#endif
+ if (new_state & _DD_NEW_SEPARATE_SPECULAR)
+ update_separate_specular( ctx );
+
if (new_state & (_NEW_ARRAY | _NEW_PROGRAM))
update_arrays( ctx );
@@ -448,9 +486,11 @@ _mesa_update_state_locked( GLcontext *ctx )
if (new_state & _NEW_COLOR)
update_color( ctx );
+#if 0
if (new_state & (_NEW_POINT | _NEW_LINE | _NEW_POLYGON | _NEW_LIGHT
| _NEW_STENCIL | _DD_NEW_SEPARATE_SPECULAR))
update_tricaps( ctx, new_state );
+#endif
/* ctx->_NeedEyeCoords is now up to date.
*
diff --git a/src/mesa/main/texcompress.c b/src/mesa/main/texcompress.c
index 5ad936419b6..0653407048c 100644
--- a/src/mesa/main/texcompress.c
+++ b/src/mesa/main/texcompress.c
@@ -151,8 +151,6 @@ _mesa_compressed_texture_size( GLcontext *ctx,
/* Textures smaller than 8x4 will effectively be made into 8x4 and
* take 16 bytes.
*/
- if (size < 16)
- size = 16;
return size;
#endif
#if FEATURE_texture_s3tc
@@ -166,8 +164,6 @@ _mesa_compressed_texture_size( GLcontext *ctx,
/* Textures smaller than 4x4 will effectively be made into 4x4 and
* take 8 bytes.
*/
- if (size < 8)
- size = 8;
return size;
case MESA_FORMAT_RGBA_DXT3:
case MESA_FORMAT_RGBA_DXT5:
@@ -179,8 +175,6 @@ _mesa_compressed_texture_size( GLcontext *ctx,
/* Textures smaller than 4x4 will effectively be made into 4x4 and
* take 16 bytes.
*/
- if (size < 16)
- size = 16;
return size;
#endif
default:
diff --git a/src/mesa/main/texcompress_fxt1.c b/src/mesa/main/texcompress_fxt1.c
index 16a3ba076fd..fc151605c9e 100644
--- a/src/mesa/main/texcompress_fxt1.c
+++ b/src/mesa/main/texcompress_fxt1.c
@@ -1,8 +1,8 @@
/*
* Mesa 3-D graphics library
- * Version: 6.5
+ * Version: 7.1
*
- * Copyright (C) 1999-2005 Brian Paul All Rights Reserved.
+ * Copyright (C) 1999-2008 Brian Paul All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
diff --git a/src/mesa/main/texcompress_s3tc.c b/src/mesa/main/texcompress_s3tc.c
index c48063d9192..4f329cdf59b 100644
--- a/src/mesa/main/texcompress_s3tc.c
+++ b/src/mesa/main/texcompress_s3tc.c
@@ -577,6 +577,32 @@ const struct gl_texture_format _mesa_texformat_rgb_dxt1 = {
NULL /* StoreTexel */
};
+#if FEATURE_EXT_texture_sRGB
+const struct gl_texture_format _mesa_texformat_srgb_dxt1 = {
+ MESA_FORMAT_SRGB_DXT1, /* MesaFormat */
+ GL_RGB, /* BaseFormat */
+ GL_UNSIGNED_NORMALIZED_ARB, /* DataType */
+ 4, /*approx*/ /* RedBits */
+ 4, /*approx*/ /* GreenBits */
+ 4, /*approx*/ /* BlueBits */
+ 0, /* AlphaBits */
+ 0, /* LuminanceBits */
+ 0, /* IntensityBits */
+ 0, /* IndexBits */
+ 0, /* DepthBits */
+ 0, /* StencilBits */
+ 0, /* TexelBytes */
+ texstore_rgb_dxt1, /* StoreTexImageFunc */
+ NULL, /*impossible*/ /* FetchTexel1D */
+ fetch_texel_2d_rgb_dxt1, /* FetchTexel2D */
+ NULL, /*impossible*/ /* FetchTexel3D */
+ NULL, /*impossible*/ /* FetchTexel1Df */
+ fetch_texel_2d_f_rgb_dxt1, /* FetchTexel2Df */
+ NULL, /*impossible*/ /* FetchTexel3Df */
+ NULL /* StoreTexel */
+};
+#endif
+
const struct gl_texture_format _mesa_texformat_rgba_dxt1 = {
MESA_FORMAT_RGBA_DXT1, /* MesaFormat */
GL_RGBA, /* BaseFormat */
diff --git a/src/mesa/main/texenvprogram.c b/src/mesa/main/texenvprogram.c
index c279956f2a2..3cb103f51f8 100644
--- a/src/mesa/main/texenvprogram.c
+++ b/src/mesa/main/texenvprogram.c
@@ -28,6 +28,7 @@
#include "glheader.h"
#include "macros.h"
#include "enums.h"
+#include "shader/program.h"
#include "shader/prog_parameter.h"
#include "shader/prog_cache.h"
#include "shader/prog_instruction.h"
@@ -36,6 +37,16 @@
#include "shader/programopt.h"
#include "texenvprogram.h"
+
+struct texenvprog_cache_item
+{
+ GLuint hash;
+ void *key;
+ struct gl_fragment_program *data;
+ struct texenvprog_cache_item *next;
+};
+
+
/**
* Up to nine instructions per tex unit, plus fog, specular color.
*/
@@ -59,6 +70,7 @@ struct state_key {
struct {
GLuint enabled:1;
GLuint source_index:3; /* one of TEXTURE_1D/2D/3D/CUBE/RECT_INDEX */
+ GLuint shadow:1;
GLuint ScaleShiftRGB:2;
GLuint ScaleShiftA:2;
@@ -285,10 +297,13 @@ static void make_state_key( GLcontext *ctx, struct state_key *key )
for (i=0;i<MAX_TEXTURE_UNITS;i++) {
const struct gl_texture_unit *texUnit = &ctx->Texture.Unit[i];
-
- if (!texUnit->_ReallyEnabled)
+ GLenum format;
+
+ if (!texUnit->_ReallyEnabled || !texUnit->Enabled)
continue;
+ format = texUnit->_Current->Image[0][texUnit->_Current->BaseLevel]->_BaseFormat;
+
key->unit[i].enabled = 1;
key->enabled_units |= (1<<i);
key->nr_enabled_units = i+1;
@@ -296,6 +311,9 @@ static void make_state_key( GLcontext *ctx, struct state_key *key )
key->unit[i].source_index =
translate_tex_src_bit(texUnit->_ReallyEnabled);
+ key->unit[i].shadow = ((texUnit->_Current->CompareMode == GL_COMPARE_R_TO_TEXTURE) &&
+ ((format == GL_DEPTH_COMPONENT) ||
+ (format == GL_DEPTH_STENCIL_EXT)));
key->unit[i].NumArgsRGB = texUnit->_CurrentCombine->_NumArgsRGB;
key->unit[i].NumArgsA = texUnit->_CurrentCombine->_NumArgsA;
@@ -597,7 +615,7 @@ emit_op(struct texenv_fragment_program *p,
{
GLuint nr = p->program->Base.NumInstructions++;
struct prog_instruction *inst = &p->program->Base.Instructions[nr];
-
+
assert(nr < MAX_INSTRUCTIONS);
_mesa_init_instructions(inst, 1);
@@ -1066,6 +1084,10 @@ static void load_texture( struct texenv_fragment_program *p, GLuint unit )
p->src_texture[unit] = emit_texld( p, OPCODE_TXP,
tmp, WRITEMASK_XYZW,
unit, dim, texcoord );
+
+ if (p->state->unit[unit].shadow)
+ p->program->Base.ShadowSamplers |= 1 << unit;
+
p->program->Base.SamplersUsed |= (1 << unit);
/* This identity mapping should already be in place
* (see _mesa_init_program_struct()) but let's be safe.
@@ -1300,6 +1322,9 @@ _mesa_get_fixed_func_fragment_program(GLcontext *ctx)
* If _MaintainTexEnvProgram is set we'll generate a fragment program that
* implements the current texture env/combine mode.
* This function generates that program and puts it into effect.
+ *
+ * XXX: remove this function. currently only called by some drivers,
+ * not by mesa core. We now handle this properly from inside mesa.
*/
void
_mesa_UpdateTexEnvProgram( GLcontext *ctx )
@@ -1311,11 +1336,14 @@ _mesa_UpdateTexEnvProgram( GLcontext *ctx )
/* If a conventional fragment program/shader isn't in effect... */
if (!ctx->FragmentProgram._Enabled &&
(!ctx->Shader.CurrentProgram ||
- !ctx->Shader.CurrentProgram->FragmentProgram) ) {
+ !ctx->Shader.CurrentProgram->FragmentProgram) )
+ {
+ struct gl_fragment_program *newProg;
+
+ newProg = _mesa_get_fixed_func_fragment_program(ctx);
- ctx->FragmentProgram._Current
- = ctx->FragmentProgram._TexEnvProgram
- = _mesa_get_fixed_func_fragment_program(ctx);
+ _mesa_reference_fragprog(ctx, &ctx->FragmentProgram._Current, newProg);
+ _mesa_reference_fragprog(ctx, &ctx->FragmentProgram._TexEnvProgram, newProg);
}
/* Tell the driver about the change. Could define a new target for
diff --git a/src/mesa/main/texformat.c b/src/mesa/main/texformat.c
index 60f36c4a87f..ce2772c2992 100644
--- a/src/mesa/main/texformat.c
+++ b/src/mesa/main/texformat.c
@@ -1420,14 +1420,13 @@ _mesa_choose_tex_format( GLcontext *ctx, GLint internalFormat,
; /* fallthrough */
}
- if (ctx->Extensions.SGIX_depth_texture ||
- ctx->Extensions.ARB_depth_texture) {
+ if (ctx->Extensions.ARB_depth_texture) {
switch (internalFormat) {
case GL_DEPTH_COMPONENT:
- case GL_DEPTH_COMPONENT24_SGIX:
- case GL_DEPTH_COMPONENT32_SGIX:
+ case GL_DEPTH_COMPONENT24:
+ case GL_DEPTH_COMPONENT32:
return &_mesa_texformat_z32;
- case GL_DEPTH_COMPONENT16_SGIX:
+ case GL_DEPTH_COMPONENT16:
return &_mesa_texformat_z16;
default:
; /* fallthrough */
diff --git a/src/mesa/main/texformat.h b/src/mesa/main/texformat.h
index 3b6d05612dd..f34b3b8223c 100644
--- a/src/mesa/main/texformat.h
+++ b/src/mesa/main/texformat.h
@@ -98,6 +98,7 @@ enum _format {
MESA_FORMAT_SRGBA8,
MESA_FORMAT_SL8,
MESA_FORMAT_SLA8,
+ MESA_FORMAT_SRGB_DXT1,
/*@}*/
#endif
@@ -173,6 +174,7 @@ extern const struct gl_texture_format _mesa_texformat_srgb8;
extern const struct gl_texture_format _mesa_texformat_srgba8;
extern const struct gl_texture_format _mesa_texformat_sl8;
extern const struct gl_texture_format _mesa_texformat_sla8;
+extern const struct gl_texture_format _mesa_texformat_srgb_dxt1;
/*@}*/
#endif
diff --git a/src/mesa/main/texformat_tmp.h b/src/mesa/main/texformat_tmp.h
index 63939f40111..7499ba7b36e 100644
--- a/src/mesa/main/texformat_tmp.h
+++ b/src/mesa/main/texformat_tmp.h
@@ -1117,6 +1117,7 @@ static void FETCH(ci8)( const struct gl_texture_image *texImage,
break;;
default:
_mesa_problem(ctx, "Bad palette format in fetch_texel_ci8");
+ return;
}
#if CHAN_TYPE == GL_UNSIGNED_BYTE
COPY_4UBV(texel, texelUB);
diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c
index 36557f19fd4..a5e0db736ed 100644
--- a/src/mesa/main/teximage.c
+++ b/src/mesa/main/teximage.c
@@ -1,8 +1,8 @@
/*
- * Mesa 3-D graphics library
+ * mesa 3-D graphics library
* Version: 7.1
*
- * Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
+ * Copyright (C) 1999-2008 Brian Paul All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
@@ -241,13 +241,12 @@ _mesa_base_tex_format( GLcontext *ctx, GLint internalFormat )
}
}
- if (ctx->Extensions.SGIX_depth_texture ||
- ctx->Extensions.ARB_depth_texture) {
+ if (ctx->Extensions.ARB_depth_texture) {
switch (internalFormat) {
case GL_DEPTH_COMPONENT:
- case GL_DEPTH_COMPONENT16_SGIX:
- case GL_DEPTH_COMPONENT24_SGIX:
- case GL_DEPTH_COMPONENT32_SGIX:
+ case GL_DEPTH_COMPONENT16:
+ case GL_DEPTH_COMPONENT24:
+ case GL_DEPTH_COMPONENT32:
return GL_DEPTH_COMPONENT;
default:
; /* fallthrough */
@@ -389,9 +388,10 @@ _mesa_base_tex_format( GLcontext *ctx, GLint internalFormat )
* index, depth, stencil, etc).
* \param format the image format value (may by an internal texture format)
* \return GL_TRUE if its a color/RGBA format, GL_FALSE otherwise.
+ * XXX maybe move this func to image.c
*/
-static GLboolean
-is_color_format(GLenum format)
+GLboolean
+_mesa_is_color_format(GLenum format)
{
switch (format) {
case GL_RED:
@@ -492,6 +492,7 @@ is_color_format(GLenum format)
#endif /* FEATURE_EXT_texture_sRGB */
return GL_TRUE;
case GL_YCBCR_MESA: /* not considered to be RGB */
+ /* fall-through */
default:
return GL_FALSE;
}
@@ -526,9 +527,9 @@ static GLboolean
is_depth_format(GLenum format)
{
switch (format) {
- case GL_DEPTH_COMPONENT16_ARB:
- case GL_DEPTH_COMPONENT24_ARB:
- case GL_DEPTH_COMPONENT32_ARB:
+ case GL_DEPTH_COMPONENT16:
+ case GL_DEPTH_COMPONENT24:
+ case GL_DEPTH_COMPONENT32:
case GL_DEPTH_COMPONENT:
return GL_TRUE;
default:
@@ -1243,9 +1244,9 @@ _mesa_init_teximage_fields(GLcontext *ctx, GLenum target,
img->IsCompressed = GL_FALSE;
img->CompressedSize = 0;
- if ((width == 1 || _mesa_bitcount(img->Width2) == 1) &&
- (height == 1 || _mesa_bitcount(img->Height2) == 1) &&
- (depth == 1 || _mesa_bitcount(img->Depth2) == 1))
+ if ((width == 1 || _mesa_is_pow_two(img->Width2)) &&
+ (height == 1 || _mesa_is_pow_two(img->Height2)) &&
+ (depth == 1 || _mesa_is_pow_two(img->Depth2)))
img->_IsPowerOfTwo = GL_TRUE;
else
img->_IsPowerOfTwo = GL_FALSE;
@@ -1316,7 +1317,7 @@ _mesa_test_proxy_teximage(GLcontext *ctx, GLenum target, GLint level,
maxSize = 1 << (ctx->Const.MaxTextureLevels - 1);
if (width < 2 * border || width > 2 + maxSize ||
(!ctx->Extensions.ARB_texture_non_power_of_two &&
- width >0 && _mesa_bitcount(width - 2 * border) != 1) ||
+ width >0 && !_mesa_is_pow_two(width - 2 * border)) ||
level >= ctx->Const.MaxTextureLevels) {
/* bad width or level */
return GL_FALSE;
@@ -1326,10 +1327,10 @@ _mesa_test_proxy_teximage(GLcontext *ctx, GLenum target, GLint level,
maxSize = 1 << (ctx->Const.MaxTextureLevels - 1);
if (width < 2 * border || width > 2 + maxSize ||
(!ctx->Extensions.ARB_texture_non_power_of_two &&
- width > 0 && _mesa_bitcount(width - 2 * border) != 1) ||
+ width > 0 && !_mesa_is_pow_two(width - 2 * border)) ||
height < 2 * border || height > 2 + maxSize ||
(!ctx->Extensions.ARB_texture_non_power_of_two &&
- height > 0 && _mesa_bitcount(height - 2 * border) != 1) ||
+ height > 0 && !_mesa_is_pow_two(height - 2 * border)) ||
level >= ctx->Const.MaxTextureLevels) {
/* bad width or height or level */
return GL_FALSE;
@@ -1339,13 +1340,13 @@ _mesa_test_proxy_teximage(GLcontext *ctx, GLenum target, GLint level,
maxSize = 1 << (ctx->Const.Max3DTextureLevels - 1);
if (width < 2 * border || width > 2 + maxSize ||
(!ctx->Extensions.ARB_texture_non_power_of_two &&
- width > 0 && _mesa_bitcount(width - 2 * border) != 1) ||
+ width > 0 && !_mesa_is_pow_two(width - 2 * border)) ||
height < 2 * border || height > 2 + maxSize ||
(!ctx->Extensions.ARB_texture_non_power_of_two &&
- height > 0 && _mesa_bitcount(height - 2 * border) != 1) ||
+ height > 0 && !_mesa_is_pow_two(height - 2 * border)) ||
depth < 2 * border || depth > 2 + maxSize ||
(!ctx->Extensions.ARB_texture_non_power_of_two &&
- depth > 0 && _mesa_bitcount(depth - 2 * border) != 1) ||
+ depth > 0 && !_mesa_is_pow_two(depth - 2 * border)) ||
level >= ctx->Const.Max3DTextureLevels) {
/* bad width or height or depth or level */
return GL_FALSE;
@@ -1363,10 +1364,10 @@ _mesa_test_proxy_teximage(GLcontext *ctx, GLenum target, GLint level,
maxSize = 1 << (ctx->Const.MaxCubeTextureLevels - 1);
if (width < 2 * border || width > 2 + maxSize ||
(!ctx->Extensions.ARB_texture_non_power_of_two &&
- width > 0 && _mesa_bitcount(width - 2 * border) != 1) ||
+ width > 0 && !_mesa_is_pow_two(width - 2 * border)) ||
height < 2 * border || height > 2 + maxSize ||
(!ctx->Extensions.ARB_texture_non_power_of_two &&
- height > 0 && _mesa_bitcount(height - 2 * border) != 1) ||
+ height > 0 && !_mesa_is_pow_two(height - 2 * border)) ||
level >= ctx->Const.MaxCubeTextureLevels) {
/* bad width or height */
return GL_FALSE;
@@ -1376,7 +1377,7 @@ _mesa_test_proxy_teximage(GLcontext *ctx, GLenum target, GLint level,
maxSize = 1 << (ctx->Const.MaxTextureLevels - 1);
if (width < 2 * border || width > 2 + maxSize ||
(!ctx->Extensions.ARB_texture_non_power_of_two &&
- width > 0 && _mesa_bitcount(width - 2 * border) != 1) ||
+ width > 0 && !_mesa_is_pow_two(width - 2 * border)) ||
level >= ctx->Const.MaxTextureLevels) {
/* bad width or level */
return GL_FALSE;
@@ -1390,10 +1391,10 @@ _mesa_test_proxy_teximage(GLcontext *ctx, GLenum target, GLint level,
maxSize = 1 << (ctx->Const.MaxTextureLevels - 1);
if (width < 2 * border || width > 2 + maxSize ||
(!ctx->Extensions.ARB_texture_non_power_of_two &&
- width > 0 && _mesa_bitcount(width - 2 * border) != 1) ||
+ width > 0 && !_mesa_is_pow_two(width - 2 * border)) ||
height < 2 * border || height > 2 + maxSize ||
(!ctx->Extensions.ARB_texture_non_power_of_two &&
- height > 0 && _mesa_bitcount(height - 2 * border) != 1) ||
+ height > 0 && !_mesa_is_pow_two(height - 2 * border)) ||
level >= ctx->Const.MaxTextureLevels) {
/* bad width or height or level */
return GL_FALSE;
@@ -1588,9 +1589,9 @@ texture_error_check( GLcontext *ctx, GLenum target,
}
/* make sure internal format and format basically agree */
- colorFormat = is_color_format(format);
+ colorFormat = _mesa_is_color_format(format);
indexFormat = is_index_format(format);
- if ((is_color_format(internalFormat) && !colorFormat && !indexFormat) ||
+ if ((_mesa_is_color_format(internalFormat) && !colorFormat && !indexFormat) ||
(is_index_format(internalFormat) && !indexFormat) ||
(is_depth_format(internalFormat) != is_depth_format(format)) ||
(is_ycbcr_format(internalFormat) != is_ycbcr_format(format)) ||
@@ -2017,7 +2018,7 @@ copytexture_error_check( GLcontext *ctx, GLuint dimensions,
}
if (is_compressed_format(ctx, internalFormat)) {
- if (target != GL_TEXTURE_2D) {
+ if (!target_can_be_compressed(ctx, target)) {
_mesa_error(ctx, GL_INVALID_ENUM,
"glCopyTexImage%d(target)", dimensions);
return GL_TRUE;
@@ -2052,30 +2053,20 @@ copytexture_error_check( GLcontext *ctx, GLuint dimensions,
/**
* Test glCopyTexSubImage[12]D() parameters for errors.
+ * Note that this is the first part of error checking.
+ * See also copytexsubimage_error_check2() below for the second part.
*
* \param ctx GL context.
* \param dimensions texture image dimensions (must be 1, 2 or 3).
* \param target texture target given by the user.
* \param level image level given by the user.
- * \param xoffset sub-image x offset given by the user.
- * \param yoffset sub-image y offset given by the user.
- * \param zoffset sub-image z offset given by the user.
- * \param width image width given by the user.
- * \param height image height given by the user.
*
* \return GL_TRUE if an error was detected, or GL_FALSE if no errors.
- *
- * Verifies each of the parameters against the constants specified in
- * __GLcontextRec::Const and the supported extensions, and according to the
- * OpenGL specification.
*/
static GLboolean
-copytexsubimage_error_check( GLcontext *ctx, GLuint dimensions,
- GLenum target, GLint level,
- GLint xoffset, GLint yoffset, GLint zoffset,
- GLsizei width, GLsizei height)
+copytexsubimage_error_check1( GLcontext *ctx, GLuint dimensions,
+ GLenum target, GLint level)
{
- /* Check target */
/* Check that the source buffer is complete */
if (ctx->ReadBuffer->Name) {
_mesa_test_framebuffer_completeness(ctx, ctx->ReadBuffer);
@@ -2086,6 +2077,7 @@ copytexsubimage_error_check( GLcontext *ctx, GLuint dimensions,
}
}
+ /* Check target */
if (dimensions == 1) {
if (target != GL_TEXTURE_1D) {
_mesa_error( ctx, GL_INVALID_ENUM, "glCopyTexSubImage1D(target)" );
@@ -2133,21 +2125,18 @@ copytexsubimage_error_check( GLcontext *ctx, GLuint dimensions,
return GL_TRUE;
}
- /* Check size */
- if (width < 0) {
- _mesa_error(ctx, GL_INVALID_VALUE,
- "glCopyTexSubImage%dD(width=%d)", dimensions, width);
- return GL_TRUE;
- }
- if (dimensions > 1 && height < 0) {
- _mesa_error(ctx, GL_INVALID_VALUE,
- "glCopyTexSubImage%dD(height=%d)", dimensions, height);
- return GL_TRUE;
- }
-
return GL_FALSE;
}
+
+/**
+ * Second part of error checking for glCopyTexSubImage[12]D().
+ * \param xoffset sub-image x offset given by the user.
+ * \param yoffset sub-image y offset given by the user.
+ * \param zoffset sub-image z offset given by the user.
+ * \param width image width given by the user.
+ * \param height image height given by the user.
+ */
static GLboolean
copytexsubimage_error_check2( GLcontext *ctx, GLuint dimensions,
GLenum target, GLint level,
@@ -2155,6 +2144,7 @@ copytexsubimage_error_check2( GLcontext *ctx, GLuint dimensions,
GLsizei width, GLsizei height,
const struct gl_texture_image *teximage )
{
+ /* check that dest tex image exists */
if (!teximage) {
_mesa_error(ctx, GL_INVALID_OPERATION,
"glCopyTexSubImage%dD(undefined texture level: %d)",
@@ -2162,6 +2152,19 @@ copytexsubimage_error_check2( GLcontext *ctx, GLuint dimensions,
return GL_TRUE;
}
+ /* Check size */
+ if (width < 0) {
+ _mesa_error(ctx, GL_INVALID_VALUE,
+ "glCopyTexSubImage%dD(width=%d)", dimensions, width);
+ return GL_TRUE;
+ }
+ if (dimensions > 1 && height < 0) {
+ _mesa_error(ctx, GL_INVALID_VALUE,
+ "glCopyTexSubImage%dD(height=%d)", dimensions, height);
+ return GL_TRUE;
+ }
+
+ /* check x/y offsets */
if (xoffset < -((GLint)teximage->Border)) {
_mesa_error(ctx, GL_INVALID_VALUE,
"glCopyTexSubImage%dD(xoffset=%d)", dimensions, xoffset);
@@ -2186,6 +2189,7 @@ copytexsubimage_error_check2( GLcontext *ctx, GLuint dimensions,
}
}
+ /* check z offset */
if (dimensions > 2) {
if (zoffset < -((GLint)teximage->Border)) {
_mesa_error(ctx, GL_INVALID_VALUE,
@@ -2200,7 +2204,7 @@ copytexsubimage_error_check2( GLcontext *ctx, GLuint dimensions,
}
if (teximage->IsCompressed) {
- if (target != GL_TEXTURE_2D) {
+ if (!target_can_be_compressed(ctx, target)) {
_mesa_error(ctx, GL_INVALID_ENUM,
"glCopyTexSubImage%d(target)", dimensions);
return GL_TRUE;
@@ -2308,8 +2312,7 @@ _mesa_GetTexImage( GLenum target, GLint level, GLenum format,
return;
}
- if (!ctx->Extensions.SGIX_depth_texture &&
- !ctx->Extensions.ARB_depth_texture && is_depth_format(format)) {
+ if (!ctx->Extensions.ARB_depth_texture && is_depth_format(format)) {
_mesa_error(ctx, GL_INVALID_ENUM, "glGetTexImage(format)");
return;
}
@@ -2338,8 +2341,8 @@ _mesa_GetTexImage( GLenum target, GLint level, GLenum format,
* texture's format. Note that a color index texture can be converted
* to RGBA so that combo is allowed.
*/
- if (is_color_format(format)
- && !is_color_format(texImage->TexFormat->BaseFormat)
+ if (_mesa_is_color_format(format)
+ && !_mesa_is_color_format(texImage->TexFormat->BaseFormat)
&& !is_index_format(texImage->TexFormat->BaseFormat)) {
_mesa_error(ctx, GL_INVALID_OPERATION, "glGetTexImage(format mismatch)");
goto out;
@@ -2432,7 +2435,7 @@ _mesa_TexImage1D( GLenum target, GLint level, GLint internalFormat,
ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx);
#if FEATURE_convolve
- if (is_color_format(internalFormat)) {
+ if (_mesa_is_color_format(internalFormat)) {
_mesa_adjust_image_for_convolution(ctx, 1, &postConvWidth, NULL);
}
#endif
@@ -2529,7 +2532,7 @@ _mesa_TexImage2D( GLenum target, GLint level, GLint internalFormat,
ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx);
#if FEATURE_convolve
- if (is_color_format(internalFormat)) {
+ if (_mesa_is_color_format(internalFormat)) {
_mesa_adjust_image_for_convolution(ctx, 2, &postConvWidth,
&postConvHeight);
}
@@ -2711,8 +2714,8 @@ _mesa_TexImage3D( GLenum target, GLint level, GLint internalFormat,
}
else {
/* no error, set the tex image parameters */
- _mesa_init_teximage_fields(ctx, target, texImage, width, height, 1,
- border, internalFormat);
+ _mesa_init_teximage_fields(ctx, target, texImage, width, height,
+ depth, border, internalFormat);
texImage->TexFormat = (*ctx->Driver.ChooseTextureFormat)(ctx,
internalFormat, format, type);
}
@@ -2754,7 +2757,7 @@ _mesa_TexSubImage1D( GLenum target, GLint level,
#if FEATURE_convolve
/* XXX should test internal format */
- if (is_color_format(format)) {
+ if (_mesa_is_color_format(format)) {
_mesa_adjust_image_for_convolution(ctx, 1, &postConvWidth, NULL);
}
#endif
@@ -2814,7 +2817,7 @@ _mesa_TexSubImage2D( GLenum target, GLint level,
#if FEATURE_convolve
/* XXX should test internal format */
- if (is_color_format(format)) {
+ if (_mesa_is_color_format(format)) {
_mesa_adjust_image_for_convolution(ctx, 2, &postConvWidth,
&postConvHeight);
}
@@ -2929,7 +2932,7 @@ _mesa_CopyTexImage1D( GLenum target, GLint level,
_mesa_update_state(ctx);
#if FEATURE_convolve
- if (is_color_format(internalFormat)) {
+ if (_mesa_is_color_format(internalFormat)) {
_mesa_adjust_image_for_convolution(ctx, 1, &postConvWidth, NULL);
}
#endif
@@ -2994,11 +2997,12 @@ _mesa_CopyTexImage2D( GLenum target, GLint level, GLenum internalFormat,
_mesa_update_state(ctx);
#if FEATURE_convolve
- if (is_color_format(internalFormat)) {
+ if (_mesa_is_color_format(internalFormat)) {
_mesa_adjust_image_for_convolution(ctx, 2, &postConvWidth,
&postConvHeight);
}
#endif
+
if (copytexture_error_check(ctx, 2, target, level, internalFormat,
postConvWidth, postConvHeight, border))
return;
@@ -3060,13 +3064,7 @@ _mesa_CopyTexSubImage1D( GLenum target, GLint level,
if (ctx->NewState & _IMAGE_NEW_TRANSFER_STATE)
_mesa_update_state(ctx);
-#if FEATURE_convolve
- /* XXX should test internal format */
- _mesa_adjust_image_for_convolution(ctx, 1, &postConvWidth, NULL);
-#endif
-
- if (copytexsubimage_error_check(ctx, 1, target, level,
- xoffset, 0, 0, postConvWidth, 1))
+ if (copytexsubimage_error_check1(ctx, 1, target, level))
return;
texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit];
@@ -3076,6 +3074,12 @@ _mesa_CopyTexSubImage1D( GLenum target, GLint level,
{
texImage = _mesa_select_tex_image(ctx, texObj, target, level);
+#if FEATURE_convolve
+ if (texImage && _mesa_is_color_format(texImage->InternalFormat)) {
+ _mesa_adjust_image_for_convolution(ctx, 1, &postConvWidth, NULL);
+ }
+#endif
+
if (copytexsubimage_error_check2(ctx, 1, target, level,
xoffset, 0, 0, postConvWidth, 1,
texImage))
@@ -3115,13 +3119,7 @@ _mesa_CopyTexSubImage2D( GLenum target, GLint level,
if (ctx->NewState & _IMAGE_NEW_TRANSFER_STATE)
_mesa_update_state(ctx);
-#if FEATURE_convolve
- /* XXX should test internal format */
- _mesa_adjust_image_for_convolution(ctx, 2, &postConvWidth, &postConvHeight);
-#endif
-
- if (copytexsubimage_error_check(ctx, 2, target, level, xoffset, yoffset, 0,
- postConvWidth, postConvHeight))
+ if (copytexsubimage_error_check1(ctx, 2, target, level))
return;
texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit];
@@ -3131,6 +3129,13 @@ _mesa_CopyTexSubImage2D( GLenum target, GLint level,
{
texImage = _mesa_select_tex_image(ctx, texObj, target, level);
+#if FEATURE_convolve
+ if (texImage && _mesa_is_color_format(texImage->InternalFormat)) {
+ _mesa_adjust_image_for_convolution(ctx, 2,
+ &postConvWidth, &postConvHeight);
+ }
+#endif
+
if (copytexsubimage_error_check2(ctx, 2, target, level, xoffset, yoffset, 0,
postConvWidth, postConvHeight, texImage))
goto out;
@@ -3169,13 +3174,7 @@ _mesa_CopyTexSubImage3D( GLenum target, GLint level,
if (ctx->NewState & _IMAGE_NEW_TRANSFER_STATE)
_mesa_update_state(ctx);
-#if FEATURE_convolve
- /* XXX should test internal format */
- _mesa_adjust_image_for_convolution(ctx, 2, &postConvWidth, &postConvHeight);
-#endif
-
- if (copytexsubimage_error_check(ctx, 3, target, level, xoffset, yoffset,
- zoffset, postConvWidth, postConvHeight))
+ if (copytexsubimage_error_check1(ctx, 3, target, level))
return;
texUnit = &ctx->Texture.Unit[ctx->Texture.CurrentUnit];
@@ -3185,6 +3184,13 @@ _mesa_CopyTexSubImage3D( GLenum target, GLint level,
{
texImage = _mesa_select_tex_image(ctx, texObj, target, level);
+#if FEATURE_convolve
+ if (texImage && _mesa_is_color_format(texImage->InternalFormat)) {
+ _mesa_adjust_image_for_convolution(ctx, 2,
+ &postConvWidth, &postConvHeight);
+ }
+#endif
+
if (copytexsubimage_error_check2(ctx, 3, target, level, xoffset, yoffset,
zoffset, postConvWidth, postConvHeight,
texImage))
@@ -3278,16 +3284,16 @@ compressed_texture_error_check(GLcontext *ctx, GLint dimensions,
* XXX We should probably use the proxy texture error check function here.
*/
if (width < 1 || width > maxTextureSize ||
- (!ctx->Extensions.ARB_texture_non_power_of_two && _mesa_bitcount(width) != 1))
+ (!ctx->Extensions.ARB_texture_non_power_of_two && !_mesa_is_pow_two(width)))
return GL_INVALID_VALUE;
if ((height < 1 || height > maxTextureSize ||
- (!ctx->Extensions.ARB_texture_non_power_of_two && _mesa_bitcount(height) != 1))
+ (!ctx->Extensions.ARB_texture_non_power_of_two && !_mesa_is_pow_two(height)))
&& dimensions > 1)
return GL_INVALID_VALUE;
if ((depth < 1 || depth > maxTextureSize ||
- (!ctx->Extensions.ARB_texture_non_power_of_two && _mesa_bitcount(depth) != 1))
+ (!ctx->Extensions.ARB_texture_non_power_of_two && !_mesa_is_pow_two(depth)))
&& dimensions > 2)
return GL_INVALID_VALUE;
diff --git a/src/mesa/main/teximage.h b/src/mesa/main/teximage.h
index b718c0046d8..eb60a1fa8fa 100644
--- a/src/mesa/main/teximage.h
+++ b/src/mesa/main/teximage.h
@@ -111,6 +111,9 @@ extern GLuint
_mesa_tex_target_to_face(GLenum target);
+extern GLboolean
+_mesa_is_color_format(GLenum format);
+
/**
* Lock a texture for updating. See also _mesa_lock_context_textures().
diff --git a/src/mesa/main/texparam.c b/src/mesa/main/texparam.c
index 3f3b448dbc6..a9e752a6371 100644
--- a/src/mesa/main/texparam.c
+++ b/src/mesa/main/texparam.c
@@ -324,6 +324,7 @@ _mesa_TexParameterfv( GLenum target, GLenum pname, const GLfloat *params )
break;
case GL_GENERATE_MIPMAP_SGIS:
if (ctx->Extensions.SGIS_generate_mipmap) {
+ FLUSH_VERTICES(ctx, _NEW_TEXTURE);
texObj->GenerateMipmap = params[0] ? GL_TRUE : GL_FALSE;
}
else {
@@ -641,8 +642,7 @@ _mesa_GetTexLevelParameteriv( GLenum target, GLint level,
*params = 0;
break;
case GL_TEXTURE_DEPTH_SIZE_ARB:
- if (ctx->Extensions.SGIX_depth_texture ||
- ctx->Extensions.ARB_depth_texture)
+ if (ctx->Extensions.ARB_depth_texture)
*params = img->TexFormat->DepthBits;
else
_mesa_error(ctx, GL_INVALID_ENUM,
@@ -902,9 +902,9 @@ _mesa_GetTexParameterfv( GLenum target, GLenum pname, GLfloat *params )
#ifdef FEATURE_OES_draw_texture
case GL_TEXTURE_CROP_RECT_OES:
params[0] = obj->CropRect[0];
- params[0] = obj->CropRect[1];
- params[0] = obj->CropRect[2];
- params[0] = obj->CropRect[3];
+ params[1] = obj->CropRect[1];
+ params[2] = obj->CropRect[2];
+ params[3] = obj->CropRect[3];
break;
#endif
default:
@@ -1052,9 +1052,9 @@ _mesa_GetTexParameteriv( GLenum target, GLenum pname, GLint *params )
#ifdef FEATURE_OES_draw_texture
case GL_TEXTURE_CROP_RECT_OES:
params[0] = obj->CropRect[0];
- params[0] = obj->CropRect[1];
- params[0] = obj->CropRect[2];
- params[0] = obj->CropRect[3];
+ params[1] = obj->CropRect[1];
+ params[2] = obj->CropRect[2];
+ params[3] = obj->CropRect[3];
break;
#endif
default:
diff --git a/src/mesa/main/texstate.c b/src/mesa/main/texstate.c
index 20f9c4512c4..f0193770412 100644
--- a/src/mesa/main/texstate.c
+++ b/src/mesa/main/texstate.c
@@ -118,20 +118,20 @@ _mesa_copy_texture_state( const GLcontext *src, GLcontext *dst )
/* copy texture object bindings, not contents of texture objects */
_mesa_lock_context_textures(dst);
- _mesa_reference_texobj(&dst->Texture.Unit[i].Current1D,
- src->Texture.Unit[i].Current1D);
- _mesa_reference_texobj(&dst->Texture.Unit[i].Current2D,
- src->Texture.Unit[i].Current2D);
- _mesa_reference_texobj(&dst->Texture.Unit[i].Current3D,
- src->Texture.Unit[i].Current3D);
- _mesa_reference_texobj(&dst->Texture.Unit[i].CurrentCubeMap,
- src->Texture.Unit[i].CurrentCubeMap);
- _mesa_reference_texobj(&dst->Texture.Unit[i].CurrentRect,
- src->Texture.Unit[i].CurrentRect);
- _mesa_reference_texobj(&dst->Texture.Unit[i].Current1DArray,
- src->Texture.Unit[i].Current1DArray);
- _mesa_reference_texobj(&dst->Texture.Unit[i].Current2DArray,
- src->Texture.Unit[i].Current2DArray);
+ _mesa_reference_texobj(&dst->Texture.Unit[i].Current1D,
+ src->Texture.Unit[i].Current1D);
+ _mesa_reference_texobj(&dst->Texture.Unit[i].Current2D,
+ src->Texture.Unit[i].Current2D);
+ _mesa_reference_texobj(&dst->Texture.Unit[i].Current3D,
+ src->Texture.Unit[i].Current3D);
+ _mesa_reference_texobj(&dst->Texture.Unit[i].CurrentCubeMap,
+ src->Texture.Unit[i].CurrentCubeMap);
+ _mesa_reference_texobj(&dst->Texture.Unit[i].CurrentRect,
+ src->Texture.Unit[i].CurrentRect);
+ _mesa_reference_texobj(&dst->Texture.Unit[i].Current1DArray,
+ src->Texture.Unit[i].Current1DArray);
+ _mesa_reference_texobj(&dst->Texture.Unit[i].Current2DArray,
+ src->Texture.Unit[i].Current2DArray);
_mesa_unlock_context_textures(dst);
}
@@ -608,6 +608,24 @@ update_texture_state( GLcontext *ctx )
_mesa_problem(ctx, "invalid Alpha combine mode in update_texture_state");
break;
}
+ }
+
+ /* Determine which texture coordinate sets are actually needed */
+ if (fprog) {
+ const GLuint coordMask = (1 << MAX_TEXTURE_COORD_UNITS) - 1;
+ ctx->Texture._EnabledCoordUnits
+ = (fprog->Base.InputsRead >> FRAG_ATTRIB_TEX0) & coordMask;
+ }
+ else {
+ ctx->Texture._EnabledCoordUnits = ctx->Texture._EnabledUnits;
+ }
+
+ /* Setup texgen for those texture coordinate sets that are in use */
+ for (unit = 0; unit < ctx->Const.MaxTextureUnits; unit++) {
+ struct gl_texture_unit *texUnit = &ctx->Texture.Unit[unit];
+
+ if (!(ctx->Texture._EnabledCoordUnits & (1 << unit)))
+ continue;
if (texUnit->TexGenEnabled) {
if (texUnit->TexGenEnabled & S_BIT) {
@@ -630,16 +648,6 @@ update_texture_state( GLcontext *ctx )
if (ctx->TextureMatrixStack[unit].Top->type != MATRIX_IDENTITY)
ctx->Texture._TexMatEnabled |= ENABLE_TEXMAT(unit);
}
-
- /* Determine which texture coordinate sets are actually needed */
- if (fprog) {
- const GLuint coordMask = (1 << MAX_TEXTURE_COORD_UNITS) - 1;
- ctx->Texture._EnabledCoordUnits
- = (fprog->Base.InputsRead >> FRAG_ATTRIB_TEX0) & coordMask;
- }
- else {
- ctx->Texture._EnabledCoordUnits = ctx->Texture._EnabledUnits;
- }
}
@@ -811,7 +819,6 @@ _mesa_free_texture_data(GLcontext *ctx)
for (tgt = 0; tgt < NUM_TEXTURE_TARGETS; tgt++)
ctx->Driver.DeleteTexture(ctx, ctx->Texture.ProxyTex[tgt]);
-
#if FEATURE_colortable
{
GLuint i;
@@ -820,3 +827,27 @@ _mesa_free_texture_data(GLcontext *ctx)
}
#endif
}
+
+
+/**
+ * Update the default texture objects in the given context to reference those
+ * specified in the shared state and release those referencing the old
+ * shared state.
+ */
+void
+_mesa_update_default_objects_texture(GLcontext *ctx)
+{
+ GLuint i;
+
+ for (i = 0; i < MAX_TEXTURE_UNITS; i++) {
+ struct gl_texture_unit *texUnit = &ctx->Texture.Unit[i];
+
+ _mesa_reference_texobj(&texUnit->Current1D, ctx->Shared->Default1D);
+ _mesa_reference_texobj(&texUnit->Current2D, ctx->Shared->Default2D);
+ _mesa_reference_texobj(&texUnit->Current3D, ctx->Shared->Default3D);
+ _mesa_reference_texobj(&texUnit->CurrentCubeMap, ctx->Shared->DefaultCubeMap);
+ _mesa_reference_texobj(&texUnit->CurrentRect, ctx->Shared->DefaultRect);
+ _mesa_reference_texobj(&texUnit->Current1DArray, ctx->Shared->Default1DArray);
+ _mesa_reference_texobj(&texUnit->Current2DArray, ctx->Shared->Default2DArray);
+ }
+}
diff --git a/src/mesa/main/texstate.h b/src/mesa/main/texstate.h
index b5003d5d6ec..a7d7088c621 100644
--- a/src/mesa/main/texstate.h
+++ b/src/mesa/main/texstate.h
@@ -73,6 +73,9 @@ _mesa_init_texture( GLcontext *ctx );
extern void
_mesa_free_texture_data( GLcontext *ctx );
+extern void
+_mesa_update_default_objects_texture(GLcontext *ctx);
+
/*@}*/
#endif
diff --git a/src/mesa/main/texstore.c b/src/mesa/main/texstore.c
index 0fd6a2daae2..7278180a5cc 100644
--- a/src/mesa/main/texstore.c
+++ b/src/mesa/main/texstore.c
@@ -1,6 +1,6 @@
/*
* Mesa 3-D graphics library
- * Version: 7.1
+ * Version: 7.3
*
* Copyright (C) 1999-2008 Brian Paul All Rights Reserved.
*
@@ -1536,10 +1536,10 @@ _mesa_texstore_argb8888(TEXSTORE_PARAMS)
for (row = 0; row < srcHeight; row++) {
GLuint *d4 = (GLuint *) dstRow;
for (col = 0; col < srcWidth; col++) {
- d4[col] = ((0xff << 24) |
- (srcRow[col * 3 + RCOMP] << 16) |
- (srcRow[col * 3 + GCOMP] << 8) |
- (srcRow[col * 3 + BCOMP] << 0));
+ d4[col] = PACK_COLOR_8888(0xff,
+ srcRow[col * 3 + RCOMP],
+ srcRow[col * 3 + GCOMP],
+ srcRow[col * 3 + BCOMP]);
}
dstRow += dstRowStride;
srcRow += srcRowStride;
@@ -1551,8 +1551,7 @@ _mesa_texstore_argb8888(TEXSTORE_PARAMS)
dstFormat == &_mesa_texformat_argb8888 &&
srcFormat == GL_RGBA &&
baseInternalFormat == GL_RGBA &&
- srcType == GL_UNSIGNED_BYTE &&
- littleEndian) {
+ srcType == GL_UNSIGNED_BYTE) {
/* same as above case, but src data has alpha too */
GLint img, row, col;
/* For some reason, streaming copies to write-combined regions
@@ -1573,39 +1572,10 @@ _mesa_texstore_argb8888(TEXSTORE_PARAMS)
for (row = 0; row < srcHeight; row++) {
GLuint *d4 = (GLuint *) dstRow;
for (col = 0; col < srcWidth; col++) {
- d4[col] = ((srcRow[col * 4 + ACOMP] << 24) |
- (srcRow[col * 4 + RCOMP] << 16) |
- (srcRow[col * 4 + GCOMP] << 8) |
- (srcRow[col * 4 + BCOMP] << 0));
- }
- dstRow += dstRowStride;
- srcRow += srcRowStride;
- }
- }
- }
- else if (!ctx->_ImageTransferState &&
- !srcPacking->SwapBytes &&
- dstFormat == &_mesa_texformat_argb8888 &&
- srcFormat == GL_RGBA &&
- baseInternalFormat == GL_RGBA &&
- srcType == GL_UNSIGNED_BYTE) {
-
- GLint img, row, col;
- for (img = 0; img < srcDepth; img++) {
- const GLint srcRowStride = _mesa_image_row_stride(srcPacking,
- srcWidth, srcFormat, srcType);
- GLubyte *srcRow = (GLubyte *) _mesa_image_address(dims, srcPacking,
- srcAddr, srcWidth, srcHeight, srcFormat, srcType, img, 0, 0);
- GLubyte *dstRow = (GLubyte *) dstAddr
- + dstImageOffsets[dstZoffset + img] * dstFormat->TexelBytes
- + dstYoffset * dstRowStride
- + dstXoffset * dstFormat->TexelBytes;
- for (row = 0; row < srcHeight; row++) {
- for (col = 0; col < srcWidth; col++) {
- dstRow[col * 4 + 0] = srcRow[col * 4 + BCOMP];
- dstRow[col * 4 + 1] = srcRow[col * 4 + GCOMP];
- dstRow[col * 4 + 2] = srcRow[col * 4 + RCOMP];
- dstRow[col * 4 + 3] = srcRow[col * 4 + ACOMP];
+ d4[col] = PACK_COLOR_8888(srcRow[col * 4 + ACOMP],
+ srcRow[col * 4 + RCOMP],
+ srcRow[col * 4 + GCOMP],
+ srcRow[col * 4 + BCOMP]);
}
dstRow += dstRowStride;
srcRow += srcRowStride;
@@ -3018,10 +2988,13 @@ choose_texture_format(GLcontext *ctx, struct gl_texture_image *texImage,
-/*
+/**
* This is the software fallback for Driver.TexImage1D()
* and Driver.CopyTexImage1D().
* \sa _mesa_store_teximage2d()
+ * Note that the width may not be the actual texture width since it may
+ * be changed by convolution w/ GL_REDUCE. The texImage->Width field will
+ * have the actual texture size.
*/
void
_mesa_store_teximage1d(GLcontext *ctx, GLenum target, GLint level,
@@ -3032,21 +3005,16 @@ _mesa_store_teximage1d(GLcontext *ctx, GLenum target, GLint level,
struct gl_texture_object *texObj,
struct gl_texture_image *texImage)
{
- GLint postConvWidth = width;
GLint sizeInBytes;
(void) border;
- if (ctx->_ImageTransferState & IMAGE_CONVOLUTION_BIT) {
- _mesa_adjust_image_for_convolution(ctx, 1, &postConvWidth, NULL);
- }
-
choose_texture_format(ctx, texImage, 1, format, type, internalFormat);
/* allocate memory */
if (texImage->IsCompressed)
sizeInBytes = texImage->CompressedSize;
else
- sizeInBytes = postConvWidth * texImage->TexFormat->TexelBytes;
+ sizeInBytes = texImage->Width * texImage->TexFormat->TexelBytes;
texImage->Data = _mesa_alloc_texmemory(sizeInBytes);
if (!texImage->Data) {
_mesa_error(ctx, GL_OUT_OF_MEMORY, "glTexImage1D");
@@ -3106,15 +3074,9 @@ _mesa_store_teximage2d(GLcontext *ctx, GLenum target, GLint level,
struct gl_texture_object *texObj,
struct gl_texture_image *texImage)
{
- GLint postConvWidth = width, postConvHeight = height;
GLint texelBytes, sizeInBytes;
(void) border;
- if (ctx->_ImageTransferState & IMAGE_CONVOLUTION_BIT) {
- _mesa_adjust_image_for_convolution(ctx, 2, &postConvWidth,
- &postConvHeight);
- }
-
choose_texture_format(ctx, texImage, 2, format, type, internalFormat);
texelBytes = texImage->TexFormat->TexelBytes;
@@ -3123,7 +3085,7 @@ _mesa_store_teximage2d(GLcontext *ctx, GLenum target, GLint level,
if (texImage->IsCompressed)
sizeInBytes = texImage->CompressedSize;
else
- sizeInBytes = postConvWidth * postConvHeight * texelBytes;
+ sizeInBytes = texImage->Width * texImage->Height * texelBytes;
texImage->Data = _mesa_alloc_texmemory(sizeInBytes);
if (!texImage->Data) {
_mesa_error(ctx, GL_OUT_OF_MEMORY, "glTexImage2D");
@@ -3757,6 +3719,14 @@ _mesa_get_teximage(GLcontext *ctx, GLenum target, GLint level,
/* general case: convert row to RGBA format */
GLfloat rgba[MAX_WIDTH][4];
GLint col;
+ GLbitfield transferOps = 0x0;
+
+ if (type == GL_FLOAT &&
+ ((ctx->Color.ClampReadColor == GL_TRUE) ||
+ (ctx->Color.ClampReadColor == GL_FIXED_ONLY_ARB &&
+ texImage->TexFormat->DataType != GL_FLOAT)))
+ transferOps |= IMAGE_CLAMP_BIT;
+
for (col = 0; col < width; col++) {
(*texImage->FetchTexelf)(texImage, col, row, img, rgba[col]);
if (texImage->TexFormat->BaseFormat == GL_ALPHA) {
@@ -3781,7 +3751,7 @@ _mesa_get_teximage(GLcontext *ctx, GLenum target, GLint level,
}
_mesa_pack_rgba_span_float(ctx, width, (GLfloat (*)[4]) rgba,
format, type, dest,
- &ctx->Pack, 0x0 /*image xfer ops*/);
+ &ctx->Pack, transferOps /*image xfer ops*/);
} /* format */
} /* row */
} /* img */
@@ -3802,8 +3772,8 @@ _mesa_get_teximage(GLcontext *ctx, GLenum target, GLint level,
void
_mesa_get_compressed_teximage(GLcontext *ctx, GLenum target, GLint level,
GLvoid *img,
- const struct gl_texture_object *texObj,
- const struct gl_texture_image *texImage)
+ struct gl_texture_object *texObj,
+ struct gl_texture_image *texImage)
{
GLuint size;
diff --git a/src/mesa/main/texstore.h b/src/mesa/main/texstore.h
index c5813fbeeec..c9edf14dbc5 100644
--- a/src/mesa/main/texstore.h
+++ b/src/mesa/main/texstore.h
@@ -215,8 +215,8 @@ _mesa_get_teximage(GLcontext *ctx, GLenum target, GLint level,
extern void
_mesa_get_compressed_teximage(GLcontext *ctx, GLenum target, GLint level,
GLvoid *img,
- const struct gl_texture_object *texObj,
- const struct gl_texture_image *texImage);
+ struct gl_texture_object *texObj,
+ struct gl_texture_image *texImage);
extern const GLvoid *
_mesa_validate_pbo_teximage(GLcontext *ctx, GLuint dimensions,
diff --git a/src/mesa/main/varray.c b/src/mesa/main/varray.c
index 9f1fcd9d262..9d9b28b5189 100644
--- a/src/mesa/main/varray.c
+++ b/src/mesa/main/varray.c
@@ -499,7 +499,7 @@ void GLAPIENTRY
_mesa_VertexAttribPointerNV(GLuint index, GLint size, GLenum type,
GLsizei stride, const GLvoid *ptr)
{
- const GLboolean normalized = GL_FALSE;
+ GLboolean normalized = GL_FALSE;
GLsizei elementSize;
GET_CURRENT_CONTEXT(ctx);
ASSERT_OUTSIDE_BEGIN_END(ctx);
@@ -527,6 +527,7 @@ _mesa_VertexAttribPointerNV(GLuint index, GLint size, GLenum type,
/* check for valid 'type' and compute StrideB right away */
switch (type) {
case GL_UNSIGNED_BYTE:
+ normalized = GL_TRUE;
elementSize = size * sizeof(GLubyte);
break;
case GL_SHORT:
@@ -865,16 +866,22 @@ _mesa_LockArraysEXT(GLint first, GLsizei count)
if (MESA_VERBOSE & VERBOSE_API)
_mesa_debug(ctx, "glLockArrays %d %d\n", first, count);
- if (first == 0 && count > 0 &&
- count <= (GLint) ctx->Const.MaxArrayLockSize) {
- ctx->Array.LockFirst = first;
- ctx->Array.LockCount = count;
+ if (first < 0) {
+ _mesa_error( ctx, GL_INVALID_VALUE, "glLockArraysEXT(first)" );
+ return;
}
- else {
- ctx->Array.LockFirst = 0;
- ctx->Array.LockCount = 0;
+ if (count <= 0) {
+ _mesa_error( ctx, GL_INVALID_VALUE, "glLockArraysEXT(count)" );
+ return;
+ }
+ if (ctx->Array.LockCount != 0) {
+ _mesa_error( ctx, GL_INVALID_OPERATION, "glLockArraysEXT(reentry)" );
+ return;
}
+ ctx->Array.LockFirst = first;
+ ctx->Array.LockCount = count;
+
ctx->NewState |= _NEW_ARRAY;
ctx->Array.NewState |= _NEW_ARRAY_ALL;
@@ -892,6 +899,11 @@ _mesa_UnlockArraysEXT( void )
if (MESA_VERBOSE & VERBOSE_API)
_mesa_debug(ctx, "glUnlockArrays\n");
+ if (ctx->Array.LockCount == 0) {
+ _mesa_error( ctx, GL_INVALID_OPERATION, "glUnlockArraysEXT(reexit)" );
+ return;
+ }
+
ctx->Array.LockFirst = 0;
ctx->Array.LockCount = 0;
ctx->NewState |= _NEW_ARRAY;
diff --git a/src/mesa/main/varray.h b/src/mesa/main/varray.h
index f557940738e..97d5c8219d0 100644
--- a/src/mesa/main/varray.h
+++ b/src/mesa/main/varray.h
@@ -150,6 +150,11 @@ _mesa_MultiModeDrawElementsIBM( const GLenum * mode, const GLsizei * count,
GLenum type, const GLvoid * const * indices,
GLsizei primcount, GLint modestride );
+extern void GLAPIENTRY
+_mesa_LockArraysEXT(GLint first, GLsizei count);
+
+extern void GLAPIENTRY
+_mesa_UnlockArraysEXT( void );
extern void GLAPIENTRY
diff --git a/src/mesa/main/version.h b/src/mesa/main/version.h
index 9229077f42c..81034a35d1e 100644
--- a/src/mesa/main/version.h
+++ b/src/mesa/main/version.h
@@ -1,8 +1,8 @@
/*
* Mesa 3-D graphics library
- * Version: 7.1
+ * Version: 7.3
*
- * Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
+ * Copyright (C) 1999-2008 Brian Paul All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
@@ -29,9 +29,9 @@
/* Mesa version */
#define MESA_MAJOR 7
-#define MESA_MINOR 1
+#define MESA_MINOR 3
#define MESA_PATCH 0
-#define MESA_VERSION_STRING "7.1"
+#define MESA_VERSION_STRING "7.3-devel"
/* To make version comparison easy */
#define MESA_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))