NES Streamed Digital Audio: Extended DPCM Playback - NintendoComplete
For being a piece of hardware that was originally released in 1983, the NES never fails to amaze with the feats it pulls off. This video showcases one of the NES's more exotic uses: fully streamed DPCM sample playback.
There were very few games that did this back in the days of the machine's market dominance. Outside of the rare exceptions (Dirty Harry, Pinbot, High Speed, Skate or Die 2, Action 52, etc.), this technique wasn't typically used on the NES in its heyday for two very good reasons:
1. Memory was already insanely expensive, but accessing larger amounts required bank-switching memory "mappers," with the most capable versions costing significantly more to use in cartridges than the more commonly used varieties, and
2. Digital samples stored at a bit-rate high enough to be intelligible (or even vaguely recognizable) consume a lot of storage space. Official US carts ranged in size from 192kbit to 768kbyte, but the great majority of NES games were shipped on 128K and 256K configurations. When a single sampled drum hit, orchestra stab, or instrument tone could eat up 2-4K a piece, most companies decided against sacrificing space for cool things like digitized voices.
These audio files all play back on a real NES (through a PowerPak loaded with the NSF files I created), but these clips only represent what the NES could do in isolation. Doing this requires so much of the hardware that everything else essentially has to grind to a halt while it's running. The technique wasn't practical for anything besides a title screen or ending event, since the NES just doesn't have enough muscle to drive audio playback like this and gameplay at the same time. The effect is achieved by continously bank-switching 4kb packets containing the sample data - most of these "songs" are over comprised of over two-dozen samples played in direct succession.
I made sure to keep the sample sizes within the realm of "technical feasibility" circa 1990. The majority of these weigh in between 70Kb and 150K, and the couple higher quality ones are closer to the 180K mark. The previously mentioned average NES cart size (128K to 256K) makes for a good point of reference here.
I've recorded them at different qualities (all in glorious, 1-bit, delta-encoded PCM!) for demonstration purposes, and so for reference, the shown clips are listed with audio data sizes below:
0:00 Super Mario Bros. Super Show! Theme, 110K
0:58 Dracula Battle Perfect Selection, Bloody Tears, 72K
1:59 Theme from Final Fantasy XII, 77K
2:48 Bay Area Theme from Final Fight Double Impact, 83K
3:50 Theme from TV show Heathcliff, 130K
4:59 Theme from Metal Gear Solid 2: Sons of Liberty, 80K
5:47 Title Theme from PS1 version of Mega Man 3, 74K
6:42 Stage 1 Theme from Strider 2, 180K
7:24 Fist Bump - Main theme from Sonic Forces, 166K
8:02 Everlasting Dance - Main theme from Battle Heat!, 140K
Yes, I know that the Mega Man 4 intro is playing for the Mega Man 3 song. It was on purpose since MM3 has no intro.
The videos are just provided as fun backdrops. The songs were in no way hacked into the games being shown.
If you're interested in trying this yourself, RushJet's RJDMC utility and Famitracker are both worth looking up.
And by all means, please let me know what you think of the video! After the amount of time I spent putting this together, I'd love to hear everyone's thoughts about my picks or about the general possibilities this might've led to. Nerd talk, my friends, is always encouraged.
_
No cheats were used during the recording of this video.
NintendoComplete (http://www.nintendocomplete.com/) punches you in the face with in-depth reviews, screenshot archives, and music from classic 8-bit NES games!
Visit for the latest updates!
http://www.facebook.com/pages/NintendoComplete/540091756006560
https://twitter.com/nes_complete
Other Videos By NintendoComplete
Other Statistics
Super Mario Bros. Statistics For NintendoComplete
At present, NintendoComplete has 562,314 views spread across 15 videos for Super Mario Bros., with the game making up 10 hours of published video on his channel. This makes up less than 0.25% of the total overall content for Super Mario Bros. on NintendoComplete's YouTube channel.