NEW gated TUs: L4PADPANEL (GDI top-level window, all-W APIs: the pod button banks -- upper/lower aux, 12 secondary, specials/hat/handle, 63 buttons -- clickable via PadRIO::SetScreenButton with lamp-lit faces from GetLampState, 10 Hz repaint; created by the PadRIO ctor on BT_PAD_PANEL=1) and L4PLASMAWIN (PlasmaWindow : Video8BitBuffered -- the gauge renderer draws the 128x32 plasma into its pixelBuffer through the SAME code path as the serial device; Update() blits orange-on-black at L4PLASMASCALE, default x4). Gated seams: L4GREND.cpp L4PLASMA=SCREEN branch; btl4main.cpp -platform glass preset (PAD,KEYBOARD + BT_DEV_GAUGES + SCREEN plasma + panel; env always overrides; non-glass builds log+fall back to DEV); run.cmd glass token. MFD surfaces need NO new code: the existing dock-bottom / BT_DEV_GAUGES_WINDOW=1 / BT_DEV_GAUGES_DOCK=1 modes are the display story. Verified live: -platform glass boots GLASS profile, panel + plasma windows up, pad detected, dev gauges awake, mission loop clean. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
42 lines
1.7 KiB
Batchfile
42 lines
1.7 KiB
Batchfile
@echo off
|
|
rem Launch btl4.exe against the bundled content tree.
|
|
rem The game requires its working directory to be the content dir (BTL4.RES,
|
|
rem VIDEO\, BTDPL.INI, *.EGG are all resolved relative to cwd).
|
|
rem
|
|
rem Usage: run.cmd [EGG] [pod|dev|glass] (args order-independent)
|
|
rem EGG a mission descriptor in content\ (default DEV.EGG = grass/day)
|
|
rem pod | dev | glass platform profile (default dev):
|
|
rem dev = single 800x600 window + keyboard (the dev test build)
|
|
rem pod = RIO cockpit input + (on real pod hardware) the
|
|
rem multi-surface gauges/MFDs. On a dev box pod boots
|
|
rem single-window (the multi-surface needs the pod's 2
|
|
rem video cards); it still exercises the pod input/config.
|
|
rem glass = the desktop cockpit (BT_GLASS builds only): PadRIO
|
|
rem input (XInput pad + keyboard, content\bindings.txt),
|
|
rem the on-screen clickable button panel, dev MFDs
|
|
rem (BT_DEV_GAUGES_WINDOW=1 / _DOCK=1 select window vs
|
|
rem overlay), and the desktop plasma window.
|
|
rem (Equivalent: set BT_PLATFORM=pod|glass, or pass -platform ... to the exe.)
|
|
setlocal
|
|
set CFG=Debug
|
|
set EGG=
|
|
set PROF=dev
|
|
|
|
:parse
|
|
if "%~1"=="" goto done
|
|
if /i "%~1"=="pod" (set PROF=pod& shift& goto parse)
|
|
if /i "%~1"=="dev" (set PROF=dev& shift& goto parse)
|
|
if /i "%~1"=="glass" (set PROF=glass& shift& goto parse)
|
|
set EGG=%~1
|
|
shift
|
|
goto parse
|
|
:done
|
|
|
|
if "%EGG%"=="" set EGG=DEV.EGG
|
|
if /i "%PROF%"=="pod" set BT_PLATFORM=pod
|
|
if /i "%PROF%"=="glass" set BT_PLATFORM=glass
|
|
|
|
echo [run] egg=%EGG% profile=%PROF%
|
|
cd /d "%~dp0..\content"
|
|
"%~dp0..\build\%CFG%\btl4.exe" -egg %EGG%
|