Rework the header RSSI bar (uiUtilityDrawRSSIBarGraph) from a solid two-stage
bar into discrete blocks, one per S-level, on colour displays:
- 9 green blocks for S1..S9 (4 dB per S-unit) plus 6 red blocks for the S9+
region (10 dB per block, S9+10..S9+60), drawn with 2 px gaps so the header
background shows between them.
- Proportional fill: full blocks below the level, leading block partially filled
to reflect the exact signal.
- Bar height raised 4 -> 6 px; the FM/DMR mic-level bars follow the same height
so nothing is left behind when switching RX <-> TX.
- Scale labels below the blocks: S1/S3/S5/S7/S9 under the green zone and
+20/+40/+60 under the red, centred under their blocks (font_6x8). The label
row is blanked while transmitting.
Monochrome displays keep the original solid bar. Existing analog S9+ RSSI
compression is preserved, so calibration is unchanged.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>