Skip to content

Add SPU mips tests (test on HW help needed)#2018

Draft
Xeeynamo wants to merge 3 commits into
grumpycoders:mainfrom
Xeeynamo:spu-mips-tests
Draft

Add SPU mips tests (test on HW help needed)#2018
Xeeynamo wants to merge 3 commits into
grumpycoders:mainfrom
Xeeynamo:spu-mips-tests

Conversation

@Xeeynamo
Copy link
Copy Markdown

I am experimenting a SPU regression suite on a SPCH-5552 to raise the base line to which emulators should adhere to reproduce PS1 sounds accurately.

As of today, tests are non-exhaustive and they occasionally suffer from synchronization issues. These tests aim to purely focus on ADPCM decoding, resampling and the rate ADSR envelopes change the voice volume given a certain set-up. These tests should not depend to accurate CPU cycles, as it would defeat their purpose.

The PR is in draft. I am mostly requesting for feedback. The SPU synchronization is imperfect, and both ADPCM and voice tests might occasionally fail on real hardware. These tests have not been tested on older or newer PS1 revisions, on a PS2 or arcade boards. Tests hang on PCSX Redux due to the SPU Status bit11 flip not being implemented.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 23, 2026

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: fcfeb778-4174-4e98-9941-4e4e2d1719ac

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@nicolasnoble
Copy link
Copy Markdown
Member

I think this generally speaking looks good. We may want to avoid the run target in the Makefile and leave it to the operator to decide how to actually run those, given there's multiple harnesses around, but that's my only very small nit.

@Xeeynamo
Copy link
Copy Markdown
Author

Xeeynamo commented May 24, 2026

I think this generally speaking looks good. We may want to avoid the run target in the Makefile and leave it to the operator to decide how to actually run those, given there's multiple harnesses around, but that's my only very small nit.

Thanks for the feedback. I removed the run but kept spu_dump for simplicity. Let me know if you want that to be removed as well.

For the tests themselves, I reached a point where I am happy with what I wrote so far. I am happy to make further changes where I missed the mark.

These tests have been tested only on one console. Before I have the confidence to mark the PR as ready, I'd like help to collect the test run results from other consoles as well.

@Xeeynamo Xeeynamo changed the title [RFC] Add SPU mips tests Add SPU mips tests (test on HW help needed) May 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants