Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
09229 Sound Minor Always 25 days ago 10 days ago
Tester hap View Status Public Platform MAME (Official Binary)
Assigned To Resolution Open OS Windows 11/10 (64-bit)
Status [?] Acknowledged Driver
Version 0.278 Fixed in Version Build 64-bit
Fixed in Git Commit Github Pull Request #
Summary 09229: moomesa: volume cuts sometimes after sound effect triggers
Description It has volume cuts sometimes after sound effect triggers, such as the player shot sound.

mame moomesa -wavwrite 1.wav is fine, so it seems like a bug in sound.cpp?
If I disable audio effects (or switch resampler type), the bug is still there.
If I skip the sound_stream_update in k054539.cpp, the bug is still there.

It continuously writes to active_w in k054321_device, which calls propagate_volume(), which calls m_speaker->set_input_gain, which calls sound.cpp sound_stream::update(), I think the bug is in there.
I assume it can be worked around it like this:

if (m_active != data)
{
m_active = data;
propagate_volume();
}

But that doesn't fix the underlying issue in sound.cpp

moomesa isn't the only game using this chip.
You can hear the volume chopping too in for example xexex after you go to service mode, and modify the global volume.
Steps To Reproduce Just play the game, and shoot a lot.
Additional Information
Github Commit
Flags
Regression Version 0.278
Affected Sets / Systems moomesa
Attached Files
mp3 file icon obs studio recording.mp3 (180,330 bytes) 25 days ago Uploaded by hap
png file icon 0000.png (4,742 bytes) 14 days ago Uploaded by hap
hap
mp3 file icon gijoe_277.mp3 (446,520 bytes) 14 days ago Uploaded by hap
mp3 file icon gijoe_279_live.mp3 (224,370 bytes) 14 days ago Uploaded by hap
mp3 file icon gijoe_279_wavwrite.mp3 (176,376 bytes) 14 days ago Uploaded by hap
mp3 file icon moomesa-sound volume and scale.mp3 (102,191 bytes) 10 days ago Uploaded by danylopez123
Both Sound Volume cursor and Scale joined into the same file
mp3 file icon bucky-sound volume and scale.mp3 (322,873 bytes) 10 days ago Uploaded by danylopez123
Both Sound Volume cursor and Scale joined into the same file, Scale doesn't seem to be affected
Relationships
There are no relationship linked to this issue.
Notes
5
User avatar
No.23547
Robbbert
Moderator
25 days ago
Can't get the sound to misbehave.

But it seems you've already fixed it?
User avatar
No.23548
hap
Developer
25 days ago
No I did not fix it.
User avatar
No.23550
hap
Developer
24 days ago
I worked around it here for this specific use case:
https://github.com/mamedev/mame/commit/e298ea572791f4abb85cd9805124b79d6e5f7beb

I say workaround, but the commit itself is not bad in any way. It makes sense to skip an unnecessary call to update() if the gain value did not change.
The issue can still be reproduced in moomesa service mode: Go to game options, put the cursor on sound volume, and the music is choppy.

The bug in sound.cpp: I suspect it may be doing commit() twice.
This: m_write_position += samples;
User avatar
No.23581
hap
Developer
14 days ago
edited on: 14 days ago
The same thing happens with gijoe (volume setting in service mode, see screenshot), I uploaded some recordings.
User avatar
No.23596
danylopez123
Tester
10 days ago
edited on: 10 days ago
I would like to add that for both moomesa and bucky since they use the same hardware, if you try to adjust the volume in the service menu, they will have alot of jittery sounds (Dont know how is called actually, im Spanish), however, outside the service menu it's sorta fine.
Worst case goes to moomesa because at the sound test, still happens the jittery sounds, with bucky doesn't seem to happen.. just weirdly i got that once, don't know the steps i did.

EDIT: I tried doing a .wav recording and while Ingame sounded jittery, the .wav recording sounds like it was sped up, I've included a .wav recording of moomesa with both when i was adjust the volume and at the sound check part.
Same thing with bucky but seems that the Sound scale part was fine.