--- Mesa-6.5/src/mesa/main/mtypes.h.i965 2006-03-29 09:03:03.000000000 -0500 +++ Mesa-6.5/src/mesa/main/mtypes.h 2006-09-01 20:59:04.000000000 -0400 @@ -207,7 +207,9 @@ #define VERT_RESULT_PSIZ 12 #define VERT_RESULT_BFC0 13 #define VERT_RESULT_BFC1 14 -#define VERT_RESULT_MAX 15 +#define VERT_RESULT_EDGE 15 +#define VERT_RESULT_MAX 16 + /*@}*/ @@ -1748,7 +1750,8 @@ PROGRAM_CONSTANT = 7, PROGRAM_WRITE_ONLY = 8, PROGRAM_ADDRESS = 9, - PROGRAM_UNDEFINED = 15 /* invalid value */ + PROGRAM_UNDEFINED = 15, /* invalid value */ + PROGRAM_FILE_MAX }; --- Mesa-6.5/src/mesa/drivers/dri/i965/brw_wm_fp.c.i965 2006-08-09 15:14:05.000000000 -0400 +++ Mesa-6.5/src/mesa/drivers/dri/i965/brw_wm_fp.c 2006-09-01 20:59:04.000000000 -0400 @@ -376,7 +376,7 @@ GLint s4, GLint s5) { - struct gl_program_parameter_list *paramList = c->fp->program.Base.Parameters; + struct program_parameter_list *paramList = c->fp->program.Base.Parameters; GLint tokens[6]; GLuint idx; tokens[0] = s0; @@ -408,7 +408,7 @@ GLfloat s2, GLfloat s3) { - struct gl_program_parameter_list *paramList = c->fp->program.Base.Parameters; + struct program_parameter_list *paramList = c->fp->program.Base.Parameters; GLfloat values[4]; GLuint idx; --- Mesa-6.5/src/mesa/drivers/dri/i965/brw_wm_surface_state.c.i965 2006-08-09 15:14:05.000000000 -0400 +++ Mesa-6.5/src/mesa/drivers/dri/i965/brw_wm_surface_state.c 2006-09-01 20:59:04.000000000 -0400 @@ -103,8 +103,8 @@ case MESA_FORMAT_RGBA_FXT1: return BRW_SURFACEFORMAT_FXT1; - case MESA_FORMAT_Z16: - return BRW_SURFACEFORMAT_L16_UNORM; + //case MESA_FORMAT_Z16: + // return BRW_SURFACEFORMAT_L16_UNORM; case MESA_FORMAT_RGBA_DXT1: case MESA_FORMAT_RGB_DXT1: --- Mesa-6.5/src/mesa/drivers/dri/i965/brw_metaops.c.i965 2006-08-09 15:14:05.000000000 -0400 +++ Mesa-6.5/src/mesa/drivers/dri/i965/brw_metaops.c 2006-09-01 20:59:04.000000000 -0400 @@ -167,10 +167,10 @@ GL_DYNAMIC_DRAW_ARB, brw->metaops.vbo); - brw->metaops.fp = (struct gl_fragment_program *) + brw->metaops.fp = (struct fragment_program *) ctx->Driver.NewProgram(ctx, GL_FRAGMENT_PROGRAM_ARB, 1 ); - brw->metaops.vp = (struct gl_vertex_program *) + brw->metaops.vp = (struct vertex_program *) ctx->Driver.NewProgram(ctx, GL_VERTEX_PROGRAM_ARB, 1 ); _mesa_parse_arb_fragment_program(ctx, GL_FRAGMENT_PROGRAM_ARB, --- Mesa-6.5/src/mesa/drivers/dri/i965/brw_vs_tnl.c.i965 2006-08-09 15:14:05.000000000 -0400 +++ Mesa-6.5/src/mesa/drivers/dri/i965/brw_vs_tnl.c 2006-09-01 20:59:04.000000000 -0400 @@ -114,7 +114,7 @@ static void make_state_key( GLcontext *ctx, struct state_key *key ) { struct brw_context *brw = brw_context(ctx); - struct gl_fragment_program *fp = brw->fragment_program; + struct fragment_program *fp = brw->fragment_program; GLuint i; /* This now relies on texenvprogram.c being active: @@ -267,7 +267,7 @@ struct tnl_program { const struct state_key *state; - struct gl_vertex_program *program; + struct vertex_program *program; GLuint temp_in_use; GLuint temp_reserved; @@ -1436,7 +1436,7 @@ static void build_new_tnl_program( const struct state_key *key, - struct gl_vertex_program *program, + struct vertex_program *program, GLuint max_temps) { struct tnl_program p; @@ -1544,7 +1544,7 @@ GLcontext *ctx = &brw->intel.ctx; struct state_key key; GLuint hash; - struct gl_vertex_program *old = brw->tnl_program; + struct vertex_program *old = brw->tnl_program; /* _NEW_PROGRAM */ if (brw->attribs.VertexProgram->_Enabled) @@ -1557,13 +1557,13 @@ /* Look for an already-prepared program for this state: */ - brw->tnl_program = (struct gl_vertex_program *) + brw->tnl_program = (struct vertex_program *) search_cache( &brw->tnl_program_cache, hash, &key, sizeof(key) ); /* OK, we'll have to build a new one: */ if (!brw->tnl_program) { - brw->tnl_program = (struct gl_vertex_program *) + brw->tnl_program = (struct vertex_program *) ctx->Driver.NewProgram(ctx, GL_VERTEX_PROGRAM_ARB, 0); build_new_tnl_program( &key, brw->tnl_program, @@ -1607,7 +1607,7 @@ static void update_active_vertprog( struct brw_context *brw ) { - struct gl_vertex_program *prev = brw->vertex_program; + struct vertex_program *prev = brw->vertex_program; /* NEW_PROGRAM */ if (brw->attribs.VertexProgram->_Enabled) { --- Mesa-6.5/src/mesa/drivers/dri/i965/brw_wm_pass0.c.i965 2006-08-09 15:14:05.000000000 -0400 +++ Mesa-6.5/src/mesa/drivers/dri/i965/brw_wm_pass0.c 2006-09-01 20:59:04.000000000 -0400 @@ -182,7 +182,7 @@ case PROGRAM_STATE_VAR: case PROGRAM_NAMED_PARAM: { - struct gl_program_parameter_list *plist = c->fp->program.Base.Parameters; + struct program_parameter_list *plist = c->fp->program.Base.Parameters; /* There's something really hokey about parameters parsed in * arb programs - they all end up in here, whether they be --- Mesa-6.5/src/mesa/drivers/dri/i965/brw_util.c.i965 2006-08-09 15:14:05.000000000 -0400 +++ Mesa-6.5/src/mesa/drivers/dri/i965/brw_util.c 2006-09-01 20:59:04.000000000 -0400 @@ -111,7 +111,7 @@ GLuint -brw_parameter_list_state_flags(struct gl_program_parameter_list *paramList) +brw_parameter_list_state_flags(struct program_parameter_list *paramList) { GLuint i; GLuint result = 0; --- Mesa-6.5/src/mesa/drivers/dri/i965/brw_util.h.i965 2006-08-09 15:14:05.000000000 -0400 +++ Mesa-6.5/src/mesa/drivers/dri/i965/brw_util.h 2006-09-01 20:59:04.000000000 -0400 @@ -36,7 +36,7 @@ #include "mtypes.h" extern GLuint brw_count_bits( GLuint val ); -extern GLuint brw_parameter_list_state_flags(struct gl_program_parameter_list *paramList); +extern GLuint brw_parameter_list_state_flags(struct program_parameter_list *paramList); extern GLuint brw_translate_blend_factor( GLenum factor ); extern GLuint brw_translate_blend_equation( GLenum mode ); --- Mesa-6.5/src/mesa/drivers/dri/i965/brw_wm_state.c.i965 2006-08-09 15:14:05.000000000 -0400 +++ Mesa-6.5/src/mesa/drivers/dri/i965/brw_wm_state.c 2006-09-01 20:59:04.000000000 -0400 @@ -118,7 +118,7 @@ /* BRW_NEW_FRAGMENT_PROGRAM */ { - struct gl_fragment_program *fp = brw->fragment_program; + struct fragment_program *fp = brw->fragment_program; if (fp->Base.InputsRead & (1<<FRAG_ATTRIB_WPOS)) wm.wm5.program_uses_depth = 1; /* as far as we can tell */ --- Mesa-6.5/src/mesa/drivers/dri/i965/intel_span.c.i965 2006-08-09 15:14:05.000000000 -0400 +++ Mesa-6.5/src/mesa/drivers/dri/i965/intel_span.c 2006-09-01 20:59:04.000000000 -0400 @@ -267,10 +267,10 @@ intelInitPointers_8888(&drb->Base); } } - else if (drb->Base.InternalFormat == GL_DEPTH_COMPONENT16) { + /*else if (drb->Base.InternalFormat == GL_DEPTH_COMPONENT16) { intelInitDepthPointers_z16(&drb->Base); - } - else if (drb->Base.InternalFormat == GL_DEPTH_COMPONENT24) { + }*/ + else if (drb->Base.InternalFormat == GL_DEPTH_COMPONENT24 || drb->Base.InternalFormat == GL_DEPTH_COMPONENT16) { intelInitDepthPointers_z24_s8(&drb->Base); } else if (drb->Base.InternalFormat == GL_STENCIL_INDEX8_EXT) { --- Mesa-6.5/src/mesa/drivers/dri/i965/brw_exec_array.c.i965 2006-08-09 15:14:05.000000000 -0400 +++ Mesa-6.5/src/mesa/drivers/dri/i965/brw_exec_array.c 2006-09-01 20:59:04.000000000 -0400 @@ -277,33 +277,33 @@ static void init_legacy_arrays( GLcontext *ctx, const struct gl_client_array *arrays[] ) { - struct gl_array_object *obj = ctx->Array.ArrayObj; + struct gl_array_attrib *array = &ctx->Array; GLuint i; memset(arrays, 0, sizeof(*arrays) * BRW_ATTRIB_MAX); - arrays[BRW_ATTRIB_POS] = &obj->Vertex; - arrays[BRW_ATTRIB_NORMAL] = &obj->Normal; - arrays[BRW_ATTRIB_COLOR0] = &obj->Color; - arrays[BRW_ATTRIB_COLOR1] = &obj->SecondaryColor; - arrays[BRW_ATTRIB_FOG] = &obj->FogCoord; + arrays[BRW_ATTRIB_POS] = &array->Vertex; + arrays[BRW_ATTRIB_NORMAL] = &array->Normal; + arrays[BRW_ATTRIB_COLOR0] = &array->Color; + arrays[BRW_ATTRIB_COLOR1] = &array->SecondaryColor; + arrays[BRW_ATTRIB_FOG] = &array->FogCoord; for (i = 0; i < MAX_TEXTURE_COORD_UNITS; i++) - arrays[BRW_ATTRIB_TEX0 + i] = &obj->TexCoord[i]; + arrays[BRW_ATTRIB_TEX0 + i] = &array->TexCoord[i]; - arrays[BRW_ATTRIB_INDEX] = &obj->Index; - arrays[BRW_ATTRIB_EDGEFLAG] = &obj->EdgeFlag; + arrays[BRW_ATTRIB_INDEX] = &array->Index; + arrays[BRW_ATTRIB_EDGEFLAG] = &array->EdgeFlag; } static void init_attrib_arrays( GLcontext *ctx, const struct gl_client_array *arrays[] ) { - struct gl_array_object *obj = ctx->Array.ArrayObj; + struct gl_array_attrib *array = &ctx->Array; GLuint i; for (i = 0; i < BRW_ATTRIB_FIRST_MATERIAL; i++) - arrays[i] = &obj->VertexAttrib[i]; + arrays[i] = &array->VertexAttrib[i]; } --- Mesa-6.5/src/mesa/drivers/dri/i965/brw_context.h.i965 2006-08-09 15:14:05.000000000 -0400 +++ Mesa-6.5/src/mesa/drivers/dri/i965/brw_context.h 2006-09-01 20:59:04.000000000 -0400 @@ -145,7 +145,7 @@ }; struct brw_vertex_program { - struct gl_vertex_program program; + struct vertex_program program; GLuint id; GLuint param_state; /* flags indicating state tracked by params */ }; @@ -153,7 +153,7 @@ struct brw_fragment_program { - struct gl_fragment_program program; + struct fragment_program program; GLuint id; GLuint param_state; /* flags indicating state tracked by params */ }; @@ -485,8 +485,8 @@ /* Will be allocated on demand if needed. */ struct brw_state_pointers attribs; - struct gl_vertex_program *vp; - struct gl_fragment_program *fp; + struct vertex_program *vp; + struct fragment_program *fp; struct gl_buffer_object *vbo; @@ -499,13 +499,13 @@ /* Track fixed function t&l in a vertex program: */ - struct gl_vertex_program *tnl_program; + struct vertex_program *tnl_program; struct brw_tnl_cache tnl_program_cache; /* Active vertex program: */ - struct gl_vertex_program *vertex_program; - struct gl_fragment_program *fragment_program; + struct vertex_program *vertex_program; + struct fragment_program *fragment_program; /* For populating the gtt: --- Mesa-6.5/src/mesa/drivers/dri/i965/brw_tex.c.i965 2006-09-04 10:03:59.000000000 -0400 +++ Mesa-6.5/src/mesa/drivers/dri/i965/brw_tex.c 2006-09-04 10:05:51.000000000 -0400 @@ -139,7 +139,7 @@ case GL_DEPTH_COMPONENT16: case GL_DEPTH_COMPONENT24: case GL_DEPTH_COMPONENT32: - return &_mesa_texformat_z16; + return &_mesa_texformat_z24_s8; default: fprintf(stderr, "unexpected texture format %s in %s\n",