fix(multiball): start completed panel on type-three reset

The original reset helper checks contact words 129 through 133 and starts the
DAT600 panel whenever all five are nonzero. This matters after the fifth lock is
captured during multiball: the panel is initially deferred, but a later
single-ball type-three reset, including record 148, starts it even without a
second lock-hole award. Rust only started the panel from its lock completion
helper.

Mirror the five-contact gate in the shared type-three launcher reset. Extend the
multiball completion regression to prove both the special-hole reset path and
the separately capped survivor recapture path.

Test Plan:
- `cargo test --workspace --all-targets --all-features` -- 124 passed
- `cargo clippy --workspace --all-targets --all-features -- -D warnings` -- passed
- `rumdl check --flavor commonmark RECONSTRUCTION.md CHANGELOG.md` -- passed
- `git diff --cached --check` -- passed
This commit is contained in:
2026-08-23 20:34:34 +02:00
parent 23195cb9d1
commit c1790c7ff6
3 changed files with 15 additions and 2 deletions
+3 -1
View File
@@ -121,7 +121,9 @@ and this project adheres to
hole, including physics suspension, contact/item cleanup, all nine image
phases, and the original WAVE 2013/2012/stop boundaries. A fifth lock captured
during multiball still transfers its capped 160,000-step award but defers the
panel until a later single-ball completion.
panel until a later single-ball completion. Any subsequent type-3 reset with
all five contacts set, including the special hole, also starts the panel as
`1000:9e85` does.
- Remove the invented attract-screen instruction panel and stop assigning the
original F2/F3 keys to modern overlays. The idle view is the original table;
optional settings/high-score viewers move to F10/F9.