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
(bit 15 unused)
(moved size into first sentence)
 
(3 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 and is word (not byte) addressed.  For each of the 256 color entries:
'''CGRAM''' (Color Generator<sup>[2]</sup> RAM) is a 512 byte buffer where palettes are stored for [[indirect color]].  The SNES uses 15-bit color here.  It 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
* bit 15 is unused - reading it returns [[S-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).
Line 24: Line 24:
[[Category:Video]]
[[Category:Video]]
[[Category:Address Spaces]]
[[Category:Address Spaces]]
[[Category:Buffers]]

Latest revision as of 04:42, 12 August 2024

CGRAM (Color Generator[2] RAM) is a 512 byte buffer where palettes are stored for indirect color. The SNES uses 15-bit color here. It 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 S-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