When sprites are used individually (that is, not attached as described in the Attached Sprites section), each pixel can be one of three colors or transparent. Color selection in similar to the method used for playfield colors. Figure 4-5 shows how the color of each pixel in a sprite is determined. high-order word of sprite data line _______________________________ | _|#|_ | _ _0 0 0 0 0 1 1 1 0 1 1 1 0 0 0 0 | _|o|#|o|_ | | |_ _ _ _ _|o|o|#|o|o|_ _ _ _ _ _| | |_|_|_|_|#|#|#|_|#|#|#|_|_|_|_|_|- -| | | | |o|o|#|o|o| | | | | |o|#|o| | |_ _|_0 0 0 0 0 1 1 1 0 1 1 1 0 0 0 0 |____|________|#|_______________| | | | | low-order word of | | | sprite data line | | transparent | | Forms a binary code, used as the color --> 0 0 choice from a group of color registers. Figure 4-5: Sprite Color Definition The 0s and 1s in the two data words that define each line of a sprite in the data structure form a binary number. This binary number points to one of the four color registers assigned to that particular sprite DMA channel. The eight sprites use system color registers 16 - 31. For purposes of color selection, the eight sprites are organized into pairs and each pair uses four of the color registers as shown in Figure 4-6. About sprite color registers . ------------------------------- The color value of the first register in each group of four registers is ignored by sprites. When the sprite bits select this register, the "transparent" value is used. 00 Unused 01 Unused · · · _ 16 Unused 00 | 17 Color 1 01 | 18 Color 2 10 |-- Sprites 0 and 1 19 Color 3 11 _| 20 Unused 00 | 21 Color 1 01 | 22 Color 2 10 |-- Sprites 2 and 3 23 Color 3 11 _| 24 Unused 00 | 25 Color 1 01 | 26 Color 2 10 |-- Sprites 4 and 5 27 Color 3 11 _| 28 Unused 00 | 29 Color 1 01 | 30 Color 2 10 |-- Sprites 6 and 7 31 Color 3 11 _| Figure 4-6: Color Register Assignments If you require certain colors in a sprite, you will want to load the sprite's color registers with those colors. The "Playfield Hardware" chapter contains instructions on loading color registers . The binary number 00 is special in this color scheme. A pixel whose value is 00 becomes transparent and shows the color of any other sprite or play- field that has lower video priority. An object with low priority appears "behind" an object with higher priority. Each sprite has a fixed video priority with respect to all the other sprites. You can vary the priority between sprites and playfields. (See Chapter 7, "System Control Hardware," for more information about sprite priority .)