Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /storage/content/49/145849/famitracker.com/public_html/forum/classes/dbHandler.php on line 29 FamiTracker
Login:
Menu:
Post: Author:
FamiTracker > General > FamiTracker Talk > DPCM leaks through Triangle? Owner: za909 New post
Page 1 of 1 Sort:  
DPCM leaks through Triangle? Posted: 2012-08-09 19:26  (Last Edited: 2012-08-09 19:27) Reply | Quote
za909

Avatar

Member for: 3962 days
Location: Hungary
Status: Offline

#38025
I was wondering if this is just some stupidity in a few emulators or is it how a real NES would sound like if the sample channel couldn't output anything on its own. If I isolate the noise or the triangle I can still hear the sample channel. Is that because of the implementation that also causes the volume decrase when the delta counter gets higher, or just bad emulation?
Now I know the example has pcm and not dpcm but it happened in non-pcm soundtracks as well.

_______________________
Rectangular sh*t ©
Attachments:
skateordiepcmleak.mp3 (941 Kb)
Posted: 2012-08-09 19:39 Reply | Quote
jsr
Administrator

Avatar

Member for: 5924 days
Location: Sweden
Status: Offline

#38027
This is how it would sound on a real NES, it's the volume modulation caused by the DPCM channel leaking through.

_______________________
Programmer and developer
Posted: 2012-08-09 22:42 Reply | Quote
rainwarrior

Avatar

Member for: 4150 days
Location: Canada
Status: Offline

#38034
Well, on a real NES the only way to isolate the triangle is to turn off noise and DPCM. However, doing this changes the sound of the triangle because of how they are interdependent.

On NSFPlay I offer two ways to isolate the triangle channel. You can disable noise/DPCM via the channel mask window, which turns them off entirely. Alternatively, you can fade the channel mixer sliders for noise/DPCM to 0, which still operates the channels but silences their direct contribution to the sound, leaving them leaking into the triangle channel. (Alternatively, you can turn off the nonlinear mixing option for APU2.)

Other emulators may choose to do it differently. Just out of curiosity, which emulators have you seen the leaky behaviour in?

Posted: 2012-08-09 23:02 Reply | Quote
za909

Avatar

Member for: 3962 days
Location: Hungary
Status: Offline

#38037
Actually I was wrong, I only got this behaviour in VirtuaNES (so I suppose VirtuaNSF would act like this as well?) because the other ones I've tried didn't have a channel mask option.

_______________________
Rectangular sh*t ©
Posted: 2012-08-09 23:42 Reply | Quote
jsr
Administrator

Avatar

Member for: 5924 days
Location: Sweden
Status: Offline

#38042
Ah yeah, my mistake. A better answer is that this isn't possible at all on the NES since the volume modulation appears in the DAC mixer, and no DPCM signal obviously wouldn't cause any modulation.

My guess is that the emulator uses the delta counter to directly control the volume of the triangle channel (rather than the actual DPCM output), and isolating the triangle would still keep DPCM running in the background.

_______________________
Programmer and developer
Posted: 2012-08-10 20:52 Reply | Quote
za909

Avatar

Member for: 3962 days
Location: Hungary
Status: Offline

#38074
Now offtopic, but are the samples in Skate or Die 2 7-bit PCM? Because when I recorded it it looked more like 4-bit or something.

_______________________
Rectangular sh*t ©
Posted: 2012-08-10 22:21 Reply | Quote
rainwarrior

Avatar

Member for: 4150 days
Location: Canada
Status: Offline

#38076
There's no standard for PCM samples. It's whatever made sense for the developers at the time. Big Bird's Hide and Speak, for example, actually uses compressed 8-bit samples, and discards the last bit on playback.

Page 1 of 1 Sort: