13:28 < pmdata> ymanton> We have a bit more work to do for 8 bits texture. 13:28 < pmdata> Swizzling works by halving dimensions, and using a8r8g8b8 as format as seen in dumps for test_texture_format. 13:28 < pmdata> I nearly got text in progs/demos/texenv: http://people.freedesktop.org/~pmandin/20091011.png 13:28 < pmdata> My current patch: http://people.freedesktop.org/~pmandin/8bit_texture.diff 13:51 < pmdata> ymanton> it appears there is an extra copy done with m2mf when dealing with 8 bits texture Sorry, was not around earlier. Did you try NV04_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_Y8 instead and not changing the dimensions? I've seen the blob do strange things before for swizzling that don't seem necessary, so we might be better off trying the simplest approach first. I suspect it would work. ...Unless you already tried it and it didn't work, in which case I'd be interested to see what the PGRAPH errors are. @@ -51,6 +53,10 @@ static INLINE int nv04_scaled_image_format(enum pipe_format format) { switch (format) { + case PIPE_FORMAT_A8_UNORM: + case PIPE_FORMAT_L8_UNORM: + case PIPE_FORMAT_I8_UNORM: - return NV04_GDI_RECTANGLE_TEXT_COLOR_FORMAT_A8R8G8B8; + return NV04_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_Y8; case PIPE_FORMAT_A1R5G5B5_UNORM: return NV04_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_A1R5G5B5; case PIPE_FORMAT_A8R8G8B8_UNORM: