voodoo3_write32
voodoo3_write32(sc, SRCBASE, 0);
voodoo3_write32(sc, DSTBASE, 0);
voodoo3_write32(sc, SRCFORMAT, fmt);
voodoo3_write32(sc, DSTFORMAT, fmt);
voodoo3_write32(sc, DSTSIZE, width | (height << 16));
voodoo3_write32(sc, DSTXY, xd | (yd << 16));
voodoo3_write32(sc, SRCXY, xs | (ys << 16));
voodoo3_write32(sc, COMMAND_2D, blitcmd | SST_2D_GO);
voodoo3_write32(sc, DSTFORMAT, fmt);
voodoo3_write32(sc, DSTBASE, 0);
voodoo3_write32(sc, COLORFORE, colour);
voodoo3_write32(sc, COLORBACK, colour);
voodoo3_write32(sc, COMMAND_2D, COMMAND_2D_FILLRECT | (ROP_COPY << 24));
voodoo3_write32(sc, DSTSIZE, width | (height << 16));
voodoo3_write32(sc, LAUNCH_2D, x | (y << 16));
voodoo3_write32(sc, SRCBASE, 0);
voodoo3_write32(sc, DSTBASE, 0);
voodoo3_write32(sc, DSTFORMAT, fmt);
voodoo3_write32(sc, COMMAND_2D, COMMAND_2D_FILLRECT |
voodoo3_write32(sc, DSTSIZE, width | (height << 16));
voodoo3_write32(sc, DSTXY, x | (y << 16));
voodoo3_write32(sc, LAUNCH_2D, x | (y << 16));
voodoo3_write32(sc, SRCFORMAT, sfmt);
voodoo3_write32(sc, DSTFORMAT, dfmt);
voodoo3_write32(sc, DSTBASE, 0);
voodoo3_write32(sc, COLORFORE, fg);
voodoo3_write32(sc, COLORBACK, bg);
voodoo3_write32(sc, DSTSIZE, width | (height << 16));
voodoo3_write32(sc, DSTXY, xd | (yd << 16));
voodoo3_write32(sc, SRCXY, 0);
voodoo3_write32(sc, COMMAND_2D, COMMAND_2D_H2S_BITBLT |
voodoo3_write32(sc, LAUNCH_2D, latch);
voodoo3_write32(sc, LAUNCH_2D, latch);
voodoo3_write32(sc, V3_STATUS, 0); /* clear interrupts */
voodoo3_write32(sc, MISCINIT1, voodoo3_read32(sc, MISCINIT1) | 0x01);
voodoo3_write32(sc, VGAINIT0, 4928);
voodoo3_write32(sc, DACMODE, 0);
voodoo3_write32(sc, VIDDESKSTRIDE, bytes_per_row);
voodoo3_write32(sc, PLLCTRL0, vidpll);
voodoo3_write32(sc, VIDSCREENSIZE, sc->sc_width |
voodoo3_write32(sc, VIDDESKSTART, 0);
voodoo3_write32(sc, VIDPROCCFG, vidproc);
voodoo3_write32(sc, VGAINIT1, 0);
voodoo3_write32(sc, MISCINIT0, miscinit0);
voodoo3_write32(sc, SRCBASE, 0);
voodoo3_write32(sc, DSTBASE, 0);
voodoo3_write32(sc, COMMANDEXTRA_2D, 0);
voodoo3_write32(sc, CLIP0MIN, 0);
voodoo3_write32(sc, CLIP0MAX, 0x0fff0fff);
voodoo3_write32(sc, CLIP1MIN, 0);
voodoo3_write32(sc, CLIP1MAX, 0x0fff0fff);
voodoo3_write32(sc, SRCXY, 0);
voodoo3_write32(sc, VGAINIT0, vgainit0);
voodoo3_write32(sc, VIDPROCCFG, vidcfg);
voodoo3_write32(sc, SRCBASE, 0);
voodoo3_write32(sc, DSTBASE, 0);
voodoo3_write32(sc, COMMANDEXTRA_2D, 0);
voodoo3_write32(sc, CLIP0MIN, 0);
voodoo3_write32(sc, CLIP0MAX, 0x1fff1fff);
voodoo3_write32(sc, CLIP1MIN, 0);
voodoo3_write32(sc, CLIP1MAX, 0x1fff1fff);
voodoo3_write32(sc, SRCXY, 0);
voodoo3_write32(sc, VIDSERPARPORT, sc->sc_i2creg);
voodoo3_write32(sc, VIDSERPARPORT, sc->sc_i2creg | out);
voodoo3_write32(sc, COMMAND_3D, COMMAND_3D_NOP);
voodoo3_write32(sc, DACADDR, index);
voodoo3_write32(sc, DACDATA, color);
voodoo3_write32(sc, SRCBASE, offset);
voodoo3_write32(sc, DSTBASE, 0);
voodoo3_write32(sc, SRCFORMAT, sc->sc_fmt);
voodoo3_write32(sc, DSTFORMAT,
voodoo3_write32(sc, DSTSIZE, wi | (he << 16));
voodoo3_write32(sc, DSTXY, x | (y << 16));
voodoo3_write32(sc, SRCXY, 0);
voodoo3_write32(sc, COMMAND_2D, COMMAND_2D_S2S_BITBLT
voodoo3_write32(sc, DSTBASE, 0);
voodoo3_write32(sc, SRCFORMAT, FMT_8BIT | FMT_PAD_BYTE);
voodoo3_write32(sc, DSTFORMAT, sc->sc_linebytes | FMT_8BIT);
voodoo3_write32(sc, DSTSIZE, wi | (he << 16));
voodoo3_write32(sc, DSTXY, x | (y << 16));
voodoo3_write32(sc, SRCXY, 0);
voodoo3_write32(sc, COMMAND_2D, COMMAND_2D_H2S_BITBLT |
voodoo3_write32(sc, SRCBASE, 0);
voodoo3_write32(sc, DSTBASE, save_offset);
voodoo3_write32(sc, SRCFORMAT, sc->sc_linebytes | FMT_8BIT);
voodoo3_write32(sc, DSTFORMAT, sc->sc_fmt);
voodoo3_write32(sc, DSTSIZE, wi | (he << 16));
voodoo3_write32(sc, DSTXY, 0);
voodoo3_write32(sc, SRCXY, x | (y << 16));
voodoo3_write32(sc, COMMAND_2D, COMMAND_2D_S2S_BITBLT |