Skip to content

Reduce raster overhead and fix paused Boss Rush replacements - #142

Merged
mstan merged 3 commits into
mainfrom
integrate/qualified-raster-current-main
Oct 23, 2026
Merged

mstan merged 3 commits into
mainfrom
integrate/qualified-raster-current-main

Conversation

@mstan

@mstan mstan commented Oct 23, 2026

Copy link
Copy Markdown
Owner

Avoid repeated full VRAM copies during raster capture by sharing exact immutable snapshots, and reuse the last stage-map cell lookup within each draw. Guest execution, PPU side effects and presentation rules stay intact. Scoped write tracking falls back to exact comparison for uncertain intervals, callbacks and trace builds. Portable full-copy and cache-disabled reference options remain available; the engine pin adds only the shared snapshot helper atop main's existing engine ancestry.

Also fix the owner's reproduced Boss Rush report: native boss death and Start on the same frame can enter the weapon-menu coroutine before its flags publish, temporarily clearing the live camera. The replacement controller used that camera to spawn Spark Mandrill outside the arena. Gate replacement progression/creation on the saved arena camera contract and use the saved origin during transient invalid camera state. Preserve normal combat and Mammoth scrolling; do not silently modify the owner's already escaped saved actor.

Reapplied to current main 99450ef after the owner approved the earlier MMX/SMW/SM bundle, preserving newer Zero and camera fixes. Validation: GCC Release including recomp-net/rbengine and ICE; 31 registered CTests with zero failures (29 pass, two optional donor-asset skips), including four Magic Carpet checks and 180 real death/pause replacement cases; nine exact full-copy/optimized Magic Carpet BMP pairs; independent and unified two-process gameplay peers with actual rollback/replay and imported weapons; audio-enabled desktop rollback, delay sync and forced state/slot repair without offline autosave pollution. Automated audio output uses SDL dummy. No rbengine/netplay protocol changes.

Earlier bounded MMX raster-route measurements saved 13–32% CPU time; the later stage-map trial saved about 4.9% relative to the snapshot candidate on its three-scene workload. Do not add those differently weighted percentages. Current-main reruns establish correctness, not new performance estimates; original Xbox runtime remains unqualified. Full evidence and accepted/rejected experiments are in docs/PERFORMANCE_BURNDOWN.md.

Tracking: beads-9nma, beads-akjp, beads-8wg.1.145. Shared helper: RetroPortingToolKit/snesrecomp#209 (merged).

@mstan
mstan merged commit 145422f into main Oct 23, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant