Make sure texture base addresses are used correctly.
authorNicolai Haehnle <prefect_@gmx.net>
Tue, 21 Jun 2005 15:21:14 +0000 (15:21 +0000)
committerNicolai Haehnle <prefect_@gmx.net>
Tue, 21 Jun 2005 15:21:14 +0000 (15:21 +0000)
They are relative to the card's address space, not relative to fbLocation,
which will be important once we program MC_FB/AGP_LOCATION in the way
they are programmed on older Radeon chips.

src/mesa/drivers/dri/r300/r300_context.h
src/mesa/drivers/dri/r300/r300_state.c

index ab6660897ca67b4724f5e84e9a78dda9d04d0c4b..7b575bd4d007c72276ded127b8dc8e4b15a0cd07 100644 (file)
@@ -174,7 +174,7 @@ struct r300_tex_obj {
        GLuint pitch; /* one of the unknown registers.. unknown 1 ?*/
        GLuint size;    /* npot only */
        GLuint format;
-       GLuint offset;  /* Image location in texmem.
+       GLuint offset;  /* Image location in the card's address space.
                                   All cube faces follow. */
        GLuint unknown4;
        GLuint unknown5;
index 0e2652a3703754e225fa677be926fcc65385f6aa..d8feb1954278d95b2ca34068cdca772ad89d2d33 100644 (file)
@@ -1077,7 +1077,7 @@ void r300_setup_textures(GLcontext *ctx)
                        r300->hw.tex.size.cmd[R300_TEX_VALUE_0+i]=t->size;
                        r300->hw.tex.format.cmd[R300_TEX_VALUE_0+i]=t->format;
                        //fprintf(stderr, "t->format=%08x\n", t->format);
-                       r300->hw.tex.offset.cmd[R300_TEX_VALUE_0+i]=r300->radeon.radeonScreen->fbLocation+t->offset;
+                       r300->hw.tex.offset.cmd[R300_TEX_VALUE_0+i]=t->offset;
                        r300->hw.tex.unknown4.cmd[R300_TEX_VALUE_0+i]=0x0;
                        r300->hw.tex.border_color.cmd[R300_TEX_VALUE_0+i]=t->pp_border_color;
                }