We've just updated MediaWiki and its underlying software. If anything doesn't look or work quite right, please mention it to us. --RanAS

CGRAM: Difference between revisions

From SnesLab
Jump to: navigation, search
(linkify bg modes)
(bit 15 unused)
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
'''CGRAM''' (Color Generator<sup>[2]</sup> RAM) is where palettes are stored for [[indirect color]].  The SNES uses 15-bit color here.  It is a total of 512 bytes.  For each of the 256 color entries:
'''CGRAM''' (Color Generator<sup>[2]</sup> RAM) is where palettes are stored for [[indirect color]].  The SNES uses 15-bit color here.  It is a total of 512 bytes and is word (not byte) addressed.  For each of the 256 color entries:


* bits 0 to 4 are the red intensity
* bits 0 to 4 are the red intensity
* bits 5 to 9 are the green intensity
* bits 5 to 9 are the green intensity
* bits 10 to 14 are the blue intensity
* bits 10 to 14 are the blue intensity
* bit 15 is unused, reading it returns PPU2 open bus


In all [[background modes]], sprites use the second half of CGRAM (addresses 80h to FFh).
In all [[background modes]], sprites use the second half of CGRAM (addresses 80h to FFh).

Latest revision as of 01:05, 29 December 2023

CGRAM (Color Generator[2] RAM) is where palettes are stored for indirect color. The SNES uses 15-bit color here. It is a total of 512 bytes and is word (not byte) addressed. For each of the 256 color entries:

  • bits 0 to 4 are the red intensity
  • bits 5 to 9 are the green intensity
  • bits 10 to 14 are the blue intensity
  • bit 15 is unused, reading it returns PPU2 open bus

In all background modes, sprites use the second half of CGRAM (addresses 80h to FFh).

When using CGRAM, color entries can be one of 32,768 colors from the master palette.

Direct Color is a technique that does not use CGRAM.

See Also

References

  1. Appendix A-17 of the official Super Nintendo development manual on CG-RAM
  2. https://problemkaputt.de/fullsnes.htm#snesmemorycgramaccesspalettememory