Cockpit camera complete + namedpipe transport + 832x512 native res

Render bridge (live_bridge.py, vrview_gl.py):
- Hat glances render (left/right frame the canopy, hat-down = clean rear).
  Root bug was a stale _ckpt['fix'] key -> KeyError every glance frame ->
  render aborted (screen froze on hold, snapped back on release). The glance
  itself is the authentic eye-DCS action-0x1f reflush fp_cam already applies.
- Torso twist turret-true (root-axis yaw, zero parallax); lasers follow torso.
- Rear glance drops the canopy shell for a clean view (original-hardware
  behavior); mission-fade shroud 9fd hidden.
- Wireframe debug mode (VRVIEW_WIREFRAME / 'w' key), scene-pass scoped.
- Renderer output = 832x512, the dPL3 board's native framebuffer res.

DOSBox-X fork: namedpipe serial backend (serialnamedpipe.cpp/.h) for
vRIO/vPLASMA, replacing com0com; overlapped non-blocking I/O; typed frames
(0x00 data / 0x01 DTR+RTS). Tracked copies + apply steps in vpx-device.

Docs: COCKPIT-CAGE-NOTES (full glance/twist/rear forensics), XP-PORT-PLAN
(back-burnered), RIO-NOTES (namedpipe + keypad), pipe/egg conf variants.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Cyd
2026-07-14 10:08:15 -05:00
co-authored by Claude Opus 4.8
parent 873882b4be
commit aadda7f9a5
16 changed files with 1801 additions and 16 deletions
+6 -3
View File
@@ -31,8 +31,11 @@ namespace VwePod
public bool DryRun;
public string BridgePos = "0,0"; // main out-the-window head
public int BridgeW = 800;
public int BridgeH = 600;
// 832x512 = the dPL3 board's native framebuffer res (the game's view
// flush / pick coords are 832x512). Render 1:1 until the 800x600
// presentation question is settled (see LAUNCH.md).
public int BridgeW = 832;
public int BridgeH = 512;
public int DosBoxX = 10;
public int DosBoxY = 10;
@@ -167,7 +170,7 @@ namespace VwePod
--bridge-script <py> live_bridge.py (dev)
--awe-rom <raw> AWE32 SoundFont ROM
--bridge-pos x,y main render window position (default 0,0)
--bridge-size w,h main render window size (default 800,600)
--bridge-size w,h main render window size (default 832,512 = dPL3-native)
--dosbox-xy x,y DOSBox window position + focus (default 10,10)
--no-bridge pod only, no GL render window
--no-sound skip the ~4-min SoundFont upload. WARNING: no AWE32 =
+1 -1
View File
@@ -75,7 +75,7 @@ see `../CAMERA-REVIEW-NOTES.md`. Default mode: `bt`.
| Arg | Effect |
|---|---|
| `--bridge-pos x,y` | main render window position (default `0,0`) |
| `--bridge-size w,h` | main render size (default `800,600`) |
| `--bridge-size w,h` | main render size (default `832,512` — the dPL3 board's native framebuffer res; see `../LAUNCH.md`) |
| `--dosbox-xy x,y` | DOSBox window position + focus (default `10,10`) |
### Path / asset overrides (dev / edge — `postinstall` already wires these)