Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
03911 Sound Minor Always Jul 1, 2010, 09:32 22 days ago
Tester Phil Bennett View Status Public Platform MAME (Official Binary)
Assigned To sasuke Resolution Fixed OS
Status [?] Resolved Driver stfight.cpp
Version 0.138u2 Fixed in Version 0.231 Build
Fixed in Git Commit e5ae9d5 Github Pull Request #
Summary 03911: stfight, empcity: Music pitch is too low
Description Compared to the original PCB, the music is too low-pitched.

Furthermore, the YM2203s should be clocked at 1.5MHz which makes the issue even worse.
Steps To Reproduce
Additional Information References:

Github Commit
Regression Version
Affected Sets / Systems stfight, empcity
Attached Files
mp3 file icon TaitoGame Music - Empire City 1931.mp3 (7,603,058 bytes) May 19, 2013, 15:04 Uploaded by Fujix
Moved to Testers.
There are no relationship linked to this issue.
User avatar
Jul 1, 2010, 12:28
edited on: Jul 1, 2010, 12:30
In fact, this report used to be empcity36finalyel in the old bug database. It missed for some reason. Thanks for re-excarvation anyway :)

btw, I can't find the mp3 file at " Music - Empire City 1931.mp3".
User avatar
Phil Bennett
Jul 1, 2010, 13:43
Whoops - it's: Game Music - Empire City 1931.mp3
User avatar
Phil Bennett
Sep 13, 2013, 23:04
As of 0.149u2/0.150, the YM2203s are now clocked at 4.5MHz. Though incorrect, this at least gives pitch-correct music and sound. Keeping this bug open until we figure out what's really going on...
User avatar
Feb 2, 2020, 06:33
edited on: Feb 2, 2020, 06:42
BGM sounds correctly, but the countdown and clear bonus sounds are still low pitch.
Writing initial value to the pre-scaler (divider) register solves this problem and allows the clock hack to be removed.
Todo (source comments) speculates that the default value is correct, but I think this change is more correct by looking at the behavior of PSG.
ym2203_device &ym1(YM2203(config, "ym1", 12_MHz_XTAL / 8));
ym1.add_route(0, "mono", 0.15);
ym1.add_route(1, "mono", 0.15);
ym1.add_route(2, "mono", 0.15);
ym1.add_route(3, "mono", 0.10);
ym1.write(0, 0x2f); // Clock prescaler FM 1/2, PSG 1/1

ym2203_device &ym2(YM2203(config, "ym2", 12_MHz_XTAL / 8));
ym2.add_route(0, "mono", 0.15);
ym2.add_route(1, "mono", 0.15);
ym2.add_route(2, "mono", 0.15);
ym2.add_route(3, "mono", 0.10);
ym2.write(0, 0x2f); // Clock prescaler FM 1/2, PSG 1/1
User avatar
23 days ago
All sound pitch was corrected with following PR.