From 64f99ffcc8f48ce40a787f129561d2247ef92044 Mon Sep 17 00:00:00 2001 From: Cyd Date: Sun, 2 Aug 2026 08:15:52 -0500 Subject: [PATCH] BT410 5.3.92a: reconcile two stale claims in MECH2.NOTES.md The slot-map section added in 5.3.92 corrected two things the doc still asserted higher up: that gimpStrideLength is authored negative (the sign is applied at measurement) and that animationClips is sized AnimationCount (it is AnimationSlotCount, 0x21). Both now agree with the correction rather than leaving a reader to hit the stale version first. Co-Authored-By: Claude Fable 5 --- restoration/source410/BT/MECH2.NOTES.md | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/restoration/source410/BT/MECH2.NOTES.md b/restoration/source410/BT/MECH2.NOTES.md index 43b4c87e..c1b4e675 100644 --- a/restoration/source410/BT/MECH2.NOTES.md +++ b/restoration/source410/BT/MECH2.NOTES.md @@ -60,10 +60,11 @@ conjunctions would give a mech that stutters between gaits on noisy input. ## Two things that read wrong and are not -**`gimpStrideLength` is authored NEGATIVE.** The cycle time computed from it -comes out negative and is folded positive before being spent (binary -@0x4a6c6e / @0x4a6d3d). The fold is not defensive coding — remove it and the -limp plays backwards. +**`gimpStrideLength` is NEGATIVE.** The cycle time computed from it comes out +negative and is folded positive before being spent (binary @0x4a6c6e / +@0x4a6d3d). The fold is not defensive coding — remove it and the cycle plays +backwards. (The sign is applied at MEASUREMENT, not authored into the data — +see the slot map below.) **States 16–19 on the body channel are the REVERSE gait, not a limp**, despite sharing the `gimpSpeedMax` / `gimpCycleRate` caps. While the demand stays @@ -105,8 +106,9 @@ state: `legStateAlarm` / `bodyStateAlarm` (`AlarmIndicator` — read the state with `GetLevel`, the binary's mech+0x3b0 / +0x728 are mirrors of the alarm level, so no separate int is kept), `legCycleSpeed`, `bodyCycleSpeed`, `forwardCycleRate`, `gimpCycleRate`, `standSpeed`, `gimpSpeedMax`, -`gimpStrideLength`, `globalTimeScale`, and `animationClips[AnimationCount]`. -41 ints carved from `reservedState`, 191 → 150. +`gimpStrideLength`, `globalTimeScale`, and `animationClips[AnimationSlotCount]` +(0x21 — see the correction below). 41 ints carved from `reservedState`, +191 → 150. `walkStrideLength`, `reverseStrideLength`, `reverseSpeedMax` and `bodyTargetSpeed` were already present from the Phase 5.3 locomotion work and