diff options
Diffstat (limited to 'src/mesa')
-rw-r--r-- | src/mesa/drivers/dri/common/depthtmp.h | 1 | ||||
-rw-r--r-- | src/mesa/drivers/dri/common/spantmp2.h | 41 | ||||
-rw-r--r-- | src/mesa/drivers/dri/common/stenciltmp.h | 1 | ||||
-rw-r--r-- | src/mesa/drivers/dri/swrast/swrast_span.c | 8 | ||||
-rw-r--r-- | src/mesa/drivers/dri/swrast/swrast_spantemp.h | 41 | ||||
-rw-r--r-- | src/mesa/drivers/osmesa/osmesa.c | 16 | ||||
-rw-r--r-- | src/mesa/drivers/windows/gdi/wmesa.c | 123 | ||||
-rw-r--r-- | src/mesa/drivers/x11/xm_span.c | 601 | ||||
-rw-r--r-- | src/mesa/main/mtypes.h | 9 | ||||
-rw-r--r-- | src/mesa/main/renderbuffer.c | 1 | ||||
-rw-r--r-- | src/mesa/swrast/s_depthstencil.c | 3 | ||||
-rw-r--r-- | src/mesa/swrast/s_renderbuffer.c | 84 | ||||
-rw-r--r-- | src/mesa/swrast/s_spantemp.h | 26 | ||||
-rw-r--r-- | src/mesa/swrast/s_texrender.c | 62 |
14 files changed, 0 insertions, 1017 deletions
diff --git a/src/mesa/drivers/dri/common/depthtmp.h b/src/mesa/drivers/dri/common/depthtmp.h index 31ebc68ee82..d8f259f6789 100644 --- a/src/mesa/drivers/dri/common/depthtmp.h +++ b/src/mesa/drivers/dri/common/depthtmp.h @@ -201,7 +201,6 @@ static void TAG(InitDepthPointers)(struct gl_renderbuffer *rb) rb->GetRow = TAG(ReadDepthSpan); rb->GetValues = TAG(ReadDepthPixels); rb->PutRow = TAG(WriteDepthSpan); - rb->PutRowRGB = NULL; rb->PutValues = TAG(WriteDepthPixels); } diff --git a/src/mesa/drivers/dri/common/spantmp2.h b/src/mesa/drivers/dri/common/spantmp2.h index 6030ca18a7e..744dfcd3bee 100644 --- a/src/mesa/drivers/dri/common/spantmp2.h +++ b/src/mesa/drivers/dri/common/spantmp2.h @@ -475,46 +475,6 @@ static void TAG(WriteRGBASpan)( struct gl_context *ctx, HW_WRITE_UNLOCK(); } -static void TAG(WriteRGBSpan)( struct gl_context *ctx, - struct gl_renderbuffer *rb, - GLuint n, GLint x, GLint y, - const void *values, const GLubyte mask[] ) -{ - (void) ctx; - - HW_WRITE_LOCK() - { - const GLubyte (*rgb)[3] = (const GLubyte (*)[3]) values; - GLint x1; - GLint n1; - LOCAL_VARS; - - y = Y_FLIP(y); - - HW_WRITE_CLIPLOOP() - { - GLint i = 0; - CLIPSPAN(x,y,n,x1,n1,i); - - if (DBG) fprintf(stderr, "WriteRGBSpan %d..%d (x1 %d)\n", - (int)i, (int)n1, (int)x1); - - if (mask) - { - for (;n1>0;i++,x1++,n1--) - if (mask[i]) - WRITE_RGBA( x1, y, rgb[i][0], rgb[i][1], rgb[i][2], 255 ); - } - else - { - for (;n1>0;i++,x1++,n1--) - WRITE_RGBA( x1, y, rgb[i][0], rgb[i][1], rgb[i][2], 255 ); - } - } - HW_ENDCLIPLOOP(); - } - HW_WRITE_UNLOCK(); -} static void TAG(WriteRGBAPixels)( struct gl_context *ctx, struct gl_renderbuffer *rb, @@ -763,7 +723,6 @@ static void TAG(ReadRGBAPixels)( struct gl_context *ctx, static void TAG(InitPointers)(struct gl_renderbuffer *rb) { rb->PutRow = TAG(WriteRGBASpan); - rb->PutRowRGB = TAG(WriteRGBSpan); rb->PutValues = TAG(WriteRGBAPixels); rb->GetValues = TAG(ReadRGBAPixels); diff --git a/src/mesa/drivers/dri/common/stenciltmp.h b/src/mesa/drivers/dri/common/stenciltmp.h index e4e39c73034..950d3c4df49 100644 --- a/src/mesa/drivers/dri/common/stenciltmp.h +++ b/src/mesa/drivers/dri/common/stenciltmp.h @@ -177,7 +177,6 @@ static void TAG(InitStencilPointers)(struct gl_renderbuffer *rb) rb->GetRow = TAG(ReadStencilSpan); rb->GetValues = TAG(ReadStencilPixels); rb->PutRow = TAG(WriteStencilSpan); - rb->PutRowRGB = NULL; rb->PutValues = TAG(WriteStencilPixels); } diff --git a/src/mesa/drivers/dri/swrast/swrast_span.c b/src/mesa/drivers/dri/swrast/swrast_span.c index 35993fa36db..ba6174f9d78 100644 --- a/src/mesa/drivers/dri/swrast/swrast_span.c +++ b/src/mesa/drivers/dri/swrast/swrast_span.c @@ -276,28 +276,24 @@ swrast_set_span_funcs_back(struct swrast_renderbuffer *xrb, xrb->Base.GetRow = get_row_A8R8G8B8; xrb->Base.GetValues = get_values_A8R8G8B8; xrb->Base.PutRow = put_row_A8R8G8B8; - xrb->Base.PutRowRGB = put_row_rgb_A8R8G8B8; xrb->Base.PutValues = put_values_A8R8G8B8; break; case PF_X8R8G8B8: xrb->Base.GetRow = get_row_X8R8G8B8; xrb->Base.GetValues = get_values_X8R8G8B8; xrb->Base.PutRow = put_row_X8R8G8B8; - xrb->Base.PutRowRGB = put_row_rgb_X8R8G8B8; xrb->Base.PutValues = put_values_X8R8G8B8; break; case PF_R5G6B5: xrb->Base.GetRow = get_row_R5G6B5; xrb->Base.GetValues = get_values_R5G6B5; xrb->Base.PutRow = put_row_R5G6B5; - xrb->Base.PutRowRGB = put_row_rgb_R5G6B5; xrb->Base.PutValues = put_values_R5G6B5; break; case PF_R3G3B2: xrb->Base.GetRow = get_row_R3G3B2; xrb->Base.GetValues = get_values_R3G3B2; xrb->Base.PutRow = put_row_R3G3B2; - xrb->Base.PutRowRGB = put_row_rgb_R3G3B2; xrb->Base.PutValues = put_values_R3G3B2; break; default: @@ -324,28 +320,24 @@ swrast_set_span_funcs_front(struct swrast_renderbuffer *xrb, xrb->Base.GetRow = get_row_A8R8G8B8_front; xrb->Base.GetValues = get_values_A8R8G8B8_front; xrb->Base.PutRow = put_row_A8R8G8B8_front; - xrb->Base.PutRowRGB = put_row_rgb_A8R8G8B8_front; xrb->Base.PutValues = put_values_A8R8G8B8_front; break; case PF_X8R8G8B8: xrb->Base.GetRow = get_row_X8R8G8B8_front; xrb->Base.GetValues = get_values_X8R8G8B8_front; xrb->Base.PutRow = put_row_X8R8G8B8_front; - xrb->Base.PutRowRGB = put_row_rgb_X8R8G8B8_front; xrb->Base.PutValues = put_values_X8R8G8B8_front; break; case PF_R5G6B5: xrb->Base.GetRow = get_row_R5G6B5_front; xrb->Base.GetValues = get_values_R5G6B5_front; xrb->Base.PutRow = put_row_R5G6B5_front; - xrb->Base.PutRowRGB = put_row_rgb_R5G6B5_front; xrb->Base.PutValues = put_values_R5G6B5_front; break; case PF_R3G3B2: xrb->Base.GetRow = get_row_R3G3B2_front; xrb->Base.GetValues = get_values_R3G3B2_front; xrb->Base.PutRow = put_row_R3G3B2_front; - xrb->Base.PutRowRGB = put_row_rgb_R3G3B2_front; xrb->Base.PutValues = put_values_R3G3B2_front; break; default: diff --git a/src/mesa/drivers/dri/swrast/swrast_spantemp.h b/src/mesa/drivers/dri/swrast/swrast_spantemp.h index 892a771b7f6..50671193e21 100644 --- a/src/mesa/drivers/dri/swrast/swrast_spantemp.h +++ b/src/mesa/drivers/dri/swrast/swrast_spantemp.h @@ -188,47 +188,6 @@ NAME(put_row)( struct gl_context *ctx, struct gl_renderbuffer *rb, static void -NAME(put_row_rgb)( struct gl_context *ctx, struct gl_renderbuffer *rb, - GLuint count, GLint x, GLint y, - const void *values, const GLubyte mask[] ) -{ -#ifdef SPAN_VARS - SPAN_VARS -#endif - const RB_TYPE (*src)[3] = (const RB_TYPE (*)[3]) values; - GLuint i; - if (mask) { - for (i = 0; i < count; i++) { - if (mask[i]) { - RB_TYPE row[4]; - INIT_PIXEL_PTR(pixel, x, y); -#ifdef STORE_PIXEL_RGB - STORE_PIXEL_RGB(pixel, x + i, y, src[i]); -#else - STORE_PIXEL(pixel, x + i, y, src[i]); -#endif - PUT_PIXEL(ctx, x + i, YFLIP(xrb, y), pixel); - } - } - } - else { - char *row = swrast_drawable(ctx->DrawBuffer)->row; - INIT_PIXEL_PTR(pixel, x, y); - for (i = 0; i < count; i++) { -#ifdef STORE_PIXEL_RGB - STORE_PIXEL_RGB(pixel, x + i, y, src[i]); -#else - STORE_PIXEL(pixel, x + i, y, src[i]); -#endif - INC_PIXEL_PTR(pixel); - } - PUT_ROW( ctx, x, YFLIP(xrb, y), count, row ); - } - (void) rb; -} - - -static void NAME(put_values)( struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, const GLint x[], const GLint y[], const void *values, const GLubyte mask[] ) diff --git a/src/mesa/drivers/osmesa/osmesa.c b/src/mesa/drivers/osmesa/osmesa.c index 988d447ace2..acfe6295667 100644 --- a/src/mesa/drivers/osmesa/osmesa.c +++ b/src/mesa/drivers/osmesa/osmesa.c @@ -805,21 +805,18 @@ osmesa_renderbuffer_storage(struct gl_context *ctx, struct gl_renderbuffer *rb, rb->GetRow = get_row_RGBA8; rb->GetValues = get_values_RGBA8; rb->PutRow = put_row_RGBA8; - rb->PutRowRGB = put_row_rgb_RGBA8; rb->PutValues = put_values_RGBA8; } else if (rb->DataType == GL_UNSIGNED_SHORT) { rb->GetRow = get_row_RGBA16; rb->GetValues = get_values_RGBA16; rb->PutRow = put_row_RGBA16; - rb->PutRowRGB = put_row_rgb_RGBA16; rb->PutValues = put_values_RGBA16; } else { rb->GetRow = get_row_RGBA32; rb->GetValues = get_values_RGBA32; rb->PutRow = put_row_RGBA32; - rb->PutRowRGB = put_row_rgb_RGBA32; rb->PutValues = put_values_RGBA32; } } @@ -828,21 +825,18 @@ osmesa_renderbuffer_storage(struct gl_context *ctx, struct gl_renderbuffer *rb, rb->GetRow = get_row_BGRA8; rb->GetValues = get_values_BGRA8; rb->PutRow = put_row_BGRA8; - rb->PutRowRGB = put_row_rgb_BGRA8; rb->PutValues = put_values_BGRA8; } else if (rb->DataType == GL_UNSIGNED_SHORT) { rb->GetRow = get_row_BGRA16; rb->GetValues = get_values_BGRA16; rb->PutRow = put_row_BGRA16; - rb->PutRowRGB = put_row_rgb_BGRA16; rb->PutValues = put_values_BGRA16; } else { rb->GetRow = get_row_BGRA32; rb->GetValues = get_values_BGRA32; rb->PutRow = put_row_BGRA32; - rb->PutRowRGB = put_row_rgb_BGRA32; rb->PutValues = put_values_BGRA32; } } @@ -851,21 +845,18 @@ osmesa_renderbuffer_storage(struct gl_context *ctx, struct gl_renderbuffer *rb, rb->GetRow = get_row_ARGB8; rb->GetValues = get_values_ARGB8; rb->PutRow = put_row_ARGB8; - rb->PutRowRGB = put_row_rgb_ARGB8; rb->PutValues = put_values_ARGB8; } else if (rb->DataType == GL_UNSIGNED_SHORT) { rb->GetRow = get_row_ARGB16; rb->GetValues = get_values_ARGB16; rb->PutRow = put_row_ARGB16; - rb->PutRowRGB = put_row_rgb_ARGB16; rb->PutValues = put_values_ARGB16; } else { rb->GetRow = get_row_ARGB32; rb->GetValues = get_values_ARGB32; rb->PutRow = put_row_ARGB32; - rb->PutRowRGB = put_row_rgb_ARGB32; rb->PutValues = put_values_ARGB32; } } @@ -874,21 +865,18 @@ osmesa_renderbuffer_storage(struct gl_context *ctx, struct gl_renderbuffer *rb, rb->GetRow = get_row_RGB8; rb->GetValues = get_values_RGB8; rb->PutRow = put_row_RGB8; - rb->PutRowRGB = put_row_rgb_RGB8; rb->PutValues = put_values_RGB8; } else if (rb->DataType == GL_UNSIGNED_SHORT) { rb->GetRow = get_row_RGB16; rb->GetValues = get_values_RGB16; rb->PutRow = put_row_RGB16; - rb->PutRowRGB = put_row_rgb_RGB16; rb->PutValues = put_values_RGB16; } else { rb->GetRow = get_row_RGB32; rb->GetValues = get_values_RGB32; rb->PutRow = put_row_RGB32; - rb->PutRowRGB = put_row_rgb_RGB32; rb->PutValues = put_values_RGB32; } } @@ -897,21 +885,18 @@ osmesa_renderbuffer_storage(struct gl_context *ctx, struct gl_renderbuffer *rb, rb->GetRow = get_row_BGR8; rb->GetValues = get_values_BGR8; rb->PutRow = put_row_BGR8; - rb->PutRowRGB = put_row_rgb_BGR8; rb->PutValues = put_values_BGR8; } else if (rb->DataType == GL_UNSIGNED_SHORT) { rb->GetRow = get_row_BGR16; rb->GetValues = get_values_BGR16; rb->PutRow = put_row_BGR16; - rb->PutRowRGB = put_row_rgb_BGR16; rb->PutValues = put_values_BGR16; } else { rb->GetRow = get_row_BGR32; rb->GetValues = get_values_BGR32; rb->PutRow = put_row_BGR32; - rb->PutRowRGB = put_row_rgb_BGR32; rb->PutValues = put_values_BGR32; } } @@ -920,7 +905,6 @@ osmesa_renderbuffer_storage(struct gl_context *ctx, struct gl_renderbuffer *rb, rb->GetRow = get_row_RGB_565; rb->GetValues = get_values_RGB_565; rb->PutRow = put_row_RGB_565; - rb->PutRowRGB = put_row_rgb_RGB_565; rb->PutValues = put_values_RGB_565; } else { diff --git a/src/mesa/drivers/windows/gdi/wmesa.c b/src/mesa/drivers/windows/gdi/wmesa.c index 427d2722215..255d811ca70 100644 --- a/src/mesa/drivers/windows/gdi/wmesa.c +++ b/src/mesa/drivers/windows/gdi/wmesa.c @@ -526,33 +526,6 @@ static void write_rgba_span_front(struct gl_context *ctx, } } -/* Write a horizontal span of RGB color pixels with a boolean mask. */ -static void write_rgb_span_front(struct gl_context *ctx, - struct gl_renderbuffer *rb, - GLuint n, GLint x, GLint y, - const void *values, - const GLubyte *mask) -{ - const GLubyte (*rgb)[3] = (const GLubyte (*)[3])values; - WMesaContext pwc = wmesa_context(ctx); - GLuint i; - - (void) ctx; - y=FLIP(y); - if (mask) { - for (i=0; i<n; i++) - if (mask[i]) - SetPixel(pwc->hDC, x+i, y, RGB(rgb[i][RCOMP], rgb[i][GCOMP], - rgb[i][BCOMP])); - } - else { - for (i=0; i<n; i++) - SetPixel(pwc->hDC, x+i, y, RGB(rgb[i][RCOMP], rgb[i][GCOMP], - rgb[i][BCOMP])); - } - -} - /* Write an array of RGBA pixels with a boolean mask. */ static void write_rgba_pixels_front(struct gl_context *ctx, @@ -656,35 +629,6 @@ static void write_rgba_span_32(struct gl_context *ctx, } -/* Write a horizontal span of RGB color pixels with a boolean mask. */ -static void write_rgb_span_32(struct gl_context *ctx, - struct gl_renderbuffer *rb, - GLuint n, GLint x, GLint y, - const void *values, - const GLubyte *mask) -{ - const GLubyte (*rgb)[3] = (const GLubyte (*)[3])values; - WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); - GLuint i; - LPDWORD lpdw; - - (void) ctx; - - y=FLIP(y); - lpdw = ((LPDWORD)(pwfb->pbPixels + pwfb->ScanWidth * y)) + x; - if (mask) { - for (i=0; i<n; i++) - if (mask[i]) - lpdw[i] = BGR32(rgb[i][RCOMP], rgb[i][GCOMP], - rgb[i][BCOMP]); - } - else { - for (i=0; i<n; i++) - *lpdw++ = BGR32(rgb[i][RCOMP], rgb[i][GCOMP], - rgb[i][BCOMP]); - } -} - /* Write an array of RGBA pixels with a boolean mask. */ static void write_rgba_pixels_32(struct gl_context *ctx, struct gl_renderbuffer *rb, @@ -794,40 +738,6 @@ static void write_rgba_span_24(struct gl_context *ctx, } -/* Write a horizontal span of RGB color pixels with a boolean mask. */ -static void write_rgb_span_24(struct gl_context *ctx, - struct gl_renderbuffer *rb, - GLuint n, GLint x, GLint y, - const void *values, - const GLubyte *mask) -{ - const GLubyte (*rgb)[3] = (const GLubyte (*)[3])values; - WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); - GLuint i; - LPBYTE lpb; - - (void) ctx; - - y=FLIP(y); - lpb = ((LPBYTE)(pwfb->pbPixels + pwfb->ScanWidth * y)) + (3 * x); - if (mask) { - for (i=0; i<n; i++) - if (mask[i]) { - lpb[3*i] = rgb[i][BCOMP]; - lpb[3*i+1] = rgb[i][GCOMP]; - lpb[3*i+2] = rgb[i][RCOMP]; - } - } - else { - for (i=0; i<n; i++) { - *lpb++ = rgb[i][BCOMP]; - *lpb++ = rgb[i][GCOMP]; - *lpb++ = rgb[i][RCOMP]; - } - } -} - - /* Write an array of RGBA pixels with a boolean mask. */ static void write_rgba_pixels_24(struct gl_context *ctx, struct gl_renderbuffer *rb, @@ -929,35 +839,6 @@ static void write_rgba_span_16(struct gl_context *ctx, } -/* Write a horizontal span of RGB color pixels with a boolean mask. */ -static void write_rgb_span_16(struct gl_context *ctx, - struct gl_renderbuffer *rb, - GLuint n, GLint x, GLint y, - const void *values, - const GLubyte *mask) -{ - const GLubyte (*rgb)[3] = (const GLubyte (*)[3])values; - WMesaFramebuffer pwfb = wmesa_framebuffer(ctx->DrawBuffer); - GLuint i; - LPWORD lpw; - - (void) ctx; - - y=FLIP(y); - lpw = ((LPWORD)(pwfb->pbPixels + pwfb->ScanWidth * y)) + x; - if (mask) { - for (i=0; i<n; i++) - if (mask[i]) - lpw[i] = BGR16(rgb[i][RCOMP], rgb[i][GCOMP], - rgb[i][BCOMP]); - } - else { - for (i=0; i<n; i++) - *lpw++ = BGR16(rgb[i][RCOMP], rgb[i][GCOMP], - rgb[i][BCOMP]); - } -} - /* Write an array of RGBA pixels with a boolean mask. */ static void write_rgba_pixels_16(struct gl_context *ctx, @@ -1073,7 +954,6 @@ wmesa_set_renderbuffer_funcs(struct gl_renderbuffer *rb, int pixelformat, switch(pixelformat) { case PF_5R6G5B: rb->PutRow = write_rgba_span_16; - rb->PutRowRGB = write_rgb_span_16; rb->PutValues = write_rgba_pixels_16; rb->GetRow = read_rgba_span_16; rb->GetValues = read_rgba_pixels_16; @@ -1082,7 +962,6 @@ wmesa_set_renderbuffer_funcs(struct gl_renderbuffer *rb, int pixelformat, if (cColorBits == 24) { rb->PutRow = write_rgba_span_24; - rb->PutRowRGB = write_rgb_span_24; rb->PutValues = write_rgba_pixels_24; rb->GetRow = read_rgba_span_24; rb->GetValues = read_rgba_pixels_24; @@ -1090,7 +969,6 @@ wmesa_set_renderbuffer_funcs(struct gl_renderbuffer *rb, int pixelformat, else { rb->PutRow = write_rgba_span_32; - rb->PutRowRGB = write_rgb_span_32; rb->PutValues = write_rgba_pixels_32; rb->GetRow = read_rgba_span_32; rb->GetValues = read_rgba_pixels_32; @@ -1103,7 +981,6 @@ wmesa_set_renderbuffer_funcs(struct gl_renderbuffer *rb, int pixelformat, else { /* front buffer (actual Windows window) */ rb->PutRow = write_rgba_span_front; - rb->PutRowRGB = write_rgb_span_front; rb->PutValues = write_rgba_pixels_front; rb->GetRow = read_rgba_span_front; rb->GetValues = read_rgba_pixels_front; diff --git a/src/mesa/drivers/x11/xm_span.c b/src/mesa/drivers/x11/xm_span.c index 6a066485851..37e88154f49 100644 --- a/src/mesa/drivers/x11/xm_span.c +++ b/src/mesa/drivers/x11/xm_span.c @@ -206,41 +206,6 @@ static void put_row_TRUECOLOR_pixmap( PUT_ROW_ARGS ) /* - * Write a span of PF_TRUECOLOR pixels to a pixmap. - */ -static void put_row_rgb_TRUECOLOR_pixmap( RGB_SPAN_ARGS ) -{ - const GLubyte (*rgb)[3] = (const GLubyte (*)[3]) values; - const XMesaContext xmesa = XMESA_CONTEXT(ctx); - GET_XRB(xrb); - XMesaDisplay *dpy = xmesa->xm_visual->display; - XMesaDrawable buffer = xrb->drawable; - XMesaGC gc = XMESA_BUFFER(ctx->DrawBuffer)->gc; - register GLuint i; - y = YFLIP(xrb, y); - if (mask) { - for (i=0;i<n;i++,x++) { - if (mask[i]) { - unsigned long p; - PACK_TRUECOLOR( p, rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP] ); - XMesaSetForeground( dpy, gc, p ); - XMesaDrawPoint( dpy, buffer, gc, (int) x, (int) y ); - } - } - } - else { - /* draw all pixels */ - XMesaImage *rowimg = XMESA_BUFFER(ctx->DrawBuffer)->rowimage; - for (i=0;i<n;i++) { - unsigned long p; - PACK_TRUECOLOR( p, rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP] ); - XMesaPutPixel( rowimg, i, 0, p ); - } - XMesaPutImage( dpy, buffer, gc, rowimg, 0, 0, x, y, n, 1 ); - } -} - -/* * Write a span of PF_TRUEDITHER pixels to a pixmap. */ static void put_row_TRUEDITHER_pixmap( PUT_ROW_ARGS ) @@ -276,41 +241,6 @@ static void put_row_TRUEDITHER_pixmap( PUT_ROW_ARGS ) /* - * Write a span of PF_TRUEDITHER pixels to a pixmap (no alpha). - */ -static void put_row_rgb_TRUEDITHER_pixmap( RGB_SPAN_ARGS ) -{ - const GLubyte (*rgb)[3] = (const GLubyte (*)[3]) values; - const XMesaContext xmesa = XMESA_CONTEXT(ctx); - GET_XRB(xrb); - XMesaDisplay *dpy = xmesa->xm_visual->display; - XMesaDrawable buffer = xrb->drawable; - XMesaGC gc = XMESA_BUFFER(ctx->DrawBuffer)->gc; - register GLuint i; - y = YFLIP(xrb, y); - if (mask) { - for (i=0;i<n;i++,x++) { - if (mask[i]) { - unsigned long p; - PACK_TRUEDITHER(p, x, y, rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP]); - XMesaSetForeground( dpy, gc, p ); - XMesaDrawPoint( dpy, buffer, gc, (int) x, (int) y ); - } - } - } - else { - XMesaImage *rowimg = XMESA_BUFFER(ctx->DrawBuffer)->rowimage; - for (i=0;i<n;i++) { - unsigned long p; - PACK_TRUEDITHER(p, x+i, y, rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP]); - XMesaPutPixel( rowimg, i, 0, p ); - } - XMesaPutImage( dpy, buffer, gc, rowimg, 0, 0, x, y, n, 1 ); - } -} - - -/* * Write a span of PF_8A8B8G8R pixels to a pixmap. */ static void put_row_8A8B8G8R_pixmap( PUT_ROW_ARGS ) @@ -345,39 +275,6 @@ static void put_row_8A8B8G8R_pixmap( PUT_ROW_ARGS ) /* - * Write a span of PF_8A8B8G8R pixels to a pixmap (no alpha). - */ -static void put_row_rgb_8A8B8G8R_pixmap( RGB_SPAN_ARGS ) -{ - const GLubyte (*rgb)[3] = (const GLubyte (*)[3]) values; - const XMesaContext xmesa = XMESA_CONTEXT(ctx); - GET_XRB(xrb); - XMesaDisplay *dpy = xmesa->xm_visual->display; - XMesaDrawable buffer = xrb->drawable; - XMesaGC gc = XMESA_BUFFER(ctx->DrawBuffer)->gc; - register GLuint i; - y = YFLIP(xrb, y); - if (mask) { - for (i=0;i<n;i++,x++) { - if (mask[i]) { - XMesaSetForeground( dpy, gc, - PACK_8B8G8R(rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP]) ); - XMesaDrawPoint( dpy, buffer, gc, (int) x, (int) y ); - } - } - } - else { - /* draw all pixels */ - XMesaImage *rowimg = XMESA_BUFFER(ctx->DrawBuffer)->rowimage; - register GLuint *ptr4 = (GLuint *) rowimg->data; - for (i=0;i<n;i++) { - *ptr4++ = PACK_8B8G8R(rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP]); - } - XMesaPutImage( dpy, buffer, gc, rowimg, 0, 0, x, y, n, 1 ); - } -} - -/* * Write a span of PF_8A8R8G8B pixels to a pixmap. */ static void put_row_8A8R8G8B_pixmap( PUT_ROW_ARGS ) @@ -411,38 +308,6 @@ static void put_row_8A8R8G8B_pixmap( PUT_ROW_ARGS ) } -/* - * Write a span of PF_8A8R8G8B pixels to a pixmap (no alpha). - */ -static void put_row_rgb_8A8R8G8B_pixmap( RGB_SPAN_ARGS ) -{ - const GLubyte (*rgb)[3] = (const GLubyte (*)[3]) values; - const XMesaContext xmesa = XMESA_CONTEXT(ctx); - GET_XRB(xrb); - XMesaDisplay *dpy = xmesa->xm_visual->display; - XMesaDrawable buffer = xrb->drawable; - XMesaGC gc = XMESA_BUFFER(ctx->DrawBuffer)->gc; - register GLuint i; - y = YFLIP(xrb, y); - if (mask) { - for (i=0;i<n;i++,x++) { - if (mask[i]) { - XMesaSetForeground( dpy, gc, - PACK_8R8G8B(rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP]) ); - XMesaDrawPoint( dpy, buffer, gc, (int) x, (int) y ); - } - } - } - else { - /* draw all pixels */ - XMesaImage *rowimg = XMESA_BUFFER(ctx->DrawBuffer)->rowimage; - register GLuint *ptr4 = (GLuint *) rowimg->data; - for (i=0;i<n;i++) { - *ptr4++ = PACK_8R8G8B(rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP]); - } - XMesaPutImage( dpy, buffer, gc, rowimg, 0, 0, x, y, n, 1 ); - } -} /* * Write a span of PF_8R8G8B pixels to a pixmap. @@ -591,138 +456,6 @@ static void put_row_8R8G8B24_pixmap( PUT_ROW_ARGS ) } -/* - * Write a span of PF_8R8G8B pixels to a pixmap (no alpha). - */ -static void put_row_rgb_8R8G8B_pixmap( RGB_SPAN_ARGS ) -{ - const GLubyte (*rgb)[3] = (const GLubyte (*)[3]) values; - const XMesaContext xmesa = XMESA_CONTEXT(ctx); - GET_XRB(xrb); - XMesaDisplay *dpy = xmesa->xm_visual->display; - XMesaDrawable buffer = xrb->drawable; - XMesaGC gc = XMESA_BUFFER(ctx->DrawBuffer)->gc; - register GLuint i; - y = YFLIP(xrb, y); - if (mask) { - for (i=0;i<n;i++,x++) { - if (mask[i]) { - XMesaSetForeground( dpy, gc, PACK_8R8G8B( rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP] )); - XMesaDrawPoint( dpy, buffer, gc, (int) x, (int) y ); - } - } - } - else { - /* draw all pixels */ - XMesaImage *rowimg = XMESA_BUFFER(ctx->DrawBuffer)->rowimage; - register GLuint *ptr4 = (GLuint *) rowimg->data; - for (i=0;i<n;i++) { - *ptr4++ = PACK_8R8G8B( rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP] ); - } - XMesaPutImage( dpy, buffer, gc, rowimg, 0, 0, x, y, n, 1 ); - } -} - -/* - * Write a span of PF_8R8G8B24 pixels to a pixmap (no alpha). - */ -static void put_row_rgb_8R8G8B24_pixmap( RGB_SPAN_ARGS ) -{ - const GLubyte (*rgb)[3] = (const GLubyte (*)[3]) values; - const XMesaContext xmesa = XMESA_CONTEXT(ctx); - GET_XRB(xrb); - XMesaDisplay *dpy = xmesa->xm_visual->display; - XMesaDrawable buffer = xrb->drawable; - XMesaGC gc = XMESA_BUFFER(ctx->DrawBuffer)->gc; - y = YFLIP(xrb, y); - if (mask) { - register GLuint i; - for (i=0;i<n;i++,x++) { - if (mask[i]) { - XMesaSetForeground( dpy, gc, - PACK_8R8G8B( rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP] )); - XMesaDrawPoint( dpy, buffer, gc, (int) x, (int) y ); - } - } - } - else { - /* draw all pixels */ - XMesaImage *rowimg = XMESA_BUFFER(ctx->DrawBuffer)->rowimage; - register GLuint *ptr4 = (GLuint *) rowimg->data; - register GLuint pixel; - static const GLuint shift[4] = {0, 8, 16, 24}; - unsigned w = n; - register GLuint i = 0; - while (w > 3) { - pixel = 0; - pixel |= rgb[i][BCOMP]/* << shift[0]*/; - pixel |= rgb[i][GCOMP] << shift[1]; - pixel |= rgb[i++][RCOMP] << shift[2]; - pixel |= rgb[i][BCOMP] <<shift[3]; - *ptr4++ = pixel; - - pixel = 0; - pixel |= rgb[i][GCOMP]/* << shift[0]*/; - pixel |= rgb[i++][RCOMP] << shift[1]; - pixel |= rgb[i][BCOMP] << shift[2]; - pixel |= rgb[i][GCOMP] << shift[3]; - *ptr4++ = pixel; - - pixel = 0; - pixel |= rgb[i++][RCOMP]/* << shift[0]*/; - pixel |= rgb[i][BCOMP] << shift[1]; - pixel |= rgb[i][GCOMP] << shift[2]; - pixel |= rgb[i++][RCOMP] << shift[3]; - *ptr4++ = pixel; - w -= 4; - } - switch (w) { - case 3: - pixel = 0; - pixel |= rgb[i][BCOMP]/* << shift[0]*/; - pixel |= rgb[i][GCOMP] << shift[1]; - pixel |= rgb[i++][RCOMP] << shift[2]; - pixel |= rgb[i][BCOMP] << shift[3]; - *ptr4++ = pixel; - pixel = 0; - pixel |= rgb[i][GCOMP]/* << shift[0]*/; - pixel |= rgb[i++][RCOMP] << shift[1]; - pixel |= rgb[i][BCOMP] << shift[2]; - pixel |= rgb[i][GCOMP] << shift[3]; - *ptr4++ = pixel; - pixel = *ptr4; - pixel &= 0xffffff00; - pixel |= rgb[i++][RCOMP]/* << shift[0]*/; - *ptr4++ = pixel; - break; - case 2: - pixel = 0; - pixel |= rgb[i][BCOMP]/* << shift[0]*/; - pixel |= rgb[i][GCOMP] << shift[1]; - pixel |= rgb[i++][RCOMP] << shift[2]; - pixel |= rgb[i][BCOMP] << shift[3]; - *ptr4++ = pixel; - pixel = *ptr4; - pixel &= 0xffff0000; - pixel |= rgb[i][GCOMP]/* << shift[0]*/; - pixel |= rgb[i++][RCOMP] << shift[1]; - *ptr4++ = pixel; - break; - case 1: - pixel = *ptr4; - pixel &= 0xff000000; - pixel |= rgb[i][BCOMP]/* << shift[0]*/; - pixel |= rgb[i][GCOMP] << shift[1]; - pixel |= rgb[i++][RCOMP] << shift[2]; - *ptr4++ = pixel; - break; - case 0: - break; - } - XMesaPutImage( dpy, buffer, gc, rowimg, 0, 0, x, y, n, 1 ); - } -} - /* * Write a span of PF_5R6G5B pixels to a pixmap. @@ -793,74 +526,6 @@ static void put_row_DITHER_5R6G5B_pixmap( PUT_ROW_ARGS ) /* - * Write a span of PF_5R6G5B pixels to a pixmap (no alpha). - */ -static void put_row_rgb_5R6G5B_pixmap( RGB_SPAN_ARGS ) -{ - const GLubyte (*rgb)[3] = (const GLubyte (*)[3]) values; - const XMesaContext xmesa = XMESA_CONTEXT(ctx); - GET_XRB(xrb); - XMesaDisplay *dpy = xmesa->xm_visual->display; - XMesaDrawable buffer = xrb->drawable; - XMesaGC gc = XMESA_BUFFER(ctx->DrawBuffer)->gc; - register GLuint i; - y = YFLIP(xrb, y); - if (mask) { - for (i=0;i<n;i++,x++) { - if (mask[i]) { - XMesaSetForeground( dpy, gc, PACK_5R6G5B( rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP] )); - XMesaDrawPoint( dpy, buffer, gc, (int) x, (int) y ); - } - } - } - else { - /* draw all pixels */ - XMesaImage *rowimg = XMESA_BUFFER(ctx->DrawBuffer)->rowimage; - register GLushort *ptr2 = (GLushort *) rowimg->data; - for (i=0;i<n;i++) { - ptr2[i] = PACK_5R6G5B( rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP] ); - } - XMesaPutImage( dpy, buffer, gc, rowimg, 0, 0, x, y, n, 1 ); - } -} - - -/* - * Write a span of PF_DITHER_5R6G5B pixels to a pixmap (no alpha). - */ -static void put_row_rgb_DITHER_5R6G5B_pixmap( RGB_SPAN_ARGS ) -{ - const GLubyte (*rgb)[3] = (const GLubyte (*)[3]) values; - const XMesaContext xmesa = XMESA_CONTEXT(ctx); - GET_XRB(xrb); - XMesaDisplay *dpy = xmesa->xm_visual->display; - XMesaDrawable buffer = xrb->drawable; - XMesaGC gc = XMESA_BUFFER(ctx->DrawBuffer)->gc; - register GLuint i; - y = YFLIP(xrb, y); - if (mask) { - for (i=0;i<n;i++,x++) { - if (mask[i]) { - unsigned long p; - PACK_TRUEDITHER(p, x, y, rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP]); - XMesaSetForeground( dpy, gc, p ); - XMesaDrawPoint( dpy, buffer, gc, (int) x, (int) y ); - } - } - } - else { - /* draw all pixels */ - XMesaImage *rowimg = XMESA_BUFFER(ctx->DrawBuffer)->rowimage; - register GLushort *ptr2 = (GLushort *) rowimg->data; - for (i=0;i<n;i++) { - PACK_TRUEDITHER( ptr2[i], x+i, y, rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP] ); - } - XMesaPutImage( dpy, buffer, gc, rowimg, 0, 0, x, y, n, 1 ); - } -} - - -/* * Write a span of PF_TRUECOLOR pixels to an XImage. */ static void put_row_TRUECOLOR_ximage( PUT_ROW_ARGS ) @@ -892,37 +557,6 @@ static void put_row_TRUECOLOR_ximage( PUT_ROW_ARGS ) /* - * Write a span of PF_TRUECOLOR pixels to an XImage (no alpha). - */ -static void put_row_rgb_TRUECOLOR_ximage( RGB_SPAN_ARGS ) -{ - const GLubyte (*rgb)[3] = (const GLubyte (*)[3]) values; - const XMesaContext xmesa = XMESA_CONTEXT(ctx); - GET_XRB(xrb); - XMesaImage *img = xrb->ximage; - register GLuint i; - y = YFLIP(xrb, y); - if (mask) { - for (i=0;i<n;i++,x++) { - if (mask[i]) { - unsigned long p; - PACK_TRUECOLOR( p, rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP] ); - XMesaPutPixel( img, x, y, p ); - } - } - } - else { - /* draw all pixels */ - for (i=0;i<n;i++,x++) { - unsigned long p; - PACK_TRUECOLOR( p, rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP] ); - XMesaPutPixel( img, x, y, p ); - } - } -} - - -/* * Write a span of PF_TRUEDITHER pixels to an XImage. */ static void put_row_TRUEDITHER_ximage( PUT_ROW_ARGS ) @@ -954,37 +588,6 @@ static void put_row_TRUEDITHER_ximage( PUT_ROW_ARGS ) /* - * Write a span of PF_TRUEDITHER pixels to an XImage (no alpha). - */ -static void put_row_rgb_TRUEDITHER_ximage( RGB_SPAN_ARGS ) -{ - const GLubyte (*rgb)[3] = (const GLubyte (*)[3]) values; - const XMesaContext xmesa = XMESA_CONTEXT(ctx); - GET_XRB(xrb); - XMesaImage *img = xrb->ximage; - register GLuint i; - y = YFLIP(xrb, y); - if (mask) { - for (i=0;i<n;i++,x++) { - if (mask[i]) { - unsigned long p; - PACK_TRUEDITHER(p, x, y, rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP]); - XMesaPutPixel( img, x, y, p ); - } - } - } - else { - /* draw all pixels */ - for (i=0;i<n;i++,x++) { - unsigned long p; - PACK_TRUEDITHER(p, x, y, rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP]); - XMesaPutPixel( img, x, y, p ); - } - } -} - - -/* * Write a span of PF_8A8B8G8R-format pixels to an ximage. */ static void put_row_8A8B8G8R_ximage( PUT_ROW_ARGS ) @@ -1011,30 +614,6 @@ static void put_row_8A8B8G8R_ximage( PUT_ROW_ARGS ) /* - * Write a span of PF_8A8B8G8R-format pixels to an ximage (no alpha). - */ -static void put_row_rgb_8A8B8G8R_ximage( RGB_SPAN_ARGS ) -{ - const GLubyte (*rgb)[3] = (const GLubyte (*)[3]) values; - GET_XRB(xrb); - register GLuint i; - register GLuint *ptr = PIXEL_ADDR4(xrb, x, y); - if (mask) { - for (i=0;i<n;i++) { - if (mask[i]) { - ptr[i] = PACK_8A8B8G8R( rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP], 255 ); - } - } - } - else { - /* draw all pixels */ - for (i=0;i<n;i++) { - ptr[i] = PACK_8A8B8G8R( rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP], 255 ); - } - } -} - -/* * Write a span of PF_8A8R8G8B-format pixels to an ximage. */ static void put_row_8A8R8G8B_ximage( PUT_ROW_ARGS ) @@ -1060,31 +639,6 @@ static void put_row_8A8R8G8B_ximage( PUT_ROW_ARGS ) /* - * Write a span of PF_8A8R8G8B-format pixels to an ximage (no alpha). - */ -static void put_row_rgb_8A8R8G8B_ximage( RGB_SPAN_ARGS ) -{ - const GLubyte (*rgb)[3] = (const GLubyte (*)[3]) values; - GET_XRB(xrb); - register GLuint i; - register GLuint *ptr = PIXEL_ADDR4(xrb, x, y); - if (mask) { - for (i=0;i<n;i++) { - if (mask[i]) { - ptr[i] = PACK_8A8R8G8B( rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP], 255 ); - } - } - } - else { - /* draw all pixels */ - for (i=0;i<n;i++) { - ptr[i] = PACK_8A8R8G8B( rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP], 255 ); - } - } -} - - -/* * Write a span of PF_8R8G8B-format pixels to an ximage. */ static void put_row_8R8G8B_ximage( PUT_ROW_ARGS ) @@ -1260,63 +814,6 @@ static void put_row_8R8G8B24_ximage( PUT_ROW_ARGS ) /* - * Write a span of PF_8R8G8B-format pixels to an ximage (no alpha). - */ -static void put_row_rgb_8R8G8B_ximage( RGB_SPAN_ARGS ) -{ - const GLubyte (*rgb)[3] = (const GLubyte (*)[3]) values; - GET_XRB(xrb); - register GLuint i; - register GLuint *ptr = PIXEL_ADDR4(xrb, x, y); - if (mask) { - for (i=0;i<n;i++) { - if (mask[i]) { - ptr[i] = PACK_8R8G8B(rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP]); - } - } - } - else { - /* draw all pixels */ - for (i=0;i<n;i++) { - ptr[i] = PACK_8R8G8B(rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP]); - } - } -} - - -/* - * Write a span of PF_8R8G8B24-format pixels to an ximage (no alpha). - */ -static void put_row_rgb_8R8G8B24_ximage( RGB_SPAN_ARGS ) -{ - const GLubyte (*rgb)[3] = (const GLubyte (*)[3]) values; - GET_XRB(xrb); - register GLuint i; - register GLubyte *ptr = (GLubyte *) PIXEL_ADDR3(xrb, x, y); - if (mask) { - for (i=0;i<n;i++) { - if (mask[i]) { - *ptr++ = rgb[i][BCOMP]; - *ptr++ = rgb[i][GCOMP]; - *ptr++ = rgb[i][RCOMP]; - } - else { - ptr += 3; - } - } - } - else { - /* draw all pixels */ - for (i=0;i<n;i++) { - *ptr++ = rgb[i][BCOMP]; - *ptr++ = rgb[i][GCOMP]; - *ptr++ = rgb[i][RCOMP]; - } - } -} - - -/* * Write a span of PF_5R6G5B-format pixels to an ximage. */ static void put_row_5R6G5B_ximage( PUT_ROW_ARGS ) @@ -1398,88 +895,6 @@ static void put_row_DITHER_5R6G5B_ximage( PUT_ROW_ARGS ) } -/* - * Write a span of PF_5R6G5B-format pixels to an ximage (no alpha). - */ -static void put_row_rgb_5R6G5B_ximage( RGB_SPAN_ARGS ) -{ - const GLubyte (*rgb)[3] = (const GLubyte (*)[3]) values; - GET_XRB(xrb); - register GLuint i; - register GLushort *ptr = PIXEL_ADDR2(xrb, x, y); - if (mask) { - for (i=0;i<n;i++) { - if (mask[i]) { - ptr[i] = PACK_5R6G5B( rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP] ); - } - } - } - else { - /* draw all pixels */ -#if defined(__i386__) /* word stores don't have to be on 4-byte boundaries */ - GLuint *ptr32 = (GLuint *) ptr; - GLuint extraPixel = (n & 1); - n -= extraPixel; - for (i = 0; i < n; i += 2) { - GLuint p0, p1; - p0 = PACK_5R6G5B(rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP]); - p1 = PACK_5R6G5B(rgb[i+1][RCOMP], rgb[i+1][GCOMP], rgb[i+1][BCOMP]); - *ptr32++ = (p1 << 16) | p0; - } - if (extraPixel) { - ptr[n] = PACK_5R6G5B(rgb[n][RCOMP], rgb[n][GCOMP], rgb[n][BCOMP]); - } -#else - for (i=0;i<n;i++) { - ptr[i] = PACK_5R6G5B( rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP] ); - } -#endif - } -} - - -/* - * Write a span of PF_DITHER_5R6G5B-format pixels to an ximage (no alpha). - */ -static void put_row_rgb_DITHER_5R6G5B_ximage( RGB_SPAN_ARGS ) -{ - const GLubyte (*rgb)[3] = (const GLubyte (*)[3]) values; - GET_XRB(xrb); - const XMesaContext xmesa = XMESA_CONTEXT(ctx); - register GLuint i; - register GLushort *ptr = PIXEL_ADDR2(xrb, x, y ); - if (mask) { - for (i=0;i<n;i++,x++) { - if (mask[i]) { - PACK_TRUEDITHER( ptr[i], x, y, rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP] ); - } - } - } - else { - /* draw all pixels */ -#if defined(__i386__) /* word stores don't have to be on 4-byte boundaries */ - GLuint *ptr32 = (GLuint *) ptr; - GLuint extraPixel = (n & 1); - n -= extraPixel; - for (i = 0; i < n; i += 2, x += 2) { - GLuint p0, p1; - PACK_TRUEDITHER( p0, x, y, rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP] ); - PACK_TRUEDITHER( p1, x+1, y, rgb[i+1][RCOMP], rgb[i+1][GCOMP], rgb[i+1][BCOMP] ); - *ptr32++ = (p1 << 16) | p0; - } - if (extraPixel) { - PACK_TRUEDITHER( ptr[n], x+n, y, rgb[n][RCOMP], rgb[n][GCOMP], rgb[n][BCOMP]); - } -#else - for (i=0;i<n;i++,x++) { - PACK_TRUEDITHER( ptr[i], x, y, rgb[i][RCOMP], rgb[i][GCOMP], rgb[i][BCOMP] ); - } -#endif - } -} - - - /**********************************************************************/ /*** Write COLOR PIXEL functions ***/ /**********************************************************************/ @@ -2305,96 +1720,80 @@ xmesa_set_renderbuffer_funcs(struct xmesa_renderbuffer *xrb, case PF_Truecolor: if (pixmap) { xrb->Base.PutRow = put_row_TRUECOLOR_pixmap; - xrb->Base.PutRowRGB = put_row_rgb_TRUECOLOR_pixmap; xrb->Base.PutValues = put_values_TRUECOLOR_pixmap; } else { xrb->Base.PutRow = put_row_TRUECOLOR_ximage; - xrb->Base.PutRowRGB = put_row_rgb_TRUECOLOR_ximage; xrb->Base.PutValues = put_values_TRUECOLOR_ximage; } break; case PF_Dither_True: if (pixmap) { xrb->Base.PutRow = put_row_TRUEDITHER_pixmap; - xrb->Base.PutRowRGB = put_row_rgb_TRUEDITHER_pixmap; xrb->Base.PutValues = put_values_TRUEDITHER_pixmap; } else { xrb->Base.PutRow = put_row_TRUEDITHER_ximage; - xrb->Base.PutRowRGB = put_row_rgb_TRUEDITHER_ximage; xrb->Base.PutValues = put_values_TRUEDITHER_ximage; } break; case PF_8A8B8G8R: if (pixmap) { xrb->Base.PutRow = put_row_8A8B8G8R_pixmap; - xrb->Base.PutRowRGB = put_row_rgb_8A8B8G8R_pixmap; xrb->Base.PutValues = put_values_8A8B8G8R_pixmap; } else { xrb->Base.PutRow = put_row_8A8B8G8R_ximage; - xrb->Base.PutRowRGB = put_row_rgb_8A8B8G8R_ximage; xrb->Base.PutValues = put_values_8A8B8G8R_ximage; } break; case PF_8A8R8G8B: if (pixmap) { xrb->Base.PutRow = put_row_8A8R8G8B_pixmap; - xrb->Base.PutRowRGB = put_row_rgb_8A8R8G8B_pixmap; xrb->Base.PutValues = put_values_8A8R8G8B_pixmap; } else { xrb->Base.PutRow = put_row_8A8R8G8B_ximage; - xrb->Base.PutRowRGB = put_row_rgb_8A8R8G8B_ximage; xrb->Base.PutValues = put_values_8A8R8G8B_ximage; } break; case PF_8R8G8B: if (pixmap) { xrb->Base.PutRow = put_row_8R8G8B_pixmap; - xrb->Base.PutRowRGB = put_row_rgb_8R8G8B_pixmap; xrb->Base.PutValues = put_values_8R8G8B_pixmap; } else { xrb->Base.PutRow = put_row_8R8G8B_ximage; - xrb->Base.PutRowRGB = put_row_rgb_8R8G8B_ximage; xrb->Base.PutValues = put_values_8R8G8B_ximage; } break; case PF_8R8G8B24: if (pixmap) { xrb->Base.PutRow = put_row_8R8G8B24_pixmap; - xrb->Base.PutRowRGB = put_row_rgb_8R8G8B24_pixmap; xrb->Base.PutValues = put_values_8R8G8B24_pixmap; } else { xrb->Base.PutRow = put_row_8R8G8B24_ximage; - xrb->Base.PutRowRGB = put_row_rgb_8R8G8B24_ximage; xrb->Base.PutValues = put_values_8R8G8B24_ximage; } break; case PF_5R6G5B: if (pixmap) { xrb->Base.PutRow = put_row_5R6G5B_pixmap; - xrb->Base.PutRowRGB = put_row_rgb_5R6G5B_pixmap; xrb->Base.PutValues = put_values_5R6G5B_pixmap; } else { xrb->Base.PutRow = put_row_5R6G5B_ximage; - xrb->Base.PutRowRGB = put_row_rgb_5R6G5B_ximage; xrb->Base.PutValues = put_values_5R6G5B_ximage; } break; case PF_Dither_5R6G5B: if (pixmap) { xrb->Base.PutRow = put_row_DITHER_5R6G5B_pixmap; - xrb->Base.PutRowRGB = put_row_rgb_DITHER_5R6G5B_pixmap; xrb->Base.PutValues = put_values_DITHER_5R6G5B_pixmap; } else { xrb->Base.PutRow = put_row_DITHER_5R6G5B_ximage; - xrb->Base.PutRowRGB = put_row_rgb_DITHER_5R6G5B_ximage; xrb->Base.PutValues = put_values_DITHER_5R6G5B_ximage; } break; diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index 8fea8ad3026..02452aa68f9 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -2538,15 +2538,6 @@ struct gl_renderbuffer void (*PutRow)(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, GLint x, GLint y, const void *values, const GLubyte *mask); - /* Put/Write a row of RGB values. This is a special-case routine that's - * only used for RGBA renderbuffers when the source data is GL_RGB. That's - * a common case for glDrawPixels and some triangle routines. - * The values will be of format GL_RGB and type DataType. - */ - void (*PutRowRGB)(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, - GLint x, GLint y, const void *values, const GLubyte *mask); - - /* Put/Write values at arbitrary locations. * The values will be of format _BaseFormat and type DataType. */ diff --git a/src/mesa/main/renderbuffer.c b/src/mesa/main/renderbuffer.c index f7aaf0c3834..bb8f46d11eb 100644 --- a/src/mesa/main/renderbuffer.c +++ b/src/mesa/main/renderbuffer.c @@ -78,7 +78,6 @@ _mesa_init_renderbuffer(struct gl_renderbuffer *rb, GLuint name) rb->GetRow = NULL; rb->GetValues = NULL; rb->PutRow = NULL; - rb->PutRowRGB = NULL; rb->PutValues = NULL; } diff --git a/src/mesa/swrast/s_depthstencil.c b/src/mesa/swrast/s_depthstencil.c index e2558c4859a..e48177ec159 100644 --- a/src/mesa/swrast/s_depthstencil.c +++ b/src/mesa/swrast/s_depthstencil.c @@ -303,7 +303,6 @@ new_z24_renderbuffer_wrapper(struct gl_context *ctx, z24rb->GetRow = get_row_z24; z24rb->GetValues = get_values_z24; z24rb->PutRow = put_row_z24; - z24rb->PutRowRGB = NULL; z24rb->PutValues = put_values_z24; return z24rb; @@ -457,7 +456,6 @@ new_z32f_renderbuffer_wrapper(struct gl_context *ctx, z32frb->GetRow = get_row_z32f; z32frb->GetValues = get_values_z32f; z32frb->PutRow = put_row_z32f; - z32frb->PutRowRGB = NULL; z32frb->PutValues = put_values_z32f; return z32frb; @@ -709,7 +707,6 @@ new_s8_renderbuffer_wrapper(struct gl_context *ctx, struct gl_renderbuffer *dsrb s8rb->GetRow = get_row_s8; s8rb->GetValues = get_values_s8; s8rb->PutRow = put_row_s8; - s8rb->PutRowRGB = NULL; s8rb->PutValues = put_values_s8; return s8rb; diff --git a/src/mesa/swrast/s_renderbuffer.c b/src/mesa/swrast/s_renderbuffer.c index 881f3e6337b..1a7cb36d92a 100644 --- a/src/mesa/swrast/s_renderbuffer.c +++ b/src/mesa/swrast/s_renderbuffer.c @@ -431,26 +431,6 @@ put_row_ubyte3(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, static void -put_row_rgb_ubyte3(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, - GLint x, GLint y, const void *values, const GLubyte *mask) -{ - /* note: incoming values are RGB+A! */ - const GLubyte *src = (const GLubyte *) values; - GLubyte *dst = (GLubyte *) rb->Data + 3 * (y * rb->RowStride + x); - GLuint i; - ASSERT(rb->Format == MESA_FORMAT_RGB888); - ASSERT(rb->DataType == GL_UNSIGNED_BYTE); - for (i = 0; i < count; i++) { - if (!mask || mask[i]) { - dst[i * 3 + 0] = src[i * 3 + 0]; - dst[i * 3 + 1] = src[i * 3 + 1]; - dst[i * 3 + 2] = src[i * 3 + 2]; - } - } -} - - -static void put_values_ubyte3(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, const GLint x[], const GLint y[], const void *values, const GLubyte *mask) @@ -518,28 +498,6 @@ put_row_ubyte4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, static void -put_row_rgb_ubyte4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, - GLint x, GLint y, const void *values, const GLubyte *mask) -{ - /* Store RGB values in RGBA buffer */ - const GLubyte *src = (const GLubyte *) values; - GLubyte *dst = (GLubyte *) rb->Data + 4 * (y * rb->RowStride + x); - GLuint i; - ASSERT(rb->DataType == GL_UNSIGNED_BYTE); - ASSERT(rb->Format == MESA_FORMAT_RGBA8888 || - rb->Format == MESA_FORMAT_RGBA8888_REV); - for (i = 0; i < count; i++) { - if (!mask || mask[i]) { - dst[i * 4 + 0] = src[i * 3 + 0]; - dst[i * 4 + 1] = src[i * 3 + 1]; - dst[i * 4 + 2] = src[i * 3 + 2]; - dst[i * 4 + 3] = 0xff; - } - } -} - - -static void put_values_ubyte4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, const GLint x[], const GLint y[], const void *values, const GLubyte *mask) @@ -604,31 +562,6 @@ put_row_ushort4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count static void -put_row_rgb_ushort4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, - GLint x, GLint y, const void *values, const GLubyte *mask) -{ - /* Put RGB values in RGBA buffer */ - const GLushort *src = (const GLushort *) values; - GLushort *dst = (GLushort *) rb->Data + 4 * (y * rb->RowStride + x); - ASSERT(rb->DataType == GL_UNSIGNED_SHORT || rb->DataType == GL_SHORT); - if (mask) { - GLuint i; - for (i = 0; i < count; i++) { - if (mask[i]) { - dst[i * 4 + 0] = src[i * 3 + 0]; - dst[i * 4 + 1] = src[i * 3 + 1]; - dst[i * 4 + 2] = src[i * 3 + 2]; - dst[i * 4 + 3] = 0xffff; - } - } - } - else { - memcpy(dst, src, 4 * count * sizeof(GLushort)); - } -} - - -static void put_values_ushort4(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, const GLint x[], const GLint y[], const void *values, const GLubyte *mask) @@ -1018,7 +951,6 @@ _swrast_set_renderbuffer_accessors(struct gl_renderbuffer *rb) rb->GetRow = get_row_ubyte3; rb->GetValues = get_values_ubyte3; rb->PutRow = put_row_ubyte3; - rb->PutRowRGB = put_row_rgb_ubyte3; rb->PutValues = put_values_ubyte3; break; @@ -1027,7 +959,6 @@ _swrast_set_renderbuffer_accessors(struct gl_renderbuffer *rb) rb->DataType = GL_UNSIGNED_BYTE; rb->GetValues = get_values_ubyte4; rb->PutRow = put_row_ubyte4; - rb->PutRowRGB = put_row_rgb_ubyte4; rb->PutValues = put_values_ubyte4; break; @@ -1036,7 +967,6 @@ _swrast_set_renderbuffer_accessors(struct gl_renderbuffer *rb) rb->GetValues = get_values_r8; rb->GetRow = get_row_r8; rb->PutRow = put_row_generic; - rb->PutRowRGB = put_row_generic; rb->PutValues = put_values_generic; break; @@ -1045,7 +975,6 @@ _swrast_set_renderbuffer_accessors(struct gl_renderbuffer *rb) rb->GetValues = get_values_rg88; rb->GetRow = get_row_rg88; rb->PutRow = put_row_generic; - rb->PutRowRGB = put_row_generic; rb->PutValues = put_values_generic; break; @@ -1054,7 +983,6 @@ _swrast_set_renderbuffer_accessors(struct gl_renderbuffer *rb) rb->GetValues = get_values_r16; rb->GetRow = get_row_r16; rb->PutRow = put_row_generic; - rb->PutRowRGB = put_row_generic; rb->PutValues = put_values_generic; break; @@ -1063,7 +991,6 @@ _swrast_set_renderbuffer_accessors(struct gl_renderbuffer *rb) rb->GetValues = get_values_rg1616; rb->GetRow = get_row_rg1616; rb->PutRow = put_row_generic; - rb->PutRowRGB = put_row_generic; rb->PutValues = put_values_generic; break; @@ -1071,7 +998,6 @@ _swrast_set_renderbuffer_accessors(struct gl_renderbuffer *rb) rb->DataType = GL_SHORT; rb->GetValues = get_values_ushort4; rb->PutRow = put_row_ushort4; - rb->PutRowRGB = put_row_rgb_ushort4; rb->PutValues = put_values_ushort4; break; @@ -1079,7 +1005,6 @@ _swrast_set_renderbuffer_accessors(struct gl_renderbuffer *rb) rb->DataType = GL_UNSIGNED_BYTE; rb->GetValues = get_values_ubyte; rb->PutRow = put_row_ubyte; - rb->PutRowRGB = NULL; rb->PutValues = put_values_ubyte; break; @@ -1087,7 +1012,6 @@ _swrast_set_renderbuffer_accessors(struct gl_renderbuffer *rb) rb->DataType = GL_UNSIGNED_SHORT; rb->GetValues = get_values_ushort; rb->PutRow = put_row_ushort; - rb->PutRowRGB = NULL; rb->PutValues = put_values_ushort; break; @@ -1097,7 +1021,6 @@ _swrast_set_renderbuffer_accessors(struct gl_renderbuffer *rb) rb->DataType = GL_UNSIGNED_INT; rb->GetValues = get_values_uint; rb->PutRow = put_row_uint; - rb->PutRowRGB = NULL; rb->PutValues = put_values_uint; break; @@ -1106,7 +1029,6 @@ _swrast_set_renderbuffer_accessors(struct gl_renderbuffer *rb) rb->DataType = GL_UNSIGNED_INT_24_8_EXT; rb->GetValues = get_values_uint; rb->PutRow = put_row_uint; - rb->PutRowRGB = NULL; rb->PutValues = put_values_uint; break; @@ -1114,7 +1036,6 @@ _swrast_set_renderbuffer_accessors(struct gl_renderbuffer *rb) rb->GetRow = get_row_generic; rb->GetValues = get_values_generic; rb->PutRow = put_row_generic; - rb->PutRowRGB = NULL; rb->PutValues = put_values_generic; break; @@ -1122,7 +1043,6 @@ _swrast_set_renderbuffer_accessors(struct gl_renderbuffer *rb) rb->GetRow = get_row_i_float32; rb->GetValues = get_values_i_float32; rb->PutRow = put_row_generic; - rb->PutRowRGB = NULL; rb->PutValues = put_values_generic; break; @@ -1130,7 +1050,6 @@ _swrast_set_renderbuffer_accessors(struct gl_renderbuffer *rb) rb->GetRow = get_row_l_float32; rb->GetValues = get_values_l_float32; rb->PutRow = put_row_generic; - rb->PutRowRGB = NULL; rb->PutValues = put_values_generic; break; @@ -1138,7 +1057,6 @@ _swrast_set_renderbuffer_accessors(struct gl_renderbuffer *rb) rb->GetRow = get_row_a_float32; rb->GetValues = get_values_a_float32; rb->PutRow = put_row_a_float32; - rb->PutRowRGB = NULL; rb->PutValues = put_values_a_float32; break; @@ -1146,7 +1064,6 @@ _swrast_set_renderbuffer_accessors(struct gl_renderbuffer *rb) rb->GetRow = get_row_rg_float32; rb->GetValues = get_values_rg_float32; rb->PutRow = put_row_generic; - rb->PutRowRGB = NULL; rb->PutValues = put_values_generic; break; @@ -1154,7 +1071,6 @@ _swrast_set_renderbuffer_accessors(struct gl_renderbuffer *rb) rb->GetRow = get_row_r_float32; rb->GetValues = get_values_r_float32; rb->PutRow = put_row_generic; - rb->PutRowRGB = NULL; rb->PutValues = put_values_generic; break; diff --git a/src/mesa/swrast/s_spantemp.h b/src/mesa/swrast/s_spantemp.h index ff26856679c..2d2561b6f1e 100644 --- a/src/mesa/swrast/s_spantemp.h +++ b/src/mesa/swrast/s_spantemp.h @@ -117,32 +117,6 @@ NAME(put_row)( struct gl_context *ctx, struct gl_renderbuffer *rb, static void -NAME(put_row_rgb)( struct gl_context *ctx, struct gl_renderbuffer *rb, - GLuint count, GLint x, GLint y, - const void *values, const GLubyte mask[] ) -{ -#ifdef SPAN_VARS - SPAN_VARS -#endif - const RB_TYPE (*src)[3] = (const RB_TYPE (*)[3]) values; - GLuint i; - INIT_PIXEL_PTR(pixel, x, y); - for (i = 0; i < count; i++) { - if (!mask || mask[i]) { -#ifdef STORE_PIXEL_RGB - STORE_PIXEL_RGB(pixel, x + i, y, src[i]); -#else - STORE_PIXEL(pixel, x + i, y, src[i]); -#endif - } - INC_PIXEL_PTR(pixel); - } - (void) rb; - (void) ctx; -} - - -static void NAME(put_values)( struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, const GLint x[], const GLint y[], const void *values, const GLubyte mask[] ) diff --git a/src/mesa/swrast/s_texrender.c b/src/mesa/swrast/s_texrender.c index 08ceb4dbf15..52342020536 100644 --- a/src/mesa/swrast/s_texrender.c +++ b/src/mesa/swrast/s_texrender.c @@ -235,67 +235,6 @@ texture_put_row(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count } } -/** - * Put row of RGB values into a renderbuffer that wraps a texture image. - */ -static void -texture_put_row_rgb(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, - GLint x, GLint y, const void *values, const GLubyte *mask) -{ - struct texture_renderbuffer *trb = texture_renderbuffer(rb); - const GLint z = trb->Zoffset; - GLuint i; - - y += trb->Yoffset; - - if (rb->DataType == CHAN_TYPE) { - const GLchan *rgb = (const GLchan *) values; - for (i = 0; i < count; i++) { - if (!mask || mask[i]) { - trb->Store(trb->TexImage, x + i, y, z, rgb); - } - rgb += 3; - } - } - else if (rb->DataType == GL_UNSIGNED_SHORT) { - const GLushort *zValues = (const GLushort *) values; - for (i = 0; i < count; i++) { - if (!mask || mask[i]) { - trb->Store(trb->TexImage, x + i, y, z, zValues + i); - } - } - } - else if (rb->DataType == GL_UNSIGNED_INT) { - const GLuint *zValues = (const GLuint *) values; - for (i = 0; i < count; i++) { - if (!mask || mask[i]) { - trb->Store(trb->TexImage, x + i, y, z, zValues + i); - } - } - } - else if (rb->DataType == GL_UNSIGNED_INT_24_8_EXT) { - const GLuint *zValues = (const GLuint *) values; - for (i = 0; i < count; i++) { - if (!mask || mask[i]) { - GLfloat flt = (GLfloat) ((zValues[i] >> 8) * (1.0 / 0xffffff)); - trb->Store(trb->TexImage, x + i, y, z, &flt); - } - } - } - else if (rb->DataType == GL_UNSIGNED_INT_8_24_REV_MESA) { - const GLuint *zValues = (const GLuint *) values; - for (i = 0; i < count; i++) { - if (!mask || mask[i]) { - GLfloat flt = (GLfloat) ((zValues[i] & 0xffffff) * (1.0 / 0xffffff)); - trb->Store(trb->TexImage, x + i, y, z, &flt); - } - } - } - else { - _mesa_problem(ctx, "invalid rb->DataType in texture_put_row"); - } -} - static void texture_put_values(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count, @@ -399,7 +338,6 @@ wrap_texture(struct gl_context *ctx, struct gl_renderbuffer_attachment *att) trb->Base.GetRow = texture_get_row; trb->Base.GetValues = texture_get_values; trb->Base.PutRow = texture_put_row; - trb->Base.PutRowRGB = texture_put_row_rgb; trb->Base.PutValues = texture_put_values; /* update attachment point */ |