Difference between revisions of "Atari 7800 Color Documentation"

From 8BitDev.org - Atari 7800 Development Wiki
Jump to: navigation, search
Line 1: Line 1:
==Overview==
+
==Technical Overview==
[[File:600px-YIQ_IQ_plane_-_7800_factory.png|thumb|Atari factory-calibrated 7800 color values, overlaid on Y=0.5 IQ colorspace.]]
+
[[File:YIQ-warm-ideal.png|300px|Atari 7800 "ideal" color values, overlaid on Y=0.5 IQ colorspace.]]
 
The the color system in the 7800 is designed to efficiently generate color signals that are PAL or NTSC ready, with very little silicon and support circuitry. To better understand 7800 colors, it helps to have an understanding of NTSC and PAL color encoding.
 
The the color system in the 7800 is designed to efficiently generate color signals that are PAL or NTSC ready, with very little silicon and support circuitry. To better understand 7800 colors, it helps to have an understanding of NTSC and PAL color encoding.
  
Both NTSC and PAL TV standards have a short [https://en.wikipedia.org/wiki/NTSC#Color_encoding colorburst] signal near the beginning of each scanline. The colorburst serves 2 purposes. Its presence signals to the TV that the scanline will contain color information, but the colorburst signal also serves as a phase reference. If the same frequency is later detected by the TV during the display of a pixel, the TV will compare the phase of the frequency to the phase of the colorburst, and use the difference to determine which hue should be displayed for the pixel.
+
Both NTSC and PAL TV standards have a short [https://en.wikipedia.org/wiki/NTSC#Color_encoding colorburst] signal near the beginning of each scanline. The colorburst serves 2 purposes. Its presence signals to the TV that the scanline will contain color information, but it also serves as a phase reference. If the same frequency is later detected by the TV during the display of a pixel, the TV will determine the frequency's phase relative to the original colorburst, and use the result as an index to a hue in the YIQ colorspace(NTSC) or YUV colorspace(PAL).
  
NTSC TVs generally use the YIQ colorspace for this color determination, while PAL TVs use the YUV colorspace.  
+
To drive this system, 7800 color registers are split into 2 nibbles. The top nibble determine the amount of phase-shift, and the bottom nibble determines the luminance or brightness of the pixel. Its also worth noting here that the 7800 color system uses a uniform level of saturation for all of its colors.
  
 +
==Consistency Issues==
 +
[[File:YIQ-7800-warmup.gif|300px|Atari 7800 color values shifting as the console warms up, overlaid on Y=0.5 IQ colorspace.]]
 +
As the 7800 warms up, the distance between the various hues in the palette stretches out.
  
 +
The NTSC and PAL standards aren't known for their consistency from TV to TV, and that tends to be exasperated by TV display preference settings and different TV display technologies.
  
===Luminance component of 7800 colors===
 
  
===Saturation component of 7800 colors===
+
==Palettes==
 
 
T 7800 uses a constant saturation level of for color for all of the levels of b
 
 
 
==Colorspace Model==
 
The
 

Revision as of 22:55, 16 November 2015

Technical Overview

Atari 7800 "ideal" color values, overlaid on Y=0.5 IQ colorspace. The the color system in the 7800 is designed to efficiently generate color signals that are PAL or NTSC ready, with very little silicon and support circuitry. To better understand 7800 colors, it helps to have an understanding of NTSC and PAL color encoding.

Both NTSC and PAL TV standards have a short colorburst signal near the beginning of each scanline. The colorburst serves 2 purposes. Its presence signals to the TV that the scanline will contain color information, but it also serves as a phase reference. If the same frequency is later detected by the TV during the display of a pixel, the TV will determine the frequency's phase relative to the original colorburst, and use the result as an index to a hue in the YIQ colorspace(NTSC) or YUV colorspace(PAL).

To drive this system, 7800 color registers are split into 2 nibbles. The top nibble determine the amount of phase-shift, and the bottom nibble determines the luminance or brightness of the pixel. Its also worth noting here that the 7800 color system uses a uniform level of saturation for all of its colors.

Consistency Issues

Atari 7800 color values shifting as the console warms up, overlaid on Y=0.5 IQ colorspace. As the 7800 warms up, the distance between the various hues in the palette stretches out.

The NTSC and PAL standards aren't known for their consistency from TV to TV, and that tends to be exasperated by TV display preference settings and different TV display technologies.


Palettes