summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/r300/r300_vertexprog.c
diff options
context:
space:
mode:
authorAapo Tahkola <aet@rasterburn.org>2005-04-19 18:49:44 +0000
committerAapo Tahkola <aet@rasterburn.org>2005-04-19 18:49:44 +0000
commitfc8f2021815b692b0e2b8d3e879edee0db538a11 (patch)
tree052071f258255c7964fb11d7e6765502e21ae7d4 /src/mesa/drivers/dri/r300/r300_vertexprog.c
parentc4e1fd5a7f429c4ba3a10ace3346e2e40cf20361 (diff)
Reorganized shader stuff.
Diffstat (limited to 'src/mesa/drivers/dri/r300/r300_vertexprog.c')
-rw-r--r--src/mesa/drivers/dri/r300/r300_vertexprog.c114
1 files changed, 1 insertions, 113 deletions
diff --git a/src/mesa/drivers/dri/r300/r300_vertexprog.c b/src/mesa/drivers/dri/r300/r300_vertexprog.c
index 360680bf8f..ec0ec0c47d 100644
--- a/src/mesa/drivers/dri/r300/r300_vertexprog.c
+++ b/src/mesa/drivers/dri/r300/r300_vertexprog.c
@@ -467,7 +467,7 @@ static unsigned long op_operands(enum vp_opcode opcode)
t_src_class(b.File) == VSF_IN_CLASS_ATTR))) \
#define SRCS_WRITABLE 1
-static void translate_program(struct r300_vertex_program *vp)
+void translate_vertex_shader(struct r300_vertex_program *vp)
{
struct vertex_program *mesa_vp=(void *)vp;
struct vp_instruction *vpi;
@@ -885,115 +885,3 @@ static void translate_program(struct r300_vertex_program *vp)
vp->translated=GL_TRUE;
}
-static void r300BindProgram(GLcontext *ctx, GLenum target, struct program *prog)
-{
- r300ContextPtr rmesa = R300_CONTEXT(ctx);
- struct r300_vertex_program *vp=(void *)prog;
-#if 0
- fprintf(stderr, "r300BindProgram\n");
-#endif
- if(rmesa->current_vp == vp)
- return ;
-
- rmesa->current_vp = vp;
-}
-
-/* Mesa doesnt seem to have prototype for this */
-struct program *
-_mesa_init_ati_fragment_shader( GLcontext *ctx, struct ati_fragment_shader *prog,
- GLenum target, GLuint id);
-
-static struct program *r300NewProgram(GLcontext *ctx, GLenum target, GLuint id)
-{
- struct r300_vertex_program *vp;
- struct fragment_program *fp;
- struct ati_fragment_shader *afs;
-#if 0
- fprintf(stderr, "r300NewProgram, target=%d, id=%d\n", target, id);
-#endif
- switch(target){
- case GL_VERTEX_PROGRAM_ARB:
- vp=CALLOC_STRUCT(r300_vertex_program);
- return _mesa_init_vertex_program(ctx, &vp->mesa_program, target, id);
-
- case GL_FRAGMENT_PROGRAM_ARB:
- fp=CALLOC_STRUCT(fragment_program);
- return _mesa_init_fragment_program(ctx, fp, target, id);
-
- case GL_FRAGMENT_PROGRAM_NV:
- fp=CALLOC_STRUCT(fragment_program);
- return _mesa_init_fragment_program(ctx, fp, target, id);
-
- case GL_FRAGMENT_SHADER_ATI:
- afs=CALLOC_STRUCT(ati_fragment_shader);
- return _mesa_init_ati_fragment_shader(ctx, afs, target, id);
- }
-
- return NULL;
-}
-
-
-static void r300DeleteProgram(GLcontext *ctx, struct program *prog)
-{
- r300ContextPtr rmesa = R300_CONTEXT(ctx);
- struct r300_vertex_program *vp=(void *)prog;
-#if 0
- fprintf(stderr, "r300DeleteProgram\n");
-#endif
- if(rmesa->current_vp == vp)
- rmesa->current_vp = NULL;
-
- _mesa_delete_program(ctx, prog);
-}
-
-static GLboolean r300IsProgramNative(GLcontext *ctx, GLenum target,
- struct program *prog);
-
-static void r300ProgramStringNotify(GLcontext *ctx, GLenum target,
- struct program *prog)
-{
- struct r300_vertex_program *vp=(void *)prog;
-#if 0
- fprintf(stderr, "r300ProgramStringNotify\n");
-#endif
-
- switch(target) {
- case GL_VERTEX_PROGRAM_ARB:
- vp->translated=GL_FALSE;
- break;
- case GL_FRAGMENT_PROGRAM_ARB:
- return ;
- break;
- }
-
- /* XXX: There is still something wrong as mesa doesnt call r300IsProgramNative at all */
- (void)r300IsProgramNative(ctx, target, prog);
-
-}
-
-static GLboolean r300IsProgramNative(GLcontext *ctx, GLenum target,
- struct program *prog)
-{
- struct r300_vertex_program *vp=(void *)prog;
- r300ContextPtr rmesa = R300_CONTEXT(ctx);
-
-#if 0
- fprintf(stderr, "r300IsProgramNative\n");
- //exit(0);
- debug_vp(ctx, vp);
-#endif
- translate_program(vp);
- //r300VertexProgUpdateParams(ctx, vp);
-
- return 1;
-}
-
-/* This is misnamed and shouldnt be here since fragment programs use these functions too */
-void r300InitVertexProgFuncs(struct dd_function_table *functions)
-{
- functions->NewProgram=r300NewProgram;
- functions->BindProgram=r300BindProgram;
- functions->DeleteProgram=r300DeleteProgram;
- functions->ProgramStringNotify=r300ProgramStringNotify;
- functions->IsProgramNative=r300IsProgramNative;
-}