Difference between revisions of "Palettes"

From NeoGeo Development Wiki
Jump to: navigation, search
m (7 revisions: Import from wikkii)
Line 1: Line 1:
[[File:Palmap.png|thumb]]
+
[[File:Palmap.png|thumb|Palette organisation]]
There are 2 banks of 256 palettes of 16 colors available, made of 16bit RGB definitions.
+
There are 2 banks (one usable at a time) of 256 palettes available. Each palette has 16 entries, the first is the transparent index ("color 0"), the 15 others are real colors, made of 16bit RGB definitions.
Palettes are located at $400000 in the 68k's memory map.
+
Palettes are located at $400000 in the [[68k memory map]], they're physically stored in the [[palette RAM]].
  
The bank used for video output is set by registers REG_PALBANK1 ($3A000F) and REG_PALBANK0 ($3A001F).
+
The bank used can be set by writing a byte to registers '''REG_PALBANK1''' ($3A000F) or '''REG_PALBANK0''' ($3A001F).
  
Only one bank can be used at a time. They can be switched by using register ???
+
[[Sprites|Sprite]] tiles can use any of the 256 palettes, while the [[Fix layer|fix]] tiles can only use the 16 firsts.
 +
 
 +
The maximum number of colors on screen without [[68k interrupts|RLI]] tricks is 256*16=4096 (out of 2^16=65536).
 +
 
 +
==Special colors==
 +
 
 +
There are two special colors used:
 +
 
 +
*The first color of the palette bank ($400000) is the '''reference color''' for the video output. It has to be $8000 (black).
 +
*The last color of the palette bank ($401FFE) is the '''backdrop color''' (the color of the backmost layer on the screen).
 +
 
 +
==Color format==
  
'''Color definition word''':
 
 
D
 
D
 
<span style="color:red;">R0</span>
 
<span style="color:red;">R0</span>
Line 16: Line 26:
 
<span style="color:blue;">B4 B3 B2 B1</span>
 
<span style="color:blue;">B4 B3 B2 B1</span>
  
{{Template:16BitRegister|[[Dark bit]]|1|R0|1|G0|1|B0|1|R4|1|R3|1|R2|1|R1|1|G4|1|G3|1|G2|1|G1|1|B4|1|B3|1|B2|1|B1|1|}}
+
{{Template:16BitRegister|[[Video DAC|Dark bit]]|1|R0|1|G0|1|B0|1|R4|1|R3|1|R2|1|R1|1|G4|1|G3|1|G2|1|G1|1|B4|1|B3|1|B2|1|B1|1|}}
 
 
[[Sprites|Sprite]] tiles can use any of the 256 palettes, while [[Fix layer|fix]] tiles can only use the 16 firsts.
 
 
 
Max colors on screen without [[68k interrupts|RLI]] tricks: 256*16=4096 out of 2^16=65536.
 
 
 
Palettes are stored in [[Palette RAM]].
 
 
 
Last color of palette bank: backdrop color.
 
First color of palette bank: reference color for the video output (during H and V blank ?). Has to be $8000 (black).
 
  
 
[[Category:Video system]]
 
[[Category:Video system]]

Revision as of 15:59, 11 October 2011

Palette organisation

There are 2 banks (one usable at a time) of 256 palettes available. Each palette has 16 entries, the first is the transparent index ("color 0"), the 15 others are real colors, made of 16bit RGB definitions. Palettes are located at $400000 in the 68k memory map, they're physically stored in the palette RAM.

The bank used can be set by writing a byte to registers REG_PALBANK1 ($3A000F) or REG_PALBANK0 ($3A001F).

Sprite tiles can use any of the 256 palettes, while the fix tiles can only use the 16 firsts.

The maximum number of colors on screen without RLI tricks is 256*16=4096 (out of 2^16=65536).

Special colors

There are two special colors used:

  • The first color of the palette bank ($400000) is the reference color for the video output. It has to be $8000 (black).
  • The last color of the palette bank ($401FFE) is the backdrop color (the color of the backmost layer on the screen).

Color format

D R0 G0 B0 R4 R3 R2 R1 G4 G3 G2 G1 B4 B3 B2 B1

Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Def Dark bit R0G0B0R4R3R2R1G4G3G2G1B4B3B2B1