You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
RedControl talks directly to the AMD display engine (DCN) through UMR — the User Mode Register debugger — to control things no desktop settings panel exposes: per-pipe spatial/temporal dithering, color truncation, and as of v2.1 the display stream encoder itself (DisplayPort and HDMI). Built for flicker-sensitive users, display tinkerers, and anyone who needs to know (and change) exactly what signal their AMD GPU is putting on the wire.
14
+
RedControl talks directly to the AMD display engine (DCN) through UMR — the User Mode Register debugger — to control things no desktop settings panel exposes: per-pipe spatial/temporal dithering, color truncation, and the display stream encoder itself (DisplayPort and HDMI). Built for flicker-sensitive users, display tinkerers, and anyone who needs to know (and change) exactly what signal their AMD GPU is putting on the wire.
- 🎛️ **Dithering Control** — enable/disable spatial and temporal dithering, RGB noise, highpass/frame random, with per-depth and per-mode settings on every output (HDMI, DisplayPort, eDP, DVI)
32
32
- ✂️ **Color Truncation** — force a static signal by truncating/rounding to 6/8/10/12 bpc instead of dithering
33
-
- ⇄ **Signal panel (new in 2.1)** — live view of the DIG encoder driving each output: link type (DisplayPort, HDMI, or HDMI-over-DP++), pixel encoding (RGB/YCbCr) and the color depth actually on the wire. Force `DP_COMPONENT_DEPTH` (DP, 6–16 bpc) or `HDMI_DEEP_COLOR_DEPTH` (HDMI, 8–16 bpc) instantly — no modeset required; HDMI changes auto-revert in 15 s unless confirmed
33
+
- ⇄ **Signal panel** — live view of the DIG encoder driving each output: link type (DisplayPort, HDMI, or HDMI-over-DP++), pixel encoding (RGB/YCbCr) and the color depth actually on the wire. Force `DP_COMPONENT_DEPTH` (DP, 6–16 bpc) or `HDMI_DEEP_COLOR_DEPTH` (HDMI, 8–16 bpc) instantly — no modeset required; HDMI changes auto-revert in 15 s unless confirmed
34
34
- 🎨 **Color / Depth** — max bpc, colorspace (BT.709/opRGB/BT.2020), RGB range (full/limited) per connector
- 🎮 **Multi-GPU** — automatic detection and switching between AMD GPUs
@@ -95,26 +95,6 @@ Open **Signal (DP / HDMI)** in the sidebar for any monitor:
95
95
-**Force Link Depth** writes the encoder's depth field directly (`DP_COMPONENT_DEPTH` on DP, `HDMI_DEEP_COLOR_DEPTH`/`ENABLE` on HDMI). Every force goes through a Keep/Revert dialog that auto-reverts in 15 s if unanswered. **Pin (auto-reapply)** keeps a forced depth alive: a watchdog reapplies it whenever the driver resets the register on a modeset or monitor sleep/wake.
96
96
-**Why no 6 bpc on HDMI**: DisplayPort defines an 18-bit link format; HDMI's minimum is 24-bit RGB. For 6-bit output on HDMI, use Truncate → 6-bit or 6-bit spatial dithering — the wire stays 8 bpc but only 6 bits carry content.
97
97
98
-
## What's new in 2.2
99
-
100
-
-**Dark mode fixed** — every dialog, banner and readout follows the theme (no more blinding white pop-ups or hidden text).
101
-
-**Static Signal Test moved to the Dithering page** with a "hold the screen still" warning and a clear scope note: it detects *temporal, GPU-side* dithering only — not spatial dithering, monitor-side FRC, or backlight PWM.
102
-
-**GPU / monitor scaling** — None / Full / Center / Full aspect (like NVIDIA's scaling), plus underscan (overscan fix).
103
-
-**VRR / FreeSync status** card that reflects the display's capability.
104
-
-**Read bug fixed** — Link Status, TearFree and Broadcast RGB were silently failing to read (the monitor's EDID pushed the value past a scan window); now correct.
-**Added**: Signal section — DIG encoder readout (DP & HDMI) with on-wire depth forcing via UMR, DP++ adapter detection
112
-
-**Added**: mode-change confirmation dialog with 15-second auto-revert
113
-
-**Removed**: EDID editor/viewer (spoofing, colorimetry patching, firmware EDID install) — out of scope for a signal-control tool; monitor names are still read from EDID
114
-
-**Fixed**: outputs with untouched (power-on default) FMT registers — commonly DisplayPort — now get tabs like everything else
115
-
-**Fixed**: hardware→UI sync no longer hardcoded to one ASIC; works on any detected GPU
116
-
-**Fixed**: `--version`/`--help` printed nothing in default quiet mode
117
-
118
98
## Disclaimer
119
99
120
100
RedControl writes GPU registers directly. All writes are non-persistent (a reboot or modeset restores driver defaults), but a forced depth or encoding the sink can't handle may blank the screen until you revert. Use at your own risk.
0 commit comments