Initial Regal support for GL_REGAL_ES1_0_compatibility and GL_REGAL_ES1_1_compatibility.

Improved build support for NaCL.
GLEW refresh.
This commit is contained in:
Nigel Stewart 2012-08-19 19:36:32 -05:00
parent 049cc60b25
commit 2ab57ed958
28 changed files with 6063 additions and 248 deletions

View file

@ -36,7 +36,7 @@ endif
INCLUDE = -Iinclude
CFLAGS = $(OPT) $(WARN) $(INCLUDE) $(CFLAGS.EXTRA)
all: regal.lib glew.lib glut.lib regal.bin
all: regal.lib glew.lib glu.lib glut.lib regal.bin
# Debug target implies Regal targets, only
@ -47,6 +47,14 @@ debug: regal.lib
export:
scripts/Export.py --api gl 4.2 --api wgl 4.0 --api glx 4.0 --api cgl 1.4 --api egl 1.0 --outdir src/regal
# Disable mongoose and Regal HTTP for NaCL build
ifneq ($(filter nacl%,$(SYSTEM)),)
CFLAGS += -DREGAL_NO_HTTP
endif
#
LIB.LDFLAGS := -lstdc++ -lpthread -ldl -lm
LIB.LIBS :=
@ -72,12 +80,15 @@ LIB.SRCS += src/regal/RegalDispatchMissing.cpp
LIB.SRCS += src/regal/RegalHttp.cpp
LIB.SRCS += src/regal/RegalFavicon.cpp
ifeq ($(filter %REGAL_NO_HTTP%,$(CFLAGS)),)
LIB.SRCS += src/mongoose/mongoose.c
endif
LIB.INCLUDE += -Isrc/mongoose
LIB.SRCS.NAMES := $(notdir $(LIB.SRCS))
LIB.INCLUDE += -Isrc/boost
LIB.INCLUDE += -Isrc/mongoose
LIB.DEPS :=
LIB.DEPS += include/GL/Regal.h
@ -90,8 +101,6 @@ LIB.SOBJS := $(addprefix tmp/$(SYSTEM)/regal/shared/,$(LIB.SRCS.NAMES))
LIB.SOBJS := $(LIB.SOBJS:.c=.o)
LIB.SOBJS := $(LIB.SOBJS:.cpp=.o)
#CFLAGS += -DREGAL_NO_HTTP
regal.lib: lib lib/$(LIB.SHARED) lib/$(LIB.STATIC)
lib:
@ -182,17 +191,15 @@ ifneq ($(STRIP),)
$(STRIP) -x $@
endif
ifneq ($(filter darwin%,$(SYSTEM)),)
glu.lib:
glut.lib:
else
#
# RegalGLU
#
ifneq ($(filter darwin%,$(SYSTEM)),)
glu.lib:
else
GLU.SRCS += src/glu/libtess/dict.c
GLU.SRCS += src/glu/libtess/geom.c
GLU.SRCS += src/glu/libtess/memalloc.c
@ -324,11 +331,21 @@ ifneq ($(STRIP),)
$(STRIP) -x $@
endif
endif
#
# RegalGLUT
#
# Don't build GLUT for OS X or NaCL
ifneq ($(filter darwin%,$(SYSTEM)),)
glut.lib:
else
ifneq ($(filter nacl%,$(SYSTEM)),)
glut.lib:
else
# NOT for windows...
GLUT.SRCS += src/glut/src/capturexfont.c
@ -406,11 +423,16 @@ ifneq ($(STRIP),)
$(STRIP) -x $@
endif
endif
endif
# Examples
ifneq ($(filter nacl%,$(SYSTEM)),)
regal.bin: lib bin
else
regal.bin: lib bin bin/glewinfo bin/dreamtorus bin/tiger
endif
bin:
mkdir bin
@ -442,6 +464,14 @@ ifneq ($(STRIP),)
$(STRIP) -x $@
endif
# GLUT and GLU dependency for non-Mac, non-Nacl builds
ifeq ($(filter darwin%,$(SYSTEM)),)
ifeq ($(filter nacl%,$(SYSTEM)),)
bin/dreamtorus: lib/$(GLUT.SHARED) lib/$(GLU.SHARED)
endif
endif
#
# tiger
#
@ -466,17 +496,16 @@ ifneq ($(STRIP),)
$(STRIP) -x $@
endif
#
# GLUT dependency for non-Mac, non-Nacl builds
#
# GLUT and GLU dependency for non-Mac, non-Nacl builds
ifeq ($(filter darwin%,$(SYSTEM)),)
ifeq ($(filter nacl%,$(SYSTEM)),)
bin/tiger: lib/$(GLUT.SHARED) lib/$(GLU.SHARED)
bin/dreamtorus: lib/$(GLUT.SHARED) lib/$(GLU.SHARED)
endif
endif
######################################
clean:
$(RM) -r tmp/
$(RM) -r lib/

View file

@ -1,15 +1,19 @@
NAME = $(REGAL_NAME)
# Building without NACL_SDK_ROOT set?
ifeq ($(NACL_SDK_ROOT),)
M_PREFIX = i686
M_NAME ?= $(shell uname -s)
ifeq (Linux,${M_NAME})
M_PREFIX = i686
endif
CC := $(M_PREFIX)-nacl-gcc
CXX := $(M_PREFIX)-nacl-g++
LD := $(M_PREFIX)-nacl-ld
STRIP ?=
endif
CC = $(M_PREFIX)-nacl-gcc
CXX = $(M_PREFIX)-nacl-g++
LD = $(M_PREFIX)-nacl-ld
AR = $(M_PREFIX)-nacl-ar
EXT.DYNAMIC = so
LDFLAGS.EXTRA =
LIBDIR =

View file

@ -1,15 +1,19 @@
NAME = $(REGAL_NAME)
# Building without NACL_SDK_ROOT set?
ifeq ($(NACL_SDK_ROOT),)
M_PREFIX = i686
M_NAME ?= $(shell uname -s)
ifeq (Linux,${M_NAME})
M_PREFIX = i686
endif
CC := $(M_PREFIX)-nacl-gcc
CXX := $(M_PREFIX)-nacl-g++
LD := $(M_PREFIX)-nacl-ld
STRIP ?=
endif
CC = $(M_PREFIX)-nacl-gcc
CXX = $(M_PREFIX)-nacl-g++
LD = $(M_PREFIX)-nacl-ld
AR = $(M_PREFIX)-nacl-ar
EXT.DYNAMIC = so
LDFLAGS.EXTRA =
LIBDIR =

View file

