Add a thin colored strip along the bottom of the spectrum (above the
ruler) showing the QO-100 narrow-band transponder bandplan: mode
segments (CW ONLY / NB DIGI / DIGI / SSB / MIXED MODES) plus the three
beacons (CW / PSK / EXP) as muted-red cells at their ranges.
- New unit BandPlanOverlay.pas (TBandPlanOverlay), modelled on
VfoOverlay: content rendered once into a cache bitmap, per-frame cost
is just a constant-alpha composite (CPU) / one textured quad (GL).
Cache invalidates only on view change (center/span/width) so it idles
while the QO-100 downlink display is static.
- Wired into both render paths: SpectrumView (CPU composite) and
SpectrumViewOpengl (texture, re-uploaded only when dirty).
- MainForm: SetView fed from SyncSpecViewFreq; visibility gated by
InQO100 (Pluto + full-duplex transponder), like RX MUTE / BEACON.
- DPI-robust: strip height scales with Screen.PixelsPerInch and the font
height is tied to the strip height (not point size), so labels always
fit at any Windows scaling.
- Segment/beacon frequencies and colors are a single editable table.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>