▶ SHOW SIGNAL REFERENCE
🌈 CROSS-COLOR EXPLAINED
The Fundamental Problem: NTSC places the color subcarrier at 3.579545 MHz within the luminance band (0–4.2 MHz). Any luminance detail with spatial frequencies near this value will be mistaken for color information by the decoder.
This is why newscasters in the 1960s–80s were told never to wear pinstripe suits or herringbone jackets on camera! Fine patterns create alternating black/white pixels that oscillate at frequencies near the color subcarrier, producing shimmering rainbow artifacts.
Try the "PINSTRIPE" or "CHECKERBOARD" test patterns and increase Cross-Color Intensity to see this in action!
🖥️ CGA COMPOSITE COLOR ARTIFACTING
Not a bug — a feature! IBM's Color Graphics Adapter (CGA, 1981) had a primary oscillator at exactly 14.318181 MHz = 4 × 3.579545 MHz (the NTSC subcarrier). This was deliberate.
The Exploit: In 640×200 high-resolution mode, the pixel clock runs at 14.318 MHz. Every sequence of 4 horizontal pixels takes exactly 1 full cycle of the 3.58 MHz color subcarrier. By choosing specific 4-bit pixel patterns (e.g., 1010, 1100, 0110), developers forced different phase relationships with the subcarrier, generating 16 distinct colors from pure black-and-white data!
The Math:
- Pixel clock: 14.318181 MHz = 4 × fsc
- Line Rate: fH = 2 × 3.579545 MHz ÷ 455 ≈ 15,734.26 Hz
- Pattern "1010" → 3.58 MHz sine wave → composite TV sees solid color
- Shifting the pattern phase → different hue on the vectorscope
Famous Games:
- King's Quest (1984) — Green trees, blue water, brown dirt — all from B&W patterns!
- MS Flight Simulator — Smooth gradient horizons from 640×200 artifact colors
- Ultima II & III — Colorful overworld maps via composite artifacting
Digital vs. Composite: On an RGB monitor, these games look like meaningless black-and-white line patterns. Connect a composite TV, and suddenly you see full-color graphics!
Try the "CGA 16-COLOR" or "KING'S QUEST" patterns with the "CGA COMPOSITE" preset!
📊 NTSC FREQUENCY SPECTRUM
Why luminance and chrominance collide:
- Luminance (Y): 0 – 4.2 MHz (brightness/detail)
- Chrominance (C): Centered at 3.579545 MHz, ±0.5 to 1.3 MHz
- The chroma band sits inside the luma band — they share spectrum!
Frequency Interleaving: The subcarrier was chosen as an odd multiple of half the line rate (455 × fH/2). Luma clusters at even harmonics, chroma at odd harmonics — like interlocking comb teeth. This works for smooth images but breaks down on sharp textures.
CGA's exploit: By outputting pixels at exactly 4× the subcarrier frequency, the CGA card guaranteed that certain pixel patterns would create energy exactly at 3.58 MHz — which the TV's decoder interprets as color, not detail.
◈ Y/C SEPARATION METHODS
- Simple Bandpass — Cheap TVs: Low-pass Y, bandpass C. Maximum cross-color.
- 1-Line Comb — Uses adjacent scan line to cancel luma from chroma. Moderate improvement.
- 2-Line Comb — Two adjacent lines. Better separation.
- 3D Comb — Uses temporal (frame-to-frame) info. Near-perfect on static images.
- Perfect — Mathematical ideal. No cross-color (reference only).
◈ SIGNAL STRUCTURE
Each scan line of an NTSC signal lasts ~63.5µs and contains:
- Front Porch (~1.5µs) — Voltage stabilization period
- Sync Pulse (~4.7µs) — Horizontal sync at -40 IRE
- Back Porch (~4.7µs) — Black level reference
- Colorburst (~2.5µs) — 8-10 cycles of 3.58MHz subcarrier
- Active Video — Luminance + modulated chrominance
◈ BANDWIDTH TRADEOFF
The fundamental engineering dilemma of NTSC:
- Higher luma bandwidth = sharper image, but MORE cross-color
- Lower luma bandwidth = less cross-color, but BLURRIER image
- The 3.58 MHz subcarrier sits right in the middle of the visible detail range
- Comb filters were invented to solve this without sacrificing bandwidth
◈ YUV COLOR SPACE
RGB signals are converted to YUV for transmission:
- Y (Luminance) — Brightness, compatible with B&W TVs
- U (B-Y) — Blue difference signal
- V (R-Y) — Red difference signal
U and V are zero in monochrome scenes, saving bandwidth.
◈ "NEVER THE SAME COLOR"
NTSC's biggest weakness: phase errors in the received signal cause hue shifts. Unlike PAL (which reverses phase each line to cancel errors), NTSC relies on the receiver's TINT knob.
Try the PHASE ERROR slider to see this infamous artifact!