
Thus, indices into the palette are formed as follows: Note that this goes for writing as well as reading.Ī symptom of not having implemented this correctly in an emulator is the sky being black in Super Mario Bros., which writes the backdrop color through $3F10. They can still be shown using the background palette hack, explained below.Īddresses $3F10/$3F14/$3F18/$3F1C are mirrors of $3F00/$3F04/$3F08/$3F0C. The choice of palette is in attribute 2 of each sprite (see PPU OAM).Īddresses $3F04/$3F08/$3F0C can contain unique data, though these values are not used by the PPU when normally rendering (since the pattern values that would otherwise select those cells select the backdrop color instead). The choice of palette for each 16x16 pixel area is controlled by bits in the attribute table at the end of each nametable.Įach sprite can use the three colors from one of the sprite palettes. Each color takes up one byte.Įach 16x16 pixel area of the background can use the backdrop color and the three colors from one of the four background palettes. The palette for the background runs from VRAM $3F00 to $3F0F the palette for the sprites runs from $3F10 to $3F1F.

The "black" pieces should be depicted as dark themed sprites and the "white" pieces as light themed sprites. You can either choose to create a "black" or a "white" chesspiece. The goal will be to create a fantasy styled chessboard together.

So this month's collab will be all about isometric sprites. I wanted to do an EGA palette challenge, but the pixel-artists group beat me to it.
