Welcome!
Welcome to the docs for Cathode Retro.
The most recent version of Cathode Retro's source code can be found at the Cathode Retro GitHub repository.
Features
-
Emulate composite and S-Video NTSC signals
- Using any RGB source
- At arbitrary resolutions (not limited to standard NTSC limitations)
- Built-in scanline timings to emulate NES/SNES and PC Composite (320- and 640-wide) displays, but flexible enough to emulate any timings
- Noise, picture instability, and ghosting for that "my TV has bad reception" feel
- Tint/Saturation/Brightness/Sharpness "knobs" controls, like a TV had!
- Has correct emulation of NTSC composite artifact colors
-
Emulate an image being displayed through a CRT monitor
- Flat or curved screens, with optional edge and corner rounding
- Supports emulation of shadow mask, slot mask, and aperture grille TVs
- With or without visible scanlines
- Approximation of CRT diffusion (the light from the TV refracting through imperfections in the glass face)
- Best at 1080p resolution and higher (great at 4k!)
Screenshots
Documentation Contents
If you're interested in how the whole thing works at a high level, check the How It Works page.
If you're interested in using the C++ helpers to integrate the Cathode Retro effect into your codebase, here's a guide to getting started with the C++ helpers and the C++ API reference.
If, instead, you want to use the shaders directly, here's a guide to getting started with the shaders and the shader reference.