- xrb->St.Base.PutRow(ctx, &xrb->St.Base, 2, x, y, temp, NULL);
- xrb->St.Base.PutRow(ctx, &xrb->St.Base, 2, x, y - 1, temp + 8, NULL);
-}
-
-static void
-read_quad_ub(struct softpipe_surface *sps, GLint x, GLint y,
- GLubyte (*rgba)[NUM_CHANNELS])
-{
- struct xmesa_renderbuffer *xrb = xmesa_rb(sps);
- GET_CURRENT_CONTEXT(ctx);
- FLIP(y);
- xrb->St.Base.GetRow(ctx, &xrb->St.Base, 2, x, y, rgba);
- xrb->St.Base.GetRow(ctx, &xrb->St.Base, 2, x, y - 1, rgba + 2);
-}
-
-static void
-write_quad_ub(struct softpipe_surface *sps, GLint x, GLint y,
- GLubyte (*rgba)[NUM_CHANNELS])
-{
- struct xmesa_renderbuffer *xrb = xmesa_rb(sps);
- GET_CURRENT_CONTEXT(ctx);
- FLIP(y);
- xrb->St.Base.GetRow(ctx, &xrb->St.Base, 2, x, y, rgba);
- xrb->St.Base.GetRow(ctx, &xrb->St.Base, 2, x, y - 1, rgba + 2);
-}
-
-
-static void
-get_tile(struct pipe_surface *ps,
- GLuint x, GLuint y, GLuint w, GLuint h, GLfloat *p)
-{
- struct xmesa_renderbuffer *xrb = xmesa_rb((struct softpipe_surface *) ps);
- GLubyte tmp[MAX_WIDTH * 4];
- GLuint i, j;
- unsigned w0 = w;
- GET_CURRENT_CONTEXT(ctx);
-
- CLIP_TILE;
-
- FLIP(y);
- for (i = 0; i < h; i++) {
- xrb->St.Base.GetRow(ctx, &xrb->St.Base, w, x, y - i, tmp);
- for (j = 0; j < w * 4; j++) {
- p[j] = UBYTE_TO_FLOAT(tmp[j]);
- }
- p += w0 * 4;