#include "utils.h"
#include "vblank.h"
+#include "extensions.h"
+
#include "GL/internal/dri_interface.h"
/* MGA configuration
DRI_CONF_TEXTURE_DEPTH(DRI_CONF_TEXTURE_DEPTH_FB)
DRI_CONF_COLOR_REDUCTION(DRI_CONF_COLOR_REDUCTION_DITHER)
DRI_CONF_SECTION_END
+ DRI_CONF_SECTION_SOFTWARE
+ DRI_CONF_ARB_VERTEX_PROGRAM(true)
+ DRI_CONF_NV_VERTEX_PROGRAM(true)
+ DRI_CONF_SECTION_END
DRI_CONF_END;
-static const GLuint __driNConfigOptions = 3;
+static const GLuint __driNConfigOptions = 5;
#ifdef USE_NEW_INTERFACE
static PFNGLXCREATECONTEXTMODES create_context_modes = NULL;
&_tnl_fog_coordinate_stage,
&_tnl_texgen_stage,
&_tnl_texture_transform_stage,
+ &_tnl_vertex_program_stage,
+
/* REMOVE: point attenuation stage */
#if 0
&_mga_render_stage, /* ADD: unclipped rastersetup-to-dma */
{
"GL_ARB_multisample",
"GL_ARB_texture_compression",
+ "GL_ARB_texture_rectangle",
"GL_EXT_blend_logic_op",
"GL_EXT_fog_coord",
+ "GL_EXT_multi_draw_arrays",
/* paletted_textures currently doesn't work, but we could fix them later */
#if 0
"GL_EXT_shared_texture_palette",
#endif
"GL_EXT_secondary_color",
"GL_EXT_stencil_wrap",
- "GL_EXT_texture_rectangle",
"GL_MESA_ycbcr_texture",
"GL_SGIS_generate_mipmap",
- "GL_SGIS_texture_lod",
NULL
};
driInitExtensions( ctx, g400_extensions, GL_FALSE );
}
+ if ( driQueryOptionb( &mmesa->optionCache, "arb_vertex_program" ) ) {
+ _mesa_enable_extension( ctx, "GL_ARB_vertex_program" );
+ }
+
+ if ( driQueryOptionb( &mmesa->optionCache, "nv_vertex_program" ) ) {
+ _mesa_enable_extension( ctx, "GL_NV_vertex_program" );
+ _mesa_enable_extension( ctx, "GL_NV_vertex_program1_1" );
+ }
+
+
/* XXX these should really go right after _mesa_init_driver_functions() */
mgaDDInitStateFuncs( ctx );
mgaDDInitSpanFuncs( ctx );