Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
03764 Sound Minor Always Mar 3, 2010, 13:12 Mar 6, 2011, 23:49
Tester Jerry View Status Public Platform MAME (Official Binary)
Assigned To Resolution Fixed OS Windows 2000
Status [?] Resolved Driver
Version 0.136u3 Fixed in Version 0.141u4 Build Normal
Fixed in Git Commit Github Pull Request #
Summary 03764: kuniokun, kuniokunb: PCM sound base line gets shifted little by little.
Description PCM sound base line is dropping down little by little.

On modern OS, this doesn't appear for some reason (difference of wav handling by unsigned or signed?, or rounding up?).
Steps To Reproduce If you continue inserting credits slowly, the ADPCM output baseline reaches -30000 after 6 or 7 credit voices. This causes broken sound on some PCs.

It seems that usually this doesn't appear on rather modern OS like Windows XP and Vista/7.
In this case, you can confirm the dropdown by -wavewrite option and an wav editor.
Additional Information If you don't have the problem on you PC, maybe attached mp3s are also played correctly.
Github Commit
Flags
Regression Version
Affected Sets / Systems kuniokun, kuniokunb
Attached Files
mp3 file icon kunio.mp3 (453,120 bytes) Mar 4, 2010, 13:09
mp3 file icon kuniokun.mp3 (675,944 bytes) Mar 4, 2010, 14:41
jpg file icon k.jpg (207,519 bytes) Mar 5, 2010, 12:35
Relationships
There are no relationship linked to this issue.
Notes
7
User avatar
No.05822
Fujix
Administrator
Mar 3, 2010, 14:18
Jerry, I send you an email asking details in JAPANESE.
Please check out.
User avatar
No.05825
Fujix
Administrator
Mar 4, 2010, 13:09
According to the report author, PCM sound is getting broken little by little.
One of the easiest points to reproduce is when inserting credits, the voice becomes noisy and finally plays only noise.
He thought the regression was 0.129u6 first, but it doesn't have to do with the problem.
The sound problem can be seen both in kuniokun and renegade.


I tested the game based on his description, but no repro for now. Attached a recording.
User avatar
No.05826
Jerry
Viewer
Mar 4, 2010, 14:15
Changed in src\drivers/renegade.c line 208 from

renegade_adpcm.end = offs + len/2;

to

renegade_adpcm.end = offs + len/4;
User avatar
No.05827
Fujix
Administrator
Mar 4, 2010, 21:58
edited on: Mar 4, 2010, 22:00
According to his mail, kuniokun.mp3 is a recording on his PC.
And the source change is a fix for this problem.


Still no repro for me though.

Windows 2000??
User avatar
No.05829
Fujix
Administrator
Mar 5, 2010, 12:17
I converted his mp3 to wav format and figured out that the ADPCM base line is getting shifted little by little. This can be seen on my upload too.

On Windows XP and later OS, the mp3 files are properly played. This problem appears only in the WAVE format.

Maybe windows 2000 or some special hardware unveil the problem.
Confirmed the issue now.
User avatar
No.05835
Fujix
Administrator
Mar 6, 2010, 17:40
edited on: Mar 6, 2010, 17:41
Received a fix for this problem from the reporter (not the previous hacky workaround):
static WRITE8_HANDLER( adpcm_play_w )
{
 int offs;
 int len;
 offs = (data - 0x2c) * 0x2000;
 len = 0x2000 * 2;
 /* kludge to avoid reading past end of ROM */
 if (offs + len > 0x20000)
  len = 0x1000;
 if (offs >= 0 && offs+len <= 0x20000)
 {
  renegade_adpcm.current = offs;
  renegade_adpcm.end = offs + len/2;
  renegade_adpcm.nibble = 4;
  renegade_adpcm.playing = 1;
+  reset_adpcm(&renegade_adpcm.adpcm);
 }
User avatar
No.07298
hap
Developer
Mar 6, 2011, 23:48
edited on: Mar 6, 2011, 23:52
Ok. -- Fixed by Jerry,
sorry for taking so long (ohh! exactly 1 year after prev comment :P)