From 9e5a0b88952e887d7984ca055ea2a80bea1e4735 Mon Sep 17 00:00:00 2001 From: Jerome Glisse Date: Tue, 15 Feb 2005 10:40:34 +0000 Subject: Added texture format table for big endian (this is a tempory hack). --- src/mesa/drivers/dri/r300/r300_texstate.c | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) (limited to 'src/mesa/drivers/dri/r300/r300_texstate.c') diff --git a/src/mesa/drivers/dri/r300/r300_texstate.c b/src/mesa/drivers/dri/r300/r300_texstate.c index 949ce987e1..8499ef89ab 100644 --- a/src/mesa/drivers/dri/r300/r300_texstate.c +++ b/src/mesa/drivers/dri/r300/r300_texstate.c @@ -93,6 +93,33 @@ _ALPHA(RGBA8888), static const struct { GLuint format, filter; } tx_table[] = { +#ifdef MESA_BIG_ENDIAN +/* + * NOTE: As we can't do swapping (RBBM_GUI_CNTL doesn't seems to work + * on r300) we declare the texture format in swapped form. We + * should better find a way to ask the hardware to do the swapping. + * Jerome Glisse + */ + {R300_EASY_TX_FORMAT(Y, Z, W, X, W8Z8Y8X8), 0}, + {R300_EASY_TX_FORMAT(Z, Y, X, W, W8Z8Y8X8), 0}, + {0xffffff02, 0}, + {0xffffff03, 0}, + {0xffffff04, 0}, + {0xffffff05, 0}, + {0xffffff06, 0}, + {0xffffff07, 0}, + {0xffffff08, 0}, + {0xffffff09, 0}, + {0xffffff10, 0}, + {0xffffff11, 0}, + {R300_EASY_TX_FORMAT(Y, Y, Y, X, Y8X8), 0}, + {0xffffff13, 0}, + {0xffffff14, 0}, + {0xffffff15, 0}, + {0xffffff16, 0}, + {0xffffff17, 0}, + }; +#elif {R300_EASY_TX_FORMAT(Y, Z, W, X, W8Z8Y8X8), 0}, {0xffffff01, 0}, {0xffffff02, 0}, @@ -112,7 +139,7 @@ static const struct { {0xffffff16, 0}, {0xffffff17, 0}, }; - +#endif #undef _COLOR #undef _ALPHA -- cgit v1.2.3