KB: trigger-config + keymap unification human-verified

context/glass-cockpit.md: record the BT_PLATFORM=glass/PadRIO click gating
(the dead-clicks root cause), the verified live regroup loop, the [cfgmap]/
BT_BTNTEST diagnostics, and the one-keymap settlement (babf5b1).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
arcattack
2026-07-21 09:41:37 -05:00
co-authored by Claude Opus 4.8
parent babf5b1e77
commit 0e013fd82d
+15
View File
@@ -61,6 +61,21 @@ copied from them.
(`BT_BUTTON_TRAP=1` restores) — each `[FAIL]` log = a missing L4 override to reconstruct.
Verified: authentic-path input (engine push → streamed `.CTL` → mapper), panel-click
survival, 2-node loopback MP un-regressed on the pod build. Detail: `docs/GLASS_COCKPIT.md`.
- **Trigger-config + one-keymap (2026-07-21, HUMAN-VERIFIED live).** The cockpit-surround
clicks only work when a `PadRIO` exists, and PadRIO only exists under the **GLASS platform
profile** (`BT_PLATFORM=glass``L4CONTROLS=PAD`); a plain launch falls to the DEV profile
(KEYBOARD) and `PadRIO::SetScreenButton` no-ops — every cockpit click silently discarded
(the "held PROGRAM, nothing happened" incident: `[cockpit] CLICK addr=0x8` logged but
ConfigureMappables id 9 never dispatched). `play_solo.bat` now sets `BT_PLATFORM=glass`
with the glass exe. The full regroup loop (hold PROGRAM → Mapping-mode flip suppresses
fire → fire-key taps toggle the binding → joystick-display dot moves → release commits)
is verified live. Diagnostics: `[cfgmap]` ENTER/EXIT (BT_FIRE_LOG, mechweap.cpp) +
`BT_BTNTEST="addr,on,off"` scripted screen-button harness (L4PADRIO.cpp Poll). **Keymap:**
which binding engine runs follows the same profile split — GLASS = PadRIO/`bindings.txt`,
DEV/pod = btinput/`CONTROLS.MAP` — which made the felt keymap flip with the boot flavor.
Settled 2026-07-21 (commit babf5b1): CONTROLS.MAP + the compiled-in default now mirror the
bindings.txt layout (numpad aim cluster, arrows=throttle/pedals, **Alt=reverse 0x3F**,
NumPad5=AllStop, Shift=throttle) so every boot flavor feels identical.
- **Step 3 (miniconsole): DONE 2026-07-17 [T2].** `game/glass/btl4fe.*` (menu + console-shape
egg writer, golden-tested vs MP.EGG) + `btl4console.*` (the marshal: a worker-thread console
CLIENT speaking the btconsole.py wire verbatim; `content\marshal.log`). ZERO engine hooks —