#118 correction sweep: the ARCADE's eject was LIVE -- 'dead code in 4.10' was wrong

The absolute-pointer scan missed the E8-relative call; the later byte-scan
found it (FUN_004a9b5c+0x10 -- the master performance evaluates eject
permission per frame in the shipped binary). Under deadline pressure the
disproven 'unfinished/dead code' claim leaked back into three comments and
the handoff; swept per the correction mandate.

Settled press model, now stated correctly everywhere: pilot eject = the
pilot KEYPAD bank while armed (+ the PANIC key reporting through that
matrix). The MFD soft keys NEVER pilot-eject in the binary -- every page
routes them to authored functions; the flashing engEject cell is the
INVITE LAMP. The port's page-gated eng-key eject is a MARKED CONVENIENCE
deviation (operator-requested), and the coolant hysteresis is a MARKED
smoothing deviation for a degenerate boundary oscillation -- not
completions of unfinished code.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Joe DiPrima
2026-08-04 02:40:39 -05:00
co-authored by Claude Fable 5
parent 38872ac726
commit 675fe68cb0
3 changed files with 33 additions and 16 deletions
+15 -10
View File
@@ -2631,16 +2631,21 @@ void
//----------------------------------------
buttonActivateModeMask[rio_event.Data.Unit] = mode_mask;
// THE ENG-PAGE EJECT KEY [T3 intent-completion, #118]: side keys
// 0x0B/0x23/0x03 are the eng-page EJECT position (engEject lamp 0x85
// = kBTEngBankTop-4; the streamed weapon pages route the same key to
// EjectAmmo). Eject was UNFINISHED in the 4.10 binary (the armed
// mode never rose), so the generator-page press has no authored
// route; complete the intent here IN THE DRAIN (game thread --
// mode_mask in hand; a first cut queried the mode manager from the
// window-click thread and crashed on the unbound TU global): while
// PANIC is armed AND that bank shows an ENG page, forward the press
// as a pilot-keypad key -- the binary's one armed eject binding.
// THE ENG-PAGE EJECT KEY [T3 PORT CONVENIENCE -- a marked DEVIATION,
// #118]: side keys 0x0B/0x23/0x03 are the eng-page EJECT position
// (engEject lamp 0x85 = kBTEngBankTop-4). IN THE BINARY these soft
// keys NEVER pilot-eject: every page routes them to a real authored
// function (weapon pages: EjectAmmo 0xB; myomer pages: seek toggle 9;
// the streamed .CTL dump has no 0x200000 records), and the flashing
// engEject lamp is the INVITE -- the 1995 press was the pilot KEYPAD
// / PANIC key beside it. The pod eject chain itself was LIVE in 4.10
// (master perf FUN_004a9b5c+0x10 evaluates per frame; an earlier
// "unfinished" note here was wrong). This hook adds the glass-layer
// convenience the operator asked for: while PANIC is armed AND that
// bank shows an ENG page, the flashing key ALSO forwards as a
// pilot-keypad press. Runs in the drain (game thread -- mode_mask
// in hand; a first cut queried the mode manager from the window
// thread and crashed on the unbound TU global).
{
const int a = rio_event.Data.Unit;
unsigned engBits =