KB: menu-gate bullet updated for the glass desktop default

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
arcattack
2026-07-22 09:18:42 -05:00
co-authored by Claude Opus 4.8
parent 9e85f6dc56
commit 3097d269b4
+5 -3
View File
@@ -40,9 +40,11 @@ version skew (a stale steam exe shipped 2 days behind), tripled build time, and
(including a STALE one from an earlier ON build), a README with the steam section stripped,
and a `-nosteam` name suffix so the two flavors never clobber. Verified both flavors:
OFF exe has no steam bits + `BT_STEAM_NET=1` is inert; ON exe degrades to Winsock.
- **Menu guard (cabinet protection):** the miniconsole previously claimed any zero-arg launch;
unified, it requires `BT_PLATFORM=glass` (or `BT_FE_MENU=1`) — a bare cabinet boot can never
land in the menu (btl4main.cpp, platform parse moved above the fe_menu_mode computation).
- **Menu gate (amended 2026-07-22):** the miniconsole menu runs on a zero-arg GLASS boot —
and glass is now the desktop default, so a bare double-click of btl4.exe opens the menu
(the desired desktop UX). Cabinet protection moved from "bare boot never menus" to the
**SETENV.BAT contract**: the real pod sets `BT_PLATFORM=pod` (no menu, wait-for-egg);
`BT_PLATFORM=dev` also keeps the old bare-boot shape.
- Verified matrix (2026-07-21): bare boot ≡ old pod exe (same DEV profile, same egg-load path);
glass + scripted click → ConfigureMappables end-to-end; exe runs WITHOUT steam_api.dll
present; glass zero-arg → menu; 2-node loopback MP (145 ticks each); `BT_STEAM_NET=1`