I slightly changed the way DPCM works, so it should be correct now with regards to retriggering it. It will only retrigger now if the sample is done playing, instead of retriggering no matter what.
Also, I bumped the volume up by a factor of 4 for sunsoft 5B since it was kinda quiet.
I noticed something really weird though with DPCM. I have a laser H rev CPU here and the DPCM is... corrupt on it sometimes. I tested with the 2.25 rev of firmware and it does it there, too so it isn't something new I introduced.
Using a legit SMB3 cart, it works fine- DPCM drums play OK, game works fine. I tested both composite and Hi def outputs.
Using a powerpak, though (with powermappers) DPCM is kind of broken. Samples end earlier than they should, like the length isn't being programmed right. The analog audio coming out of the CPU is broken in the same way, and watching the CPU bus the sample fetching just stops! I am at a loss as to what's going on here. Needless to say, it only happens with one specific CPU chip out of the dozen or so test samples, so I am not sure what's going on. I am suspecting the chip might be flaky somehow.
Anyways, here's the latest update:
http://blog.kevtris.org/blogfiles/HiDef ... 0V3.01.nes