Cockpit 3a: PlasmaScreen on the desktop (L4PLASMA=SCREEN)
Renders BT's 128x32 plasma display into a desktop window instead of streaming to serial hardware. L4PLASMASCREEN.* copied verbatim from RP412; the L4GREND.cpp selector diff applied (BT's only divergence there is a comment -- no collision). Verified: a 'Plasma Display' window opens and the game ticks normally beside it (L4GAUGE=640x480x16 L4PLASMA=SCREEN). Phase 3b (single-window MFD-split cockpit) is DEFERRED -- blocked on the missing BT cockpit-layout geometry and BT's unfinished upstream MFD dev-composite; the L4VB16 hand-merge is HIGH-risk (BT's dev-gauge docking overlaps RP412's split rewrite). See context/steamification.md and docs/BT412-ROADMAP.md. (Phase 3 of the roadmap) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -64,7 +64,30 @@ pattern). Forked at BT411 `4e72f0c` (2026-07-14).
|
||||
parse (59 key buttons/8 axes/12 pad buttons/5 pad axes). Keyboard fallback
|
||||
regression-verified headless (`BT_FORCE_THROTTLE=1` walks). New diagnostics:
|
||||
`BT_CTRLMAP_LOG=1` (streamed-mapping dump), `BT_STICK_LOG=1` (RIO stick push trace).
|
||||
- Phases 3–7: not started — see the roadmap.
|
||||
- **Phase 3a (PlasmaScreen, `L4PLASMA=SCREEN`) — DONE 2026-07-14.** `L4PLASMASCREEN.*`
|
||||
copied verbatim; `L4GREND.cpp` selector diff applied (BT's only divergence there is a
|
||||
comment at line 440 — no collision). Renders BT's 128×32 plasma into a desktop window.
|
||||
Verified: a window titled "Plasma Display" opens and the game ticks normally beside it
|
||||
(`L4GAUGE=640x480x16 L4PLASMA=SCREEN`). Note: the `L4GAUGE` gauge path binds a listen
|
||||
socket at startup → a first-run Windows Firewall prompt (expected; unrelated to plasma).
|
||||
- **Phase 3b (single-window MFD-split cockpit, `L4MFDSPLIT=1`) — DEFERRED 2026-07-14.**
|
||||
Two blockers make this the wrong thing to land now:
|
||||
1. **No BT cockpit-layout geometry.** RP412's `L4MFDVIEW` button-bank anchors/addresses
|
||||
come from vRIO's `CockpitLayout` for the Red Planet pod; vRIO has **zero** BattleTech
|
||||
data. The BT pod's panel geometry has no reference (needs pod photos / `l4gauge.cfg`
|
||||
mining / Nick) — the clickable lamp-lit banks can't be authentically placed.
|
||||
2. **BT's MFD compositing is an unfinished upstream beachhead.** Per `docs/GAUGE_COMPOSITE.md`,
|
||||
only the radar/secondary surface composites on a dev box; the five mono MFDs don't
|
||||
render yet (port-name mismatch, Step 2). RP412's split panes would be empty until that
|
||||
upstream work lands.
|
||||
3. **Merge is HIGH-risk** (quantified above): BT's 521-line L4VB16 divergence (dev-gauge
|
||||
docking + a 476-line block) overlaps RP412's 402-line split rewrite in the ctor and
|
||||
`Update` regions — a true hand-merge, not a drop-in. The 3-way diffs are staged in the
|
||||
scratchpad (`rp412-L4VB16.diff`, `bt-L4VB16.diff`).
|
||||
Prerequisite order when resumed: finish BT's MFD dev-composite (GAUGE_COMPOSITE.md Steps
|
||||
2–3) → obtain BT cockpit geometry → then hand-merge `MFDSplitView`. Until then the game
|
||||
ships single-window with the dev-gauge dock (`BT_DEV_GAUGES`) as its cockpit composite.
|
||||
- Phases 4–7: Phase 4 (NetTransport seam) next — unblocked and independent of 3b.
|
||||
|
||||
## The seams (what plugs in where) [T0 unless noted]
|
||||
|
||||
|
||||
Reference in New Issue
Block a user