RETRACTION + FIX: the myomer seek->speed coupling IS in the 4.10 binary --

restored byte-grounded; the morning's removal was export-gap blindness

Player testimony (Oracle, pod veteran: seek-4 humanoid = 182 kph -- the
manual's printed Super Charged figure; overheat = 'freezing up') forced a
re-audit of the morning's 'no dynamic myomer->speed feed' verdict.  The
verdict was WRONG: a raw-image capstone sweep for FPU reads of [reg+0x31C]
found the consumer inside the UN-EXPORTED master-perf region -- the same
decomp gap that hid the #93 crash block.  Decoded @0x4a9cf2-0x4a9da4 [T1]:

  per frame: MAX speedEffect@0x31C over the myomer chain (+0x7AC)
             -> mech+0x79C
             mapper->speedDemand@0x128 *= it        (the SPEED coupling)
             if |drive| <= 1e-4 (@0x4ab16c):
                 mapper->turnDemand@0x12C = 0       (the FREEZE)

Everything the manual + the veterans describe emerges: gear 4 rides
speedEffect ~1.43 into the RegisterMaxOutput gait cap (base x 1.4284 --
the two mechanisms interlock: 61.5 x 1.43 = 87.9 vs cap 87.8 measured) =
SUPERCHARGE; myomer heatFactor degradation slows you; overheat freezes
speed AND turn; damage slows (speedEffect carries 1-damage -- #75's
original premise was RIGHT and its 'falsified' close was wrong).

Restored in mechmppr.cpp, byte-grounded and better than the pre-removal
draft: MAX over the chain (was first-found), NO 1.0 clamp (the old clamp
ate the overdrive), turn-freeze included.  BTMyomersSpeedEffectOf
(unclamped) replaces the deleted BTMyomersDriveOf.

Verified live: healthy drive=1.0 (no speed change), collision-rattled
myomers drive 0.999 -> 0.892 -> 0.742 with demand scaling in lockstep
(61.5 -> 54.9 -> 45.7).

KB corrected in place (subsystems WAVE 6, pod-hardware manual audit
retraction, open-questions resolved) + NEW GOTCHA #21: export-gap
blindness -- 'no callers in the decomp' is not 'no callers in the
binary'; sweep the raw image for the operand pattern before declaring a
data path dead, and when a primary source disagrees with your decomp
sweep, suspect your evidence first.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019Zh7PTkFy4KwTzVighLR9J
This commit is contained in:
Joe DiPrima
2026-07-31 10:54:11 -05:00
co-authored by Claude Fable 5
parent 4704ab3d41
commit 905a4a86c0
6 changed files with 113 additions and 33 deletions
+19 -7
View File
@@ -414,13 +414,25 @@ Scalar Myomers::SeekVoltageResponse(Scalar input_voltage)
// (see emitter.cpp BTSeekVoltageSample). Guarded: a non-Myomers subsystem
// samples 0 (only emitter/myomer pages own a graph in the shipped config).
//***************************************************************************
// (BTMyomersDriveOf is DELETED -- myomer-system completion, 2026-07-31. The
// demand-side `speedDemand *= speedEffect` coupling it fed (mechmppr.cpp) was
// an invention built on the ConnectToMover misattribution. The binary's only
// runtime AvailableOutput consumers are RegisterMaxOutput (assembly) and the
// SeekVoltageGraph sampler; myomer damage does NOT slow a live mech -- a
// DESTROYED myomers KILLS it, via the authored vital flag (the only vital=1
// subsystem in the RES) + the #80 vital-crit death path.)
//***************************************************************************
// BTMyomersSpeedEffectOf -- the myomer drive fraction for the master perf's
// demand scale (mechmppr.cpp). RESTORED 2026-07-31 (the seek audit): the
// morning's deletion of the predecessor (BTMyomersDriveOf) rested on an
// export-gap-blind sweep -- the REAL consumer lives in the un-exported
// master-perf region @0x4a9cf2-0x4a9da4: MAX speedEffect over the myomer
// chain -> mech+0x79C -> `mapper->speedDemand *= it` (+ turn freeze at
// |drive| <= 1e-4). UNCLAMPED (the old bridge's f>1 -> 1 clamp ate the
// gear-4 overdrive): speedEffect legitimately rides to ~1.43 at seek 4.
// Returns -1 for a non-Myomers subsystem. [T1 disasm]
//***************************************************************************
Scalar BTMyomersSpeedEffectOf(void *subsystem)
{
Entity *entity = (Entity *)subsystem;
if (entity == 0 || !entity->IsDerivedFrom(Myomers::ClassDerivations))
return -1.0f;
Scalar f = ((Myomers *)entity)->SpeedEffect();
return (f > 0.0f) ? f : 0.0f;
}
Scalar BTMyomersSeekSample(void *subsystem, Scalar voltage)
{