Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
01066 Sound Minor Have not tried Feb 9, 2008, 08:22 Jun 23, 2021, 07:08
Tester -Misc Reporters- View Status Public Platform
Assigned To Resolution Fixed OS
Status [?] Resolved Driver
Version 0.114u4 Fixed in Version Build
Fixed in Git Commit Github Pull Request #
Summary 01066: YM2203 SSG-EG inaccuracy.
Description YM2203 SSG-EG inaccuracy: Seems to be emulation of YM2203 feature 'SSG-EG' has inaccuracy in MAME. We (I as programmer and some other people as hardware developers) construct some sort of sound card which uses YM2203, and I wrote software for it. For testing purposes I use some of source code from MAME, related to YM2203 emulation (to make fast tests on PC, instead of real thing).
Now listen to two attached samples - which contains short part of music and then all possible SSG-ENV types in one channel. One of these samples recorded from real thing, YM2203 @3.5 MHz, and another rendered by YM2203 emulation code from MAME. Comments in fm.c code said:

The difference (when compared to normal Envelope Generator mode) is that the resolution in Decay and Sustain phases is 4 times lower;
this results in only 256 steps instead of normal 1024.

But seems to resolution in SSG-EG mode 8 times lower, not 4. I checked that by changing adding value from 4 to 8 in strings 1147 and 1170 of fm.c, and it sounds more like true. But there still some differences with envelope stages, by now I can't figure it clearly (you can see this in samples with any audio editor).I also can provide test register array (in simply format, .GYM-like), which was used to record these samples.
Steps To Reproduce
Additional Information Posted by Shiru
Github Commit
Flags Verified with Original
Regression Version
Affected Sets / Systems
Attached Files
mp3 file icon emulated_ym2203.mp3 (207,376 bytes) Feb 14, 2008, 17:58
mp3 file icon real_ym2203.mp3 (245,510 bytes) Feb 14, 2008, 17:58
There are no relationship linked to this issue.
User avatar
May 27, 2008, 20:23
The register dump would be much appreciated .... The samples are a good base to start, but the registers would allow easy tracking of code.
User avatar
Jun 23, 2021, 07:07
This is a useless bug report as there is no means of reproducing the problem. Further, the FM engine has been completely rewritten since then. If a similar problem still exists, a new bug should be created with actual repro steps or VGM files so we can isolate the issue.