Files
psxrecomp/runtime/include
Matthew Stanley 2ba81d5d7b Merge feat/audio-mmx4-attract: MMX4 attract-demo audio fixed (two defects)
1) cdrom: continuous disc clock — the read stream froze disc time while
   the guest had an unacked INT, starving the XA->SPU ring ~5-6x/s
   (6 Hz music dropout flutter). Replaced with the Beetle-mirrored
   SetAIP/CheckAIP model: disc never pauses, data-ready INT1 pends one
   deep, presented on ack. read_hold_cycles/int1_* tripwires in
   cdrom_state.

2) spu: END-without-REPEAT now jumps to the repeat address AND forces
   the envelope to zero (Beetle spu.cpp:333,341-352). Previously parked
   one-shot SFX voices decoded past the terminator at full envelope —
   X4's SFX bank parks them on +28672-DC filler with ~infinite release,
   railing the mix at +32767 (38-41% samples clipped = the 'static').

User ear-validated on the MMX4 attract ice-stage demo. Gate: MMX4 0.00%
clip post-fix; MMX5 boots healthy (pend path exercised 12-13x, 0 lost);
Tomba behavior equivalent to master. Runtime-only — no regen needed.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-10 15:19:14 -07:00
..
2026-05-17 21:58:55 -07:00