Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
03083 Sound Minor Have not tried Mar 31, 2009, 17:32 Mar 31, 2009, 18:20
Tester sxevious View Status Public Platform MAME (Official Binary)
Assigned To Resolution Open OS
Status [?] Acknowledged Driver
Version 0.130u2 Fixed in Version Build
Fixed in Git Commit Github Pull Request #
Summary 03083: aliensec, baraduke: Baraduke speech
Description The "I'm your friend" speech at the start of a game is currently handled via a kludge for reads to MCU address 0x1105.
Steps To Reproduce
Additional Information After some study of the MCU code it appears this location is a DMA sample counter indicating how many 4-bit samples have been transferred so it is likely a feature of the sound chip for each channel (offset 5 = DMA counter). Baraduke seems to use this to indicate when 32 4-bit samples (16 bytes) have been transferred in order to send the next chunk of data from ROM to sample waveform RAM at 0x1040. The MCU code at 0x8495 does the channel setup and the code at 0x84EE does the sample playback. There are two samples in ROM, one at 0x8538 (I'm your friend) and the other at 0x8CD9 (a growl sound) both end with 0xB1.
For both sounds channels 0-3 are setup with values 0E 40 18 9A (left volume=E, waveform select=4, frequency=189A (6298Hz), right volume=0)

Note none of the other games which use this sound chip (Metro-Cross, Sky Kid, Dragon Buster, Pac-Land, NS86 games or NS1 games) seem to use this functionality.

Attached is the "I'm your friend" speech, extracted from the 63701 MCU ROM and converted to 8-bit mono PCM at 6298Hz which is how it should sound.
Github Commit
Flags
Regression Version
Affected Sets / Systems aliensec, baraduke
Attached Files
wav file icon B1.wav (3,948 bytes) Mar 31, 2009, 17:32
wav file icon B2.wav (5,196 bytes) Mar 31, 2009, 17:34
Relationships
There are no relationship linked to this issue.
Notes
0
There are no notes attached to this issue.