Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
06607 Sound Minor Always Jun 6, 2017, 01:09 Nov 4, 2018, 15:15
Tester Tempora View Status Public Platform MAME (Official Binary)
Assigned To hap Resolution Fixed OS Windows 10 (64-bit)
Status [?] Resolved Driver
Version 0.186 Fixed in Version 0.204 Build 64-bit
Fixed in Git Commit Github Pull Request #
Summary 06607: xmen and clones: Instruments in the music are playing back at the wrong volume (regression)
Description Identical to BugID 04741 which was resolved.
May have been caused by "0.186: Implemented K054321 as a device [O. Galibert, Phil Bennett]."
Steps To Reproduce Run game.
Additional Information Was resolved by hap by adjusting volumes of YM2151 = 0.2, K054539 = 1.0
Github Commit
Flags Verified with Original
Regression Version .186
Affected Sets / Systems xmen and clones
Attached Files
 
Relationships
duplicate of 07122Closed  xmen: Audio from K054539 incredibly quiet while audio from YM2151 is too loud 
related to 04741Resolvedhap  xmen: Instruments in the music are playing back at the wrong volume 
Notes
2
User avatar
No.15601
hap
Developer
Oct 22, 2018, 21:44
It looks like set_input_gain on a speaker resets the one set in MCFG_SOUND_ROUTE.
For example in xmen.cpp, the ym2151 is MCFG_SOUND_ROUTE(0, "lspeaker", 0.20). k054321_device::propagate_volume() resets the input gain, overriding the 0.20
User avatar
No.15602
hap
Developer
Oct 23, 2018, 00:27
moo.cpp and rungun.cpp are affected too.
It can be worked around like this (xmen.cpp) but I don't like this solution, won't push it to git. k054321 needs refactoring instead.

#include "sound/flt_vol.h" upstairs
and at mconfig:

/* sound hardware */
SPEAKER(config, "lspeaker").front_left();
SPEAKER(config, "rspeaker").front_right();

FILTER_VOLUME(config, "ymsnd_l").add_route(ALL_OUTPUTS, "lspeaker", 1.0);
FILTER_VOLUME(config, "ymsnd_r").add_route(ALL_OUTPUTS, "rspeaker", 1.0);
FILTER_VOLUME(config, "k054539_l").add_route(ALL_OUTPUTS, "lspeaker", 1.0);
FILTER_VOLUME(config, "k054539_r").add_route(ALL_OUTPUTS, "rspeaker", 1.0);
K054321(config, m_k054321, "lspeaker", "rspeaker");

MCFG_DEVICE_ADD("ymsnd", YM2151, XTAL(16'000'000)/4)
MCFG_SOUND_ROUTE(0, "ymsnd_l", 0.20)
MCFG_SOUND_ROUTE(1, "ymsnd_r", 0.20)

MCFG_DEVICE_ADD("k054539", K054539, XTAL(18'432'000))
MCFG_SOUND_ROUTE(0, "k054539_l", 1.00)
MCFG_SOUND_ROUTE(1, "k054539_r", 1.00)