SPU Voice After End and Mute
Uses IRQ9 to find which sound RAM blocks a voice reads after an End+Mute block sends it to its repeat address.
| Machine | SCPH-5501 |
|---|---|
| Program | SXSPUEND |
This is an old revision of this page, as edited by RemmyLee at 05:40, 23 October 2026. Edit this revision | Latest revision
Overview
Voice 0 starts at sample M, whose block 0 has flags 00h and whose block 1 has flags 01h (End+Mute). Before key on, its repeat address is set to R. R is four silent blocks with flags 04h, 00h, 00h and 03h, so it loops on itself. The pitch is 1000h, at which one block takes 28 samples or 21504 cycles, and the envelope is held.1
The IRQ address is set in turn to M's first block (M0), to the first three blocks of R (R0, R1, R2) and to its last block (R3), and to an address no block reaches (X). After key on, the probe counts system clock cycles on root counter 2 until SPUSTAT bit 6 sets. It waits up to 400000 cycles and makes two rounds for each address.1
Results
After the End+Mute block the voice jumps to its repeat address and keeps reading sound RAM from there, block after block. IRQ9 at R0 hit 40972 and 40173 cycles after key on. In the second round R1 hit at 61887 and R2 at 83413. Each hit came one block after the one before.1
| Address | Block | Round 1 | Round 2 |
|---|---|---|---|
| 4200h | M0 | 2027 | 1828 |
| 4220h | R0 | 40972 | 40173 |
| 4222h | R1 | 553 | 61887 |
| 4224h | R2 | 506 | 83413 |
| 4226h | R3 | 835 | 741 |
| 4280h | X | none | none |
The hits under 1000 cycles at R1, R2 and R3 came before the voice had left M's first block. The address no block reaches never raised IRQ9.1 The SPU Registers and Envelope test found that a voice stopped by End+Mute raises IRQ9 at its repeat address; this probe shows that it goes on to the blocks after it.
Runs
Run 5501a-link on 15 October 2026
Raw output: SXSPUEND.txt
SXSPUEND.txt:
SXDEV I_MASK at init AE420100
SXSPUEND start
SXSPUEND IRQ M0 4200 round 1: 2027
SXSPUEND IRQ M0 4200 round 2: 1828
SXSPUEND IRQ R0 4220 round 1: 40972
SXSPUEND IRQ R0 4220 round 2: 40173
SXSPUEND IRQ R1 4222 round 1: 553
SXSPUEND IRQ R1 4222 round 2: 61887
SXSPUEND IRQ R2 4224 round 1: 506
SXSPUEND IRQ R2 4224 round 2: 83413
SXSPUEND IRQ R3 4226 round 1: 835
SXSPUEND IRQ R3 4226 round 2: 741
SXSPUEND IRQ X 4280 round 1: none
SXSPUEND IRQ X 4280 round 2: none
SXSPUEND end PASS
References
-
^ a b c d Hardware test run 20261015T1946Z-5501a-link on the SCPH-5501: SXSPUEND.txt.