Firmware wedge patch CONFIRMED on real hardware — bench A/B results
Baseline (original chip): reply path wedged 0.62s into the run — the tool's own version/check exchange colliding with analog polling was enough, no mash required — and stayed dead for all 300s despite 951 button presses (no button revival; power cycle only). Patched chip: survived the same startup collision, 2419 analog replies at a steady ~16/s over 152s under heavier mash (peak 635/min), zero wedges, worst gap 0.58s self-recovered — the $DFF0 latch-clear stub doing its job. Results table + evidence logs committed (rio-firmware/testlogs/). Remaining: cabinet soak + native-game session; 31250 variant A/B. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -215,3 +215,28 @@ button-revived wedge — use it to sanity-check the alarm before a session.
|
||||
| `$3184/$85` | give-up / error diagnostic counters |
|
||||
| `$3186` | RX overrun flag (set at `$D701`, **never read** — not the cause) |
|
||||
| `$102D/$2E/$2F` | SCCR2 / SCSR / SCDR (HC11 SCI) |
|
||||
|
||||
## Bench validation results (2026-07-18) — PATCH CONFIRMED
|
||||
|
||||
Rig: real RIO board, FTDI FT232R on COM1, `RioSerialMonitor --mash`
|
||||
(app auto-recovery disabled, lamp echo on). Logs in `testlogs/`.
|
||||
|
||||
| | baseline (original AMD chip) | patched (W27C512) |
|
||||
|---|---|---|
|
||||
| startup version/check exchange | **wedged at 0.62s** (reply/reply collision) | survived |
|
||||
| analog replies | 6 total, then dead for 300s | 2419 @ 152s, steady ~16/s |
|
||||
| mash | 951 presses (peak 460/min) | 1315 presses (peak 635/min) |
|
||||
| worst analog gap | infinite — no recovery in 300s despite 951 presses | 0.58s, self-recovered |
|
||||
| wedge events | 1, unresolved (power cycle required) | 0 |
|
||||
|
||||
Notes: the baseline wedge didn't even need the mash — the tool's own
|
||||
version+check request colliding with the analog poll killed the reply
|
||||
path instantly, and (contrary to the earlier RIO-NOTES observation)
|
||||
button presses did NOT revive it. The patched chip's single 0.58s gap
|
||||
is the intended failure mode: collision → teardown → latch cleared by
|
||||
the $DFF0 stub → self-recovery. Patched run cut at ~155s by operator
|
||||
(finger fatigue); given the baseline's 0.62s time-to-wedge, 2.5 min of
|
||||
heavier mash is decisive. Remaining (cabinet): overnight idle soak +
|
||||
a native-game session. Both check snapshots also reported a board/lamp
|
||||
fault item — persistent across chips, likely a real tired lamp; inspect
|
||||
separately.
|
||||
|
||||
Reference in New Issue
Block a user