メモリ空間0x05000000..050003FF
はパレット用のメモリ空間です。サイズは1KB(1024バイト)です。
BGパレットとOBJパレットはそれぞれ独立したメモリ領域を持っています。
0x0500_0000..0500_01ff: BGパレット (512バイト, 256色)
0x0500_0200..0500_03ff: OBJパレット (512バイト, 256色)
BGとOBJのパレットは、それぞれ16色×16枚のパレットとしても使えますし、256色の単一パレットとして使うこともできます。
OBJの一部が16色モードとしてパレットを使用している間、他のOBJは256色モードとしてパレットを使用することがあることに注意してください。 これはOBJに限らずBG0-BG3レイヤについても同様です。
すべてのBG/OBJパレットの色0は透明色として扱います。
よってカタログスペック上では 16(256)色のパレットですが、実際に使えるのは 15(255)色だけです。
BGパレット0の色0は背景色(Backdrop)として扱います。
背景色は画面上で(非透明色の)BGかOBJが描画されなかったピクセルに表示されます。
1色を表すのに2バイト使用します。RGBで32段階で、Bit15は不使用です。
前述のようにパレットのメモリ領域は512バイトなので 256色 or 16色/16パレット を表現可能です。
また32768色を使用可能なBGモード(3, 5)でも色の表現は同じです。
bit | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
color | -- | Blue(0..31) | Green(0..31) | Red(0..31) |
注意
基本的に、各色の強度は0..31の32段階ありますが、0..14にした場合全て真っ黒になってしまいます。なので実際に色を表す場合は15..31の間で表していくことになります。
色の強度が上がるにつれて画面は明るくなっていきます。