@ -0,0 +1,113 @@
Name
REGAL_ES1_0_compatibility
Name Strings
GL_REGAL_ES1_0_compatibility
Contact
Cass Everitt, NVIDIA (ceveritt 'at' nvidia.com)
Nigel Stewart, NVIDIA (nstewart 'at' nvidia.com)
Scott Nations, NVIDIA (snations 'at' nvidia.com)
Contributors
None.
Status
XXX - Experimental - not approved by Khronos.
Version
Last Modified Date: August 18, 2012
Revision: 1
Number
REGAL Extension #5
Dependencies
None.
This extension is written against the OpenGL 4.2
Specification (April 27, 20012).
Overview
OpenGL ES 1.0
IP Status
Not known.
New Procedures and Functions
void glAlphaFuncx (GLenum func, GLclampx ref)
void glClearColorx (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha)
void glClearDepthx (GLclampx depth)
void glColor4x (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
void glDepthRangex (GLclampx zNear, GLclampx zFar)
void glFogx (GLenum pname, GLfixed param)
void glFogxv (GLenum pname, const GLfixed *params)
void glFrustumf (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
void glFrustumx (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
void glLightModelx (GLenum pname, GLfixed param)
void glLightModelxv (GLenum pname, const GLfixed *params)
void glLightx (GLenum light, GLenum pname, GLfixed param)
void glLightxv (GLenum light, GLenum pname, const GLfixed *params)
void glLineWidthx (GLfixed width)
void glLoadMatrixx (const GLfixed *m)
void glMaterialx (GLenum face, GLenum pname, GLfixed param)
void glMaterialxv (GLenum face, GLenum pname, const GLfixed *params)
void glMultMatrixx (const GLfixed *m)
void glMultiTexCoord4x (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q)
void glNormal3x (GLfixed nx, GLfixed ny, GLfixed nz)
void glOrthof (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
void glOrthox (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
void glPointSizex (GLfixed size)
void glPolygonOffsetx (GLfixed factor, GLfixed units)
void glRotatex (GLfixed angle, GLfixed x, GLfixed y, GLfixed z)
void glSampleCoveragex (GLclampx value, GLboolean invert)
void glScalex (GLfixed x, GLfixed y, GLfixed z)
void glTexEnvx (GLenum target, GLenum pname, GLfixed param)
void glTexEnvxv (GLenum target, GLenum pname, const GLfixed *params)
void glTexParameterx (GLenum target, GLenum pname, GLfixed param)
void glTranslatex (GLfixed x, GLfixed y, GLfixed z)
New Types
None
New Tokens
None
Additions to Chapter x of the OpenGL 4.2 (Core Profile) Specification
(OpenGL Operation)
TODO
Errors
None.
New State
None.
New Implementation Dependent State
None.
Issues
None.
Revision History
Revision 1, 2012/08/18
- Initial revision.

View file

@ -0,0 +1,95 @@
Name
REGAL_ES1_1_compatibility
Name Strings
GL_REGAL_ES1_1_compatibility
Contact
Cass Everitt, NVIDIA (ceveritt 'at' nvidia.com)
Nigel Stewart, NVIDIA (nstewart 'at' nvidia.com)
Scott Nations, NVIDIA (snations 'at' nvidia.com)
Contributors
None.
Status
XXX - Experimental - not approved by Khronos.
Version
Last Modified Date: August 18, 2012
Revision: 1
Number
REGAL Extension #6
Dependencies
None.
This extension is written against the OpenGL 4.2
Specification (April 27, 20012).
Overview
OpenGL ES 1.1
IP Status
Not known.
New Procedures and Functions
void glClipPlanef (GLenum plane, const GLfloat *equation)
void glGetClipPlanef (GLenum pname, GLfloat eqn[4])
void glClipPlanex (GLenum plane, const GLfixed *equation)
void glGetClipPlanex (GLenum pname, GLfixed eqn[4])
void glGetFixedv (GLenum pname, GLfixed *params)
void glGetLightxv (GLenum light, GLenum pname, GLfixed *params)
void glGetMaterialxv (GLenum face, GLenum pname, GLfixed *params)
void glGetTexEnvxv (GLenum env, GLenum pname, GLfixed *params)
void glGetTexParameterxv (GLenum target, GLenum pname, GLfixed *params)
void glPointParameterx (GLenum pname, GLfixed param)
void glPointParameterxv (GLenum pname, const GLfixed *params)
void glTexParameterxv (GLenum target, GLenum pname, const GLfixed *params)
void glPointSizePointerOES (GLenum type, GLsizei stride, const GLvoid *pointer)
New Types
None
New Tokens
None
Additions to Chapter x of the OpenGL 4.2 (Core Profile) Specification
(OpenGL Operation)
TODO
Errors
None.
New State
None.
New Implementation Dependent State
None.
Issues
None.
Revision History
Revision 1, 2012/08/18
- Initial revision.

View file

@ -102,12 +102,6 @@
typedef XID GLXDrawable;
#endif
#if REGAL_SYS_NACL
#include <stdint.h>
typedef int32_t PP_Resource;
struct PPB_OpenGLES2;
#endif
#ifdef __cplusplus
extern "C" {
#endif
@ -160,6 +154,8 @@ typedef unsigned short GLhalfNV;
typedef int64_t GLint64EXT;
typedef uint64_t GLuint64EXT;
typedef GLintptr GLvdpauSurfaceNV;
typedef int GLfixed;
typedef int GLclampx;
#if REGAL_SYS_WGL
#ifdef REGAL_SYS_WGL_DECLARE_WGL
@ -19216,6 +19212,204 @@ REGAL_DECL void REGAL_CALL glHintPGI(GLenum target, GLint mode);
#define GL_TEXCOORD4_BIT_PGI 0x80000000 /* 2147483648 */
#endif
/**
** GL_REGAL_ES1_0_compatibility
**/
#if (defined(GL_REGAL_ES1_0_COMPATIBILITY) || defined(REGAL_NO_ENUM) || defined(REGAL_NO_GL_REGAL_ES1_0_COMPATIBILITY)) && !defined(REGAL_NO_ENUM_GL_REGAL_ES1_0_COMPATIBILITY)
#define REGAL_NO_ENUM_GL_REGAL_ES1_0_COMPATIBILITY
#endif
#if (defined(GL_REGAL_ES1_0_COMPATIBILITY) || defined(REGAL_NO_TYPEDEF) || defined(REGAL_NO_GL_REGAL_ES1_0_COMPATIBILITY)) && !defined(REGAL_NO_TYPEDEF_GL_REGAL_ES1_0_COMPATIBILITY)
#define REGAL_NO_TYPEDEF_GL_REGAL_ES1_0_COMPATIBILITY
#endif
#if (defined(GL_REGAL_ES1_0_COMPATIBILITY) || !defined(REGAL_NAMESPACE) || defined(REGAL_NO_GL_REGAL_ES1_0_COMPATIBILITY)) && !defined(REGAL_NO_NAMESPACE_GL_REGAL_ES1_0_COMPATIBILITY)
#define REGAL_NO_NAMESPACE_GL_REGAL_ES1_0_COMPATIBILITY
#endif
#if (defined(GL_REGAL_ES1_0_COMPATIBILITY) || defined(REGAL_NO_DECLARATION) || defined(REGAL_NO_GL_REGAL_ES1_0_COMPATIBILITY)) && !defined(REGAL_NO_DECLARATION_GL_REGAL_ES1_0_COMPATIBILITY)
#define REGAL_NO_DECLARATION_GL_REGAL_ES1_0_COMPATIBILITY
#endif
#ifndef GL_REGAL_ES1_0_compatibility
#define GL_REGAL_ES1_0_compatibility 1
#endif
#ifndef REGAL_NO_TYPEDEF_GL_REGAL_ES1_0_COMPATIBILITY
typedef void (REGAL_CALL *PFNGLALPHAFUNCXPROC)(GLenum func, GLclampx ref);
typedef void (REGAL_CALL *PFNGLCLEARCOLORXPROC)(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha);
typedef void (REGAL_CALL *PFNGLCLEARDEPTHXPROC)(GLclampx depth);
typedef void (REGAL_CALL *PFNGLCOLOR4XPROC)(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
typedef void (REGAL_CALL *PFNGLDEPTHRANGEXPROC)(GLclampx zNear, GLclampx zFar);
typedef void (REGAL_CALL *PFNGLFOGXPROC)(GLenum pname, GLfixed param);
typedef void (REGAL_CALL *PFNGLFOGXVPROC)(GLenum pname, const GLfixed *params);
typedef void (REGAL_CALL *PFNGLFRUSTUMFPROC)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
typedef void (REGAL_CALL *PFNGLFRUSTUMXPROC)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
typedef void (REGAL_CALL *PFNGLLIGHTMODELXPROC)(GLenum pname, GLfixed param);
typedef void (REGAL_CALL *PFNGLLIGHTMODELXVPROC)(GLenum pname, const GLfixed *params);
typedef void (REGAL_CALL *PFNGLLIGHTXPROC)(GLenum light, GLenum pname, GLfixed param);
typedef void (REGAL_CALL *PFNGLLIGHTXVPROC)(GLenum light, GLenum pname, const GLfixed *params);
typedef void (REGAL_CALL *PFNGLLINEWIDTHXPROC)(GLfixed width);
typedef void (REGAL_CALL *PFNGLLOADMATRIXXPROC)(const GLfixed *m);
typedef void (REGAL_CALL *PFNGLMATERIALXPROC)(GLenum face, GLenum pname, GLfixed param);
typedef void (REGAL_CALL *PFNGLMATERIALXVPROC)(GLenum face, GLenum pname, const GLfixed *params);
typedef void (REGAL_CALL *PFNGLMULTITEXCOORD4XPROC)(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
typedef void (REGAL_CALL *PFNGLMULTMATRIXXPROC)(const GLfixed *m);
typedef void (REGAL_CALL *PFNGLNORMAL3XPROC)(GLfixed nx, GLfixed ny, GLfixed nz);
typedef void (REGAL_CALL *PFNGLORTHOFPROC)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
typedef void (REGAL_CALL *PFNGLORTHOXPROC)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
typedef void (REGAL_CALL *PFNGLPOINTSIZEXPROC)(GLfixed size);
typedef void (REGAL_CALL *PFNGLPOLYGONOFFSETXPROC)(GLfixed factor, GLfixed units);
typedef void (REGAL_CALL *PFNGLROTATEXPROC)(GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
typedef void (REGAL_CALL *PFNGLSAMPLECOVERAGEXPROC)(GLclampx value, GLboolean invert);
typedef void (REGAL_CALL *PFNGLSCALEXPROC)(GLfixed x, GLfixed y, GLfixed z);
typedef void (REGAL_CALL *PFNGLTEXENVXPROC)(GLenum target, GLenum pname, GLfixed param);
typedef void (REGAL_CALL *PFNGLTEXENVXVPROC)(GLenum target, GLenum pname, const GLfixed *params);
typedef void (REGAL_CALL *PFNGLTEXPARAMETERXPROC)(GLenum target, GLenum pname, GLfixed param);
typedef void (REGAL_CALL *PFNGLTRANSLATEXPROC)(GLfixed x, GLfixed y, GLfixed z);
#endif
#ifndef REGAL_NO_NAMESPACE_GL_REGAL_ES1_0_COMPATIBILITY
#define glAlphaFuncx rglAlphaFuncx
#define glClearColorx rglClearColorx
#define glClearDepthx rglClearDepthx
#define glColor4x rglColor4x
#define glDepthRangex rglDepthRangex
#define glFogx rglFogx
#define glFogxv rglFogxv
#define glFrustumf rglFrustumf
#define glFrustumx rglFrustumx
#define glLightModelx rglLightModelx
#define glLightModelxv rglLightModelxv
#define glLightx rglLightx
#define glLightxv rglLightxv
#define glLineWidthx rglLineWidthx
#define glLoadMatrixx rglLoadMatrixx
#define glMaterialx rglMaterialx
#define glMaterialxv rglMaterialxv
#define glMultMatrixx rglMultMatrixx
#define glMultiTexCoord4x rglMultiTexCoord4x
#define glNormal3x rglNormal3x
#define glOrthof rglOrthof
#define glOrthox rglOrthox
#define glPointSizex rglPointSizex
#define glPolygonOffsetx rglPolygonOffsetx
#define glRotatex rglRotatex
#define glSampleCoveragex rglSampleCoveragex
#define glScalex rglScalex
#define glTexEnvx rglTexEnvx
#define glTexEnvxv rglTexEnvxv
#define glTexParameterx rglTexParameterx
#define glTranslatex rglTranslatex
#endif
#ifndef REGAL_NO_DECLARATION_GL_REGAL_ES1_0_COMPATIBILITY
REGAL_DECL void REGAL_CALL glAlphaFuncx(GLenum func, GLclampx ref);
REGAL_DECL void REGAL_CALL glClearColorx(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha);
REGAL_DECL void REGAL_CALL glClearDepthx(GLclampx depth);
REGAL_DECL void REGAL_CALL glColor4x(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
REGAL_DECL void REGAL_CALL glDepthRangex(GLclampx zNear, GLclampx zFar);
REGAL_DECL void REGAL_CALL glFogx(GLenum pname, GLfixed param);
REGAL_DECL void REGAL_CALL glFogxv(GLenum pname, const GLfixed *params);
REGAL_DECL void REGAL_CALL glFrustumf(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
REGAL_DECL void REGAL_CALL glFrustumx(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
REGAL_DECL void REGAL_CALL glLightModelx(GLenum pname, GLfixed param);
REGAL_DECL void REGAL_CALL glLightModelxv(GLenum pname, const GLfixed *params);
REGAL_DECL void REGAL_CALL glLightx(GLenum light, GLenum pname, GLfixed param);
REGAL_DECL void REGAL_CALL glLightxv(GLenum light, GLenum pname, const GLfixed *params);
REGAL_DECL void REGAL_CALL glLineWidthx(GLfixed width);
REGAL_DECL void REGAL_CALL glLoadMatrixx(const GLfixed *m);
REGAL_DECL void REGAL_CALL glMaterialx(GLenum face, GLenum pname, GLfixed param);
REGAL_DECL void REGAL_CALL glMaterialxv(GLenum face, GLenum pname, const GLfixed *params);
REGAL_DECL void REGAL_CALL glMultMatrixx(const GLfixed *m);
REGAL_DECL void REGAL_CALL glMultiTexCoord4x(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
REGAL_DECL void REGAL_CALL glNormal3x(GLfixed nx, GLfixed ny, GLfixed nz);
REGAL_DECL void REGAL_CALL glOrthof(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
REGAL_DECL void REGAL_CALL glOrthox(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
REGAL_DECL void REGAL_CALL glPointSizex(GLfixed size);
REGAL_DECL void REGAL_CALL glPolygonOffsetx(GLfixed factor, GLfixed units);
REGAL_DECL void REGAL_CALL glRotatex(GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
REGAL_DECL void REGAL_CALL glSampleCoveragex(GLclampx value, GLboolean invert);
REGAL_DECL void REGAL_CALL glScalex(GLfixed x, GLfixed y, GLfixed z);
REGAL_DECL void REGAL_CALL glTexEnvx(GLenum target, GLenum pname, GLfixed param);
REGAL_DECL void REGAL_CALL glTexEnvxv(GLenum target, GLenum pname, const GLfixed *params);
REGAL_DECL void REGAL_CALL glTexParameterx(GLenum target, GLenum pname, GLfixed param);
REGAL_DECL void REGAL_CALL glTranslatex(GLfixed x, GLfixed y, GLfixed z);
#endif
/**
** GL_REGAL_ES1_1_compatibility
**/
#if (defined(GL_REGAL_ES1_1_COMPATIBILITY) || defined(REGAL_NO_ENUM) || defined(REGAL_NO_GL_REGAL_ES1_1_COMPATIBILITY)) && !defined(REGAL_NO_ENUM_GL_REGAL_ES1_1_COMPATIBILITY)
#define REGAL_NO_ENUM_GL_REGAL_ES1_1_COMPATIBILITY
#endif
#if (defined(GL_REGAL_ES1_1_COMPATIBILITY) || defined(REGAL_NO_TYPEDEF) || defined(REGAL_NO_GL_REGAL_ES1_1_COMPATIBILITY)) && !defined(REGAL_NO_TYPEDEF_GL_REGAL_ES1_1_COMPATIBILITY)
#define REGAL_NO_TYPEDEF_GL_REGAL_ES1_1_COMPATIBILITY
#endif
#if (defined(GL_REGAL_ES1_1_COMPATIBILITY) || !defined(REGAL_NAMESPACE) || defined(REGAL_NO_GL_REGAL_ES1_1_COMPATIBILITY)) && !defined(REGAL_NO_NAMESPACE_GL_REGAL_ES1_1_COMPATIBILITY)
#define REGAL_NO_NAMESPACE_GL_REGAL_ES1_1_COMPATIBILITY
#endif
#if (defined(GL_REGAL_ES1_1_COMPATIBILITY) || defined(REGAL_NO_DECLARATION) || defined(REGAL_NO_GL_REGAL_ES1_1_COMPATIBILITY)) && !defined(REGAL_NO_DECLARATION_GL_REGAL_ES1_1_COMPATIBILITY)
#define REGAL_NO_DECLARATION_GL_REGAL_ES1_1_COMPATIBILITY
#endif
#ifndef GL_REGAL_ES1_1_compatibility
#define GL_REGAL_ES1_1_compatibility 1
#endif
#ifndef REGAL_NO_TYPEDEF_GL_REGAL_ES1_1_COMPATIBILITY
typedef void (REGAL_CALL *PFNGLCLIPPLANEFPROC)(GLenum plane, const GLfloat *equation);
typedef void (REGAL_CALL *PFNGLCLIPPLANEXPROC)(GLenum plane, const GLfixed *equation);
typedef void (REGAL_CALL *PFNGLGETCLIPPLANEFPROC)(GLenum pname, GLfloat eqn[4]);
typedef void (REGAL_CALL *PFNGLGETCLIPPLANEXPROC)(GLenum pname, GLfixed eqn[4]);
typedef void (REGAL_CALL *PFNGLGETFIXEDVPROC)(GLenum pname, GLfixed *params);
typedef void (REGAL_CALL *PFNGLGETLIGHTXVPROC)(GLenum light, GLenum pname, GLfixed *params);
typedef void (REGAL_CALL *PFNGLGETMATERIALXVPROC)(GLenum face, GLenum pname, GLfixed *params);
typedef void (REGAL_CALL *PFNGLGETTEXENVXVPROC)(GLenum env, GLenum pname, GLfixed *params);
typedef void (REGAL_CALL *PFNGLGETTEXPARAMETERXVPROC)(GLenum target, GLenum pname, GLfixed *params);
typedef void (REGAL_CALL *PFNGLPOINTPARAMETERXPROC)(GLenum pname, GLfixed param);
typedef void (REGAL_CALL *PFNGLPOINTPARAMETERXVPROC)(GLenum pname, const GLfixed *params);
typedef void (REGAL_CALL *PFNGLPOINTSIZEPOINTEROESPROC)(GLenum type, GLsizei stride, const GLvoid *pointer);
typedef void (REGAL_CALL *PFNGLTEXPARAMETERXVPROC)(GLenum target, GLenum pname, const GLfixed *params);
#endif
#ifndef REGAL_NO_NAMESPACE_GL_REGAL_ES1_1_COMPATIBILITY
#define glClipPlanef rglClipPlanef
#define glClipPlanex rglClipPlanex
#define glGetClipPlanef rglGetClipPlanef
#define glGetClipPlanex rglGetClipPlanex
#define glGetFixedv rglGetFixedv
#define glGetLightxv rglGetLightxv
#define glGetMaterialxv rglGetMaterialxv
#define glGetTexEnvxv rglGetTexEnvxv
#define glGetTexParameterxv rglGetTexParameterxv
#define glPointParameterx rglPointParameterx
#define glPointParameterxv rglPointParameterxv
#define glPointSizePointerOES rglPointSizePointerOES
#define glTexParameterxv rglTexParameterxv
#endif
#ifndef REGAL_NO_DECLARATION_GL_REGAL_ES1_1_COMPATIBILITY
REGAL_DECL void REGAL_CALL glClipPlanef(GLenum plane, const GLfloat *equation);
REGAL_DECL void REGAL_CALL glClipPlanex(GLenum plane, const GLfixed *equation);
REGAL_DECL void REGAL_CALL glGetClipPlanef(GLenum pname, GLfloat eqn[4]);
REGAL_DECL void REGAL_CALL glGetClipPlanex(GLenum pname, GLfixed eqn[4]);
REGAL_DECL void REGAL_CALL glGetFixedv(GLenum pname, GLfixed *params);
REGAL_DECL void REGAL_CALL glGetLightxv(GLenum light, GLenum pname, GLfixed *params);
REGAL_DECL void REGAL_CALL glGetMaterialxv(GLenum face, GLenum pname, GLfixed *params);
REGAL_DECL void REGAL_CALL glGetTexEnvxv(GLenum env, GLenum pname, GLfixed *params);
REGAL_DECL void REGAL_CALL glGetTexParameterxv(GLenum target, GLenum pname, GLfixed *params);
REGAL_DECL void REGAL_CALL glPointParameterx(GLenum pname, GLfixed param);
REGAL_DECL void REGAL_CALL glPointParameterxv(GLenum pname, const GLfixed *params);
REGAL_DECL void REGAL_CALL glPointSizePointerOES(GLenum type, GLsizei stride, const GLvoid *pointer);
REGAL_DECL void REGAL_CALL glTexParameterxv(GLenum target, GLenum pname, const GLfixed *params);
#endif
/**
** GL_REGAL_enable
**/
@ -30685,6 +30879,11 @@ REGAL_DECL EGLenum REGAL_CALL eglQueryAPI(void);
#ifndef REGAL_API_H
#define REGAL_API_H
#if REGAL_SYS_NACL
#include <stdint.h>
struct PPB_OpenGLES2;
#endif
// Regal-specific API... try to keep this minimal
// this is a seperate include guard to work nicely with RegalGLEW.h
@ -30696,7 +30895,7 @@ typedef void (*RegalErrorCallback)(GLenum);
REGAL_DECL RegalErrorCallback RegalSetErrorCallback( RegalErrorCallback callback );
#if REGAL_SYS_NACL
typedef PP_Resource RegalSystemContext;
typedef int32_t RegalSystemContext;
REGAL_DECL void RegalMakeCurrent( RegalSystemContext ctx, struct PPB_OpenGLES2 *interface );
#else
typedef void * RegalSystemContext;

View file

@ -3127,6 +3127,8 @@ typedef void (GLAPIENTRY * PFNGLMAPVERTEXATTRIB2FAPPLEPROC) (GLuint index, GLuin
#define GL_MAX_VARYING_VECTORS 0x8DFC
#define GL_MAX_FRAGMENT_UNIFORM_VECTORS 0x8DFD
typedef int GLfixed;
typedef void (GLAPIENTRY * PFNGLCLEARDEPTHFPROC) (GLclampf d);
typedef void (GLAPIENTRY * PFNGLDEPTHRANGEFPROC) (GLclampf n, GLclampf f);
typedef void (GLAPIENTRY * PFNGLGETSHADERPRECISIONFORMATPROC) (GLenum shadertype, GLenum precisiontype, GLint* range, GLint *precision);
@ -13135,6 +13137,118 @@ typedef void (GLAPIENTRY * PFNGLORTHOFOESPROC) (GLfloat l, GLfloat r, GLfloat b,
#endif /* GL_PGI_vertex_hints */
/* ---------------------- GL_REGAL_ES1_0_compatibility --------------------- */
#ifndef GL_REGAL_ES1_0_compatibility
#define GL_REGAL_ES1_0_compatibility 1
typedef int GLclampx;
typedef void (GLAPIENTRY * PFNGLALPHAFUNCXPROC) (GLenum func, GLclampx ref);
typedef void (GLAPIENTRY * PFNGLCLEARCOLORXPROC) (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha);
typedef void (GLAPIENTRY * PFNGLCLEARDEPTHXPROC) (GLclampx depth);
typedef void (GLAPIENTRY * PFNGLCOLOR4XPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
typedef void (GLAPIENTRY * PFNGLDEPTHRANGEXPROC) (GLclampx zNear, GLclampx zFar);
typedef void (GLAPIENTRY * PFNGLFOGXPROC) (GLenum pname, GLfixed param);
typedef void (GLAPIENTRY * PFNGLFOGXVPROC) (GLenum pname, const GLfixed* params);
typedef void (GLAPIENTRY * PFNGLFRUSTUMFPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
typedef void (GLAPIENTRY * PFNGLFRUSTUMXPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
typedef void (GLAPIENTRY * PFNGLLIGHTMODELXPROC) (GLenum pname, GLfixed param);
typedef void (GLAPIENTRY * PFNGLLIGHTMODELXVPROC) (GLenum pname, const GLfixed* params);
typedef void (GLAPIENTRY * PFNGLLIGHTXPROC) (GLenum light, GLenum pname, GLfixed param);
typedef void (GLAPIENTRY * PFNGLLIGHTXVPROC) (GLenum light, GLenum pname, const GLfixed* params);
typedef void (GLAPIENTRY * PFNGLLINEWIDTHXPROC) (GLfixed width);
typedef void (GLAPIENTRY * PFNGLLOADMATRIXXPROC) (const GLfixed* m);
typedef void (GLAPIENTRY * PFNGLMATERIALXPROC) (GLenum face, GLenum pname, GLfixed param);
typedef void (GLAPIENTRY * PFNGLMATERIALXVPROC) (GLenum face, GLenum pname, const GLfixed* params);
typedef void (GLAPIENTRY * PFNGLMULTMATRIXXPROC) (const GLfixed* m);
typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4XPROC) (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
typedef void (GLAPIENTRY * PFNGLNORMAL3XPROC) (GLfixed nx, GLfixed ny, GLfixed nz);
typedef void (GLAPIENTRY * PFNGLORTHOFPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
typedef void (GLAPIENTRY * PFNGLORTHOXPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
typedef void (GLAPIENTRY * PFNGLPOINTSIZEXPROC) (GLfixed size);
typedef void (GLAPIENTRY * PFNGLPOLYGONOFFSETXPROC) (GLfixed factor, GLfixed units);
typedef void (GLAPIENTRY * PFNGLROTATEXPROC) (GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
typedef void (GLAPIENTRY * PFNGLSAMPLECOVERAGEXPROC) (GLclampx value, GLboolean invert);
typedef void (GLAPIENTRY * PFNGLSCALEXPROC) (GLfixed x, GLfixed y, GLfixed z);
typedef void (GLAPIENTRY * PFNGLTEXENVXPROC) (GLenum target, GLenum pname, GLfixed param);
typedef void (GLAPIENTRY * PFNGLTEXENVXVPROC) (GLenum target, GLenum pname, const GLfixed* params);
typedef void (GLAPIENTRY * PFNGLTEXPARAMETERXPROC) (GLenum target, GLenum pname, GLfixed param);
typedef void (GLAPIENTRY * PFNGLTRANSLATEXPROC) (GLfixed x, GLfixed y, GLfixed z);
#define glAlphaFuncx GLEW_GET_FUN(__glewAlphaFuncx)
#define glClearColorx GLEW_GET_FUN(__glewClearColorx)
#define glClearDepthx GLEW_GET_FUN(__glewClearDepthx)
#define glColor4x GLEW_GET_FUN(__glewColor4x)
#define glDepthRangex GLEW_GET_FUN(__glewDepthRangex)
#define glFogx GLEW_GET_FUN(__glewFogx)
#define glFogxv GLEW_GET_FUN(__glewFogxv)
#define glFrustumf GLEW_GET_FUN(__glewFrustumf)
#define glFrustumx GLEW_GET_FUN(__glewFrustumx)
#define glLightModelx GLEW_GET_FUN(__glewLightModelx)
#define glLightModelxv GLEW_GET_FUN(__glewLightModelxv)
#define glLightx GLEW_GET_FUN(__glewLightx)
#define glLightxv GLEW_GET_FUN(__glewLightxv)
#define glLineWidthx GLEW_GET_FUN(__glewLineWidthx)
#define glLoadMatrixx GLEW_GET_FUN(__glewLoadMatrixx)
#define glMaterialx GLEW_GET_FUN(__glewMaterialx)
#define glMaterialxv GLEW_GET_FUN(__glewMaterialxv)
#define glMultMatrixx GLEW_GET_FUN(__glewMultMatrixx)
#define glMultiTexCoord4x GLEW_GET_FUN(__glewMultiTexCoord4x)
#define glNormal3x GLEW_GET_FUN(__glewNormal3x)
#define glOrthof GLEW_GET_FUN(__glewOrthof)
#define glOrthox GLEW_GET_FUN(__glewOrthox)
#define glPointSizex GLEW_GET_FUN(__glewPointSizex)
#define glPolygonOffsetx GLEW_GET_FUN(__glewPolygonOffsetx)
#define glRotatex GLEW_GET_FUN(__glewRotatex)
#define glSampleCoveragex GLEW_GET_FUN(__glewSampleCoveragex)
#define glScalex GLEW_GET_FUN(__glewScalex)
#define glTexEnvx GLEW_GET_FUN(__glewTexEnvx)
#define glTexEnvxv GLEW_GET_FUN(__glewTexEnvxv)
#define glTexParameterx GLEW_GET_FUN(__glewTexParameterx)
#define glTranslatex GLEW_GET_FUN(__glewTranslatex)
#define GLEW_REGAL_ES1_0_compatibility GLEW_GET_VAR(__GLEW_REGAL_ES1_0_compatibility)
#endif /* GL_REGAL_ES1_0_compatibility */
/* ---------------------- GL_REGAL_ES1_1_compatibility --------------------- */
#ifndef GL_REGAL_ES1_1_compatibility
#define GL_REGAL_ES1_1_compatibility 1
typedef void (GLAPIENTRY * PFNGLCLIPPLANEFPROC) (GLenum plane, const GLfloat* equation);
typedef void (GLAPIENTRY * PFNGLCLIPPLANEXPROC) (GLenum plane, const GLfixed* equation);
typedef void (GLAPIENTRY * PFNGLGETCLIPPLANEFPROC) (GLenum pname, GLfloat eqn[4]);
typedef void (GLAPIENTRY * PFNGLGETCLIPPLANEXPROC) (GLenum pname, GLfixed eqn[4]);
typedef void (GLAPIENTRY * PFNGLGETFIXEDVPROC) (GLenum pname, GLfixed* params);
typedef void (GLAPIENTRY * PFNGLGETLIGHTXVPROC) (GLenum light, GLenum pname, GLfixed* params);
typedef void (GLAPIENTRY * PFNGLGETMATERIALXVPROC) (GLenum face, GLenum pname, GLfixed* params);
typedef void (GLAPIENTRY * PFNGLGETTEXENVXVPROC) (GLenum env, GLenum pname, GLfixed* params);
typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERXVPROC) (GLenum target, GLenum pname, GLfixed* params);
typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERXPROC) (GLenum pname, GLfixed param);
typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERXVPROC) (GLenum pname, const GLfixed* params);
typedef void (GLAPIENTRY * PFNGLPOINTSIZEPOINTEROESPROC) (GLenum type, GLsizei stride, const GLvoid* pointer);
typedef void (GLAPIENTRY * PFNGLTEXPARAMETERXVPROC) (GLenum target, GLenum pname, const GLfixed* params);
#define glClipPlanef GLEW_GET_FUN(__glewClipPlanef)
#define glClipPlanex GLEW_GET_FUN(__glewClipPlanex)
#define glGetClipPlanef GLEW_GET_FUN(__glewGetClipPlanef)
#define glGetClipPlanex GLEW_GET_FUN(__glewGetClipPlanex)
#define glGetFixedv GLEW_GET_FUN(__glewGetFixedv)
#define glGetLightxv GLEW_GET_FUN(__glewGetLightxv)
#define glGetMaterialxv GLEW_GET_FUN(__glewGetMaterialxv)
#define glGetTexEnvxv GLEW_GET_FUN(__glewGetTexEnvxv)
#define glGetTexParameterxv GLEW_GET_FUN(__glewGetTexParameterxv)
#define glPointParameterx GLEW_GET_FUN(__glewPointParameterx)
#define glPointParameterxv GLEW_GET_FUN(__glewPointParameterxv)
#define glPointSizePointerOES GLEW_GET_FUN(__glewPointSizePointerOES)
#define glTexParameterxv GLEW_GET_FUN(__glewTexParameterxv)
#define GLEW_REGAL_ES1_1_compatibility GLEW_GET_VAR(__GLEW_REGAL_ES1_1_compatibility)
#endif /* GL_REGAL_ES1_1_compatibility */
/* ---------------------------- GL_REGAL_enable ---------------------------- */
#ifndef GL_REGAL_enable
@ -16432,6 +16546,52 @@ GLEW_FUN_EXPORT PFNGLFRUSTUMFOESPROC __glewFrustumfOES;
GLEW_FUN_EXPORT PFNGLGETCLIPPLANEFOESPROC __glewGetClipPlanefOES;
GLEW_FUN_EXPORT PFNGLORTHOFOESPROC __glewOrthofOES;
GLEW_FUN_EXPORT PFNGLALPHAFUNCXPROC __glewAlphaFuncx;
GLEW_FUN_EXPORT PFNGLCLEARCOLORXPROC __glewClearColorx;
GLEW_FUN_EXPORT PFNGLCLEARDEPTHXPROC __glewClearDepthx;
GLEW_FUN_EXPORT PFNGLCOLOR4XPROC __glewColor4x;
GLEW_FUN_EXPORT PFNGLDEPTHRANGEXPROC __glewDepthRangex;
GLEW_FUN_EXPORT PFNGLFOGXPROC __glewFogx;
GLEW_FUN_EXPORT PFNGLFOGXVPROC __glewFogxv;
GLEW_FUN_EXPORT PFNGLFRUSTUMFPROC __glewFrustumf;
GLEW_FUN_EXPORT PFNGLFRUSTUMXPROC __glewFrustumx;
GLEW_FUN_EXPORT PFNGLLIGHTMODELXPROC __glewLightModelx;
GLEW_FUN_EXPORT PFNGLLIGHTMODELXVPROC __glewLightModelxv;
GLEW_FUN_EXPORT PFNGLLIGHTXPROC __glewLightx;
GLEW_FUN_EXPORT PFNGLLIGHTXVPROC __glewLightxv;
GLEW_FUN_EXPORT PFNGLLINEWIDTHXPROC __glewLineWidthx;
GLEW_FUN_EXPORT PFNGLLOADMATRIXXPROC __glewLoadMatrixx;
GLEW_FUN_EXPORT PFNGLMATERIALXPROC __glewMaterialx;
GLEW_FUN_EXPORT PFNGLMATERIALXVPROC __glewMaterialxv;
GLEW_FUN_EXPORT PFNGLMULTMATRIXXPROC __glewMultMatrixx;
GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4XPROC __glewMultiTexCoord4x;
GLEW_FUN_EXPORT PFNGLNORMAL3XPROC __glewNormal3x;
GLEW_FUN_EXPORT PFNGLORTHOFPROC __glewOrthof;
GLEW_FUN_EXPORT PFNGLORTHOXPROC __glewOrthox;
GLEW_FUN_EXPORT PFNGLPOINTSIZEXPROC __glewPointSizex;
GLEW_FUN_EXPORT PFNGLPOLYGONOFFSETXPROC __glewPolygonOffsetx;
GLEW_FUN_EXPORT PFNGLROTATEXPROC __glewRotatex;
GLEW_FUN_EXPORT PFNGLSAMPLECOVERAGEXPROC __glewSampleCoveragex;
GLEW_FUN_EXPORT PFNGLSCALEXPROC __glewScalex;
GLEW_FUN_EXPORT PFNGLTEXENVXPROC __glewTexEnvx;
GLEW_FUN_EXPORT PFNGLTEXENVXVPROC __glewTexEnvxv;
GLEW_FUN_EXPORT PFNGLTEXPARAMETERXPROC __glewTexParameterx;
GLEW_FUN_EXPORT PFNGLTRANSLATEXPROC __glewTranslatex;
GLEW_FUN_EXPORT PFNGLCLIPPLANEFPROC __glewClipPlanef;
GLEW_FUN_EXPORT PFNGLCLIPPLANEXPROC __glewClipPlanex;
GLEW_FUN_EXPORT PFNGLGETCLIPPLANEFPROC __glewGetClipPlanef;
GLEW_FUN_EXPORT PFNGLGETCLIPPLANEXPROC __glewGetClipPlanex;
GLEW_FUN_EXPORT PFNGLGETFIXEDVPROC __glewGetFixedv;
GLEW_FUN_EXPORT PFNGLGETLIGHTXVPROC __glewGetLightxv;
GLEW_FUN_EXPORT PFNGLGETMATERIALXVPROC __glewGetMaterialxv;
GLEW_FUN_EXPORT PFNGLGETTEXENVXVPROC __glewGetTexEnvxv;
GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERXVPROC __glewGetTexParameterxv;
GLEW_FUN_EXPORT PFNGLPOINTPARAMETERXPROC __glewPointParameterx;
GLEW_FUN_EXPORT PFNGLPOINTPARAMETERXVPROC __glewPointParameterxv;
GLEW_FUN_EXPORT PFNGLPOINTSIZEPOINTEROESPROC __glewPointSizePointerOES;
GLEW_FUN_EXPORT PFNGLTEXPARAMETERXVPROC __glewTexParameterxv;
GLEW_FUN_EXPORT PFNGLERRORSTRINGREGALPROC __glewErrorStringREGAL;
GLEW_FUN_EXPORT PFNGLGETEXTENSIONREGALPROC __glewGetExtensionREGAL;
@ -16981,6 +17141,8 @@ GLEW_VAR_EXPORT GLboolean __GLEW_OML_resample;
GLEW_VAR_EXPORT GLboolean __GLEW_OML_subsample;
GLEW_VAR_EXPORT GLboolean __GLEW_PGI_misc_hints;
GLEW_VAR_EXPORT GLboolean __GLEW_PGI_vertex_hints;
GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_ES1_0_compatibility;
GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_ES1_1_compatibility;
GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_enable;
GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_error_string;
GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_extension_query;

150
scripts/ApiWrite.py Normal file
View file

@ -0,0 +1,150 @@
#!/usr/bin/python
def cmpCategory(a,b):
if a[0].category.startswith('GL_VERSION') and b[0].category.startswith('GL_VERSION'): return cmp(a[0].category,b[0].category)
if a[0].category.startswith('GL_VERSION'): return -1
if b[0].category.startswith('GL_VERSION'): return 1
return cmp(a[0].category,b[0].category)
# Write out header
def writeHeader(file,name):
print >>file, '''import Api
from Api import Api
from Api import Function, Typedef, Enum
from Api import Return, Parameter, Input, Output, InputOutput
from Api import Enumerant'''
print >>file, '''
%s = Api()'''%(name)
# Write out typedef container
def writeTypedefs(file,name,typedefs):
for j in typedefs:
print >>file, '%s = Typedef(\'%s\',\'%s\')\n'%(j.name,j.name,j.type),
if getattr(j,'category') != None and len(j.category):
print >>file, '%s.category = \'%s\''%(j.name,j.category)
if getattr(j,'default',None) != None:
print >>file, '%s.default = \'%s\''%(j.name,j.default)
if getattr(j,'regal',None) != None:
print >>file, '%s.regal = %s'%(j.name,j.regal)
print >>file, ''
for j in typedefs:
print >>file, '%s.add(%s)'%(name,j.name)
print >>file, ''
# Write out enumerants container
def writeEnums(file,name,enums):
for i in enums:
if not i.name=='defines':
print >>file, '''
%s = Enum('%s')
%s.add(%s)
'''%(i.name,i.name,name,i.name)
for j in i.enumerants:
print >>file, '%s = Enumerant(\'%s\','%(j.name,j.name),
value = j.value
try:
value = long(value)
except:
pass
if isinstance(value, str) or isinstance(value, unicode):
print >>file, '\'%s\','%(value),
else:
print >>file, '0x%04x,'%(value),
print >>file, ')'
for j in i.enumerants:
print >>file, '%s.add(%s)'%(i.name,j.name)
enumerants = {}
for i in enums:
if i.name=='defines':
for j in i.enumerants:
if not j.category in enumerants:
enumerants[j.category] = []
enumerants[j.category].append(j)
enumerants = sorted( [ sorted( enumerants[i], key = lambda k : k.name) for i in enumerants.keys() ], cmp=cmpCategory )
print >>file, '''
defines = Enum('defines')
%s.add(defines)
'''%(name)
for i in enumerants:
print >>file, '# %s'%i[0].category
print >>file, ''
for j in i:
print >>file, '%s = Enumerant(\'%s\','%(j.name,j.name),
value = j.value
try:
value = long(value)
except:
pass
if isinstance(value, str) or isinstance(value, unicode):
print >>file, '\'%s\','%(value),
else:
print >>file, '0x%04x,'%(value),
print >>file, '\'%s\')'%(j.category)
if getattr(j,'gluErrorString',None) != None:
print >>file, '%s.gluErrorString = \'%s\''%(j.name,j.gluErrorString)
print >>file, ''
for j in i:
print >>file, 'defines.add(%s)'%(j.name)
print >>file, ''
# Write out functions container
def writeFunctions(file,name,functions):
f = {}
for i in functions:
if not i.category in f:
f[i.category] = []
f[i.category].append(i)
f = sorted( [ sorted( f[i], key = lambda k : k.name) for i in f.keys() ], cmp=cmpCategory )
for i in f:
print >>file, '# %s'%i[0].category
print >>file, ''
for j in i:
print >>file, '%s = Function(\'%s\')'%(j.name,j.name)
print >>file, '%s.ret = Return(\'%s\')'%(j.name,j.ret.type)
for k in j.parameters:
print >>file, '%s.add('%(j.name),
if k.input:
print >>file, 'Input(',
else:
print >>file, 'Output(',
print >>file, '\'%s\',\'%s\''%(k.name,k.type),
if getattr(k,'size') != None:
if isinstance(k.size, str) or isinstance(k.size, unicode):
print >>file, ',size = \'%s\''%(k.size),
else:
print >>file, ',size = %s'%(k.size),
if getattr(k,'cast',None) != None:
print >>file, ',cast = \'%s\''%(k.cast),
if getattr(k,'regalLog',None) != None:
print >>file, ',regalLog = \'%s\''%(k.regalLog),
print >>file, '))'
print >>file, '%s.version = \'%s\''%(j.name,j.version)
print >>file, '%s.category = \'%s\''%(j.name,j.category)
# if getattr(j,'gles',None) != None:
# print >>file, '%s.gles = \'%s\''%(j.name,j.gles)
if getattr(j,'esVersions',None) != None:
print >>file, '%s.esVersions = %s'%(j.name,j.esVersions)
if getattr(j,'regal',None) != None:
print >>file, '%s.regal = %s'%(j.name,j.regal)
if getattr(j,'trace',None) != None:
print >>file, '%s.trace = %s'%(j.name,j.trace)
if getattr(j,'play',None) != None:
print >>file, '%s.play = %s'%(j.name,j.play)
print >>file, '%s.add(%s)'%(name,j.name)
print >>file, ''

View file

@ -270,12 +270,6 @@ ${LICENSE}
typedef XID GLXDrawable;
#endif
#if REGAL_SYS_NACL
#include <stdint.h>
typedef int32_t PP_Resource;
struct PPB_OpenGLES2;
#endif
#ifdef __cplusplus
extern "C" {
#endif
@ -318,6 +312,11 @@ ${API_FUNC_DECLARE}
#ifndef REGAL_API_H
#define REGAL_API_H
#if REGAL_SYS_NACL
#include <stdint.h>
struct PPB_OpenGLES2;
#endif
// Regal-specific API... try to keep this minimal
// this is a seperate include guard to work nicely with RegalGLEW.h
@ -329,7 +328,7 @@ typedef void (*RegalErrorCallback)(GLenum);
REGAL_DECL RegalErrorCallback RegalSetErrorCallback( RegalErrorCallback callback );
#if REGAL_SYS_NACL
typedef PP_Resource RegalSystemContext;
typedef int32_t RegalSystemContext;
REGAL_DECL void RegalMakeCurrent( RegalSystemContext ctx, struct PPB_OpenGLES2 *interface );
#else
typedef void * RegalSystemContext;
@ -1935,41 +1934,41 @@ def apiNaclFuncDefineCode(apis, args):
for api in apis:
if api.name=='gl':
if api.name=='gl':
for function in api.functions:
if not function.needsContext:
continue
if getattr(function,'gles',None)!='2.0':
continue
for function in api.functions:
if not function.needsContext:
continue
if getattr(function,'esVersions',None)==None or 2.0 not in function.esVersions:
continue
name = function.name
params = paramsDefaultCode(function.parameters, True)
callParams = paramsNameCode(function.parameters)
rType = typeCode(function.ret.type)
naclName = name
if naclName.startswith('gl'):
naclName = naclName[2:]
name = function.name
params = paramsDefaultCode(function.parameters, True)
callParams = paramsNameCode(function.parameters)
rType = typeCode(function.ret.type)
naclName = name
if naclName.startswith('gl'):
naclName = naclName[2:]
code += 'static %sREGAL_CALL %s%s(%s) \n{\n' % (rType, 'nacl_', name, params)
code += ' ITrace("nacl_%s");\n' % name
code += ' RegalContext * rCtx = GET_REGAL_CONTEXT();\n'
code += ' RegalAssert(rCtx)\n'
code += ' RegalAssert(rCtx->naclES2)\n'
code += ' RegalAssert(rCtx->naclES2->%s)\n'%(naclName)
code += ' RegalAssert(rCtx->naclResource)\n'
if not typeIsVoid(rType):
code += ' %s ret = ' % rType
else:
code += ' '
if len(callParams):
callParams = 'rCtx->naclResource, %s'%callParams
else:
callParams = 'rCtx->naclResource'
code += 'rCtx->naclES2->%s(%s);\n' % ( naclName, callParams )
if not typeIsVoid(rType):
code += ' return ret;\n'
code += '}\n\n'
code += 'static %sREGAL_CALL %s%s(%s) \n{\n' % (rType, 'nacl_', name, params)
code += ' ITrace("nacl_%s");\n' % name
code += ' RegalContext * rCtx = GET_REGAL_CONTEXT();\n'
code += ' RegalAssert(rCtx)\n'
code += ' RegalAssert(rCtx->naclES2)\n'
code += ' RegalAssert(rCtx->naclES2->%s)\n'%(naclName)
code += ' RegalAssert(rCtx->naclResource)\n'
if not typeIsVoid(rType):
code += ' %s ret = ' % rType
else:
code += ' '
if len(callParams):
callParams = 'rCtx->naclResource, %s'%callParams
else:
callParams = 'rCtx->naclResource'
code += 'rCtx->naclES2->%s(%s);\n' % ( naclName, callParams )
if not typeIsVoid(rType):
code += ' return ret;\n'
code += '}\n\n'
return code
@ -1979,20 +1978,20 @@ def apiNaclFuncInitCode(apis, args):
for api in apis:
if api.name=='gl':
if api.name=='gl':
for function in api.functions:
if not function.needsContext:
continue
if getattr(function,'gles',None)!='2.0':
continue
for function in api.functions:
if not function.needsContext:
continue
if getattr(function,'esVersions',None)==None or 2.0 not in function.esVersions:
continue
name = function.name
params = paramsDefaultCode(function.parameters, True)
callParams = paramsNameCode(function.parameters)
rType = typeCode(function.ret.type)
name = function.name
params = paramsDefaultCode(function.parameters, True)
callParams = paramsNameCode(function.parameters)
rType = typeCode(function.ret.type)
code += ' tbl.%s = %s_%s;\n' % ( name, 'nacl', name )
code += ' tbl.%s = %s_%s;\n' % ( name, 'nacl', name )
return code

File diff suppressed because it is too large Load diff

View file

@ -3127,6 +3127,8 @@ typedef void (GLAPIENTRY * PFNGLMAPVERTEXATTRIB2FAPPLEPROC) (GLuint index, GLuin
#define GL_MAX_VARYING_VECTORS 0x8DFC
#define GL_MAX_FRAGMENT_UNIFORM_VECTORS 0x8DFD
typedef int GLfixed;
typedef void (GLAPIENTRY * PFNGLCLEARDEPTHFPROC) (GLclampf d);
typedef void (GLAPIENTRY * PFNGLDEPTHRANGEFPROC) (GLclampf n, GLclampf f);
typedef void (GLAPIENTRY * PFNGLGETSHADERPRECISIONFORMATPROC) (GLenum shadertype, GLenum precisiontype, GLint* range, GLint *precision);
@ -13135,6 +13137,118 @@ typedef void (GLAPIENTRY * PFNGLORTHOFOESPROC) (GLfloat l, GLfloat r, GLfloat b,
#endif /* GL_PGI_vertex_hints */
/* ---------------------- GL_REGAL_ES1_0_compatibility --------------------- */
#ifndef GL_REGAL_ES1_0_compatibility
#define GL_REGAL_ES1_0_compatibility 1
typedef int GLclampx;
typedef void (GLAPIENTRY * PFNGLALPHAFUNCXPROC) (GLenum func, GLclampx ref);
typedef void (GLAPIENTRY * PFNGLCLEARCOLORXPROC) (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha);
typedef void (GLAPIENTRY * PFNGLCLEARDEPTHXPROC) (GLclampx depth);
typedef void (GLAPIENTRY * PFNGLCOLOR4XPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
typedef void (GLAPIENTRY * PFNGLDEPTHRANGEXPROC) (GLclampx zNear, GLclampx zFar);
typedef void (GLAPIENTRY * PFNGLFOGXPROC) (GLenum pname, GLfixed param);
typedef void (GLAPIENTRY * PFNGLFOGXVPROC) (GLenum pname, const GLfixed* params);
typedef void (GLAPIENTRY * PFNGLFRUSTUMFPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
typedef void (GLAPIENTRY * PFNGLFRUSTUMXPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
typedef void (GLAPIENTRY * PFNGLLIGHTMODELXPROC) (GLenum pname, GLfixed param);
typedef void (GLAPIENTRY * PFNGLLIGHTMODELXVPROC) (GLenum pname, const GLfixed* params);
typedef void (GLAPIENTRY * PFNGLLIGHTXPROC) (GLenum light, GLenum pname, GLfixed param);
typedef void (GLAPIENTRY * PFNGLLIGHTXVPROC) (GLenum light, GLenum pname, const GLfixed* params);
typedef void (GLAPIENTRY * PFNGLLINEWIDTHXPROC) (GLfixed width);
typedef void (GLAPIENTRY * PFNGLLOADMATRIXXPROC) (const GLfixed* m);
typedef void (GLAPIENTRY * PFNGLMATERIALXPROC) (GLenum face, GLenum pname, GLfixed param);
typedef void (GLAPIENTRY * PFNGLMATERIALXVPROC) (GLenum face, GLenum pname, const GLfixed* params);
typedef void (GLAPIENTRY * PFNGLMULTMATRIXXPROC) (const GLfixed* m);
typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4XPROC) (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
typedef void (GLAPIENTRY * PFNGLNORMAL3XPROC) (GLfixed nx, GLfixed ny, GLfixed nz);
typedef void (GLAPIENTRY * PFNGLORTHOFPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
typedef void (GLAPIENTRY * PFNGLORTHOXPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
typedef void (GLAPIENTRY * PFNGLPOINTSIZEXPROC) (GLfixed size);
typedef void (GLAPIENTRY * PFNGLPOLYGONOFFSETXPROC) (GLfixed factor, GLfixed units);
typedef void (GLAPIENTRY * PFNGLROTATEXPROC) (GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
typedef void (GLAPIENTRY * PFNGLSAMPLECOVERAGEXPROC) (GLclampx value, GLboolean invert);
typedef void (GLAPIENTRY * PFNGLSCALEXPROC) (GLfixed x, GLfixed y, GLfixed z);
typedef void (GLAPIENTRY * PFNGLTEXENVXPROC) (GLenum target, GLenum pname, GLfixed param);
typedef void (GLAPIENTRY * PFNGLTEXENVXVPROC) (GLenum target, GLenum pname, const GLfixed* params);
typedef void (GLAPIENTRY * PFNGLTEXPARAMETERXPROC) (GLenum target, GLenum pname, GLfixed param);
typedef void (GLAPIENTRY * PFNGLTRANSLATEXPROC) (GLfixed x, GLfixed y, GLfixed z);
#define glAlphaFuncx GLEW_GET_FUN(__glewAlphaFuncx)
#define glClearColorx GLEW_GET_FUN(__glewClearColorx)
#define glClearDepthx GLEW_GET_FUN(__glewClearDepthx)
#define glColor4x GLEW_GET_FUN(__glewColor4x)
#define glDepthRangex GLEW_GET_FUN(__glewDepthRangex)
#define glFogx GLEW_GET_FUN(__glewFogx)
#define glFogxv GLEW_GET_FUN(__glewFogxv)
#define glFrustumf GLEW_GET_FUN(__glewFrustumf)
#define glFrustumx GLEW_GET_FUN(__glewFrustumx)
#define glLightModelx GLEW_GET_FUN(__glewLightModelx)
#define glLightModelxv GLEW_GET_FUN(__glewLightModelxv)
#define glLightx GLEW_GET_FUN(__glewLightx)
#define glLightxv GLEW_GET_FUN(__glewLightxv)
#define glLineWidthx GLEW_GET_FUN(__glewLineWidthx)
#define glLoadMatrixx GLEW_GET_FUN(__glewLoadMatrixx)
#define glMaterialx GLEW_GET_FUN(__glewMaterialx)
#define glMaterialxv GLEW_GET_FUN(__glewMaterialxv)
#define glMultMatrixx GLEW_GET_FUN(__glewMultMatrixx)
#define glMultiTexCoord4x GLEW_GET_FUN(__glewMultiTexCoord4x)
#define glNormal3x GLEW_GET_FUN(__glewNormal3x)
#define glOrthof GLEW_GET_FUN(__glewOrthof)
#define glOrthox GLEW_GET_FUN(__glewOrthox)
#define glPointSizex GLEW_GET_FUN(__glewPointSizex)
#define glPolygonOffsetx GLEW_GET_FUN(__glewPolygonOffsetx)
#define glRotatex GLEW_GET_FUN(__glewRotatex)
#define glSampleCoveragex GLEW_GET_FUN(__glewSampleCoveragex)
#define glScalex GLEW_GET_FUN(__glewScalex)
#define glTexEnvx GLEW_GET_FUN(__glewTexEnvx)
#define glTexEnvxv GLEW_GET_FUN(__glewTexEnvxv)
#define glTexParameterx GLEW_GET_FUN(__glewTexParameterx)
#define glTranslatex GLEW_GET_FUN(__glewTranslatex)
#define GLEW_REGAL_ES1_0_compatibility GLEW_GET_VAR(__GLEW_REGAL_ES1_0_compatibility)
#endif /* GL_REGAL_ES1_0_compatibility */
/* ---------------------- GL_REGAL_ES1_1_compatibility --------------------- */
#ifndef GL_REGAL_ES1_1_compatibility
#define GL_REGAL_ES1_1_compatibility 1
typedef void (GLAPIENTRY * PFNGLCLIPPLANEFPROC) (GLenum plane, const GLfloat* equation);
typedef void (GLAPIENTRY * PFNGLCLIPPLANEXPROC) (GLenum plane, const GLfixed* equation);
typedef void (GLAPIENTRY * PFNGLGETCLIPPLANEFPROC) (GLenum pname, GLfloat eqn[4]);
typedef void (GLAPIENTRY * PFNGLGETCLIPPLANEXPROC) (GLenum pname, GLfixed eqn[4]);
typedef void (GLAPIENTRY * PFNGLGETFIXEDVPROC) (GLenum pname, GLfixed* params);
typedef void (GLAPIENTRY * PFNGLGETLIGHTXVPROC) (GLenum light, GLenum pname, GLfixed* params);
typedef void (GLAPIENTRY * PFNGLGETMATERIALXVPROC) (GLenum face, GLenum pname, GLfixed* params);
typedef void (GLAPIENTRY * PFNGLGETTEXENVXVPROC) (GLenum env, GLenum pname, GLfixed* params);
typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERXVPROC) (GLenum target, GLenum pname, GLfixed* params);
typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERXPROC) (GLenum pname, GLfixed param);
typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERXVPROC) (GLenum pname, const GLfixed* params);
typedef void (GLAPIENTRY * PFNGLPOINTSIZEPOINTEROESPROC) (GLenum type, GLsizei stride, const GLvoid* pointer);
typedef void (GLAPIENTRY * PFNGLTEXPARAMETERXVPROC) (GLenum target, GLenum pname, const GLfixed* params);
#define glClipPlanef GLEW_GET_FUN(__glewClipPlanef)
#define glClipPlanex GLEW_GET_FUN(__glewClipPlanex)
#define glGetClipPlanef GLEW_GET_FUN(__glewGetClipPlanef)
#define glGetClipPlanex GLEW_GET_FUN(__glewGetClipPlanex)
#define glGetFixedv GLEW_GET_FUN(__glewGetFixedv)
#define glGetLightxv GLEW_GET_FUN(__glewGetLightxv)
#define glGetMaterialxv GLEW_GET_FUN(__glewGetMaterialxv)
#define glGetTexEnvxv GLEW_GET_FUN(__glewGetTexEnvxv)
#define glGetTexParameterxv GLEW_GET_FUN(__glewGetTexParameterxv)
#define glPointParameterx GLEW_GET_FUN(__glewPointParameterx)
#define glPointParameterxv GLEW_GET_FUN(__glewPointParameterxv)
#define glPointSizePointerOES GLEW_GET_FUN(__glewPointSizePointerOES)
#define glTexParameterxv GLEW_GET_FUN(__glewTexParameterxv)
#define GLEW_REGAL_ES1_1_compatibility GLEW_GET_VAR(__GLEW_REGAL_ES1_1_compatibility)
#endif /* GL_REGAL_ES1_1_compatibility */
/* ---------------------------- GL_REGAL_enable ---------------------------- */
#ifndef GL_REGAL_enable
@ -16432,6 +16546,52 @@ GLEW_FUN_EXPORT PFNGLFRUSTUMFOESPROC __glewFrustumfOES;
GLEW_FUN_EXPORT PFNGLGETCLIPPLANEFOESPROC __glewGetClipPlanefOES;
GLEW_FUN_EXPORT PFNGLORTHOFOESPROC __glewOrthofOES;
GLEW_FUN_EXPORT PFNGLALPHAFUNCXPROC __glewAlphaFuncx;
GLEW_FUN_EXPORT PFNGLCLEARCOLORXPROC __glewClearColorx;
GLEW_FUN_EXPORT PFNGLCLEARDEPTHXPROC __glewClearDepthx;
GLEW_FUN_EXPORT PFNGLCOLOR4XPROC __glewColor4x;
GLEW_FUN_EXPORT PFNGLDEPTHRANGEXPROC __glewDepthRangex;
GLEW_FUN_EXPORT PFNGLFOGXPROC __glewFogx;
GLEW_FUN_EXPORT PFNGLFOGXVPROC __glewFogxv;
GLEW_FUN_EXPORT PFNGLFRUSTUMFPROC __glewFrustumf;
GLEW_FUN_EXPORT PFNGLFRUSTUMXPROC __glewFrustumx;
GLEW_FUN_EXPORT PFNGLLIGHTMODELXPROC __glewLightModelx;
GLEW_FUN_EXPORT PFNGLLIGHTMODELXVPROC __glewLightModelxv;
GLEW_FUN_EXPORT PFNGLLIGHTXPROC __glewLightx;
GLEW_FUN_EXPORT PFNGLLIGHTXVPROC __glewLightxv;
GLEW_FUN_EXPORT PFNGLLINEWIDTHXPROC __glewLineWidthx;
GLEW_FUN_EXPORT PFNGLLOADMATRIXXPROC __glewLoadMatrixx;
GLEW_FUN_EXPORT PFNGLMATERIALXPROC __glewMaterialx;
GLEW_FUN_EXPORT PFNGLMATERIALXVPROC __glewMaterialxv;
GLEW_FUN_EXPORT PFNGLMULTMATRIXXPROC __glewMultMatrixx;
GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4XPROC __glewMultiTexCoord4x;
GLEW_FUN_EXPORT PFNGLNORMAL3XPROC __glewNormal3x;
GLEW_FUN_EXPORT PFNGLORTHOFPROC __glewOrthof;
GLEW_FUN_EXPORT PFNGLORTHOXPROC __glewOrthox;
GLEW_FUN_EXPORT PFNGLPOINTSIZEXPROC __glewPointSizex;
GLEW_FUN_EXPORT PFNGLPOLYGONOFFSETXPROC __glewPolygonOffsetx;
GLEW_FUN_EXPORT PFNGLROTATEXPROC __glewRotatex;
GLEW_FUN_EXPORT PFNGLSAMPLECOVERAGEXPROC __glewSampleCoveragex;
GLEW_FUN_EXPORT PFNGLSCALEXPROC __glewScalex;
GLEW_FUN_EXPORT PFNGLTEXENVXPROC __glewTexEnvx;
GLEW_FUN_EXPORT PFNGLTEXENVXVPROC __glewTexEnvxv;
GLEW_FUN_EXPORT PFNGLTEXPARAMETERXPROC __glewTexParameterx;
GLEW_FUN_EXPORT PFNGLTRANSLATEXPROC __glewTranslatex;
GLEW_FUN_EXPORT PFNGLCLIPPLANEFPROC __glewClipPlanef;
GLEW_FUN_EXPORT PFNGLCLIPPLANEXPROC __glewClipPlanex;
GLEW_FUN_EXPORT PFNGLGETCLIPPLANEFPROC __glewGetClipPlanef;
GLEW_FUN_EXPORT PFNGLGETCLIPPLANEXPROC __glewGetClipPlanex;
GLEW_FUN_EXPORT PFNGLGETFIXEDVPROC __glewGetFixedv;
GLEW_FUN_EXPORT PFNGLGETLIGHTXVPROC __glewGetLightxv;
GLEW_FUN_EXPORT PFNGLGETMATERIALXVPROC __glewGetMaterialxv;
GLEW_FUN_EXPORT PFNGLGETTEXENVXVPROC __glewGetTexEnvxv;
GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERXVPROC __glewGetTexParameterxv;
GLEW_FUN_EXPORT PFNGLPOINTPARAMETERXPROC __glewPointParameterx;
GLEW_FUN_EXPORT PFNGLPOINTPARAMETERXVPROC __glewPointParameterxv;
GLEW_FUN_EXPORT PFNGLPOINTSIZEPOINTEROESPROC __glewPointSizePointerOES;
GLEW_FUN_EXPORT PFNGLTEXPARAMETERXVPROC __glewTexParameterxv;
GLEW_FUN_EXPORT PFNGLERRORSTRINGREGALPROC __glewErrorStringREGAL;
GLEW_FUN_EXPORT PFNGLGETEXTENSIONREGALPROC __glewGetExtensionREGAL;
@ -16981,6 +17141,8 @@ GLEW_VAR_EXPORT GLboolean __GLEW_OML_resample;
GLEW_VAR_EXPORT GLboolean __GLEW_OML_subsample;
GLEW_VAR_EXPORT GLboolean __GLEW_PGI_misc_hints;
GLEW_VAR_EXPORT GLboolean __GLEW_PGI_vertex_hints;
GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_ES1_0_compatibility;
GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_ES1_1_compatibility;
GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_enable;
GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_error_string;
GLEW_VAR_EXPORT GLboolean __GLEW_REGAL_extension_query;

View file

@ -33,7 +33,7 @@
#if defined(_WIN32)
# include <GL/wglew.h>
#elif !defined(__ANDROID__) && (!defined(__APPLE__) || defined(GLEW_APPLE_GLX))
#elif !defined(__ANDROID__) && !defined(__native_client__) && (!defined(__APPLE__) || defined(GLEW_APPLE_GLX))
# include <GL/glxew.h>
#endif
@ -166,6 +166,8 @@ void* NSGLGetProcAddress (const GLubyte *name)
# define glewGetProcAddress(name) dlGetProcAddress(name)
#elif defined(__ANDROID__)
# define glewGetProcAddress(name) NULL /* TODO */
#elif defined(__native_client__)
# define glewGetProcAddress(name) NULL /* TODO */
#else /* __linux */
# define glewGetProcAddress(name) (*glXGetProcAddressARB)(name)
#endif
@ -2452,6 +2454,52 @@ PFNGLFRUSTUMFOESPROC __glewFrustumfOES = NULL;
PFNGLGETCLIPPLANEFOESPROC __glewGetClipPlanefOES = NULL;
PFNGLORTHOFOESPROC __glewOrthofOES = NULL;
PFNGLALPHAFUNCXPROC __glewAlphaFuncx = NULL;
PFNGLCLEARCOLORXPROC __glewClearColorx = NULL;
PFNGLCLEARDEPTHXPROC __glewClearDepthx = NULL;
PFNGLCOLOR4XPROC __glewColor4x = NULL;
PFNGLDEPTHRANGEXPROC __glewDepthRangex = NULL;
PFNGLFOGXPROC __glewFogx = NULL;
PFNGLFOGXVPROC __glewFogxv = NULL;
PFNGLFRUSTUMFPROC __glewFrustumf = NULL;
PFNGLFRUSTUMXPROC __glewFrustumx = NULL;
PFNGLLIGHTMODELXPROC __glewLightModelx = NULL;
PFNGLLIGHTMODELXVPROC __glewLightModelxv = NULL;
PFNGLLIGHTXPROC __glewLightx = NULL;
PFNGLLIGHTXVPROC __glewLightxv = NULL;
PFNGLLINEWIDTHXPROC __glewLineWidthx = NULL;
PFNGLLOADMATRIXXPROC __glewLoadMatrixx = NULL;
PFNGLMATERIALXPROC __glewMaterialx = NULL;
PFNGLMATERIALXVPROC __glewMaterialxv = NULL;
PFNGLMULTMATRIXXPROC __glewMultMatrixx = NULL;
PFNGLMULTITEXCOORD4XPROC __glewMultiTexCoord4x = NULL;
PFNGLNORMAL3XPROC __glewNormal3x = NULL;
PFNGLORTHOFPROC __glewOrthof = NULL;
PFNGLORTHOXPROC __glewOrthox = NULL;
PFNGLPOINTSIZEXPROC __glewPointSizex = NULL;
PFNGLPOLYGONOFFSETXPROC __glewPolygonOffsetx = NULL;
PFNGLROTATEXPROC __glewRotatex = NULL;
PFNGLSAMPLECOVERAGEXPROC __glewSampleCoveragex = NULL;
PFNGLSCALEXPROC __glewScalex = NULL;
PFNGLTEXENVXPROC __glewTexEnvx = NULL;
PFNGLTEXENVXVPROC __glewTexEnvxv = NULL;
PFNGLTEXPARAMETERXPROC __glewTexParameterx = NULL;
PFNGLTRANSLATEXPROC __glewTranslatex = NULL;
PFNGLCLIPPLANEFPROC __glewClipPlanef = NULL;
PFNGLCLIPPLANEXPROC __glewClipPlanex = NULL;
PFNGLGETCLIPPLANEFPROC __glewGetClipPlanef = NULL;
PFNGLGETCLIPPLANEXPROC __glewGetClipPlanex = NULL;
PFNGLGETFIXEDVPROC __glewGetFixedv = NULL;
PFNGLGETLIGHTXVPROC __glewGetLightxv = NULL;
PFNGLGETMATERIALXVPROC __glewGetMaterialxv = NULL;
PFNGLGETTEXENVXVPROC __glewGetTexEnvxv = NULL;
PFNGLGETTEXPARAMETERXVPROC __glewGetTexParameterxv = NULL;
PFNGLPOINTPARAMETERXPROC __glewPointParameterx = NULL;
PFNGLPOINTPARAMETERXVPROC __glewPointParameterxv = NULL;
PFNGLPOINTSIZEPOINTEROESPROC __glewPointSizePointerOES = NULL;
PFNGLTEXPARAMETERXVPROC __glewTexParameterxv = NULL;
PFNGLERRORSTRINGREGALPROC __glewErrorStringREGAL = NULL;
PFNGLGETEXTENSIONREGALPROC __glewGetExtensionREGAL = NULL;
@ -3000,6 +3048,8 @@ GLboolean __GLEW_OML_resample = GL_FALSE;
GLboolean __GLEW_OML_subsample = GL_FALSE;
GLboolean __GLEW_PGI_misc_hints = GL_FALSE;
GLboolean __GLEW_PGI_vertex_hints = GL_FALSE;
GLboolean __GLEW_REGAL_ES1_0_compatibility = GL_FALSE;
GLboolean __GLEW_REGAL_ES1_1_compatibility = GL_FALSE;
GLboolean __GLEW_REGAL_enable = GL_FALSE;
GLboolean __GLEW_REGAL_error_string = GL_FALSE;
GLboolean __GLEW_REGAL_extension_query = GL_FALSE;
@ -8301,6 +8351,74 @@ static GLboolean _glewInit_GL_OES_single_precision (GLEW_CONTEXT_ARG_DEF_INIT)
#endif /* GL_PGI_vertex_hints */
#ifdef GL_REGAL_ES1_0_compatibility
static GLboolean _glewInit_GL_REGAL_ES1_0_compatibility (GLEW_CONTEXT_ARG_DEF_INIT)
{
GLboolean r = GL_FALSE;
r = ((glAlphaFuncx = (PFNGLALPHAFUNCXPROC)glewGetProcAddress((const GLubyte*)"glAlphaFuncx")) == NULL) || r;
r = ((glClearColorx = (PFNGLCLEARCOLORXPROC)glewGetProcAddress((const GLubyte*)"glClearColorx")) == NULL) || r;
r = ((glClearDepthx = (PFNGLCLEARDEPTHXPROC)glewGetProcAddress((const GLubyte*)"glClearDepthx")) == NULL) || r;
r = ((glColor4x = (PFNGLCOLOR4XPROC)glewGetProcAddress((const GLubyte*)"glColor4x")) == NULL) || r;
r = ((glDepthRangex = (PFNGLDEPTHRANGEXPROC)glewGetProcAddress((const GLubyte*)"glDepthRangex")) == NULL) || r;
r = ((glFogx = (PFNGLFOGXPROC)glewGetProcAddress((const GLubyte*)"glFogx")) == NULL) || r;
r = ((glFogxv = (PFNGLFOGXVPROC)glewGetProcAddress((const GLubyte*)"glFogxv")) == NULL) || r;
r = ((glFrustumf = (PFNGLFRUSTUMFPROC)glewGetProcAddress((const GLubyte*)"glFrustumf")) == NULL) || r;
r = ((glFrustumx = (PFNGLFRUSTUMXPROC)glewGetProcAddress((const GLubyte*)"glFrustumx")) == NULL) || r;
r = ((glLightModelx = (PFNGLLIGHTMODELXPROC)glewGetProcAddress((const GLubyte*)"glLightModelx")) == NULL) || r;
r = ((glLightModelxv = (PFNGLLIGHTMODELXVPROC)glewGetProcAddress((const GLubyte*)"glLightModelxv")) == NULL) || r;
r = ((glLightx = (PFNGLLIGHTXPROC)glewGetProcAddress((const GLubyte*)"glLightx")) == NULL) || r;
r = ((glLightxv = (PFNGLLIGHTXVPROC)glewGetProcAddress((const GLubyte*)"glLightxv")) == NULL) || r;
r = ((glLineWidthx = (PFNGLLINEWIDTHXPROC)glewGetProcAddress((const GLubyte*)"glLineWidthx")) == NULL) || r;
r = ((glLoadMatrixx = (PFNGLLOADMATRIXXPROC)glewGetProcAddress((const GLubyte*)"glLoadMatrixx")) == NULL) || r;
r = ((glMaterialx = (PFNGLMATERIALXPROC)glewGetProcAddress((const GLubyte*)"glMaterialx")) == NULL) || r;
r = ((glMaterialxv = (PFNGLMATERIALXVPROC)glewGetProcAddress((const GLubyte*)"glMaterialxv")) == NULL) || r;
r = ((glMultMatrixx = (PFNGLMULTMATRIXXPROC)glewGetProcAddress((const GLubyte*)"glMultMatrixx")) == NULL) || r;
r = ((glMultiTexCoord4x = (PFNGLMULTITEXCOORD4XPROC)glewGetProcAddress((const GLubyte*)"glMultiTexCoord4x")) == NULL) || r;
r = ((glNormal3x = (PFNGLNORMAL3XPROC)glewGetProcAddress((const GLubyte*)"glNormal3x")) == NULL) || r;
r = ((glOrthof = (PFNGLORTHOFPROC)glewGetProcAddress((const GLubyte*)"glOrthof")) == NULL) || r;
r = ((glOrthox = (PFNGLORTHOXPROC)glewGetProcAddress((const GLubyte*)"glOrthox")) == NULL) || r;
r = ((glPointSizex = (PFNGLPOINTSIZEXPROC)glewGetProcAddress((const GLubyte*)"glPointSizex")) == NULL) || r;
r = ((glPolygonOffsetx = (PFNGLPOLYGONOFFSETXPROC)glewGetProcAddress((const GLubyte*)"glPolygonOffsetx")) == NULL) || r;
r = ((glRotatex = (PFNGLROTATEXPROC)glewGetProcAddress((const GLubyte*)"glRotatex")) == NULL) || r;
r = ((glSampleCoveragex = (PFNGLSAMPLECOVERAGEXPROC)glewGetProcAddress((const GLubyte*)"glSampleCoveragex")) == NULL) || r;
r = ((glScalex = (PFNGLSCALEXPROC)glewGetProcAddress((const GLubyte*)"glScalex")) == NULL) || r;
r = ((glTexEnvx = (PFNGLTEXENVXPROC)glewGetProcAddress((const GLubyte*)"glTexEnvx")) == NULL) || r;
r = ((glTexEnvxv = (PFNGLTEXENVXVPROC)glewGetProcAddress((const GLubyte*)"glTexEnvxv")) == NULL) || r;
r = ((glTexParameterx = (PFNGLTEXPARAMETERXPROC)glewGetProcAddress((const GLubyte*)"glTexParameterx")) == NULL) || r;
r = ((glTranslatex = (PFNGLTRANSLATEXPROC)glewGetProcAddress((const GLubyte*)"glTranslatex")) == NULL) || r;
return r;
}
#endif /* GL_REGAL_ES1_0_compatibility */
#ifdef GL_REGAL_ES1_1_compatibility
static GLboolean _glewInit_GL_REGAL_ES1_1_compatibility (GLEW_CONTEXT_ARG_DEF_INIT)
{
GLboolean r = GL_FALSE;
r = ((glClipPlanef = (PFNGLCLIPPLANEFPROC)glewGetProcAddress((const GLubyte*)"glClipPlanef")) == NULL) || r;
r = ((glClipPlanex = (PFNGLCLIPPLANEXPROC)glewGetProcAddress((const GLubyte*)"glClipPlanex")) == NULL) || r;
r = ((glGetClipPlanef = (PFNGLGETCLIPPLANEFPROC)glewGetProcAddress((const GLubyte*)"glGetClipPlanef")) == NULL) || r;
r = ((glGetClipPlanex = (PFNGLGETCLIPPLANEXPROC)glewGetProcAddress((const GLubyte*)"glGetClipPlanex")) == NULL) || r;
r = ((glGetFixedv = (PFNGLGETFIXEDVPROC)glewGetProcAddress((const GLubyte*)"glGetFixedv")) == NULL) || r;
r = ((glGetLightxv = (PFNGLGETLIGHTXVPROC)glewGetProcAddress((const GLubyte*)"glGetLightxv")) == NULL) || r;
r = ((glGetMaterialxv = (PFNGLGETMATERIALXVPROC)glewGetProcAddress((const GLubyte*)"glGetMaterialxv")) == NULL) || r;
r = ((glGetTexEnvxv = (PFNGLGETTEXENVXVPROC)glewGetProcAddress((const GLubyte*)"glGetTexEnvxv")) == NULL) || r;
r = ((glGetTexParameterxv = (PFNGLGETTEXPARAMETERXVPROC)glewGetProcAddress((const GLubyte*)"glGetTexParameterxv")) == NULL) || r;
r = ((glPointParameterx = (PFNGLPOINTPARAMETERXPROC)glewGetProcAddress((const GLubyte*)"glPointParameterx")) == NULL) || r;
r = ((glPointParameterxv = (PFNGLPOINTPARAMETERXVPROC)glewGetProcAddress((const GLubyte*)"glPointParameterxv")) == NULL) || r;
r = ((glPointSizePointerOES = (PFNGLPOINTSIZEPOINTEROESPROC)glewGetProcAddress((const GLubyte*)"glPointSizePointerOES")) == NULL) || r;
r = ((glTexParameterxv = (PFNGLTEXPARAMETERXVPROC)glewGetProcAddress((const GLubyte*)"glTexParameterxv")) == NULL) || r;
return r;
}
#endif /* GL_REGAL_ES1_1_compatibility */
#ifdef GL_REGAL_enable
#endif /* GL_REGAL_enable */
@ -10353,6 +10471,14 @@ GLenum GLEWAPIENTRY glewContextInit (GLEW_CONTEXT_ARG_DEF_LIST)
#ifdef GL_PGI_vertex_hints
CONST_CAST(GLEW_PGI_vertex_hints) = _glewSearchExtension("GL_PGI_vertex_hints", extStart, extEnd);
#endif /* GL_PGI_vertex_hints */
#ifdef GL_REGAL_ES1_0_compatibility
CONST_CAST(GLEW_REGAL_ES1_0_compatibility) = _glewSearchExtension("GL_REGAL_ES1_0_compatibility", extStart, extEnd);
if (glewExperimental || GLEW_REGAL_ES1_0_compatibility) CONST_CAST(GLEW_REGAL_ES1_0_compatibility) = !_glewInit_GL_REGAL_ES1_0_compatibility(GLEW_CONTEXT_ARG_VAR_INIT);
#endif /* GL_REGAL_ES1_0_compatibility */
#ifdef GL_REGAL_ES1_1_compatibility
CONST_CAST(GLEW_REGAL_ES1_1_compatibility) = _glewSearchExtension("GL_REGAL_ES1_1_compatibility", extStart, extEnd);
if (glewExperimental || GLEW_REGAL_ES1_1_compatibility) CONST_CAST(GLEW_REGAL_ES1_1_compatibility) = !_glewInit_GL_REGAL_ES1_1_compatibility(GLEW_CONTEXT_ARG_VAR_INIT);
#endif /* GL_REGAL_ES1_1_compatibility */
#ifdef GL_REGAL_enable
CONST_CAST(GLEW_REGAL_enable) = _glewSearchExtension("GL_REGAL_enable", extStart, extEnd);
#endif /* GL_REGAL_enable */
@ -11584,7 +11710,7 @@ GLenum GLEWAPIENTRY wglewContextInit (WGLEW_CONTEXT_ARG_DEF_LIST)
return GLEW_OK;
}
#elif !defined(__ANDROID__) && (!defined(__APPLE__) || defined(GLEW_APPLE_GLX))
#elif !defined(__ANDROID__) && !defined(__native_client__) && (!defined(__APPLE__) || defined(GLEW_APPLE_GLX))
PFNGLXGETCURRENTDISPLAYPROC __glewXGetCurrentDisplay = NULL;
@ -12656,7 +12782,7 @@ GLenum glxewContextInit (GLXEW_CONTEXT_ARG_DEF_LIST)
return GLEW_OK;
}
#endif /* !defined(__ANDROID__) && (!defined(__APPLE__) || defined(GLEW_APPLE_GLX)) */
#endif /* !defined(__ANDROID__) && !defined(__native_client__) && (!defined(__APPLE__) || defined(GLEW_APPLE_GLX)) */
/* ------------------------------------------------------------------------ */
@ -12696,7 +12822,7 @@ GLboolean glewExperimental = GL_FALSE;
#if defined(_WIN32)
extern GLenum GLEWAPIENTRY wglewContextInit (void);
#elif !defined(__ANDROID__) && (!defined(__APPLE__) || defined(GLEW_APPLE_GLX))
#elif !defined(__ANDROID__) && !defined(__native_client__) && (!defined(__APPLE__) || defined(GLEW_APPLE_GLX))
extern GLenum GLEWAPIENTRY glxewContextInit (void);
#endif /* _WIN32 */
@ -12707,7 +12833,7 @@ GLenum GLEWAPIENTRY glewInit (void)
if ( r != 0 ) return r;
#if defined(_WIN32)
return wglewContextInit();
#elif !defined(__ANDROID__) && (!defined(__APPLE__) || defined(GLEW_APPLE_GLX)) /* _UNIX */
#elif !defined(__ANDROID__) && !defined(__native_client__) && (!defined(__APPLE__) || defined(GLEW_APPLE_GLX)) /* _UNIX */
return glxewContextInit();
#else
return r;
@ -15624,6 +15750,20 @@ GLboolean GLEWAPIENTRY glewIsSupported (const char* name)
}
if (_glewStrSame2(&pos, &len, (const GLubyte*)"REGAL_", 6))
{
#ifdef GL_REGAL_ES1_0_compatibility
if (_glewStrSame3(&pos, &len, (const GLubyte*)"ES1_0_compatibility", 19))
{
ret = GLEW_REGAL_ES1_0_compatibility;
continue;
}
#endif
#ifdef GL_REGAL_ES1_1_compatibility
if (_glewStrSame3(&pos, &len, (const GLubyte*)"ES1_1_compatibility", 19))
{
ret = GLEW_REGAL_ES1_1_compatibility;
continue;
}
#endif
#ifdef GL_REGAL_enable
if (_glewStrSame3(&pos, &len, (const GLubyte*)"enable", 6))
{
@ -16529,7 +16669,7 @@ GLboolean GLEWAPIENTRY wglewIsSupported (const char* name)
return ret;
}
#elif !defined(__ANDROID__) && !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
#elif !defined(__ANDROID__) && !defined(__native_client__) && !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
#if defined(GLEW_MX)
GLboolean glxewContextIsSupported (const GLXEWContext* ctx, const char* name)

View file

@ -5920,6 +5920,70 @@ static void _glewInfo_GL_PGI_vertex_hints (void)
#endif /* GL_PGI_vertex_hints */
#ifdef GL_REGAL_ES1_0_compatibility
static void _glewInfo_GL_REGAL_ES1_0_compatibility (void)
{
glewPrintExt("GL_REGAL_ES1_0_compatibility", GLEW_REGAL_ES1_0_compatibility, glewIsSupported("GL_REGAL_ES1_0_compatibility"), glewGetExtension("GL_REGAL_ES1_0_compatibility"));
glewInfoFunc("glAlphaFuncx", glAlphaFuncx == NULL);
glewInfoFunc("glClearColorx", glClearColorx == NULL);
glewInfoFunc("glClearDepthx", glClearDepthx == NULL);
glewInfoFunc("glColor4x", glColor4x == NULL);
glewInfoFunc("glDepthRangex", glDepthRangex == NULL);
glewInfoFunc("glFogx", glFogx == NULL);
glewInfoFunc("glFogxv", glFogxv == NULL);
glewInfoFunc("glFrustumf", glFrustumf == NULL);
glewInfoFunc("glFrustumx", glFrustumx == NULL);
glewInfoFunc("glLightModelx", glLightModelx == NULL);
glewInfoFunc("glLightModelxv", glLightModelxv == NULL);
glewInfoFunc("glLightx", glLightx == NULL);
glewInfoFunc("glLightxv", glLightxv == NULL);
glewInfoFunc("glLineWidthx", glLineWidthx == NULL);
glewInfoFunc("glLoadMatrixx", glLoadMatrixx == NULL);
glewInfoFunc("glMaterialx", glMaterialx == NULL);
glewInfoFunc("glMaterialxv", glMaterialxv == NULL);
glewInfoFunc("glMultMatrixx", glMultMatrixx == NULL);
glewInfoFunc("glMultiTexCoord4x", glMultiTexCoord4x == NULL);
glewInfoFunc("glNormal3x", glNormal3x == NULL);
glewInfoFunc("glOrthof", glOrthof == NULL);
glewInfoFunc("glOrthox", glOrthox == NULL);
glewInfoFunc("glPointSizex", glPointSizex == NULL);
glewInfoFunc("glPolygonOffsetx", glPolygonOffsetx == NULL);
glewInfoFunc("glRotatex", glRotatex == NULL);
glewInfoFunc("glSampleCoveragex", glSampleCoveragex == NULL);
glewInfoFunc("glScalex", glScalex == NULL);
glewInfoFunc("glTexEnvx", glTexEnvx == NULL);
glewInfoFunc("glTexEnvxv", glTexEnvxv == NULL);
glewInfoFunc("glTexParameterx", glTexParameterx == NULL);
glewInfoFunc("glTranslatex", glTranslatex == NULL);
}
#endif /* GL_REGAL_ES1_0_compatibility */
#ifdef GL_REGAL_ES1_1_compatibility
static void _glewInfo_GL_REGAL_ES1_1_compatibility (void)
{
glewPrintExt("GL_REGAL_ES1_1_compatibility", GLEW_REGAL_ES1_1_compatibility, glewIsSupported("GL_REGAL_ES1_1_compatibility"), glewGetExtension("GL_REGAL_ES1_1_compatibility"));
glewInfoFunc("glClipPlanef", glClipPlanef == NULL);
glewInfoFunc("glClipPlanex", glClipPlanex == NULL);
glewInfoFunc("glGetClipPlanef", glGetClipPlanef == NULL);
glewInfoFunc("glGetClipPlanex", glGetClipPlanex == NULL);
glewInfoFunc("glGetFixedv", glGetFixedv == NULL);
glewInfoFunc("glGetLightxv", glGetLightxv == NULL);
glewInfoFunc("glGetMaterialxv", glGetMaterialxv == NULL);
glewInfoFunc("glGetTexEnvxv", glGetTexEnvxv == NULL);
glewInfoFunc("glGetTexParameterxv", glGetTexParameterxv == NULL);
glewInfoFunc("glPointParameterx", glPointParameterx == NULL);
glewInfoFunc("glPointParameterxv", glPointParameterxv == NULL);
glewInfoFunc("glPointSizePointerOES", glPointSizePointerOES == NULL);
glewInfoFunc("glTexParameterxv", glTexParameterxv == NULL);
}
#endif /* GL_REGAL_ES1_1_compatibility */
#ifdef GL_REGAL_enable
static void _glewInfo_GL_REGAL_enable (void)
@ -9183,6 +9247,12 @@ static void glewInfo (void)
#ifdef GL_PGI_vertex_hints
_glewInfo_GL_PGI_vertex_hints();
#endif /* GL_PGI_vertex_hints */
#ifdef GL_REGAL_ES1_0_compatibility
_glewInfo_GL_REGAL_ES1_0_compatibility();
#endif /* GL_REGAL_ES1_0_compatibility */
#ifdef GL_REGAL_ES1_1_compatibility
_glewInfo_GL_REGAL_ES1_1_compatibility();
#endif /* GL_REGAL_ES1_1_compatibility */
#ifdef GL_REGAL_enable
_glewInfo_GL_REGAL_enable();
#endif /* GL_REGAL_enable */

View file

@ -30796,6 +30796,582 @@ REGAL_DECL void REGAL_CALL glHintPGI(GLenum target, GLint mode)
rCtx->dsp->curr->glHintPGI(target, mode);
}
/* GL_REGAL_ES1_0_compatibility */
REGAL_DECL void REGAL_CALL glAlphaFuncx(GLenum func, GLclampx ref)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glAlphaFuncx(", toString(func), ", ", ref, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glAlphaFuncx);
RegalAssert(rCtx->dsp->curr->glAlphaFuncx != glAlphaFuncx);
rCtx->dsp->curr->glAlphaFuncx(func, ref);
}
REGAL_DECL void REGAL_CALL glClearColorx(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glClearColorx(", red, ", ", green, ", ", blue, ", ", alpha, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glClearColorx);
RegalAssert(rCtx->dsp->curr->glClearColorx != glClearColorx);
rCtx->dsp->curr->glClearColorx(red, green, blue, alpha);
}
REGAL_DECL void REGAL_CALL glClearDepthx(GLclampx depth)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glClearDepthx(", depth, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glClearDepthx);
RegalAssert(rCtx->dsp->curr->glClearDepthx != glClearDepthx);
rCtx->dsp->curr->glClearDepthx(depth);
}
REGAL_DECL void REGAL_CALL glColor4x(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glColor4x(", red, ", ", green, ", ", blue, ", ", alpha, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glColor4x);
RegalAssert(rCtx->dsp->curr->glColor4x != glColor4x);
rCtx->dsp->curr->glColor4x(red, green, blue, alpha);
}
REGAL_DECL void REGAL_CALL glDepthRangex(GLclampx zNear, GLclampx zFar)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glDepthRangex(", zNear, ", ", zFar, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glDepthRangex);
RegalAssert(rCtx->dsp->curr->glDepthRangex != glDepthRangex);
rCtx->dsp->curr->glDepthRangex(zNear, zFar);
}
REGAL_DECL void REGAL_CALL glFogx(GLenum pname, GLfixed param)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glFogx(", toString(pname), ", ", param, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glFogx);
RegalAssert(rCtx->dsp->curr->glFogx != glFogx);
rCtx->dsp->curr->glFogx(pname, param);
}
REGAL_DECL void REGAL_CALL glFogxv(GLenum pname, const GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glFogxv(", toString(pname), ", ", params, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glFogxv);
RegalAssert(rCtx->dsp->curr->glFogxv != glFogxv);
rCtx->dsp->curr->glFogxv(pname, params);
}
REGAL_DECL void REGAL_CALL glFrustumf(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glFrustumf(", left, ", ", right, ", ", bottom, ", ", top, ", ", zNear, ", ", zFar, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glFrustumf);
RegalAssert(rCtx->dsp->curr->glFrustumf != glFrustumf);
rCtx->dsp->curr->glFrustumf(left, right, bottom, top, zNear, zFar);
}
REGAL_DECL void REGAL_CALL glFrustumx(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glFrustumx(", left, ", ", right, ", ", bottom, ", ", top, ", ", zNear, ", ", zFar, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glFrustumx);
RegalAssert(rCtx->dsp->curr->glFrustumx != glFrustumx);
rCtx->dsp->curr->glFrustumx(left, right, bottom, top, zNear, zFar);
}
REGAL_DECL void REGAL_CALL glLightModelx(GLenum pname, GLfixed param)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glLightModelx(", toString(pname), ", ", param, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glLightModelx);
RegalAssert(rCtx->dsp->curr->glLightModelx != glLightModelx);
rCtx->dsp->curr->glLightModelx(pname, param);
}
REGAL_DECL void REGAL_CALL glLightModelxv(GLenum pname, const GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glLightModelxv(", toString(pname), ", ", params, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glLightModelxv);
RegalAssert(rCtx->dsp->curr->glLightModelxv != glLightModelxv);
rCtx->dsp->curr->glLightModelxv(pname, params);
}
REGAL_DECL void REGAL_CALL glLightx(GLenum light, GLenum pname, GLfixed param)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glLightx(", toString(light), ", ", toString(pname), ", ", param, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glLightx);
RegalAssert(rCtx->dsp->curr->glLightx != glLightx);
rCtx->dsp->curr->glLightx(light, pname, param);
}
REGAL_DECL void REGAL_CALL glLightxv(GLenum light, GLenum pname, const GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glLightxv(", toString(light), ", ", toString(pname), ", ", params, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glLightxv);
RegalAssert(rCtx->dsp->curr->glLightxv != glLightxv);
rCtx->dsp->curr->glLightxv(light, pname, params);
}
REGAL_DECL void REGAL_CALL glLineWidthx(GLfixed width)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glLineWidthx(", width, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glLineWidthx);
RegalAssert(rCtx->dsp->curr->glLineWidthx != glLineWidthx);
rCtx->dsp->curr->glLineWidthx(width);
}
REGAL_DECL void REGAL_CALL glLoadMatrixx(const GLfixed *m)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glLoadMatrixx(", m, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glLoadMatrixx);
RegalAssert(rCtx->dsp->curr->glLoadMatrixx != glLoadMatrixx);
rCtx->dsp->curr->glLoadMatrixx(m);
}
REGAL_DECL void REGAL_CALL glMaterialx(GLenum face, GLenum pname, GLfixed param)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glMaterialx(", toString(face), ", ", toString(pname), ", ", param, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glMaterialx);
RegalAssert(rCtx->dsp->curr->glMaterialx != glMaterialx);
rCtx->dsp->curr->glMaterialx(face, pname, param);
}
REGAL_DECL void REGAL_CALL glMaterialxv(GLenum face, GLenum pname, const GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glMaterialxv(", toString(face), ", ", toString(pname), ", ", params, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glMaterialxv);
RegalAssert(rCtx->dsp->curr->glMaterialxv != glMaterialxv);
rCtx->dsp->curr->glMaterialxv(face, pname, params);
}
REGAL_DECL void REGAL_CALL glMultMatrixx(const GLfixed *m)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glMultMatrixx(", m, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glMultMatrixx);
RegalAssert(rCtx->dsp->curr->glMultMatrixx != glMultMatrixx);
rCtx->dsp->curr->glMultMatrixx(m);
}
REGAL_DECL void REGAL_CALL glMultiTexCoord4x(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glMultiTexCoord4x(", toString(target), ", ", s, ", ", t, ", ", r, ", ", q, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glMultiTexCoord4x);
RegalAssert(rCtx->dsp->curr->glMultiTexCoord4x != glMultiTexCoord4x);
rCtx->dsp->curr->glMultiTexCoord4x(target, s, t, r, q);
}
REGAL_DECL void REGAL_CALL glNormal3x(GLfixed nx, GLfixed ny, GLfixed nz)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glNormal3x(", nx, ", ", ny, ", ", nz, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glNormal3x);
RegalAssert(rCtx->dsp->curr->glNormal3x != glNormal3x);
rCtx->dsp->curr->glNormal3x(nx, ny, nz);
}
REGAL_DECL void REGAL_CALL glOrthof(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glOrthof(", left, ", ", right, ", ", bottom, ", ", top, ", ", zNear, ", ", zFar, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glOrthof);
RegalAssert(rCtx->dsp->curr->glOrthof != glOrthof);
rCtx->dsp->curr->glOrthof(left, right, bottom, top, zNear, zFar);
}
REGAL_DECL void REGAL_CALL glOrthox(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glOrthox(", left, ", ", right, ", ", bottom, ", ", top, ", ", zNear, ", ", zFar, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glOrthox);
RegalAssert(rCtx->dsp->curr->glOrthox != glOrthox);
rCtx->dsp->curr->glOrthox(left, right, bottom, top, zNear, zFar);
}
REGAL_DECL void REGAL_CALL glPointSizex(GLfixed size)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glPointSizex(", size, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glPointSizex);
RegalAssert(rCtx->dsp->curr->glPointSizex != glPointSizex);
rCtx->dsp->curr->glPointSizex(size);
}
REGAL_DECL void REGAL_CALL glPolygonOffsetx(GLfixed factor, GLfixed units)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glPolygonOffsetx(", factor, ", ", units, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glPolygonOffsetx);
RegalAssert(rCtx->dsp->curr->glPolygonOffsetx != glPolygonOffsetx);
rCtx->dsp->curr->glPolygonOffsetx(factor, units);
}
REGAL_DECL void REGAL_CALL glRotatex(GLfixed angle, GLfixed x, GLfixed y, GLfixed z)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glRotatex(", angle, ", ", x, ", ", y, ", ", z, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glRotatex);
RegalAssert(rCtx->dsp->curr->glRotatex != glRotatex);
rCtx->dsp->curr->glRotatex(angle, x, y, z);
}
REGAL_DECL void REGAL_CALL glSampleCoveragex(GLclampx value, GLboolean invert)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glSampleCoveragex(", value, ", ", toString(invert), ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glSampleCoveragex);
RegalAssert(rCtx->dsp->curr->glSampleCoveragex != glSampleCoveragex);
rCtx->dsp->curr->glSampleCoveragex(value, invert);
}
REGAL_DECL void REGAL_CALL glScalex(GLfixed x, GLfixed y, GLfixed z)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glScalex(", x, ", ", y, ", ", z, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glScalex);
RegalAssert(rCtx->dsp->curr->glScalex != glScalex);
rCtx->dsp->curr->glScalex(x, y, z);
}
REGAL_DECL void REGAL_CALL glTexEnvx(GLenum target, GLenum pname, GLfixed param)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glTexEnvx(", toString(target), ", ", toString(pname), ", ", param, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glTexEnvx);
RegalAssert(rCtx->dsp->curr->glTexEnvx != glTexEnvx);
rCtx->dsp->curr->glTexEnvx(target, pname, param);
}
REGAL_DECL void REGAL_CALL glTexEnvxv(GLenum target, GLenum pname, const GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glTexEnvxv(", toString(target), ", ", toString(pname), ", ", params, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glTexEnvxv);
RegalAssert(rCtx->dsp->curr->glTexEnvxv != glTexEnvxv);
rCtx->dsp->curr->glTexEnvxv(target, pname, params);
}
REGAL_DECL void REGAL_CALL glTexParameterx(GLenum target, GLenum pname, GLfixed param)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glTexParameterx(", toString(target), ", ", toString(pname), ", ", param, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glTexParameterx);
RegalAssert(rCtx->dsp->curr->glTexParameterx != glTexParameterx);
rCtx->dsp->curr->glTexParameterx(target, pname, param);
}
REGAL_DECL void REGAL_CALL glTranslatex(GLfixed x, GLfixed y, GLfixed z)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glTranslatex(", x, ", ", y, ", ", z, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glTranslatex);
RegalAssert(rCtx->dsp->curr->glTranslatex != glTranslatex);
rCtx->dsp->curr->glTranslatex(x, y, z);
}
/* GL_REGAL_ES1_1_compatibility */
REGAL_DECL void REGAL_CALL glClipPlanef(GLenum plane, const GLfloat *equation)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glClipPlanef(", toString(plane), ", ", equation, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glClipPlanef);
RegalAssert(rCtx->dsp->curr->glClipPlanef != glClipPlanef);
rCtx->dsp->curr->glClipPlanef(plane, equation);
}
REGAL_DECL void REGAL_CALL glClipPlanex(GLenum plane, const GLfixed *equation)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glClipPlanex(", toString(plane), ", ", equation, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glClipPlanex);
RegalAssert(rCtx->dsp->curr->glClipPlanex != glClipPlanex);
rCtx->dsp->curr->glClipPlanex(plane, equation);
}
REGAL_DECL void REGAL_CALL glGetClipPlanef(GLenum pname, GLfloat eqn[4])
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glGetClipPlanef(", toString(pname), ", ", eqn, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glGetClipPlanef);
RegalAssert(rCtx->dsp->curr->glGetClipPlanef != glGetClipPlanef);
rCtx->dsp->curr->glGetClipPlanef(pname, eqn);
}
REGAL_DECL void REGAL_CALL glGetClipPlanex(GLenum pname, GLfixed eqn[4])
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glGetClipPlanex(", toString(pname), ", ", eqn, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glGetClipPlanex);
RegalAssert(rCtx->dsp->curr->glGetClipPlanex != glGetClipPlanex);
rCtx->dsp->curr->glGetClipPlanex(pname, eqn);
}
REGAL_DECL void REGAL_CALL glGetFixedv(GLenum pname, GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glGetFixedv(", toString(pname), ", ", params, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glGetFixedv);
RegalAssert(rCtx->dsp->curr->glGetFixedv != glGetFixedv);
rCtx->dsp->curr->glGetFixedv(pname, params);
}
REGAL_DECL void REGAL_CALL glGetLightxv(GLenum light, GLenum pname, GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glGetLightxv(", toString(light), ", ", toString(pname), ", ", params, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glGetLightxv);
RegalAssert(rCtx->dsp->curr->glGetLightxv != glGetLightxv);
rCtx->dsp->curr->glGetLightxv(light, pname, params);
}
REGAL_DECL void REGAL_CALL glGetMaterialxv(GLenum face, GLenum pname, GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glGetMaterialxv(", toString(face), ", ", toString(pname), ", ", params, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glGetMaterialxv);
RegalAssert(rCtx->dsp->curr->glGetMaterialxv != glGetMaterialxv);
rCtx->dsp->curr->glGetMaterialxv(face, pname, params);
}
REGAL_DECL void REGAL_CALL glGetTexEnvxv(GLenum env, GLenum pname, GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glGetTexEnvxv(", toString(env), ", ", toString(pname), ", ", params, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glGetTexEnvxv);
RegalAssert(rCtx->dsp->curr->glGetTexEnvxv != glGetTexEnvxv);
rCtx->dsp->curr->glGetTexEnvxv(env, pname, params);
}
REGAL_DECL void REGAL_CALL glGetTexParameterxv(GLenum target, GLenum pname, GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glGetTexParameterxv(", toString(target), ", ", toString(pname), ", ", params, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glGetTexParameterxv);
RegalAssert(rCtx->dsp->curr->glGetTexParameterxv != glGetTexParameterxv);
rCtx->dsp->curr->glGetTexParameterxv(target, pname, params);
}
REGAL_DECL void REGAL_CALL glPointParameterx(GLenum pname, GLfixed param)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glPointParameterx(", toString(pname), ", ", param, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glPointParameterx);
RegalAssert(rCtx->dsp->curr->glPointParameterx != glPointParameterx);
rCtx->dsp->curr->glPointParameterx(pname, param);
}
REGAL_DECL void REGAL_CALL glPointParameterxv(GLenum pname, const GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glPointParameterxv(", toString(pname), ", ", params, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glPointParameterxv);
RegalAssert(rCtx->dsp->curr->glPointParameterxv != glPointParameterxv);
rCtx->dsp->curr->glPointParameterxv(pname, params);
}
REGAL_DECL void REGAL_CALL glPointSizePointerOES(GLenum type, GLsizei stride, const GLvoid *pointer)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glPointSizePointerOES(", toString(type), ", ", stride, ", ", pointer, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glPointSizePointerOES);
RegalAssert(rCtx->dsp->curr->glPointSizePointerOES != glPointSizePointerOES);
rCtx->dsp->curr->glPointSizePointerOES(type, stride, pointer);
}
REGAL_DECL void REGAL_CALL glTexParameterxv(GLenum target, GLenum pname, const GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RTrace("glTexParameterxv(", toString(target), ", ", toString(pname), ", ", params, ")");
if (!rCtx) return;
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
RegalAssert(rCtx->dsp->curr->glTexParameterxv);
RegalAssert(rCtx->dsp->curr->glTexParameterxv != glTexParameterxv);
rCtx->dsp->curr->glTexParameterxv(target, pname, params);
}
/* GL_REGAL_error_string */
REGAL_DECL const GLchar *REGAL_CALL glErrorStringREGAL(GLenum error)

View file

@ -12,6 +12,7 @@ EXPORTS
glAlphaFragmentOp2ATI
glAlphaFragmentOp3ATI
glAlphaFunc
glAlphaFuncx
glApplyTextureEXT
glAreProgramsResidentNV
glAreTexturesResident
@ -140,9 +141,11 @@ EXPORTS
glClearColor
glClearColorIiEXT
glClearColorIuiEXT
glClearColorx
glClearDepth
glClearDepthdNV
glClearDepthf
glClearDepthx
glClearIndex
glClearNamedBufferDataEXT
glClearNamedBufferSubDataEXT
@ -153,6 +156,8 @@ EXPORTS
glClientAttribDefaultEXT
glClientWaitSync
glClipPlane
glClipPlanef
glClipPlanex
glColor3b
glColor3bv
glColor3d
@ -197,6 +202,7 @@ EXPORTS
glColor4uiv
glColor4us
glColor4usv
glColor4x
glColorFormatNV
glColorFragmentOp1ATI
glColorFragmentOp2ATI
@ -371,6 +377,7 @@ EXPORTS
glDepthRangeIndexed
glDepthRangedNV
glDepthRangef
glDepthRangex
glDetachObjectARB
glDetachShader
glDetailTexFuncSGIS
@ -513,6 +520,8 @@ EXPORTS
glFogfv
glFogi
glFogiv
glFogx
glFogxv
glFragmentColorMaterialEXT
glFragmentColorMaterialSGIX
glFragmentLightModelfEXT
@ -565,6 +574,8 @@ EXPORTS
glFreeObjectBufferATI
glFrontFace
glFrustum
glFrustumf
glFrustumx
glGenAsyncMarkersSGIX
glGenBuffers
glGenBuffersARB
@ -629,6 +640,8 @@ EXPORTS
glGetBufferSubData
glGetBufferSubDataARB
glGetClipPlane
glGetClipPlanef
glGetClipPlanex
glGetColorTable
glGetColorTableEXT
glGetColorTableParameterfv
@ -666,6 +679,7 @@ EXPORTS
glGetFenceivNV
glGetFinalCombinerInputParameterfvNV
glGetFinalCombinerInputParameterivNV
glGetFixedv
glGetFloatIndexedvEXT
glGetFloati_v
glGetFloati_vEXT
@ -713,6 +727,7 @@ EXPORTS
glGetInvariantIntegervEXT
glGetLightfv
glGetLightiv
glGetLightxv
glGetListParameterfvSGIX
glGetListParameterivSGIX
glGetLocalConstantBooleanvEXT
@ -728,6 +743,7 @@ EXPORTS
glGetMapiv
glGetMaterialfv
glGetMaterialiv
glGetMaterialxv
glGetMinmax
glGetMinmaxEXT
glGetMinmaxParameterfv
@ -864,6 +880,7 @@ EXPORTS
glGetTexBumpParameterivATI
glGetTexEnvfv
glGetTexEnviv
glGetTexEnvxv
glGetTexFilterFuncSGIS
glGetTexGendv
glGetTexGenfv
@ -878,6 +895,7 @@ EXPORTS
glGetTexParameterPointervAPPLE
glGetTexParameterfv
glGetTexParameteriv
glGetTexParameterxv
glGetTextureHandleNV
glGetTextureImageEXT
glGetTextureLevelParameterfvEXT
@ -1061,12 +1079,17 @@ EXPORTS
glLightModelfv
glLightModeli
glLightModeliv
glLightModelx
glLightModelxv
glLightf
glLightfv
glLighti
glLightiv
glLightx
glLightxv
glLineStipple
glLineWidth
glLineWidthx
glLinkProgram
glLinkProgramARB
glListBase
@ -1078,6 +1101,7 @@ EXPORTS
glLoadIdentityDeformationMapSGIX
glLoadMatrixd
glLoadMatrixf
glLoadMatrixx
glLoadName
glLoadProgramNV
glLoadTransposeMatrixd
@ -1120,6 +1144,8 @@ EXPORTS
glMaterialfv
glMateriali
glMaterialiv
glMaterialx
glMaterialxv
glMatrixFrustumEXT
glMatrixIndexPointerARB
glMatrixIndexubvARB
@ -1152,6 +1178,7 @@ EXPORTS
glMinmaxEXT
glMultMatrixd
glMultMatrixf
glMultMatrixx
glMultTransposeMatrixd
glMultTransposeMatrixdARB
glMultTransposeMatrixf
@ -1242,6 +1269,7 @@ EXPORTS
glMultiTexCoord4sARB
glMultiTexCoord4sv
glMultiTexCoord4svARB
glMultiTexCoord4x
glMultiTexCoordP1ui
glMultiTexCoordP1uiv
glMultiTexCoordP2ui
@ -1318,6 +1346,7 @@ EXPORTS
glNormal3iv
glNormal3s
glNormal3sv
glNormal3x
glNormalFormatNV
glNormalP3ui
glNormalP3uiv
@ -1340,6 +1369,8 @@ EXPORTS
glObjectPurgeableAPPLE
glObjectUnpurgeableAPPLE
glOrtho
glOrthof
glOrthox
glPNTrianglesfATI
glPNTrianglesiATI
glPassTexCoordATI
@ -1395,12 +1426,17 @@ EXPORTS
glPointParameteriNV
glPointParameteriv
glPointParameterivNV
glPointParameterx
glPointParameterxv
glPointSize
glPointSizePointerOES
glPointSizex
glPollAsyncSGIX
glPollInstrumentsSGIX
glPolygonMode
glPolygonOffset
glPolygonOffsetEXT
glPolygonOffsetx
glPolygonStipple
glPopAttrib
glPopClientAttrib
@ -1664,8 +1700,10 @@ EXPORTS
glResumeTransformFeedbackNV
glRotated
glRotatef
glRotatex
glSampleCoverage
glSampleCoverageARB
glSampleCoveragex
glSampleMapATI
glSampleMaskEXT
glSampleMaskIndexedNV
@ -1681,6 +1719,7 @@ EXPORTS
glSamplerParameteriv
glScaled
glScalef
glScalex
glScissor
glScissorArrayv
glScissorIndexed
@ -1862,6 +1901,8 @@ EXPORTS
glTexEnvfv
glTexEnvi
glTexEnviv
glTexEnvx
glTexEnvxv
glTexFilterFuncSGIS
glTexGend
glTexGendv
@ -1886,6 +1927,8 @@ EXPORTS
glTexParameterfv
glTexParameteri
glTexParameteriv
glTexParameterx
glTexParameterxv
glTexRenderbufferNV
glTexScissorFuncINTEL
glTexScissorINTEL
@ -1941,6 +1984,7 @@ EXPORTS
glTransformPathNV
glTranslated
glTranslatef
glTranslatex
glUniform1d
glUniform1dv
glUniform1f

View file

@ -292,6 +292,8 @@ ContextInfo::ContextInfo()
gl_nv_vertex_program(false),
gl_nv_video_capture(false),
gl_pgi_misc_hints(false),
gl_regal_es1_0_compatibility(false),
gl_regal_es1_1_compatibility(false),
gl_regal_error_string(false),
gl_regal_extension_query(false),
gl_regal_log(false),
@ -758,6 +760,8 @@ ContextInfo::init(const RegalContext &context)
gl_nv_vertex_program = e.find("GL_NV_vertex_program")!=e.end();
gl_nv_video_capture = e.find("GL_NV_video_capture")!=e.end();
gl_pgi_misc_hints = e.find("GL_PGI_misc_hints")!=e.end();
gl_regal_es1_0_compatibility = e.find("GL_REGAL_ES1_0_compatibility")!=e.end();
gl_regal_es1_1_compatibility = e.find("GL_REGAL_ES1_1_compatibility")!=e.end();
gl_regal_error_string = e.find("GL_REGAL_error_string")!=e.end();
gl_regal_extension_query = e.find("GL_REGAL_extension_query")!=e.end();
gl_regal_log = e.find("GL_REGAL_log")!=e.end();
@ -1075,6 +1079,8 @@ ContextInfo::getExtension(const char *ext) const
if (!strcmp(ext,"GL_NV_vertex_program")) return gl_nv_vertex_program;
if (!strcmp(ext,"GL_NV_video_capture")) return gl_nv_video_capture;
if (!strcmp(ext,"GL_PGI_misc_hints")) return gl_pgi_misc_hints;
if (!strcmp(ext,"GL_REGAL_ES1_0_compatibility")) return true;
if (!strcmp(ext,"GL_REGAL_ES1_1_compatibility")) return true;
if (!strcmp(ext,"GL_REGAL_error_string")) return true;
if (!strcmp(ext,"GL_REGAL_extension_query")) return true;
if (!strcmp(ext,"GL_REGAL_log")) return true;

View file

@ -320,6 +320,8 @@ struct ContextInfo
GLboolean gl_nv_vertex_program : 1;
GLboolean gl_nv_video_capture : 1;
GLboolean gl_pgi_misc_hints : 1;
GLboolean gl_regal_es1_0_compatibility : 1;
GLboolean gl_regal_es1_1_compatibility : 1;
GLboolean gl_regal_error_string : 1;
GLboolean gl_regal_extension_query : 1;
GLboolean gl_regal_log : 1;

View file

@ -3589,6 +3589,56 @@ struct DispatchTable {
void (REGAL_CALL *glHintPGI)(GLenum target, GLint mode);
// GL_REGAL_ES1_0_compatibility
void (REGAL_CALL *glAlphaFuncx)(GLenum func, GLclampx ref);
void (REGAL_CALL *glClearColorx)(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha);
void (REGAL_CALL *glClearDepthx)(GLclampx depth);
void (REGAL_CALL *glColor4x)(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
void (REGAL_CALL *glDepthRangex)(GLclampx zNear, GLclampx zFar);
void (REGAL_CALL *glFogx)(GLenum pname, GLfixed param);
void (REGAL_CALL *glFogxv)(GLenum pname, const GLfixed *params);
void (REGAL_CALL *glFrustumf)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
void (REGAL_CALL *glFrustumx)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
void (REGAL_CALL *glLightModelx)(GLenum pname, GLfixed param);
void (REGAL_CALL *glLightModelxv)(GLenum pname, const GLfixed *params);
void (REGAL_CALL *glLightx)(GLenum light, GLenum pname, GLfixed param);
void (REGAL_CALL *glLightxv)(GLenum light, GLenum pname, const GLfixed *params);
void (REGAL_CALL *glLineWidthx)(GLfixed width);
void (REGAL_CALL *glLoadMatrixx)(const GLfixed *m);
void (REGAL_CALL *glMaterialx)(GLenum face, GLenum pname, GLfixed param);
void (REGAL_CALL *glMaterialxv)(GLenum face, GLenum pname, const GLfixed *params);
void (REGAL_CALL *glMultMatrixx)(const GLfixed *m);
void (REGAL_CALL *glMultiTexCoord4x)(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
void (REGAL_CALL *glNormal3x)(GLfixed nx, GLfixed ny, GLfixed nz);
void (REGAL_CALL *glOrthof)(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
void (REGAL_CALL *glOrthox)(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
void (REGAL_CALL *glPointSizex)(GLfixed size);
void (REGAL_CALL *glPolygonOffsetx)(GLfixed factor, GLfixed units);
void (REGAL_CALL *glRotatex)(GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
void (REGAL_CALL *glSampleCoveragex)(GLclampx value, GLboolean invert);
void (REGAL_CALL *glScalex)(GLfixed x, GLfixed y, GLfixed z);
void (REGAL_CALL *glTexEnvx)(GLenum target, GLenum pname, GLfixed param);
void (REGAL_CALL *glTexEnvxv)(GLenum target, GLenum pname, const GLfixed *params);
void (REGAL_CALL *glTexParameterx)(GLenum target, GLenum pname, GLfixed param);
void (REGAL_CALL *glTranslatex)(GLfixed x, GLfixed y, GLfixed z);
// GL_REGAL_ES1_1_compatibility
void (REGAL_CALL *glClipPlanef)(GLenum plane, const GLfloat *equation);
void (REGAL_CALL *glClipPlanex)(GLenum plane, const GLfixed *equation);
void (REGAL_CALL *glGetClipPlanef)(GLenum pname, GLfloat eqn[4]);
void (REGAL_CALL *glGetClipPlanex)(GLenum pname, GLfixed eqn[4]);
void (REGAL_CALL *glGetFixedv)(GLenum pname, GLfixed *params);
void (REGAL_CALL *glGetLightxv)(GLenum light, GLenum pname, GLfixed *params);
void (REGAL_CALL *glGetMaterialxv)(GLenum face, GLenum pname, GLfixed *params);
void (REGAL_CALL *glGetTexEnvxv)(GLenum env, GLenum pname, GLfixed *params);
void (REGAL_CALL *glGetTexParameterxv)(GLenum target, GLenum pname, GLfixed *params);
void (REGAL_CALL *glPointParameterx)(GLenum pname, GLfixed param);
void (REGAL_CALL *glPointParameterxv)(GLenum pname, const GLfixed *params);
void (REGAL_CALL *glPointSizePointerOES)(GLenum type, GLsizei stride, const GLvoid *pointer);
void (REGAL_CALL *glTexParameterxv)(GLenum target, GLenum pname, const GLfixed *params);
// GL_REGAL_error_string
const GLchar *(REGAL_CALL *glErrorStringREGAL)(GLenum error);

View file

@ -16878,6 +16878,318 @@ static void REGAL_CALL debug_glHintPGI(GLenum target, GLint mode)
rCtx->dsp->curr->glHintPGI(target, mode);
}
// GL_REGAL_ES1_0_compatibility
static void REGAL_CALL debug_glAlphaFuncx(GLenum func, GLclampx ref)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glAlphaFuncx(func, ref);
}
static void REGAL_CALL debug_glClearColorx(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glClearColorx(red, green, blue, alpha);
}
static void REGAL_CALL debug_glClearDepthx(GLclampx depth)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glClearDepthx(depth);
}
static void REGAL_CALL debug_glColor4x(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glColor4x(red, green, blue, alpha);
}
static void REGAL_CALL debug_glDepthRangex(GLclampx zNear, GLclampx zFar)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glDepthRangex(zNear, zFar);
}
static void REGAL_CALL debug_glFogx(GLenum pname, GLfixed param)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glFogx(pname, param);
}
static void REGAL_CALL debug_glFogxv(GLenum pname, const GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glFogxv(pname, params);
}
static void REGAL_CALL debug_glFrustumf(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glFrustumf(left, right, bottom, top, zNear, zFar);
}
static void REGAL_CALL debug_glFrustumx(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glFrustumx(left, right, bottom, top, zNear, zFar);
}
static void REGAL_CALL debug_glLightModelx(GLenum pname, GLfixed param)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glLightModelx(pname, param);
}
static void REGAL_CALL debug_glLightModelxv(GLenum pname, const GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glLightModelxv(pname, params);
}
static void REGAL_CALL debug_glLightx(GLenum light, GLenum pname, GLfixed param)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glLightx(light, pname, param);
}
static void REGAL_CALL debug_glLightxv(GLenum light, GLenum pname, const GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glLightxv(light, pname, params);
}
static void REGAL_CALL debug_glLineWidthx(GLfixed width)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glLineWidthx(width);
}
static void REGAL_CALL debug_glLoadMatrixx(const GLfixed *m)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glLoadMatrixx(m);
}
static void REGAL_CALL debug_glMaterialx(GLenum face, GLenum pname, GLfixed param)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glMaterialx(face, pname, param);
}
static void REGAL_CALL debug_glMaterialxv(GLenum face, GLenum pname, const GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glMaterialxv(face, pname, params);
}
static void REGAL_CALL debug_glMultMatrixx(const GLfixed *m)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glMultMatrixx(m);
}
static void REGAL_CALL debug_glMultiTexCoord4x(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glMultiTexCoord4x(target, s, t, r, q);
}
static void REGAL_CALL debug_glNormal3x(GLfixed nx, GLfixed ny, GLfixed nz)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glNormal3x(nx, ny, nz);
}
static void REGAL_CALL debug_glOrthof(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glOrthof(left, right, bottom, top, zNear, zFar);
}
static void REGAL_CALL debug_glOrthox(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glOrthox(left, right, bottom, top, zNear, zFar);
}
static void REGAL_CALL debug_glPointSizex(GLfixed size)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glPointSizex(size);
}
static void REGAL_CALL debug_glPolygonOffsetx(GLfixed factor, GLfixed units)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glPolygonOffsetx(factor, units);
}
static void REGAL_CALL debug_glRotatex(GLfixed angle, GLfixed x, GLfixed y, GLfixed z)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glRotatex(angle, x, y, z);
}
static void REGAL_CALL debug_glSampleCoveragex(GLclampx value, GLboolean invert)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glSampleCoveragex(value, invert);
}
static void REGAL_CALL debug_glScalex(GLfixed x, GLfixed y, GLfixed z)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glScalex(x, y, z);
}
static void REGAL_CALL debug_glTexEnvx(GLenum target, GLenum pname, GLfixed param)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glTexEnvx(target, pname, param);
}
static void REGAL_CALL debug_glTexEnvxv(GLenum target, GLenum pname, const GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glTexEnvxv(target, pname, params);
}
static void REGAL_CALL debug_glTexParameterx(GLenum target, GLenum pname, GLfixed param)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glTexParameterx(target, pname, param);
}
static void REGAL_CALL debug_glTranslatex(GLfixed x, GLfixed y, GLfixed z)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glTranslatex(x, y, z);
}
// GL_REGAL_ES1_1_compatibility
static void REGAL_CALL debug_glClipPlanef(GLenum plane, const GLfloat *equation)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glClipPlanef(plane, equation);
}
static void REGAL_CALL debug_glClipPlanex(GLenum plane, const GLfixed *equation)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glClipPlanex(plane, equation);
}
static void REGAL_CALL debug_glGetClipPlanef(GLenum pname, GLfloat eqn[4])
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glGetClipPlanef(pname, eqn);
}
static void REGAL_CALL debug_glGetClipPlanex(GLenum pname, GLfixed eqn[4])
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glGetClipPlanex(pname, eqn);
}
static void REGAL_CALL debug_glGetFixedv(GLenum pname, GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glGetFixedv(pname, params);
}
static void REGAL_CALL debug_glGetLightxv(GLenum light, GLenum pname, GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glGetLightxv(light, pname, params);
}
static void REGAL_CALL debug_glGetMaterialxv(GLenum face, GLenum pname, GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glGetMaterialxv(face, pname, params);
}
static void REGAL_CALL debug_glGetTexEnvxv(GLenum env, GLenum pname, GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glGetTexEnvxv(env, pname, params);
}
static void REGAL_CALL debug_glGetTexParameterxv(GLenum target, GLenum pname, GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glGetTexParameterxv(target, pname, params);
}
static void REGAL_CALL debug_glPointParameterx(GLenum pname, GLfixed param)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glPointParameterx(pname, param);
}
static void REGAL_CALL debug_glPointParameterxv(GLenum pname, const GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glPointParameterxv(pname, params);
}
static void REGAL_CALL debug_glPointSizePointerOES(GLenum type, GLsizei stride, const GLvoid *pointer)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glPointSizePointerOES(type, stride, pointer);
}
static void REGAL_CALL debug_glTexParameterxv(GLenum target, GLenum pname, const GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
DispatchStateScopedStepDown stepDown(rCtx->dsp);
rCtx->dsp->curr->glTexParameterxv(target, pname, params);
}
// GL_REGAL_error_string
static const GLchar *REGAL_CALL debug_glErrorStringREGAL(GLenum error)
@ -20911,6 +21223,56 @@ void InitDispatchTableDebug(DispatchTable &tbl)
tbl.glHintPGI = debug_glHintPGI;
// GL_REGAL_ES1_0_compatibility
tbl.glAlphaFuncx = debug_glAlphaFuncx;
tbl.glClearColorx = debug_glClearColorx;
tbl.glClearDepthx = debug_glClearDepthx;
tbl.glColor4x = debug_glColor4x;
tbl.glDepthRangex = debug_glDepthRangex;
tbl.glFogx = debug_glFogx;
tbl.glFogxv = debug_glFogxv;
tbl.glFrustumf = debug_glFrustumf;
tbl.glFrustumx = debug_glFrustumx;
tbl.glLightModelx = debug_glLightModelx;
tbl.glLightModelxv = debug_glLightModelxv;
tbl.glLightx = debug_glLightx;
tbl.glLightxv = debug_glLightxv;
tbl.glLineWidthx = debug_glLineWidthx;
tbl.glLoadMatrixx = debug_glLoadMatrixx;
tbl.glMaterialx = debug_glMaterialx;
tbl.glMaterialxv = debug_glMaterialxv;
tbl.glMultMatrixx = debug_glMultMatrixx;
tbl.glMultiTexCoord4x = debug_glMultiTexCoord4x;
tbl.glNormal3x = debug_glNormal3x;
tbl.glOrthof = debug_glOrthof;
tbl.glOrthox = debug_glOrthox;
tbl.glPointSizex = debug_glPointSizex;
tbl.glPolygonOffsetx = debug_glPolygonOffsetx;
tbl.glRotatex = debug_glRotatex;
tbl.glSampleCoveragex = debug_glSampleCoveragex;
tbl.glScalex = debug_glScalex;
tbl.glTexEnvx = debug_glTexEnvx;
tbl.glTexEnvxv = debug_glTexEnvxv;
tbl.glTexParameterx = debug_glTexParameterx;
tbl.glTranslatex = debug_glTranslatex;
// GL_REGAL_ES1_1_compatibility
tbl.glClipPlanef = debug_glClipPlanef;
tbl.glClipPlanex = debug_glClipPlanex;
tbl.glGetClipPlanef = debug_glGetClipPlanef;
tbl.glGetClipPlanex = debug_glGetClipPlanex;
tbl.glGetFixedv = debug_glGetFixedv;
tbl.glGetLightxv = debug_glGetLightxv;
tbl.glGetMaterialxv = debug_glGetMaterialxv;
tbl.glGetTexEnvxv = debug_glGetTexEnvxv;
tbl.glGetTexParameterxv = debug_glGetTexParameterxv;
tbl.glPointParameterx = debug_glPointParameterx;
tbl.glPointParameterxv = debug_glPointParameterxv;
tbl.glPointSizePointerOES = debug_glPointSizePointerOES;
tbl.glTexParameterxv = debug_glTexParameterxv;
// GL_REGAL_error_string
tbl.glErrorStringREGAL = debug_glErrorStringREGAL;

View file

@ -27997,6 +27997,10 @@ static void REGAL_CALL emu_glTexImage3DMultisampleCoverageNV(GLenum target, GLsi
// GL_PGI_misc_hints
// GL_REGAL_ES1_0_compatibility
// GL_REGAL_ES1_1_compatibility
// GL_REGAL_error_string
// GL_REGAL_extension_query

File diff suppressed because it is too large Load diff

View file

@ -44656,6 +44656,846 @@ static void REGAL_CALL loader_glHintPGI(GLenum target, GLint mode)
driverTbl.glHintPGI(target, mode);
}
// GL_REGAL_ES1_0_compatibility
extern void REGAL_CALL missing_glAlphaFuncx(GLenum func, GLclampx ref);
static void REGAL_CALL loader_glAlphaFuncx(GLenum func, GLclampx ref)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glAlphaFuncx, "glAlphaFuncx");
if ( !driverTbl.glAlphaFuncx ) {
driverTbl.glAlphaFuncx = missing_glAlphaFuncx;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glAlphaFuncx == loader_glAlphaFuncx) {
rCtx->dsp->emuTbl.glAlphaFuncx = driverTbl.glAlphaFuncx;
}
driverTbl.glAlphaFuncx(func, ref);
}
extern void REGAL_CALL missing_glClearColorx(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha);
static void REGAL_CALL loader_glClearColorx(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glClearColorx, "glClearColorx");
if ( !driverTbl.glClearColorx ) {
driverTbl.glClearColorx = missing_glClearColorx;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glClearColorx == loader_glClearColorx) {
rCtx->dsp->emuTbl.glClearColorx = driverTbl.glClearColorx;
}
driverTbl.glClearColorx(red, green, blue, alpha);
}
extern void REGAL_CALL missing_glClearDepthx(GLclampx depth);
static void REGAL_CALL loader_glClearDepthx(GLclampx depth)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glClearDepthx, "glClearDepthx");
if ( !driverTbl.glClearDepthx ) {
driverTbl.glClearDepthx = missing_glClearDepthx;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glClearDepthx == loader_glClearDepthx) {
rCtx->dsp->emuTbl.glClearDepthx = driverTbl.glClearDepthx;
}
driverTbl.glClearDepthx(depth);
}
extern void REGAL_CALL missing_glColor4x(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
static void REGAL_CALL loader_glColor4x(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glColor4x, "glColor4x");
if ( !driverTbl.glColor4x ) {
driverTbl.glColor4x = missing_glColor4x;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glColor4x == loader_glColor4x) {
rCtx->dsp->emuTbl.glColor4x = driverTbl.glColor4x;
}
driverTbl.glColor4x(red, green, blue, alpha);
}
extern void REGAL_CALL missing_glDepthRangex(GLclampx zNear, GLclampx zFar);
static void REGAL_CALL loader_glDepthRangex(GLclampx zNear, GLclampx zFar)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glDepthRangex, "glDepthRangex");
if ( !driverTbl.glDepthRangex ) {
driverTbl.glDepthRangex = missing_glDepthRangex;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glDepthRangex == loader_glDepthRangex) {
rCtx->dsp->emuTbl.glDepthRangex = driverTbl.glDepthRangex;
}
driverTbl.glDepthRangex(zNear, zFar);
}
extern void REGAL_CALL missing_glFogx(GLenum pname, GLfixed param);
static void REGAL_CALL loader_glFogx(GLenum pname, GLfixed param)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glFogx, "glFogx");
if ( !driverTbl.glFogx ) {
driverTbl.glFogx = missing_glFogx;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glFogx == loader_glFogx) {
rCtx->dsp->emuTbl.glFogx = driverTbl.glFogx;
}
driverTbl.glFogx(pname, param);
}
extern void REGAL_CALL missing_glFogxv(GLenum pname, const GLfixed *params);
static void REGAL_CALL loader_glFogxv(GLenum pname, const GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glFogxv, "glFogxv");
if ( !driverTbl.glFogxv ) {
driverTbl.glFogxv = missing_glFogxv;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glFogxv == loader_glFogxv) {
rCtx->dsp->emuTbl.glFogxv = driverTbl.glFogxv;
}
driverTbl.glFogxv(pname, params);
}
extern void REGAL_CALL missing_glFrustumf(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
static void REGAL_CALL loader_glFrustumf(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glFrustumf, "glFrustumf");
if ( !driverTbl.glFrustumf ) {
driverTbl.glFrustumf = missing_glFrustumf;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glFrustumf == loader_glFrustumf) {
rCtx->dsp->emuTbl.glFrustumf = driverTbl.glFrustumf;
}
driverTbl.glFrustumf(left, right, bottom, top, zNear, zFar);
}
extern void REGAL_CALL missing_glFrustumx(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
static void REGAL_CALL loader_glFrustumx(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glFrustumx, "glFrustumx");
if ( !driverTbl.glFrustumx ) {
driverTbl.glFrustumx = missing_glFrustumx;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glFrustumx == loader_glFrustumx) {
rCtx->dsp->emuTbl.glFrustumx = driverTbl.glFrustumx;
}
driverTbl.glFrustumx(left, right, bottom, top, zNear, zFar);
}
extern void REGAL_CALL missing_glLightModelx(GLenum pname, GLfixed param);
static void REGAL_CALL loader_glLightModelx(GLenum pname, GLfixed param)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glLightModelx, "glLightModelx");
if ( !driverTbl.glLightModelx ) {
driverTbl.glLightModelx = missing_glLightModelx;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glLightModelx == loader_glLightModelx) {
rCtx->dsp->emuTbl.glLightModelx = driverTbl.glLightModelx;
}
driverTbl.glLightModelx(pname, param);
}
extern void REGAL_CALL missing_glLightModelxv(GLenum pname, const GLfixed *params);
static void REGAL_CALL loader_glLightModelxv(GLenum pname, const GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glLightModelxv, "glLightModelxv");
if ( !driverTbl.glLightModelxv ) {
driverTbl.glLightModelxv = missing_glLightModelxv;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glLightModelxv == loader_glLightModelxv) {
rCtx->dsp->emuTbl.glLightModelxv = driverTbl.glLightModelxv;
}
driverTbl.glLightModelxv(pname, params);
}
extern void REGAL_CALL missing_glLightx(GLenum light, GLenum pname, GLfixed param);
static void REGAL_CALL loader_glLightx(GLenum light, GLenum pname, GLfixed param)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glLightx, "glLightx");
if ( !driverTbl.glLightx ) {
driverTbl.glLightx = missing_glLightx;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glLightx == loader_glLightx) {
rCtx->dsp->emuTbl.glLightx = driverTbl.glLightx;
}
driverTbl.glLightx(light, pname, param);
}
extern void REGAL_CALL missing_glLightxv(GLenum light, GLenum pname, const GLfixed *params);
static void REGAL_CALL loader_glLightxv(GLenum light, GLenum pname, const GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glLightxv, "glLightxv");
if ( !driverTbl.glLightxv ) {
driverTbl.glLightxv = missing_glLightxv;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glLightxv == loader_glLightxv) {
rCtx->dsp->emuTbl.glLightxv = driverTbl.glLightxv;
}
driverTbl.glLightxv(light, pname, params);
}
extern void REGAL_CALL missing_glLineWidthx(GLfixed width);
static void REGAL_CALL loader_glLineWidthx(GLfixed width)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glLineWidthx, "glLineWidthx");
if ( !driverTbl.glLineWidthx ) {
driverTbl.glLineWidthx = missing_glLineWidthx;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glLineWidthx == loader_glLineWidthx) {
rCtx->dsp->emuTbl.glLineWidthx = driverTbl.glLineWidthx;
}
driverTbl.glLineWidthx(width);
}
extern void REGAL_CALL missing_glLoadMatrixx(const GLfixed *m);
static void REGAL_CALL loader_glLoadMatrixx(const GLfixed *m)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glLoadMatrixx, "glLoadMatrixx");
if ( !driverTbl.glLoadMatrixx ) {
driverTbl.glLoadMatrixx = missing_glLoadMatrixx;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glLoadMatrixx == loader_glLoadMatrixx) {
rCtx->dsp->emuTbl.glLoadMatrixx = driverTbl.glLoadMatrixx;
}
driverTbl.glLoadMatrixx(m);
}
extern void REGAL_CALL missing_glMaterialx(GLenum face, GLenum pname, GLfixed param);
static void REGAL_CALL loader_glMaterialx(GLenum face, GLenum pname, GLfixed param)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glMaterialx, "glMaterialx");
if ( !driverTbl.glMaterialx ) {
driverTbl.glMaterialx = missing_glMaterialx;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glMaterialx == loader_glMaterialx) {
rCtx->dsp->emuTbl.glMaterialx = driverTbl.glMaterialx;
}
driverTbl.glMaterialx(face, pname, param);
}
extern void REGAL_CALL missing_glMaterialxv(GLenum face, GLenum pname, const GLfixed *params);
static void REGAL_CALL loader_glMaterialxv(GLenum face, GLenum pname, const GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glMaterialxv, "glMaterialxv");
if ( !driverTbl.glMaterialxv ) {
driverTbl.glMaterialxv = missing_glMaterialxv;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glMaterialxv == loader_glMaterialxv) {
rCtx->dsp->emuTbl.glMaterialxv = driverTbl.glMaterialxv;
}
driverTbl.glMaterialxv(face, pname, params);
}
extern void REGAL_CALL missing_glMultMatrixx(const GLfixed *m);
static void REGAL_CALL loader_glMultMatrixx(const GLfixed *m)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glMultMatrixx, "glMultMatrixx");
if ( !driverTbl.glMultMatrixx ) {
driverTbl.glMultMatrixx = missing_glMultMatrixx;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glMultMatrixx == loader_glMultMatrixx) {
rCtx->dsp->emuTbl.glMultMatrixx = driverTbl.glMultMatrixx;
}
driverTbl.glMultMatrixx(m);
}
extern void REGAL_CALL missing_glMultiTexCoord4x(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
static void REGAL_CALL loader_glMultiTexCoord4x(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glMultiTexCoord4x, "glMultiTexCoord4x");
if ( !driverTbl.glMultiTexCoord4x ) {
driverTbl.glMultiTexCoord4x = missing_glMultiTexCoord4x;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glMultiTexCoord4x == loader_glMultiTexCoord4x) {
rCtx->dsp->emuTbl.glMultiTexCoord4x = driverTbl.glMultiTexCoord4x;
}
driverTbl.glMultiTexCoord4x(target, s, t, r, q);
}
extern void REGAL_CALL missing_glNormal3x(GLfixed nx, GLfixed ny, GLfixed nz);
static void REGAL_CALL loader_glNormal3x(GLfixed nx, GLfixed ny, GLfixed nz)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glNormal3x, "glNormal3x");
if ( !driverTbl.glNormal3x ) {
driverTbl.glNormal3x = missing_glNormal3x;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glNormal3x == loader_glNormal3x) {
rCtx->dsp->emuTbl.glNormal3x = driverTbl.glNormal3x;
}
driverTbl.glNormal3x(nx, ny, nz);
}
extern void REGAL_CALL missing_glOrthof(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
static void REGAL_CALL loader_glOrthof(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glOrthof, "glOrthof");
if ( !driverTbl.glOrthof ) {
driverTbl.glOrthof = missing_glOrthof;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glOrthof == loader_glOrthof) {
rCtx->dsp->emuTbl.glOrthof = driverTbl.glOrthof;
}
driverTbl.glOrthof(left, right, bottom, top, zNear, zFar);
}
extern void REGAL_CALL missing_glOrthox(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
static void REGAL_CALL loader_glOrthox(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glOrthox, "glOrthox");
if ( !driverTbl.glOrthox ) {
driverTbl.glOrthox = missing_glOrthox;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glOrthox == loader_glOrthox) {
rCtx->dsp->emuTbl.glOrthox = driverTbl.glOrthox;
}
driverTbl.glOrthox(left, right, bottom, top, zNear, zFar);
}
extern void REGAL_CALL missing_glPointSizex(GLfixed size);
static void REGAL_CALL loader_glPointSizex(GLfixed size)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glPointSizex, "glPointSizex");
if ( !driverTbl.glPointSizex ) {
driverTbl.glPointSizex = missing_glPointSizex;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glPointSizex == loader_glPointSizex) {
rCtx->dsp->emuTbl.glPointSizex = driverTbl.glPointSizex;
}
driverTbl.glPointSizex(size);
}
extern void REGAL_CALL missing_glPolygonOffsetx(GLfixed factor, GLfixed units);
static void REGAL_CALL loader_glPolygonOffsetx(GLfixed factor, GLfixed units)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glPolygonOffsetx, "glPolygonOffsetx");
if ( !driverTbl.glPolygonOffsetx ) {
driverTbl.glPolygonOffsetx = missing_glPolygonOffsetx;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glPolygonOffsetx == loader_glPolygonOffsetx) {
rCtx->dsp->emuTbl.glPolygonOffsetx = driverTbl.glPolygonOffsetx;
}
driverTbl.glPolygonOffsetx(factor, units);
}
extern void REGAL_CALL missing_glRotatex(GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
static void REGAL_CALL loader_glRotatex(GLfixed angle, GLfixed x, GLfixed y, GLfixed z)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glRotatex, "glRotatex");
if ( !driverTbl.glRotatex ) {
driverTbl.glRotatex = missing_glRotatex;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glRotatex == loader_glRotatex) {
rCtx->dsp->emuTbl.glRotatex = driverTbl.glRotatex;
}
driverTbl.glRotatex(angle, x, y, z);
}
extern void REGAL_CALL missing_glSampleCoveragex(GLclampx value, GLboolean invert);
static void REGAL_CALL loader_glSampleCoveragex(GLclampx value, GLboolean invert)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glSampleCoveragex, "glSampleCoveragex");
if ( !driverTbl.glSampleCoveragex ) {
driverTbl.glSampleCoveragex = missing_glSampleCoveragex;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glSampleCoveragex == loader_glSampleCoveragex) {
rCtx->dsp->emuTbl.glSampleCoveragex = driverTbl.glSampleCoveragex;
}
driverTbl.glSampleCoveragex(value, invert);
}
extern void REGAL_CALL missing_glScalex(GLfixed x, GLfixed y, GLfixed z);
static void REGAL_CALL loader_glScalex(GLfixed x, GLfixed y, GLfixed z)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glScalex, "glScalex");
if ( !driverTbl.glScalex ) {
driverTbl.glScalex = missing_glScalex;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glScalex == loader_glScalex) {
rCtx->dsp->emuTbl.glScalex = driverTbl.glScalex;
}
driverTbl.glScalex(x, y, z);
}
extern void REGAL_CALL missing_glTexEnvx(GLenum target, GLenum pname, GLfixed param);
static void REGAL_CALL loader_glTexEnvx(GLenum target, GLenum pname, GLfixed param)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glTexEnvx, "glTexEnvx");
if ( !driverTbl.glTexEnvx ) {
driverTbl.glTexEnvx = missing_glTexEnvx;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glTexEnvx == loader_glTexEnvx) {
rCtx->dsp->emuTbl.glTexEnvx = driverTbl.glTexEnvx;
}
driverTbl.glTexEnvx(target, pname, param);
}
extern void REGAL_CALL missing_glTexEnvxv(GLenum target, GLenum pname, const GLfixed *params);
static void REGAL_CALL loader_glTexEnvxv(GLenum target, GLenum pname, const GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glTexEnvxv, "glTexEnvxv");
if ( !driverTbl.glTexEnvxv ) {
driverTbl.glTexEnvxv = missing_glTexEnvxv;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glTexEnvxv == loader_glTexEnvxv) {
rCtx->dsp->emuTbl.glTexEnvxv = driverTbl.glTexEnvxv;
}
driverTbl.glTexEnvxv(target, pname, params);
}
extern void REGAL_CALL missing_glTexParameterx(GLenum target, GLenum pname, GLfixed param);
static void REGAL_CALL loader_glTexParameterx(GLenum target, GLenum pname, GLfixed param)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glTexParameterx, "glTexParameterx");
if ( !driverTbl.glTexParameterx ) {
driverTbl.glTexParameterx = missing_glTexParameterx;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glTexParameterx == loader_glTexParameterx) {
rCtx->dsp->emuTbl.glTexParameterx = driverTbl.glTexParameterx;
}
driverTbl.glTexParameterx(target, pname, param);
}
extern void REGAL_CALL missing_glTranslatex(GLfixed x, GLfixed y, GLfixed z);
static void REGAL_CALL loader_glTranslatex(GLfixed x, GLfixed y, GLfixed z)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glTranslatex, "glTranslatex");
if ( !driverTbl.glTranslatex ) {
driverTbl.glTranslatex = missing_glTranslatex;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glTranslatex == loader_glTranslatex) {
rCtx->dsp->emuTbl.glTranslatex = driverTbl.glTranslatex;
}
driverTbl.glTranslatex(x, y, z);
}
// GL_REGAL_ES1_1_compatibility
extern void REGAL_CALL missing_glClipPlanef(GLenum plane, const GLfloat *equation);
static void REGAL_CALL loader_glClipPlanef(GLenum plane, const GLfloat *equation)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glClipPlanef, "glClipPlanef");
if ( !driverTbl.glClipPlanef ) {
driverTbl.glClipPlanef = missing_glClipPlanef;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glClipPlanef == loader_glClipPlanef) {
rCtx->dsp->emuTbl.glClipPlanef = driverTbl.glClipPlanef;
}
driverTbl.glClipPlanef(plane, equation);
}
extern void REGAL_CALL missing_glClipPlanex(GLenum plane, const GLfixed *equation);
static void REGAL_CALL loader_glClipPlanex(GLenum plane, const GLfixed *equation)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glClipPlanex, "glClipPlanex");
if ( !driverTbl.glClipPlanex ) {
driverTbl.glClipPlanex = missing_glClipPlanex;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glClipPlanex == loader_glClipPlanex) {
rCtx->dsp->emuTbl.glClipPlanex = driverTbl.glClipPlanex;
}
driverTbl.glClipPlanex(plane, equation);
}
extern void REGAL_CALL missing_glGetClipPlanef(GLenum pname, GLfloat eqn[4]);
static void REGAL_CALL loader_glGetClipPlanef(GLenum pname, GLfloat eqn[4])
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glGetClipPlanef, "glGetClipPlanef");
if ( !driverTbl.glGetClipPlanef ) {
driverTbl.glGetClipPlanef = missing_glGetClipPlanef;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glGetClipPlanef == loader_glGetClipPlanef) {
rCtx->dsp->emuTbl.glGetClipPlanef = driverTbl.glGetClipPlanef;
}
driverTbl.glGetClipPlanef(pname, eqn);
}
extern void REGAL_CALL missing_glGetClipPlanex(GLenum pname, GLfixed eqn[4]);
static void REGAL_CALL loader_glGetClipPlanex(GLenum pname, GLfixed eqn[4])
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glGetClipPlanex, "glGetClipPlanex");
if ( !driverTbl.glGetClipPlanex ) {
driverTbl.glGetClipPlanex = missing_glGetClipPlanex;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glGetClipPlanex == loader_glGetClipPlanex) {
rCtx->dsp->emuTbl.glGetClipPlanex = driverTbl.glGetClipPlanex;
}
driverTbl.glGetClipPlanex(pname, eqn);
}
extern void REGAL_CALL missing_glGetFixedv(GLenum pname, GLfixed *params);
static void REGAL_CALL loader_glGetFixedv(GLenum pname, GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glGetFixedv, "glGetFixedv");
if ( !driverTbl.glGetFixedv ) {
driverTbl.glGetFixedv = missing_glGetFixedv;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glGetFixedv == loader_glGetFixedv) {
rCtx->dsp->emuTbl.glGetFixedv = driverTbl.glGetFixedv;
}
driverTbl.glGetFixedv(pname, params);
}
extern void REGAL_CALL missing_glGetLightxv(GLenum light, GLenum pname, GLfixed *params);
static void REGAL_CALL loader_glGetLightxv(GLenum light, GLenum pname, GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glGetLightxv, "glGetLightxv");
if ( !driverTbl.glGetLightxv ) {
driverTbl.glGetLightxv = missing_glGetLightxv;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glGetLightxv == loader_glGetLightxv) {
rCtx->dsp->emuTbl.glGetLightxv = driverTbl.glGetLightxv;
}
driverTbl.glGetLightxv(light, pname, params);
}
extern void REGAL_CALL missing_glGetMaterialxv(GLenum face, GLenum pname, GLfixed *params);
static void REGAL_CALL loader_glGetMaterialxv(GLenum face, GLenum pname, GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glGetMaterialxv, "glGetMaterialxv");
if ( !driverTbl.glGetMaterialxv ) {
driverTbl.glGetMaterialxv = missing_glGetMaterialxv;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glGetMaterialxv == loader_glGetMaterialxv) {
rCtx->dsp->emuTbl.glGetMaterialxv = driverTbl.glGetMaterialxv;
}
driverTbl.glGetMaterialxv(face, pname, params);
}
extern void REGAL_CALL missing_glGetTexEnvxv(GLenum env, GLenum pname, GLfixed *params);
static void REGAL_CALL loader_glGetTexEnvxv(GLenum env, GLenum pname, GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glGetTexEnvxv, "glGetTexEnvxv");
if ( !driverTbl.glGetTexEnvxv ) {
driverTbl.glGetTexEnvxv = missing_glGetTexEnvxv;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glGetTexEnvxv == loader_glGetTexEnvxv) {
rCtx->dsp->emuTbl.glGetTexEnvxv = driverTbl.glGetTexEnvxv;
}
driverTbl.glGetTexEnvxv(env, pname, params);
}
extern void REGAL_CALL missing_glGetTexParameterxv(GLenum target, GLenum pname, GLfixed *params);
static void REGAL_CALL loader_glGetTexParameterxv(GLenum target, GLenum pname, GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glGetTexParameterxv, "glGetTexParameterxv");
if ( !driverTbl.glGetTexParameterxv ) {
driverTbl.glGetTexParameterxv = missing_glGetTexParameterxv;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glGetTexParameterxv == loader_glGetTexParameterxv) {
rCtx->dsp->emuTbl.glGetTexParameterxv = driverTbl.glGetTexParameterxv;
}
driverTbl.glGetTexParameterxv(target, pname, params);
}
extern void REGAL_CALL missing_glPointParameterx(GLenum pname, GLfixed param);
static void REGAL_CALL loader_glPointParameterx(GLenum pname, GLfixed param)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glPointParameterx, "glPointParameterx");
if ( !driverTbl.glPointParameterx ) {
driverTbl.glPointParameterx = missing_glPointParameterx;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glPointParameterx == loader_glPointParameterx) {
rCtx->dsp->emuTbl.glPointParameterx = driverTbl.glPointParameterx;
}
driverTbl.glPointParameterx(pname, param);
}
extern void REGAL_CALL missing_glPointParameterxv(GLenum pname, const GLfixed *params);
static void REGAL_CALL loader_glPointParameterxv(GLenum pname, const GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glPointParameterxv, "glPointParameterxv");
if ( !driverTbl.glPointParameterxv ) {
driverTbl.glPointParameterxv = missing_glPointParameterxv;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glPointParameterxv == loader_glPointParameterxv) {
rCtx->dsp->emuTbl.glPointParameterxv = driverTbl.glPointParameterxv;
}
driverTbl.glPointParameterxv(pname, params);
}
extern void REGAL_CALL missing_glPointSizePointerOES(GLenum type, GLsizei stride, const GLvoid *pointer);
static void REGAL_CALL loader_glPointSizePointerOES(GLenum type, GLsizei stride, const GLvoid *pointer)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glPointSizePointerOES, "glPointSizePointerOES");
if ( !driverTbl.glPointSizePointerOES ) {
driverTbl.glPointSizePointerOES = missing_glPointSizePointerOES;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glPointSizePointerOES == loader_glPointSizePointerOES) {
rCtx->dsp->emuTbl.glPointSizePointerOES = driverTbl.glPointSizePointerOES;
}
driverTbl.glPointSizePointerOES(type, stride, pointer);
}
extern void REGAL_CALL missing_glTexParameterxv(GLenum target, GLenum pname, const GLfixed *params);
static void REGAL_CALL loader_glTexParameterxv(GLenum target, GLenum pname, const GLfixed *params)
{
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchTable & driverTbl = rCtx->dsp->driverTbl;
GetProcAddress( driverTbl.glTexParameterxv, "glTexParameterxv");
if ( !driverTbl.glTexParameterxv ) {
driverTbl.glTexParameterxv = missing_glTexParameterxv;
}
// If emu table is using the loader, update its entry too.
if (rCtx->dsp->emuTbl.glTexParameterxv == loader_glTexParameterxv) {
rCtx->dsp->emuTbl.glTexParameterxv = driverTbl.glTexParameterxv;
}
driverTbl.glTexParameterxv(target, pname, params);
}
// GL_REGAL_error_string
extern const GLchar *REGAL_CALL missing_glErrorStringREGAL(GLenum error);
@ -50384,6 +51224,56 @@ void InitDispatchTableLoader(DispatchTable &tbl)
tbl.glHintPGI = loader_glHintPGI;
// GL_REGAL_ES1_0_compatibility
tbl.glAlphaFuncx = loader_glAlphaFuncx;
tbl.glClearColorx = loader_glClearColorx;
tbl.glClearDepthx = loader_glClearDepthx;
tbl.glColor4x = loader_glColor4x;
tbl.glDepthRangex = loader_glDepthRangex;
tbl.glFogx = loader_glFogx;
tbl.glFogxv = loader_glFogxv;
tbl.glFrustumf = loader_glFrustumf;
tbl.glFrustumx = loader_glFrustumx;
tbl.glLightModelx = loader_glLightModelx;
tbl.glLightModelxv = loader_glLightModelxv;
tbl.glLightx = loader_glLightx;
tbl.glLightxv = loader_glLightxv;
tbl.glLineWidthx = loader_glLineWidthx;
tbl.glLoadMatrixx = loader_glLoadMatrixx;
tbl.glMaterialx = loader_glMaterialx;
tbl.glMaterialxv = loader_glMaterialxv;
tbl.glMultMatrixx = loader_glMultMatrixx;
tbl.glMultiTexCoord4x = loader_glMultiTexCoord4x;
tbl.glNormal3x = loader_glNormal3x;
tbl.glOrthof = loader_glOrthof;
tbl.glOrthox = loader_glOrthox;
tbl.glPointSizex = loader_glPointSizex;
tbl.glPolygonOffsetx = loader_glPolygonOffsetx;
tbl.glRotatex = loader_glRotatex;
tbl.glSampleCoveragex = loader_glSampleCoveragex;
tbl.glScalex = loader_glScalex;
tbl.glTexEnvx = loader_glTexEnvx;
tbl.glTexEnvxv = loader_glTexEnvxv;
tbl.glTexParameterx = loader_glTexParameterx;
tbl.glTranslatex = loader_glTranslatex;
// GL_REGAL_ES1_1_compatibility
tbl.glClipPlanef = loader_glClipPlanef;
tbl.glClipPlanex = loader_glClipPlanex;
tbl.glGetClipPlanef = loader_glGetClipPlanef;
tbl.glGetClipPlanex = loader_glGetClipPlanex;
tbl.glGetFixedv = loader_glGetFixedv;
tbl.glGetLightxv = loader_glGetLightxv;
tbl.glGetMaterialxv = loader_glGetMaterialxv;
tbl.glGetTexEnvxv = loader_glGetTexEnvxv;
tbl.glGetTexParameterxv = loader_glGetTexParameterxv;
tbl.glPointParameterx = loader_glPointParameterx;
tbl.glPointParameterxv = loader_glPointParameterxv;
tbl.glPointSizePointerOES = loader_glPointSizePointerOES;
tbl.glTexParameterxv = loader_glTexParameterxv;
// GL_REGAL_error_string
tbl.glErrorStringREGAL = loader_glErrorStringREGAL;

