Fix r300SetTexOffset for big endian platforms.

This was broken by the unification of the texture format table.
This commit is contained in:
Michel Dänzer
2007-05-30 15:37:42 +02:00
parent d61a595a5b
commit 2b7ef2549f
+6 -7
View File
@@ -501,7 +501,6 @@ void r300SetTexOffset(__DRIcontext * pDRICtx, GLint texname,
struct gl_texture_object *tObj =
_mesa_lookup_texture(rmesa->radeon.glCtx, texname);
r300TexObjPtr t;
int idx;
if (!tObj)
return;
@@ -518,24 +517,24 @@ void r300SetTexOffset(__DRIcontext * pDRICtx, GLint texname,
switch (depth) {
case 32:
idx = 2;
t->format = R300_EASY_TX_FORMAT(X, Y, Z, W, W8Z8Y8X8);
t->filter |= tx_table[2].filter;
t->pitch_reg /= 4;
break;
case 24:
default:
idx = 4;
t->format = R300_EASY_TX_FORMAT(X, Y, Z, ONE, W8Z8Y8X8);
t->filter |= tx_table[4].filter;
t->pitch_reg /= 4;
break;
case 16:
idx = 5;
t->format = R300_EASY_TX_FORMAT(X, Y, Z, ONE, Z5Y6X5);
t->filter |= tx_table[5].filter;
t->pitch_reg /= 2;
break;
}
t->pitch_reg--;
t->format = tx_table[idx].format;
t->filter |= tx_table[idx].filter;
}
static GLboolean r300UpdateTextureUnit(GLcontext * ctx, int unit)