Patterning
The pattern is a 32-bit word. spr Pattern writes it directly; spr IPat reads a word from an arbitrary byte-aligned local-memory address. Both reset PatOffset to zero.
Bit 31 is the first or left-most pattern bit. The current bit is (~PatOffset) & 0x1F. If patterning is enabled, PatOffset advances after every pixel draw, including scissored pixels:
PatOffset = (PatOffset != PatLengthM1) ? PatOffset + 1 : 0;
PatMode supplies length−1, enable and opaque bits. A one selects the foreground; a zero selects the background. Transparent patterns leave background pixels unchanged. Opaque patterns use BGColor. Patterning is independent of texture sampling and BitBlt.
Parallel drawing supports patterns only left-to-right, with pattern width at least 8 / sizeof(pixel). See Parallel draw setup.
Source: Technical Spec, p.34