View file

@ -26170,6 +26170,494 @@ static void REGAL_CALL log_glHintPGI(GLenum target, GLint mode)
rCtx->dsp->driverTbl.glHintPGI(target, mode);
}
// GL_REGAL_ES1_0_compatibility
static void REGAL_CALL log_glAlphaFuncx(GLenum func, GLclampx ref)
{
GTrace("glAlphaFuncx(", toString(func), ", ", ref, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glAlphaFuncx(func, ref);
}
static void REGAL_CALL log_glClearColorx(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha)
{
GTrace("glClearColorx(", red, ", ", green, ", ", blue, ", ", alpha, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glClearColorx(red, green, blue, alpha);
}
static void REGAL_CALL log_glClearDepthx(GLclampx depth)
{
GTrace("glClearDepthx(", depth, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glClearDepthx(depth);
}
static void REGAL_CALL log_glColor4x(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
{
GTrace("glColor4x(", red, ", ", green, ", ", blue, ", ", alpha, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glColor4x(red, green, blue, alpha);
}
static void REGAL_CALL log_glDepthRangex(GLclampx zNear, GLclampx zFar)
{
GTrace("glDepthRangex(", zNear, ", ", zFar, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glDepthRangex(zNear, zFar);
}
static void REGAL_CALL log_glFogx(GLenum pname, GLfixed param)
{
GTrace("glFogx(", toString(pname), ", ", param, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glFogx(pname, param);
}
static void REGAL_CALL log_glFogxv(GLenum pname, const GLfixed *params)
{
GTrace("glFogxv(", toString(pname), ", ", params, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glFogxv(pname, params);
}
static void REGAL_CALL log_glFrustumf(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
{
GTrace("glFrustumf(", left, ", ", right, ", ", bottom, ", ", top, ", ", zNear, ", ", zFar, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glFrustumf(left, right, bottom, top, zNear, zFar);
}
static void REGAL_CALL log_glFrustumx(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
{
GTrace("glFrustumx(", left, ", ", right, ", ", bottom, ", ", top, ", ", zNear, ", ", zFar, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glFrustumx(left, right, bottom, top, zNear, zFar);
}
static void REGAL_CALL log_glLightModelx(GLenum pname, GLfixed param)
{
GTrace("glLightModelx(", toString(pname), ", ", param, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glLightModelx(pname, param);
}
static void REGAL_CALL log_glLightModelxv(GLenum pname, const GLfixed *params)
{
GTrace("glLightModelxv(", toString(pname), ", ", params, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glLightModelxv(pname, params);
}
static void REGAL_CALL log_glLightx(GLenum light, GLenum pname, GLfixed param)
{
GTrace("glLightx(", toString(light), ", ", toString(pname), ", ", param, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glLightx(light, pname, param);
}
static void REGAL_CALL log_glLightxv(GLenum light, GLenum pname, const GLfixed *params)
{
GTrace("glLightxv(", toString(light), ", ", toString(pname), ", ", params, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glLightxv(light, pname, params);
}
static void REGAL_CALL log_glLineWidthx(GLfixed width)
{
GTrace("glLineWidthx(", width, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glLineWidthx(width);
}
static void REGAL_CALL log_glLoadMatrixx(const GLfixed *m)
{
GTrace("glLoadMatrixx(", m, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glLoadMatrixx(m);
}
static void REGAL_CALL log_glMaterialx(GLenum face, GLenum pname, GLfixed param)
{
GTrace("glMaterialx(", toString(face), ", ", toString(pname), ", ", param, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glMaterialx(face, pname, param);
}
static void REGAL_CALL log_glMaterialxv(GLenum face, GLenum pname, const GLfixed *params)
{
GTrace("glMaterialxv(", toString(face), ", ", toString(pname), ", ", params, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glMaterialxv(face, pname, params);
}
static void REGAL_CALL log_glMultMatrixx(const GLfixed *m)
{
GTrace("glMultMatrixx(", m, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glMultMatrixx(m);
}
static void REGAL_CALL log_glMultiTexCoord4x(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q)
{
GTrace("glMultiTexCoord4x(", toString(target), ", ", s, ", ", t, ", ", r, ", ", q, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glMultiTexCoord4x(target, s, t, r, q);
}
static void REGAL_CALL log_glNormal3x(GLfixed nx, GLfixed ny, GLfixed nz)
{
GTrace("glNormal3x(", nx, ", ", ny, ", ", nz, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glNormal3x(nx, ny, nz);
}
static void REGAL_CALL log_glOrthof(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
{
GTrace("glOrthof(", left, ", ", right, ", ", bottom, ", ", top, ", ", zNear, ", ", zFar, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glOrthof(left, right, bottom, top, zNear, zFar);
}
static void REGAL_CALL log_glOrthox(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
{
GTrace("glOrthox(", left, ", ", right, ", ", bottom, ", ", top, ", ", zNear, ", ", zFar, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glOrthox(left, right, bottom, top, zNear, zFar);
}
static void REGAL_CALL log_glPointSizex(GLfixed size)
{
GTrace("glPointSizex(", size, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glPointSizex(size);
}
static void REGAL_CALL log_glPolygonOffsetx(GLfixed factor, GLfixed units)
{
GTrace("glPolygonOffsetx(", factor, ", ", units, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glPolygonOffsetx(factor, units);
}
static void REGAL_CALL log_glRotatex(GLfixed angle, GLfixed x, GLfixed y, GLfixed z)
{
GTrace("glRotatex(", angle, ", ", x, ", ", y, ", ", z, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glRotatex(angle, x, y, z);
}
static void REGAL_CALL log_glSampleCoveragex(GLclampx value, GLboolean invert)
{
GTrace("glSampleCoveragex(", value, ", ", toString(invert), ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glSampleCoveragex(value, invert);
}
static void REGAL_CALL log_glScalex(GLfixed x, GLfixed y, GLfixed z)
{
GTrace("glScalex(", x, ", ", y, ", ", z, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glScalex(x, y, z);
}
static void REGAL_CALL log_glTexEnvx(GLenum target, GLenum pname, GLfixed param)
{
GTrace("glTexEnvx(", toString(target), ", ", toString(pname), ", ", param, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glTexEnvx(target, pname, param);
}
static void REGAL_CALL log_glTexEnvxv(GLenum target, GLenum pname, const GLfixed *params)
{
GTrace("glTexEnvxv(", toString(target), ", ", toString(pname), ", ", params, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glTexEnvxv(target, pname, params);
}
static void REGAL_CALL log_glTexParameterx(GLenum target, GLenum pname, GLfixed param)
{
GTrace("glTexParameterx(", toString(target), ", ", toString(pname), ", ", param, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glTexParameterx(target, pname, param);
}
static void REGAL_CALL log_glTranslatex(GLfixed x, GLfixed y, GLfixed z)
{
GTrace("glTranslatex(", x, ", ", y, ", ", z, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glTranslatex(x, y, z);
}
// GL_REGAL_ES1_1_compatibility
static void REGAL_CALL log_glClipPlanef(GLenum plane, const GLfloat *equation)
{
GTrace("glClipPlanef(", toString(plane), ", ", equation, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glClipPlanef(plane, equation);
}
static void REGAL_CALL log_glClipPlanex(GLenum plane, const GLfixed *equation)
{
GTrace("glClipPlanex(", toString(plane), ", ", equation, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glClipPlanex(plane, equation);
}
static void REGAL_CALL log_glGetClipPlanef(GLenum pname, GLfloat eqn[4])
{
GTrace("glGetClipPlanef(", toString(pname), ", ", eqn, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glGetClipPlanef(pname, eqn);
}
static void REGAL_CALL log_glGetClipPlanex(GLenum pname, GLfixed eqn[4])
{
GTrace("glGetClipPlanex(", toString(pname), ", ", eqn, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glGetClipPlanex(pname, eqn);
}
static void REGAL_CALL log_glGetFixedv(GLenum pname, GLfixed *params)
{
GTrace("glGetFixedv(", toString(pname), ", ", params, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glGetFixedv(pname, params);
}
static void REGAL_CALL log_glGetLightxv(GLenum light, GLenum pname, GLfixed *params)
{
GTrace("glGetLightxv(", toString(light), ", ", toString(pname), ", ", params, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glGetLightxv(light, pname, params);
}
static void REGAL_CALL log_glGetMaterialxv(GLenum face, GLenum pname, GLfixed *params)
{
GTrace("glGetMaterialxv(", toString(face), ", ", toString(pname), ", ", params, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glGetMaterialxv(face, pname, params);
}
static void REGAL_CALL log_glGetTexEnvxv(GLenum env, GLenum pname, GLfixed *params)
{
GTrace("glGetTexEnvxv(", toString(env), ", ", toString(pname), ", ", params, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glGetTexEnvxv(env, pname, params);
}
static void REGAL_CALL log_glGetTexParameterxv(GLenum target, GLenum pname, GLfixed *params)
{
GTrace("glGetTexParameterxv(", toString(target), ", ", toString(pname), ", ", params, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glGetTexParameterxv(target, pname, params);
}
static void REGAL_CALL log_glPointParameterx(GLenum pname, GLfixed param)
{
GTrace("glPointParameterx(", toString(pname), ", ", param, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glPointParameterx(pname, param);
}
static void REGAL_CALL log_glPointParameterxv(GLenum pname, const GLfixed *params)
{
GTrace("glPointParameterxv(", toString(pname), ", ", params, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glPointParameterxv(pname, params);
}
static void REGAL_CALL log_glPointSizePointerOES(GLenum type, GLsizei stride, const GLvoid *pointer)
{
GTrace("glPointSizePointerOES(", toString(type), ", ", stride, ", ", pointer, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glPointSizePointerOES(type, stride, pointer);
}
static void REGAL_CALL log_glTexParameterxv(GLenum target, GLenum pname, const GLfixed *params)
{
GTrace("glTexParameterxv(", toString(target), ", ", toString(pname), ", ", params, ")");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx);
RegalAssert(rCtx->dsp);
DispatchStateScopedStepDown stepDown(rCtx->dsp);
RegalAssert(rCtx->dsp->curr);
rCtx->dsp->driverTbl.glTexParameterxv(target, pname, params);
}
// GL_REGAL_error_string
static const GLchar *REGAL_CALL log_glErrorStringREGAL(GLenum error)
@ -30779,6 +31267,56 @@ void InitDispatchTableLog(DispatchTable &tbl)
tbl.glHintPGI = log_glHintPGI;
// GL_REGAL_ES1_0_compatibility
tbl.glAlphaFuncx = log_glAlphaFuncx;
tbl.glClearColorx = log_glClearColorx;
tbl.glClearDepthx = log_glClearDepthx;
tbl.glColor4x = log_glColor4x;
tbl.glDepthRangex = log_glDepthRangex;
tbl.glFogx = log_glFogx;
tbl.glFogxv = log_glFogxv;
tbl.glFrustumf = log_glFrustumf;
tbl.glFrustumx = log_glFrustumx;
tbl.glLightModelx = log_glLightModelx;
tbl.glLightModelxv = log_glLightModelxv;
tbl.glLightx = log_glLightx;
tbl.glLightxv = log_glLightxv;
tbl.glLineWidthx = log_glLineWidthx;
tbl.glLoadMatrixx = log_glLoadMatrixx;
tbl.glMaterialx = log_glMaterialx;
tbl.glMaterialxv = log_glMaterialxv;
tbl.glMultMatrixx = log_glMultMatrixx;
tbl.glMultiTexCoord4x = log_glMultiTexCoord4x;
tbl.glNormal3x = log_glNormal3x;
tbl.glOrthof = log_glOrthof;
tbl.glOrthox = log_glOrthox;
tbl.glPointSizex = log_glPointSizex;
tbl.glPolygonOffsetx = log_glPolygonOffsetx;
tbl.glRotatex = log_glRotatex;
tbl.glSampleCoveragex = log_glSampleCoveragex;
tbl.glScalex = log_glScalex;
tbl.glTexEnvx = log_glTexEnvx;
tbl.glTexEnvxv = log_glTexEnvxv;
tbl.glTexParameterx = log_glTexParameterx;
tbl.glTranslatex = log_glTranslatex;
// GL_REGAL_ES1_1_compatibility
tbl.glClipPlanef = log_glClipPlanef;
tbl.glClipPlanex = log_glClipPlanex;
tbl.glGetClipPlanef = log_glGetClipPlanef;
tbl.glGetClipPlanex = log_glGetClipPlanex;
tbl.glGetFixedv = log_glGetFixedv;
tbl.glGetLightxv = log_glGetLightxv;
tbl.glGetMaterialxv = log_glGetMaterialxv;
tbl.glGetTexEnvxv = log_glGetTexEnvxv;
tbl.glGetTexParameterxv = log_glGetTexParameterxv;
tbl.glPointParameterx = log_glPointParameterx;
tbl.glPointParameterxv = log_glPointParameterxv;
tbl.glPointSizePointerOES = log_glPointSizePointerOES;
tbl.glTexParameterxv = log_glTexParameterxv;
// GL_REGAL_error_string
tbl.glErrorStringREGAL = log_glErrorStringREGAL;

View file

@ -19764,6 +19764,354 @@ void REGAL_CALL missing_glHintPGI(GLenum target, GLint mode)
Warning( "glHintPGI not available." );
}
// GL_REGAL_ES1_0_compatibility
void REGAL_CALL missing_glAlphaFuncx(GLenum func, GLclampx ref)
{
UNUSED_PARAMETER(func);
UNUSED_PARAMETER(ref);
Warning( "glAlphaFuncx not available." );
}
void REGAL_CALL missing_glClearColorx(GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha)
{
UNUSED_PARAMETER(red);
UNUSED_PARAMETER(green);
UNUSED_PARAMETER(blue);
UNUSED_PARAMETER(alpha);
Warning( "glClearColorx not available." );
}
void REGAL_CALL missing_glClearDepthx(GLclampx depth)
{
UNUSED_PARAMETER(depth);
Warning( "glClearDepthx not available." );
}
void REGAL_CALL missing_glColor4x(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
{
UNUSED_PARAMETER(red);
UNUSED_PARAMETER(green);
UNUSED_PARAMETER(blue);
UNUSED_PARAMETER(alpha);
Warning( "glColor4x not available." );
}
void REGAL_CALL missing_glDepthRangex(GLclampx zNear, GLclampx zFar)
{
UNUSED_PARAMETER(zNear);
UNUSED_PARAMETER(zFar);
Warning( "glDepthRangex not available." );
}
void REGAL_CALL missing_glFogx(GLenum pname, GLfixed param)
{
UNUSED_PARAMETER(pname);
UNUSED_PARAMETER(param);
Warning( "glFogx not available." );
}
void REGAL_CALL missing_glFogxv(GLenum pname, const GLfixed *params)
{
UNUSED_PARAMETER(pname);
UNUSED_PARAMETER(params);
Warning( "glFogxv not available." );
}
void REGAL_CALL missing_glFrustumf(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
{
UNUSED_PARAMETER(left);
UNUSED_PARAMETER(right);
UNUSED_PARAMETER(bottom);
UNUSED_PARAMETER(top);
UNUSED_PARAMETER(zNear);
UNUSED_PARAMETER(zFar);
Warning( "glFrustumf not available." );
}
void REGAL_CALL missing_glFrustumx(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
{
UNUSED_PARAMETER(left);
UNUSED_PARAMETER(right);
UNUSED_PARAMETER(bottom);
UNUSED_PARAMETER(top);
UNUSED_PARAMETER(zNear);
UNUSED_PARAMETER(zFar);
Warning( "glFrustumx not available." );
}
void REGAL_CALL missing_glLightModelx(GLenum pname, GLfixed param)
{
UNUSED_PARAMETER(pname);
UNUSED_PARAMETER(param);
Warning( "glLightModelx not available." );
}
void REGAL_CALL missing_glLightModelxv(GLenum pname, const GLfixed *params)
{
UNUSED_PARAMETER(pname);
UNUSED_PARAMETER(params);
Warning( "glLightModelxv not available." );
}
void REGAL_CALL missing_glLightx(GLenum light, GLenum pname, GLfixed param)
{
UNUSED_PARAMETER(light);
UNUSED_PARAMETER(pname);
UNUSED_PARAMETER(param);
Warning( "glLightx not available." );
}
void REGAL_CALL missing_glLightxv(GLenum light, GLenum pname, const GLfixed *params)
{
UNUSED_PARAMETER(light);
UNUSED_PARAMETER(pname);
UNUSED_PARAMETER(params);
Warning( "glLightxv not available." );
}
void REGAL_CALL missing_glLineWidthx(GLfixed width)
{
UNUSED_PARAMETER(width);
Warning( "glLineWidthx not available." );
}
void REGAL_CALL missing_glLoadMatrixx(const GLfixed *m)
{
UNUSED_PARAMETER(m);
Warning( "glLoadMatrixx not available." );
}
void REGAL_CALL missing_glMaterialx(GLenum face, GLenum pname, GLfixed param)
{
UNUSED_PARAMETER(face);
UNUSED_PARAMETER(pname);
UNUSED_PARAMETER(param);
Warning( "glMaterialx not available." );
}
void REGAL_CALL missing_glMaterialxv(GLenum face, GLenum pname, const GLfixed *params)
{
UNUSED_PARAMETER(face);
UNUSED_PARAMETER(pname);
UNUSED_PARAMETER(params);
Warning( "glMaterialxv not available." );
}
void REGAL_CALL missing_glMultMatrixx(const GLfixed *m)
{
UNUSED_PARAMETER(m);
Warning( "glMultMatrixx not available." );
}
void REGAL_CALL missing_glMultiTexCoord4x(GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q)
{
UNUSED_PARAMETER(target);
UNUSED_PARAMETER(s);
UNUSED_PARAMETER(t);
UNUSED_PARAMETER(r);
UNUSED_PARAMETER(q);
Warning( "glMultiTexCoord4x not available." );
}
void REGAL_CALL missing_glNormal3x(GLfixed nx, GLfixed ny, GLfixed nz)
{
UNUSED_PARAMETER(nx);
UNUSED_PARAMETER(ny);
UNUSED_PARAMETER(nz);
Warning( "glNormal3x not available." );
}
void REGAL_CALL missing_glOrthof(GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar)
{
UNUSED_PARAMETER(left);
UNUSED_PARAMETER(right);
UNUSED_PARAMETER(bottom);
UNUSED_PARAMETER(top);
UNUSED_PARAMETER(zNear);
UNUSED_PARAMETER(zFar);
Warning( "glOrthof not available." );
}
void REGAL_CALL missing_glOrthox(GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar)
{
UNUSED_PARAMETER(left);
UNUSED_PARAMETER(right);
UNUSED_PARAMETER(bottom);
UNUSED_PARAMETER(top);
UNUSED_PARAMETER(zNear);
UNUSED_PARAMETER(zFar);
Warning( "glOrthox not available." );
}
void REGAL_CALL missing_glPointSizex(GLfixed size)
{
UNUSED_PARAMETER(size);
Warning( "glPointSizex not available." );
}
void REGAL_CALL missing_glPolygonOffsetx(GLfixed factor, GLfixed units)
{
UNUSED_PARAMETER(factor);
UNUSED_PARAMETER(units);
Warning( "glPolygonOffsetx not available." );
}
void REGAL_CALL missing_glRotatex(GLfixed angle, GLfixed x, GLfixed y, GLfixed z)
{
UNUSED_PARAMETER(angle);
UNUSED_PARAMETER(x);
UNUSED_PARAMETER(y);
UNUSED_PARAMETER(z);
Warning( "glRotatex not available." );
}
void REGAL_CALL missing_glSampleCoveragex(GLclampx value, GLboolean invert)
{
UNUSED_PARAMETER(value);
UNUSED_PARAMETER(invert);
Warning( "glSampleCoveragex not available." );
}
void REGAL_CALL missing_glScalex(GLfixed x, GLfixed y, GLfixed z)
{
UNUSED_PARAMETER(x);
UNUSED_PARAMETER(y);
UNUSED_PARAMETER(z);
Warning( "glScalex not available." );
}
void REGAL_CALL missing_glTexEnvx(GLenum target, GLenum pname, GLfixed param)
{
UNUSED_PARAMETER(target);
UNUSED_PARAMETER(pname);
UNUSED_PARAMETER(param);
Warning( "glTexEnvx not available." );
}
void REGAL_CALL missing_glTexEnvxv(GLenum target, GLenum pname, const GLfixed *params)
{
UNUSED_PARAMETER(target);
UNUSED_PARAMETER(pname);
UNUSED_PARAMETER(params);
Warning( "glTexEnvxv not available." );
}
void REGAL_CALL missing_glTexParameterx(GLenum target, GLenum pname, GLfixed param)
{
UNUSED_PARAMETER(target);
UNUSED_PARAMETER(pname);
UNUSED_PARAMETER(param);
Warning( "glTexParameterx not available." );
}
void REGAL_CALL missing_glTranslatex(GLfixed x, GLfixed y, GLfixed z)
{
UNUSED_PARAMETER(x);
UNUSED_PARAMETER(y);
UNUSED_PARAMETER(z);
Warning( "glTranslatex not available." );
}
// GL_REGAL_ES1_1_compatibility
void REGAL_CALL missing_glClipPlanef(GLenum plane, const GLfloat *equation)
{
UNUSED_PARAMETER(plane);
UNUSED_PARAMETER(equation);
Warning( "glClipPlanef not available." );
}
void REGAL_CALL missing_glClipPlanex(GLenum plane, const GLfixed *equation)
{
UNUSED_PARAMETER(plane);
UNUSED_PARAMETER(equation);
Warning( "glClipPlanex not available." );
}
void REGAL_CALL missing_glGetClipPlanef(GLenum pname, GLfloat eqn[4])
{
UNUSED_PARAMETER(pname);
UNUSED_PARAMETER(eqn);
Warning( "glGetClipPlanef not available." );
}
void REGAL_CALL missing_glGetClipPlanex(GLenum pname, GLfixed eqn[4])
{
UNUSED_PARAMETER(pname);
UNUSED_PARAMETER(eqn);
Warning( "glGetClipPlanex not available." );
}
void REGAL_CALL missing_glGetFixedv(GLenum pname, GLfixed *params)
{
UNUSED_PARAMETER(pname);
UNUSED_PARAMETER(params);
Warning( "glGetFixedv not available." );
}
void REGAL_CALL missing_glGetLightxv(GLenum light, GLenum pname, GLfixed *params)
{
UNUSED_PARAMETER(light);
UNUSED_PARAMETER(pname);
UNUSED_PARAMETER(params);
Warning( "glGetLightxv not available." );
}
void REGAL_CALL missing_glGetMaterialxv(GLenum face, GLenum pname, GLfixed *params)
{
UNUSED_PARAMETER(face);
UNUSED_PARAMETER(pname);
UNUSED_PARAMETER(params);
Warning( "glGetMaterialxv not available." );
}
void REGAL_CALL missing_glGetTexEnvxv(GLenum env, GLenum pname, GLfixed *params)
{
UNUSED_PARAMETER(env);
UNUSED_PARAMETER(pname);
UNUSED_PARAMETER(params);
Warning( "glGetTexEnvxv not available." );
}
void REGAL_CALL missing_glGetTexParameterxv(GLenum target, GLenum pname, GLfixed *params)
{
UNUSED_PARAMETER(target);
UNUSED_PARAMETER(pname);
UNUSED_PARAMETER(params);
Warning( "glGetTexParameterxv not available." );
}
void REGAL_CALL missing_glPointParameterx(GLenum pname, GLfixed param)
{
UNUSED_PARAMETER(pname);
UNUSED_PARAMETER(param);
Warning( "glPointParameterx not available." );
}
void REGAL_CALL missing_glPointParameterxv(GLenum pname, const GLfixed *params)
{
UNUSED_PARAMETER(pname);
UNUSED_PARAMETER(params);
Warning( "glPointParameterxv not available." );
}
void REGAL_CALL missing_glPointSizePointerOES(GLenum type, GLsizei stride, const GLvoid *pointer)
{
UNUSED_PARAMETER(type);
UNUSED_PARAMETER(stride);
UNUSED_PARAMETER(pointer);
Warning( "glPointSizePointerOES not available." );
}
void REGAL_CALL missing_glTexParameterxv(GLenum target, GLenum pname, const GLfixed *params)
{
UNUSED_PARAMETER(target);
UNUSED_PARAMETER(pname);
UNUSED_PARAMETER(params);
Warning( "glTexParameterxv not available." );
}
// GL_REGAL_error_string
const GLchar *REGAL_CALL missing_glErrorStringREGAL(GLenum error)
@ -23998,6 +24346,56 @@ void InitDispatchTableMissing(DispatchTable &tbl)
tbl.glHintPGI = missing_glHintPGI;
// GL_REGAL_ES1_0_compatibility
tbl.glAlphaFuncx = missing_glAlphaFuncx;
tbl.glClearColorx = missing_glClearColorx;
tbl.glClearDepthx = missing_glClearDepthx;
tbl.glColor4x = missing_glColor4x;
tbl.glDepthRangex = missing_glDepthRangex;
tbl.glFogx = missing_glFogx;
tbl.glFogxv = missing_glFogxv;
tbl.glFrustumf = missing_glFrustumf;
tbl.glFrustumx = missing_glFrustumx;
tbl.glLightModelx = missing_glLightModelx;
tbl.glLightModelxv = missing_glLightModelxv;
tbl.glLightx = missing_glLightx;
tbl.glLightxv = missing_glLightxv;
tbl.glLineWidthx = missing_glLineWidthx;
tbl.glLoadMatrixx = missing_glLoadMatrixx;
tbl.glMaterialx = missing_glMaterialx;
tbl.glMaterialxv = missing_glMaterialxv;
tbl.glMultMatrixx = missing_glMultMatrixx;
tbl.glMultiTexCoord4x = missing_glMultiTexCoord4x;
tbl.glNormal3x = missing_glNormal3x;
tbl.glOrthof = missing_glOrthof;
tbl.glOrthox = missing_glOrthox;
tbl.glPointSizex = missing_glPointSizex;
tbl.glPolygonOffsetx = missing_glPolygonOffsetx;
tbl.glRotatex = missing_glRotatex;
tbl.glSampleCoveragex = missing_glSampleCoveragex;
tbl.glScalex = missing_glScalex;
tbl.glTexEnvx = missing_glTexEnvx;
tbl.glTexEnvxv = missing_glTexEnvxv;
tbl.glTexParameterx = missing_glTexParameterx;
tbl.glTranslatex = missing_glTranslatex;
// GL_REGAL_ES1_1_compatibility
tbl.glClipPlanef = missing_glClipPlanef;
tbl.glClipPlanex = missing_glClipPlanex;
tbl.glGetClipPlanef = missing_glGetClipPlanef;
tbl.glGetClipPlanex = missing_glGetClipPlanex;
tbl.glGetFixedv = missing_glGetFixedv;
tbl.glGetLightxv = missing_glGetLightxv;
tbl.glGetMaterialxv = missing_glGetMaterialxv;
tbl.glGetTexEnvxv = missing_glGetTexEnvxv;
tbl.glGetTexParameterxv = missing_glGetTexParameterxv;
tbl.glPointParameterx = missing_glPointParameterx;
tbl.glPointParameterxv = missing_glPointParameterxv;
tbl.glPointSizePointerOES = missing_glPointSizePointerOES;
tbl.glTexParameterxv = missing_glTexParameterxv;
// GL_REGAL_error_string
tbl.glErrorStringREGAL = missing_glErrorStringREGAL;

View file

@ -578,6 +578,17 @@ static void REGAL_CALL nacl_glBlendEquation(GLenum mode)
rCtx->naclES2->BlendEquation(rCtx->naclResource, mode);
}
static void REGAL_CALL nacl_glActiveTexture(GLenum texture)
{
ITrace("nacl_glActiveTexture");
RegalContext * rCtx = GET_REGAL_CONTEXT();
RegalAssert(rCtx)
RegalAssert(rCtx->naclES2)
RegalAssert(rCtx->naclES2->ActiveTexture)
RegalAssert(rCtx->naclResource)
rCtx->naclES2->ActiveTexture(rCtx->naclResource, texture);
}
static void REGAL_CALL nacl_glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data)
{
ITrace("nacl_glCompressedTexImage2D");
@ -1672,6 +1683,7 @@ void InitDispatchTableNacl(DispatchTable &tbl)
tbl.glTexSubImage2D = nacl_glTexSubImage2D;
tbl.glBlendColor = nacl_glBlendColor;
tbl.glBlendEquation = nacl_glBlendEquation;
tbl.glActiveTexture = nacl_glActiveTexture;
tbl.glCompressedTexImage2D = nacl_glCompressedTexImage2D;
tbl.glCompressedTexSubImage2D = nacl_glCompressedTexSubImage2D;
tbl.glSampleCoverage = nacl_glSampleCoverage;

View file

@ -47,7 +47,7 @@ REGAL_NAMESPACE_BEGIN
namespace Lookup {
const char * const gl_Name[2468] = {
const char * const gl_Name[2512] = {
"glAccum",
"glActiveProgramEXT",
"glActiveShaderProgram",
@ -60,6 +60,7 @@ const char * const gl_Name[2468] = {
"glAlphaFragmentOp2ATI",
"glAlphaFragmentOp3ATI",
"glAlphaFunc",
"glAlphaFuncx",
"glApplyTextureEXT",
"glAreProgramsResidentNV",
"glAreTexturesResident",
@ -188,9 +189,11 @@ const char * const gl_Name[2468] = {
"glClearColor",
"glClearColorIiEXT",
"glClearColorIuiEXT",
"glClearColorx",
"glClearDepth",
"glClearDepthdNV",
"glClearDepthf",
"glClearDepthx",
"glClearIndex",
"glClearNamedBufferDataEXT",
"glClearNamedBufferSubDataEXT",
@ -201,6 +204,8 @@ const char * const gl_Name[2468] = {
"glClientAttribDefaultEXT",
"glClientWaitSync",
"glClipPlane",
"glClipPlanef",
"glClipPlanex",
"glColor3b",
"glColor3bv",
"glColor3d",
@ -245,6 +250,7 @@ const char * const gl_Name[2468] = {
"glColor4uiv",
"glColor4us",
"glColor4usv",
"glColor4x",
"glColorFormatNV",
"glColorFragmentOp1ATI",
"glColorFragmentOp2ATI",
@ -419,6 +425,7 @@ const char * const gl_Name[2468] = {
"glDepthRangeIndexed",
"glDepthRangedNV",
"glDepthRangef",
"glDepthRangex",
"glDetachObjectARB",
"glDetachShader",
"glDetailTexFuncSGIS",
@ -561,6 +568,8 @@ const char * const gl_Name[2468] = {
"glFogfv",
"glFogi",
"glFogiv",
"glFogx",
"glFogxv",
"glFragmentColorMaterialEXT",
"glFragmentColorMaterialSGIX",
"glFragmentLightModelfEXT",
@ -613,6 +622,8 @@ const char * const gl_Name[2468] = {
"glFreeObjectBufferATI",
"glFrontFace",
"glFrustum",
"glFrustumf",
"glFrustumx",
"glGenAsyncMarkersSGIX",
"glGenBuffers",
"glGenBuffersARB",
@ -677,6 +688,8 @@ const char * const gl_Name[2468] = {
"glGetBufferSubData",
"glGetBufferSubDataARB",
"glGetClipPlane",
"glGetClipPlanef",
"glGetClipPlanex",
"glGetColorTable",
"glGetColorTableEXT",
"glGetColorTableParameterfv",
@ -714,6 +727,7 @@ const char * const gl_Name[2468] = {
"glGetFenceivNV",
"glGetFinalCombinerInputParameterfvNV",
"glGetFinalCombinerInputParameterivNV",
"glGetFixedv",
"glGetFloatIndexedvEXT",
"glGetFloati_v",
"glGetFloati_vEXT",
@ -761,6 +775,7 @@ const char * const gl_Name[2468] = {
"glGetInvariantIntegervEXT",
"glGetLightfv",
"glGetLightiv",
"glGetLightxv",
"glGetListParameterfvSGIX",
"glGetListParameterivSGIX",
"glGetLocalConstantBooleanvEXT",
@ -776,6 +791,7 @@ const char * const gl_Name[2468] = {
"glGetMapiv",
"glGetMaterialfv",
"glGetMaterialiv",
"glGetMaterialxv",
"glGetMinmax",
"glGetMinmaxEXT",
"glGetMinmaxParameterfv",
@ -912,6 +928,7 @@ const char * const gl_Name[2468] = {
"glGetTexBumpParameterivATI",
"glGetTexEnvfv",
"glGetTexEnviv",
"glGetTexEnvxv",
"glGetTexFilterFuncSGIS",
"glGetTexGendv",
"glGetTexGenfv",
@ -926,6 +943,7 @@ const char * const gl_Name[2468] = {
"glGetTexParameterPointervAPPLE",
"glGetTexParameterfv",
"glGetTexParameteriv",
"glGetTexParameterxv",
"glGetTextureHandleNV",
"glGetTextureImageEXT",
"glGetTextureLevelParameterfvEXT",
@ -1109,12 +1127,17 @@ const char * const gl_Name[2468] = {
"glLightModelfv",
"glLightModeli",
"glLightModeliv",
"glLightModelx",
"glLightModelxv",
"glLightf",
"glLightfv",
"glLighti",
"glLightiv",
"glLightx",
"glLightxv",
"glLineStipple",
"glLineWidth",
"glLineWidthx",
"glLinkProgram",
"glLinkProgramARB",
"glListBase",
@ -1126,6 +1149,7 @@ const char * const gl_Name[2468] = {
"glLoadIdentityDeformationMapSGIX",
"glLoadMatrixd",
"glLoadMatrixf",
"glLoadMatrixx",
"glLoadName",
"glLoadProgramNV",
"glLoadTransposeMatrixd",
@ -1168,6 +1192,8 @@ const char * const gl_Name[2468] = {
"glMaterialfv",
"glMateriali",
"glMaterialiv",
"glMaterialx",
"glMaterialxv",
"glMatrixFrustumEXT",
"glMatrixIndexPointerARB",
"glMatrixIndexubvARB",
@ -1200,6 +1226,7 @@ const char * const gl_Name[2468] = {
"glMinmaxEXT",
"glMultMatrixd",
"glMultMatrixf",
"glMultMatrixx",
"glMultTransposeMatrixd",
"glMultTransposeMatrixdARB",
"glMultTransposeMatrixf",
@ -1290,6 +1317,7 @@ const char * const gl_Name[2468] = {
"glMultiTexCoord4sARB",
"glMultiTexCoord4sv",
"glMultiTexCoord4svARB",
"glMultiTexCoord4x",
"glMultiTexCoordP1ui",
"glMultiTexCoordP1uiv",
"glMultiTexCoordP2ui",
@ -1366,6 +1394,7 @@ const char * const gl_Name[2468] = {
"glNormal3iv",
"glNormal3s",
"glNormal3sv",
"glNormal3x",
"glNormalFormatNV",
"glNormalP3ui",
"glNormalP3uiv",
@ -1388,6 +1417,8 @@ const char * const gl_Name[2468] = {
"glObjectPurgeableAPPLE",
"glObjectUnpurgeableAPPLE",
"glOrtho",
"glOrthof",
"glOrthox",
"glPNTrianglesfATI",
"glPNTrianglesiATI",
"glPassTexCoordATI",
@ -1443,12 +1474,17 @@ const char * const gl_Name[2468] = {
"glPointParameteriNV",
"glPointParameteriv",
"glPointParameterivNV",
"glPointParameterx",
"glPointParameterxv",
"glPointSize",
"glPointSizePointerOES",
"glPointSizex",
"glPollAsyncSGIX",
"glPollInstrumentsSGIX",
"glPolygonMode",
"glPolygonOffset",
"glPolygonOffsetEXT",
"glPolygonOffsetx",
"glPolygonStipple",
"glPopAttrib",
"glPopClientAttrib",
@ -1712,8 +1748,10 @@ const char * const gl_Name[2468] = {
"glResumeTransformFeedbackNV",
"glRotated",
"glRotatef",
"glRotatex",
"glSampleCoverage",
"glSampleCoverageARB",
"glSampleCoveragex",
"glSampleMapATI",
"glSampleMaskEXT",
"glSampleMaskIndexedNV",
@ -1729,6 +1767,7 @@ const char * const gl_Name[2468] = {
"glSamplerParameteriv",
"glScaled",
"glScalef",
"glScalex",
"glScissor",
"glScissorArrayv",
"glScissorIndexed",
@ -1910,6 +1949,8 @@ const char * const gl_Name[2468] = {
"glTexEnvfv",
"glTexEnvi",
"glTexEnviv",
"glTexEnvx",
"glTexEnvxv",
"glTexFilterFuncSGIS",
"glTexGend",
"glTexGendv",
@ -1934,6 +1975,8 @@ const char * const gl_Name[2468] = {
"glTexParameterfv",
"glTexParameteri",
"glTexParameteriv",
"glTexParameterx",
"glTexParameterxv",
"glTexRenderbufferNV",
"glTexScissorFuncINTEL",
"glTexScissorINTEL",
@ -1989,6 +2032,7 @@ const char * const gl_Name[2468] = {
"glTransformPathNV",
"glTranslated",
"glTranslatef",
"glTranslatex",
"glUniform1d",
"glUniform1dv",
"glUniform1f",
@ -2518,7 +2562,7 @@ const char * const gl_Name[2468] = {
NULL
};
const void *gl_Value[2468] = {
const void *gl_Value[2512] = {
(void *)(glAccum),
(void *)(glActiveProgramEXT),
(void *)(glActiveShaderProgram),
@ -2531,6 +2575,7 @@ const void *gl_Value[2468] = {
(void *)(glAlphaFragmentOp2ATI),
(void *)(glAlphaFragmentOp3ATI),
(void *)(glAlphaFunc),
(void *)(glAlphaFuncx),
(void *)(glApplyTextureEXT),
(void *)(glAreProgramsResidentNV),
(void *)(glAreTexturesResident),
@ -2659,9 +2704,11 @@ const void *gl_Value[2468] = {
(void *)(glClearColor),
(void *)(glClearColorIiEXT),
(void *)(glClearColorIuiEXT),
(void *)(glClearColorx),
(void *)(glClearDepth),
(void *)(glClearDepthdNV),
(void *)(glClearDepthf),
(void *)(glClearDepthx),
(void *)(glClearIndex),
(void *)(glClearNamedBufferDataEXT),
(void *)(glClearNamedBufferSubDataEXT),
@ -2672,6 +2719,8 @@ const void *gl_Value[2468] = {
(void *)(glClientAttribDefaultEXT),
(void *)(glClientWaitSync),
(void *)(glClipPlane),
(void *)(glClipPlanef),
(void *)(glClipPlanex),
(void *)(glColor3b),
(void *)(glColor3bv),
(void *)(glColor3d),
@ -2716,6 +2765,7 @@ const void *gl_Value[2468] = {
(void *)(glColor4uiv),
(void *)(glColor4us),
(void *)(glColor4usv),
(void *)(glColor4x),
(void *)(glColorFormatNV),
(void *)(glColorFragmentOp1ATI),
(void *)(glColorFragmentOp2ATI),
@ -2890,6 +2940,7 @@ const void *gl_Value[2468] = {
(void *)(glDepthRangeIndexed),
(void *)(glDepthRangedNV),
(void *)(glDepthRangef),
(void *)(glDepthRangex),
(void *)(glDetachObjectARB),
(void *)(glDetachShader),
(void *)(glDetailTexFuncSGIS),
@ -3032,6 +3083,8 @@ const void *gl_Value[2468] = {
(void *)(glFogfv),
(void *)(glFogi),
(void *)(glFogiv),
(void *)(glFogx),
(void *)(glFogxv),
(void *)(glFragmentColorMaterialEXT),
(void *)(glFragmentColorMaterialSGIX),
(void *)(glFragmentLightModelfEXT),
@ -3084,6 +3137,8 @@ const void *gl_Value[2468] = {
(void *)(glFreeObjectBufferATI),
(void *)(glFrontFace),
(void *)(glFrustum),
(void *)(glFrustumf),
(void *)(glFrustumx),
(void *)(glGenAsyncMarkersSGIX),
(void *)(glGenBuffers),
(void *)(glGenBuffersARB),
@ -3148,6 +3203,8 @@ const void *gl_Value[2468] = {
(void *)(glGetBufferSubData),
(void *)(glGetBufferSubDataARB),
(void *)(glGetClipPlane),
(void *)(glGetClipPlanef),
(void *)(glGetClipPlanex),
(void *)(glGetColorTable),
(void *)(glGetColorTableEXT),
(void *)(glGetColorTableParameterfv),
@ -3185,6 +3242,7 @@ const void *gl_Value[2468] = {
(void *)(glGetFenceivNV),
(void *)(glGetFinalCombinerInputParameterfvNV),
(void *)(glGetFinalCombinerInputParameterivNV),
(void *)(glGetFixedv),
(void *)(glGetFloatIndexedvEXT),
(void *)(glGetFloati_v),
(void *)(glGetFloati_vEXT),
@ -3232,6 +3290,7 @@ const void *gl_Value[2468] = {
(void *)(glGetInvariantIntegervEXT),
(void *)(glGetLightfv),
(void *)(glGetLightiv),
(void *)(glGetLightxv),
(void *)(glGetListParameterfvSGIX),
(void *)(glGetListParameterivSGIX),
(void *)(glGetLocalConstantBooleanvEXT),
@ -3247,6 +3306,7 @@ const void *gl_Value[2468] = {
(void *)(glGetMapiv),
(void *)(glGetMaterialfv),
(void *)(glGetMaterialiv),
(void *)(glGetMaterialxv),
(void *)(glGetMinmax),
(void *)(glGetMinmaxEXT),
(void *)(glGetMinmaxParameterfv),
@ -3383,6 +3443,7 @@ const void *gl_Value[2468] = {
(void *)(glGetTexBumpParameterivATI),
(void *)(glGetTexEnvfv),
(void *)(glGetTexEnviv),
(void *)(glGetTexEnvxv),
(void *)(glGetTexFilterFuncSGIS),
(void *)(glGetTexGendv),
(void *)(glGetTexGenfv),
@ -3397,6 +3458,7 @@ const void *gl_Value[2468] = {
(void *)(glGetTexParameterPointervAPPLE),
(void *)(glGetTexParameterfv),
(void *)(glGetTexParameteriv),
(void *)(glGetTexParameterxv),
(void *)(glGetTextureHandleNV),
(void *)(glGetTextureImageEXT),
(void *)(glGetTextureLevelParameterfvEXT),
@ -3580,12 +3642,17 @@ const void *gl_Value[2468] = {
(void *)(glLightModelfv),
(void *)(glLightModeli),
(void *)(glLightModeliv),
(void *)(glLightModelx),
(void *)(glLightModelxv),
(void *)(glLightf),
(void *)(glLightfv),
(void *)(glLighti),
(void *)(glLightiv),
(void *)(glLightx),
(void *)(glLightxv),
(void *)(glLineStipple),
(void *)(glLineWidth),
(void *)(glLineWidthx),
(void *)(glLinkProgram),
(void *)(glLinkProgramARB),
(void *)(glListBase),
@ -3597,6 +3664,7 @@ const void *gl_Value[2468] = {
(void *)(glLoadIdentityDeformationMapSGIX),
(void *)(glLoadMatrixd),
(void *)(glLoadMatrixf),
(void *)(glLoadMatrixx),
(void *)(glLoadName),
(void *)(glLoadProgramNV),
(void *)(glLoadTransposeMatrixd),
@ -3639,6 +3707,8 @@ const void *gl_Value[2468] = {
(void *)(glMaterialfv),
(void *)(glMateriali),
(void *)(glMaterialiv),
(void *)(glMaterialx),
(void *)(glMaterialxv),
(void *)(glMatrixFrustumEXT),
(void *)(glMatrixIndexPointerARB),
(void *)(glMatrixIndexubvARB),
@ -3671,6 +3741,7 @@ const void *gl_Value[2468] = {
(void *)(glMinmaxEXT),
(void *)(glMultMatrixd),
(void *)(glMultMatrixf),
(void *)(glMultMatrixx),
(void *)(glMultTransposeMatrixd),
(void *)(glMultTransposeMatrixdARB),
(void *)(glMultTransposeMatrixf),
@ -3761,6 +3832,7 @@ const void *gl_Value[2468] = {
(void *)(glMultiTexCoord4sARB),
(void *)(glMultiTexCoord4sv),
(void *)(glMultiTexCoord4svARB),
(void *)(glMultiTexCoord4x),
(void *)(glMultiTexCoordP1ui),
(void *)(glMultiTexCoordP1uiv),
(void *)(glMultiTexCoordP2ui),
@ -3837,6 +3909,7 @@ const void *gl_Value[2468] = {
(void *)(glNormal3iv),
(void *)(glNormal3s),
(void *)(glNormal3sv),
(void *)(glNormal3x),
(void *)(glNormalFormatNV),
(void *)(glNormalP3ui),
(void *)(glNormalP3uiv),
@ -3859,6 +3932,8 @@ const void *gl_Value[2468] = {
(void *)(glObjectPurgeableAPPLE),
(void *)(glObjectUnpurgeableAPPLE),
(void *)(glOrtho),
(void *)(glOrthof),
(void *)(glOrthox),
(void *)(glPNTrianglesfATI),
(void *)(glPNTrianglesiATI),
(void *)(glPassTexCoordATI),
@ -3914,12 +3989,17 @@ const void *gl_Value[2468] = {
(void *)(glPointParameteriNV),
(void *)(glPointParameteriv),
(void *)(glPointParameterivNV),
(void *)(glPointParameterx),
(void *)(glPointParameterxv),
(void *)(glPointSize),
(void *)(glPointSizePointerOES),
(void *)(glPointSizex),
(void *)(glPollAsyncSGIX),
(void *)(glPollInstrumentsSGIX),
(void *)(glPolygonMode),
(void *)(glPolygonOffset),
(void *)(glPolygonOffsetEXT),
(void *)(glPolygonOffsetx),
(void *)(glPolygonStipple),
(void *)(glPopAttrib),
(void *)(glPopClientAttrib),
@ -4183,8 +4263,10 @@ const void *gl_Value[2468] = {
(void *)(glResumeTransformFeedbackNV),
(void *)(glRotated),
(void *)(glRotatef),
(void *)(glRotatex),
(void *)(glSampleCoverage),
(void *)(glSampleCoverageARB),
(void *)(glSampleCoveragex),
(void *)(glSampleMapATI),
(void *)(glSampleMaskEXT),
(void *)(glSampleMaskIndexedNV),
@ -4200,6 +4282,7 @@ const void *gl_Value[2468] = {
(void *)(glSamplerParameteriv),
(void *)(glScaled),
(void *)(glScalef),
(void *)(glScalex),
(void *)(glScissor),
(void *)(glScissorArrayv),
(void *)(glScissorIndexed),
@ -4381,6 +4464,8 @@ const void *gl_Value[2468] = {
(void *)(glTexEnvfv),
(void *)(glTexEnvi),
(void *)(glTexEnviv),
(void *)(glTexEnvx),
(void *)(glTexEnvxv),
(void *)(glTexFilterFuncSGIS),
(void *)(glTexGend),
(void *)(glTexGendv),
@ -4405,6 +4490,8 @@ const void *gl_Value[2468] = {
(void *)(glTexParameterfv),
(void *)(glTexParameteri),
(void *)(glTexParameteriv),
(void *)(glTexParameterx),
(void *)(glTexParameterxv),
(void *)(glTexRenderbufferNV),
(void *)(glTexScissorFuncINTEL),
(void *)(glTexScissorINTEL),
@ -4460,6 +4547,7 @@ const void *gl_Value[2468] = {
(void *)(glTransformPathNV),
(void *)(glTranslated),
(void *)(glTranslatef),
(void *)(glTranslatex),
(void *)(glUniform1d),
(void *)(glUniform1dv),
(void *)(glUniform1f),
@ -4989,7 +5077,7 @@ const void *gl_Value[2468] = {
NULL
};
const size_t gl_Offset[2468] = {
const size_t gl_Offset[2512] = {
offsetof(DispatchTable,glAccum)/sizeof(void *),
offsetof(DispatchTable,glActiveProgramEXT)/sizeof(void *),
offsetof(DispatchTable,glActiveShaderProgram)/sizeof(void *),
@ -5002,6 +5090,7 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glAlphaFragmentOp2ATI)/sizeof(void *),
offsetof(DispatchTable,glAlphaFragmentOp3ATI)/sizeof(void *),
offsetof(DispatchTable,glAlphaFunc)/sizeof(void *),
offsetof(DispatchTable,glAlphaFuncx)/sizeof(void *),
offsetof(DispatchTable,glApplyTextureEXT)/sizeof(void *),
offsetof(DispatchTable,glAreProgramsResidentNV)/sizeof(void *),
offsetof(DispatchTable,glAreTexturesResident)/sizeof(void *),
@ -5130,9 +5219,11 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glClearColor)/sizeof(void *),
offsetof(DispatchTable,glClearColorIiEXT)/sizeof(void *),
offsetof(DispatchTable,glClearColorIuiEXT)/sizeof(void *),
offsetof(DispatchTable,glClearColorx)/sizeof(void *),
offsetof(DispatchTable,glClearDepth)/sizeof(void *),
offsetof(DispatchTable,glClearDepthdNV)/sizeof(void *),
offsetof(DispatchTable,glClearDepthf)/sizeof(void *),
offsetof(DispatchTable,glClearDepthx)/sizeof(void *),
offsetof(DispatchTable,glClearIndex)/sizeof(void *),
offsetof(DispatchTable,glClearNamedBufferDataEXT)/sizeof(void *),
offsetof(DispatchTable,glClearNamedBufferSubDataEXT)/sizeof(void *),
@ -5143,6 +5234,8 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glClientAttribDefaultEXT)/sizeof(void *),
offsetof(DispatchTable,glClientWaitSync)/sizeof(void *),
offsetof(DispatchTable,glClipPlane)/sizeof(void *),
offsetof(DispatchTable,glClipPlanef)/sizeof(void *),
offsetof(DispatchTable,glClipPlanex)/sizeof(void *),
offsetof(DispatchTable,glColor3b)/sizeof(void *),
offsetof(DispatchTable,glColor3bv)/sizeof(void *),
offsetof(DispatchTable,glColor3d)/sizeof(void *),
@ -5187,6 +5280,7 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glColor4uiv)/sizeof(void *),
offsetof(DispatchTable,glColor4us)/sizeof(void *),
offsetof(DispatchTable,glColor4usv)/sizeof(void *),
offsetof(DispatchTable,glColor4x)/sizeof(void *),
offsetof(DispatchTable,glColorFormatNV)/sizeof(void *),
offsetof(DispatchTable,glColorFragmentOp1ATI)/sizeof(void *),
offsetof(DispatchTable,glColorFragmentOp2ATI)/sizeof(void *),
@ -5361,6 +5455,7 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glDepthRangeIndexed)/sizeof(void *),
offsetof(DispatchTable,glDepthRangedNV)/sizeof(void *),
offsetof(DispatchTable,glDepthRangef)/sizeof(void *),
offsetof(DispatchTable,glDepthRangex)/sizeof(void *),
offsetof(DispatchTable,glDetachObjectARB)/sizeof(void *),
offsetof(DispatchTable,glDetachShader)/sizeof(void *),
offsetof(DispatchTable,glDetailTexFuncSGIS)/sizeof(void *),
@ -5503,6 +5598,8 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glFogfv)/sizeof(void *),
offsetof(DispatchTable,glFogi)/sizeof(void *),
offsetof(DispatchTable,glFogiv)/sizeof(void *),
offsetof(DispatchTable,glFogx)/sizeof(void *),
offsetof(DispatchTable,glFogxv)/sizeof(void *),
offsetof(DispatchTable,glFragmentColorMaterialEXT)/sizeof(void *),
offsetof(DispatchTable,glFragmentColorMaterialSGIX)/sizeof(void *),
offsetof(DispatchTable,glFragmentLightModelfEXT)/sizeof(void *),
@ -5555,6 +5652,8 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glFreeObjectBufferATI)/sizeof(void *),
offsetof(DispatchTable,glFrontFace)/sizeof(void *),
offsetof(DispatchTable,glFrustum)/sizeof(void *),
offsetof(DispatchTable,glFrustumf)/sizeof(void *),
offsetof(DispatchTable,glFrustumx)/sizeof(void *),
offsetof(DispatchTable,glGenAsyncMarkersSGIX)/sizeof(void *),
offsetof(DispatchTable,glGenBuffers)/sizeof(void *),
offsetof(DispatchTable,glGenBuffersARB)/sizeof(void *),
@ -5619,6 +5718,8 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glGetBufferSubData)/sizeof(void *),
offsetof(DispatchTable,glGetBufferSubDataARB)/sizeof(void *),
offsetof(DispatchTable,glGetClipPlane)/sizeof(void *),
offsetof(DispatchTable,glGetClipPlanef)/sizeof(void *),
offsetof(DispatchTable,glGetClipPlanex)/sizeof(void *),
offsetof(DispatchTable,glGetColorTable)/sizeof(void *),
offsetof(DispatchTable,glGetColorTableEXT)/sizeof(void *),
offsetof(DispatchTable,glGetColorTableParameterfv)/sizeof(void *),
@ -5656,6 +5757,7 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glGetFenceivNV)/sizeof(void *),
offsetof(DispatchTable,glGetFinalCombinerInputParameterfvNV)/sizeof(void *),
offsetof(DispatchTable,glGetFinalCombinerInputParameterivNV)/sizeof(void *),
offsetof(DispatchTable,glGetFixedv)/sizeof(void *),
offsetof(DispatchTable,glGetFloatIndexedvEXT)/sizeof(void *),
offsetof(DispatchTable,glGetFloati_v)/sizeof(void *),
offsetof(DispatchTable,glGetFloati_vEXT)/sizeof(void *),
@ -5703,6 +5805,7 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glGetInvariantIntegervEXT)/sizeof(void *),
offsetof(DispatchTable,glGetLightfv)/sizeof(void *),
offsetof(DispatchTable,glGetLightiv)/sizeof(void *),
offsetof(DispatchTable,glGetLightxv)/sizeof(void *),
offsetof(DispatchTable,glGetListParameterfvSGIX)/sizeof(void *),
offsetof(DispatchTable,glGetListParameterivSGIX)/sizeof(void *),
offsetof(DispatchTable,glGetLocalConstantBooleanvEXT)/sizeof(void *),
@ -5718,6 +5821,7 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glGetMapiv)/sizeof(void *),
offsetof(DispatchTable,glGetMaterialfv)/sizeof(void *),
offsetof(DispatchTable,glGetMaterialiv)/sizeof(void *),
offsetof(DispatchTable,glGetMaterialxv)/sizeof(void *),
offsetof(DispatchTable,glGetMinmax)/sizeof(void *),
offsetof(DispatchTable,glGetMinmaxEXT)/sizeof(void *),
offsetof(DispatchTable,glGetMinmaxParameterfv)/sizeof(void *),
@ -5854,6 +5958,7 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glGetTexBumpParameterivATI)/sizeof(void *),
offsetof(DispatchTable,glGetTexEnvfv)/sizeof(void *),
offsetof(DispatchTable,glGetTexEnviv)/sizeof(void *),
offsetof(DispatchTable,glGetTexEnvxv)/sizeof(void *),
offsetof(DispatchTable,glGetTexFilterFuncSGIS)/sizeof(void *),
offsetof(DispatchTable,glGetTexGendv)/sizeof(void *),
offsetof(DispatchTable,glGetTexGenfv)/sizeof(void *),
@ -5868,6 +5973,7 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glGetTexParameterPointervAPPLE)/sizeof(void *),
offsetof(DispatchTable,glGetTexParameterfv)/sizeof(void *),
offsetof(DispatchTable,glGetTexParameteriv)/sizeof(void *),
offsetof(DispatchTable,glGetTexParameterxv)/sizeof(void *),
offsetof(DispatchTable,glGetTextureHandleNV)/sizeof(void *),
offsetof(DispatchTable,glGetTextureImageEXT)/sizeof(void *),
offsetof(DispatchTable,glGetTextureLevelParameterfvEXT)/sizeof(void *),
@ -6051,12 +6157,17 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glLightModelfv)/sizeof(void *),
offsetof(DispatchTable,glLightModeli)/sizeof(void *),
offsetof(DispatchTable,glLightModeliv)/sizeof(void *),
offsetof(DispatchTable,glLightModelx)/sizeof(void *),
offsetof(DispatchTable,glLightModelxv)/sizeof(void *),
offsetof(DispatchTable,glLightf)/sizeof(void *),
offsetof(DispatchTable,glLightfv)/sizeof(void *),
offsetof(DispatchTable,glLighti)/sizeof(void *),
offsetof(DispatchTable,glLightiv)/sizeof(void *),
offsetof(DispatchTable,glLightx)/sizeof(void *),
offsetof(DispatchTable,glLightxv)/sizeof(void *),
offsetof(DispatchTable,glLineStipple)/sizeof(void *),
offsetof(DispatchTable,glLineWidth)/sizeof(void *),
offsetof(DispatchTable,glLineWidthx)/sizeof(void *),
offsetof(DispatchTable,glLinkProgram)/sizeof(void *),
offsetof(DispatchTable,glLinkProgramARB)/sizeof(void *),
offsetof(DispatchTable,glListBase)/sizeof(void *),
@ -6068,6 +6179,7 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glLoadIdentityDeformationMapSGIX)/sizeof(void *),
offsetof(DispatchTable,glLoadMatrixd)/sizeof(void *),
offsetof(DispatchTable,glLoadMatrixf)/sizeof(void *),
offsetof(DispatchTable,glLoadMatrixx)/sizeof(void *),
offsetof(DispatchTable,glLoadName)/sizeof(void *),
offsetof(DispatchTable,glLoadProgramNV)/sizeof(void *),
offsetof(DispatchTable,glLoadTransposeMatrixd)/sizeof(void *),
@ -6110,6 +6222,8 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glMaterialfv)/sizeof(void *),
offsetof(DispatchTable,glMateriali)/sizeof(void *),
offsetof(DispatchTable,glMaterialiv)/sizeof(void *),
offsetof(DispatchTable,glMaterialx)/sizeof(void *),
offsetof(DispatchTable,glMaterialxv)/sizeof(void *),
offsetof(DispatchTable,glMatrixFrustumEXT)/sizeof(void *),
offsetof(DispatchTable,glMatrixIndexPointerARB)/sizeof(void *),
offsetof(DispatchTable,glMatrixIndexubvARB)/sizeof(void *),
@ -6142,6 +6256,7 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glMinmaxEXT)/sizeof(void *),
offsetof(DispatchTable,glMultMatrixd)/sizeof(void *),
offsetof(DispatchTable,glMultMatrixf)/sizeof(void *),
offsetof(DispatchTable,glMultMatrixx)/sizeof(void *),
offsetof(DispatchTable,glMultTransposeMatrixd)/sizeof(void *),
offsetof(DispatchTable,glMultTransposeMatrixdARB)/sizeof(void *),
offsetof(DispatchTable,glMultTransposeMatrixf)/sizeof(void *),
@ -6232,6 +6347,7 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glMultiTexCoord4sARB)/sizeof(void *),
offsetof(DispatchTable,glMultiTexCoord4sv)/sizeof(void *),
offsetof(DispatchTable,glMultiTexCoord4svARB)/sizeof(void *),
offsetof(DispatchTable,glMultiTexCoord4x)/sizeof(void *),
offsetof(DispatchTable,glMultiTexCoordP1ui)/sizeof(void *),
offsetof(DispatchTable,glMultiTexCoordP1uiv)/sizeof(void *),
offsetof(DispatchTable,glMultiTexCoordP2ui)/sizeof(void *),
@ -6308,6 +6424,7 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glNormal3iv)/sizeof(void *),
offsetof(DispatchTable,glNormal3s)/sizeof(void *),
offsetof(DispatchTable,glNormal3sv)/sizeof(void *),
offsetof(DispatchTable,glNormal3x)/sizeof(void *),
offsetof(DispatchTable,glNormalFormatNV)/sizeof(void *),
offsetof(DispatchTable,glNormalP3ui)/sizeof(void *),
offsetof(DispatchTable,glNormalP3uiv)/sizeof(void *),
@ -6330,6 +6447,8 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glObjectPurgeableAPPLE)/sizeof(void *),
offsetof(DispatchTable,glObjectUnpurgeableAPPLE)/sizeof(void *),
offsetof(DispatchTable,glOrtho)/sizeof(void *),
offsetof(DispatchTable,glOrthof)/sizeof(void *),
offsetof(DispatchTable,glOrthox)/sizeof(void *),
offsetof(DispatchTable,glPNTrianglesfATI)/sizeof(void *),
offsetof(DispatchTable,glPNTrianglesiATI)/sizeof(void *),
offsetof(DispatchTable,glPassTexCoordATI)/sizeof(void *),
@ -6385,12 +6504,17 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glPointParameteriNV)/sizeof(void *),
offsetof(DispatchTable,glPointParameteriv)/sizeof(void *),
offsetof(DispatchTable,glPointParameterivNV)/sizeof(void *),
offsetof(DispatchTable,glPointParameterx)/sizeof(void *),
offsetof(DispatchTable,glPointParameterxv)/sizeof(void *),
offsetof(DispatchTable,glPointSize)/sizeof(void *),
offsetof(DispatchTable,glPointSizePointerOES)/sizeof(void *),
offsetof(DispatchTable,glPointSizex)/sizeof(void *),
offsetof(DispatchTable,glPollAsyncSGIX)/sizeof(void *),
offsetof(DispatchTable,glPollInstrumentsSGIX)/sizeof(void *),
offsetof(DispatchTable,glPolygonMode)/sizeof(void *),
offsetof(DispatchTable,glPolygonOffset)/sizeof(void *),
offsetof(DispatchTable,glPolygonOffsetEXT)/sizeof(void *),
offsetof(DispatchTable,glPolygonOffsetx)/sizeof(void *),
offsetof(DispatchTable,glPolygonStipple)/sizeof(void *),
offsetof(DispatchTable,glPopAttrib)/sizeof(void *),
offsetof(DispatchTable,glPopClientAttrib)/sizeof(void *),
@ -6654,8 +6778,10 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glResumeTransformFeedbackNV)/sizeof(void *),
offsetof(DispatchTable,glRotated)/sizeof(void *),
offsetof(DispatchTable,glRotatef)/sizeof(void *),
offsetof(DispatchTable,glRotatex)/sizeof(void *),
offsetof(DispatchTable,glSampleCoverage)/sizeof(void *),
offsetof(DispatchTable,glSampleCoverageARB)/sizeof(void *),
offsetof(DispatchTable,glSampleCoveragex)/sizeof(void *),
offsetof(DispatchTable,glSampleMapATI)/sizeof(void *),
offsetof(DispatchTable,glSampleMaskEXT)/sizeof(void *),
offsetof(DispatchTable,glSampleMaskIndexedNV)/sizeof(void *),
@ -6671,6 +6797,7 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glSamplerParameteriv)/sizeof(void *),
offsetof(DispatchTable,glScaled)/sizeof(void *),
offsetof(DispatchTable,glScalef)/sizeof(void *),
offsetof(DispatchTable,glScalex)/sizeof(void *),
offsetof(DispatchTable,glScissor)/sizeof(void *),
offsetof(DispatchTable,glScissorArrayv)/sizeof(void *),
offsetof(DispatchTable,glScissorIndexed)/sizeof(void *),
@ -6852,6 +6979,8 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glTexEnvfv)/sizeof(void *),
offsetof(DispatchTable,glTexEnvi)/sizeof(void *),
offsetof(DispatchTable,glTexEnviv)/sizeof(void *),
offsetof(DispatchTable,glTexEnvx)/sizeof(void *),
offsetof(DispatchTable,glTexEnvxv)/sizeof(void *),
offsetof(DispatchTable,glTexFilterFuncSGIS)/sizeof(void *),
offsetof(DispatchTable,glTexGend)/sizeof(void *),
offsetof(DispatchTable,glTexGendv)/sizeof(void *),
@ -6876,6 +7005,8 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glTexParameterfv)/sizeof(void *),
offsetof(DispatchTable,glTexParameteri)/sizeof(void *),
offsetof(DispatchTable,glTexParameteriv)/sizeof(void *),
offsetof(DispatchTable,glTexParameterx)/sizeof(void *),
offsetof(DispatchTable,glTexParameterxv)/sizeof(void *),
offsetof(DispatchTable,glTexRenderbufferNV)/sizeof(void *),
offsetof(DispatchTable,glTexScissorFuncINTEL)/sizeof(void *),
offsetof(DispatchTable,glTexScissorINTEL)/sizeof(void *),
@ -6931,6 +7062,7 @@ const size_t gl_Offset[2468] = {
offsetof(DispatchTable,glTransformPathNV)/sizeof(void *),
offsetof(DispatchTable,glTranslated)/sizeof(void *),
offsetof(DispatchTable,glTranslatef)/sizeof(void *),
offsetof(DispatchTable,glTranslatex)/sizeof(void *),
offsetof(DispatchTable,glUniform1d)/sizeof(void *),
offsetof(DispatchTable,glUniform1dv)/sizeof(void *),
offsetof(DispatchTable,glUniform1f)/sizeof(void *),

View file

@ -53,21 +53,21 @@ inline int NameCmp(const void *a, const void *b)
return std::strcmp(*(const char **) a, *(const char **) b);
}
extern const char * const gl_Name[2468];
extern const void *gl_Value[2468];
extern const size_t gl_Offset[2468];
extern const char * const gl_Name[2512];
extern const void *gl_Value[2512];
extern const size_t gl_Offset[2512];
template<typename T>
T
gl_Lookup(const char *name, T def = NULL)
{
const char **res = (const char **) std::bsearch(&name, gl_Name, 2467, sizeof(const char *), NameCmp);
const char **res = (const char **) std::bsearch(&name, gl_Name, 2511, sizeof(const char *), NameCmp);
return res ? reinterpret_cast<T>(const_cast<void *>(gl_Value[(size_t) (res - gl_Name)])) : def;
}
inline size_t gl_LookupOffset(const char *name)
{
const char **res = (const char **) std::bsearch(&name, gl_Name, 2467, sizeof(const char *), NameCmp);
const char **res = (const char **) std::bsearch(&name, gl_Name, 2511, sizeof(const char *), NameCmp);
return res ? gl_Offset[(size_t) (res - gl_Name)] : 0;
}

View file

@ -12,6 +12,7 @@ EXPORTS
rglAlphaFragmentOp2ATI
rglAlphaFragmentOp3ATI
rglAlphaFunc
rglAlphaFuncx
rglApplyTextureEXT
rglAreProgramsResidentNV
rglAreTexturesResident
@ -140,9 +141,11 @@ EXPORTS
rglClearColor
rglClearColorIiEXT
rglClearColorIuiEXT
rglClearColorx
rglClearDepth
rglClearDepthdNV
rglClearDepthf
rglClearDepthx
rglClearIndex
rglClearNamedBufferDataEXT
rglClearNamedBufferSubDataEXT
@ -153,6 +156,8 @@ EXPORTS
rglClientAttribDefaultEXT
rglClientWaitSync
rglClipPlane
rglClipPlanef
rglClipPlanex
rglColor3b
rglColor3bv
rglColor3d
@ -197,6 +202,7 @@ EXPORTS
rglColor4uiv
rglColor4us
rglColor4usv
rglColor4x
rglColorFormatNV
rglColorFragmentOp1ATI
rglColorFragmentOp2ATI
@ -371,6 +377,7 @@ EXPORTS
rglDepthRangeIndexed
rglDepthRangedNV
rglDepthRangef
rglDepthRangex
rglDetachObjectARB
rglDetachShader
rglDetailTexFuncSGIS
@ -513,6 +520,8 @@ EXPORTS
rglFogfv
rglFogi
rglFogiv
rglFogx
rglFogxv
rglFragmentColorMaterialEXT
rglFragmentColorMaterialSGIX
rglFragmentLightModelfEXT
@ -565,6 +574,8 @@ EXPORTS
rglFreeObjectBufferATI
rglFrontFace
rglFrustum
rglFrustumf
rglFrustumx
rglGenAsyncMarkersSGIX
rglGenBuffers
rglGenBuffersARB
@ -629,6 +640,8 @@ EXPORTS
rglGetBufferSubData
rglGetBufferSubDataARB
rglGetClipPlane
rglGetClipPlanef
rglGetClipPlanex
rglGetColorTable
rglGetColorTableEXT
rglGetColorTableParameterfv
@ -666,6 +679,7 @@ EXPORTS
rglGetFenceivNV
rglGetFinalCombinerInputParameterfvNV
rglGetFinalCombinerInputParameterivNV
rglGetFixedv
rglGetFloatIndexedvEXT
rglGetFloati_v
rglGetFloati_vEXT
@ -713,6 +727,7 @@ EXPORTS
rglGetInvariantIntegervEXT
rglGetLightfv
rglGetLightiv
rglGetLightxv
rglGetListParameterfvSGIX
rglGetListParameterivSGIX
rglGetLocalConstantBooleanvEXT
@ -728,6 +743,7 @@ EXPORTS
rglGetMapiv
rglGetMaterialfv
rglGetMaterialiv
rglGetMaterialxv
rglGetMinmax
rglGetMinmaxEXT
rglGetMinmaxParameterfv
@ -864,6 +880,7 @@ EXPORTS
rglGetTexBumpParameterivATI
rglGetTexEnvfv
rglGetTexEnviv
rglGetTexEnvxv
rglGetTexFilterFuncSGIS
rglGetTexGendv
rglGetTexGenfv
@ -878,6 +895,7 @@ EXPORTS
rglGetTexParameterPointervAPPLE
rglGetTexParameterfv
rglGetTexParameteriv
rglGetTexParameterxv
rglGetTextureHandleNV
rglGetTextureImageEXT
rglGetTextureLevelParameterfvEXT
@ -1061,12 +1079,17 @@ EXPORTS
rglLightModelfv
rglLightModeli
rglLightModeliv
rglLightModelx
rglLightModelxv
rglLightf
rglLightfv
rglLighti
rglLightiv
rglLightx
rglLightxv
rglLineStipple
rglLineWidth
rglLineWidthx
rglLinkProgram
rglLinkProgramARB
rglListBase
@ -1078,6 +1101,7 @@ EXPORTS
rglLoadIdentityDeformationMapSGIX
rglLoadMatrixd
rglLoadMatrixf
rglLoadMatrixx
rglLoadName
rglLoadProgramNV
rglLoadTransposeMatrixd
@ -1120,6 +1144,8 @@ EXPORTS
rglMaterialfv
rglMateriali
rglMaterialiv
rglMaterialx
rglMaterialxv
rglMatrixFrustumEXT
rglMatrixIndexPointerARB
rglMatrixIndexubvARB
@ -1152,6 +1178,7 @@ EXPORTS
rglMinmaxEXT
rglMultMatrixd
rglMultMatrixf
rglMultMatrixx
rglMultTransposeMatrixd
rglMultTransposeMatrixdARB
rglMultTransposeMatrixf
@ -1242,6 +1269,7 @@ EXPORTS
rglMultiTexCoord4sARB
rglMultiTexCoord4sv
rglMultiTexCoord4svARB
rglMultiTexCoord4x
rglMultiTexCoordP1ui
rglMultiTexCoordP1uiv
rglMultiTexCoordP2ui
@ -1318,6 +1346,7 @@ EXPORTS
rglNormal3iv
rglNormal3s
rglNormal3sv
rglNormal3x
rglNormalFormatNV
rglNormalP3ui
rglNormalP3uiv
@ -1340,6 +1369,8 @@ EXPORTS
rglObjectPurgeableAPPLE
rglObjectUnpurgeableAPPLE
rglOrtho
rglOrthof
rglOrthox
rglPNTrianglesfATI
rglPNTrianglesiATI
rglPassTexCoordATI
@ -1395,12 +1426,17 @@ EXPORTS
rglPointParameteriNV
rglPointParameteriv
rglPointParameterivNV
rglPointParameterx
rglPointParameterxv
rglPointSize
rglPointSizePointerOES
rglPointSizex
rglPollAsyncSGIX
rglPollInstrumentsSGIX
rglPolygonMode
rglPolygonOffset
rglPolygonOffsetEXT
rglPolygonOffsetx
rglPolygonStipple
rglPopAttrib
rglPopClientAttrib
@ -1664,8 +1700,10 @@ EXPORTS
rglResumeTransformFeedbackNV
rglRotated
rglRotatef
rglRotatex
rglSampleCoverage
rglSampleCoverageARB
rglSampleCoveragex
rglSampleMapATI
rglSampleMaskEXT
rglSampleMaskIndexedNV
@ -1681,6 +1719,7 @@ EXPORTS
rglSamplerParameteriv
rglScaled
rglScalef
rglScalex
rglScissor
rglScissorArrayv
rglScissorIndexed
@ -1862,6 +1901,8 @@ EXPORTS
rglTexEnvfv
rglTexEnvi
rglTexEnviv
rglTexEnvx
rglTexEnvxv
rglTexFilterFuncSGIS
rglTexGend
rglTexGendv
@ -1886,6 +1927,8 @@ EXPORTS
rglTexParameterfv
rglTexParameteri
rglTexParameteriv
rglTexParameterx
rglTexParameterxv
rglTexRenderbufferNV
rglTexScissorFuncINTEL
rglTexScissorINTEL
@ -1941,6 +1984,7 @@ EXPORTS
rglTransformPathNV
rglTranslated
rglTranslatef
rglTranslatex
rglUniform1d
rglUniform1dv
rglUniform1f