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
Let's consider someone sampling a really clean DPCM sample at the right refresh rate and putting it through a low-pass filter... Wouldn't it be nice to be able to distort that sample on the fly within the engine?
[url=http://8bitcollective.com/forums/viewtopic.php?id=13754]Here's my proposal...
I think I got it, but DPCM samples cannot be modified once exported to NSFs as those are stored in a ROM. RAM in the DPCM area would be necessary for it to work, but that's not possible in NSF. (At least not until FDS is added.)
Or if you have any ideas on how to implement it then I'd like to hear.
Alright... It won't be possible with standard mappers. :P
Fortunately, you support [url=http://wiki.nesdev.com/w/index.php/MMC5]MMC5! :D "Up to 64KB of WRAM, mappable not only at $6000-$7FFF but also within $8000-$DFFF."
This means we have editable DPCM RAM space from $C000-DFFF. If you flipped it by reading $FFC0-$FFFF for some reason, we could have $8000-DFFF for DPCM RAM space. (FDS might have a similar capability...)
It's possible that we could set up a 2K to 4K DPCM buffer in RAM for selected DPCM ROM contents; and bankswitch it into the $C000-DFFF space after the manipulation has been done.
I thought of two ways of controlling this in FamiTracker. Firstly, two simple commands:
Mxy: Where x = value to increment per byte. And y = value to skip per incremental.
Nxy: Where x = value to decrement per byte. And y = value to skip per decremental.
And secondly, a custom envelope could be set to increase or decrease the value per byte sample; much like the pitch envelope. This could be used on a per "instrument" basis currently without changing FamiTracker's design.
Sorry for the necroposting, but here's what I think...
[quote=B00daW]Let's consider someone sampling a really clean DPCM sample at the right refresh rate and putting it through a low-pass filter... Wouldn't it be nice to be able to distort that sample on the fly within the engine?
[url=http://8bitcollective.com/forums/viewtopic.php?id=13754]Here's my proposal...
What do you guys (especially jsr) think?[/quote]
Why not just use a WAV file editor to overdrive the volume & take a new DMC sample from it with decreased volume settings in FamiTracker?
You can even use Windows Sound Recorder to overdrive an 8-bit PCM WAV file. Then, it's a simple matter of importing the WAV file into FamiTracker & decreasing the output's volume.
If you want something complicated that involves a DIY electronics project, I can create a circuit diagram for you (it involves creating a distortion amplifier with an op-amp & a low-pass filter).
_______________________
Technology: the one thing that's hated & cursed at by all engineers, technologists, scientists & technicians!