The earliest game on this list is currently Tag Team Pro Wrestling (April 1986), so if you can find anything earlier that would be great to know. Also, I've only come up with five examples of it being used in/for music: Action 52, Battletoads, Battletoads & Double Dragon, Great Waldo Search, and Skate or Die 2. Are those the only ones?
Note: Not all samples in the following games are guaranteed to be PCM, as some games use a combination of PCM and DPCM. This is simply a list of games that contain at least 1 PCM sample in them.
Action 53 (specific examples mentioned in comments below)
Adventures of Bayou Billy, The
Adventures of Rad Gravity, The
Aussie Rules Footy
Battletoads & Double Dragon
Blades of Steel
Bo Jackson Baseball
Chuck Yeager's Fighter Combat
Daiku no Gen-san / Hammerin' Harry
Daiku no Gen-san 2
Day Dreamin' Davey
Dizzy the Adventurer
Emoyan no 10-bai Pro Yakyuu
F-15 Strike Eagle
Final Mission (S.C.A.T. / Action in New York)
Great Waldo Search, The
Ikari Warriors 2
Krusty's Fun House
Mahjong Club - Nagatacho Sousaisen
Mickey's Adventure in Numberland
Mickey's Safari in Letterland
Mito Koumon (full title - Tenka no Goikenban - Mito Koumon)
Mito Koumon II: Sekai Manyuu Ki
Power Punch 2
Punch Out!! (and Mike Tyson's Punch Out)
Roger Clemins' MVP Baseball
Sesame Street: Big Bird's Hide and Speak
Sesame Street: Countdown
The Simpsons: Bart vs. the Space Mutants
Skate or Die 2
Star Wars: The Empire Strikes Back
Tag Team Pro Wrestling
Three Stooges, The
Ultimate Stuntman, The
Wheel of Fortune
Wheel of Fortune: Junior Edition
Wheel of Fortune: Family Edition
Wheel of Fortune: Featuring Vanna White
World Champ / Great Boxing: Rush Up
WWF Wrestlemania: Steel Cage Challenge
Action 53 vol. 1 (TapeDump)
Action 53 vol. 3-4 ("Crowd" music in 240p Test Suite)
I think a few games used it as a crude kick drum.
Is this for a massive PocketNES feature request?
The DPCM has a very characteristic quality/sound to it, and ringing at its specific frequencies (if you have absolute pitch you might be able to tell which one). PCM sound usually has a pretty distinct quality advantage that will sound "unusual" compared to DPCM if you're looking for it.Memblers wrote:Is there an easy way to tell? I tried FCEUX and Nestopia, and they both mute raw PCM when you mute DPCM. I seem to recall that the bell sound in Tecmo World Wrestling, and the crowd sound in Punch Out were raw PCM. But I could be remembering wrong. It could have been NESticle where I observed those.
The other giveaway is that the screen will usually pause for the duration of the sound. If there's significant animation going on, it's probably not PCM... though there are counterexamples to this (e.g. Battletoads' intro) and IRQs also get around it somewhat (e.g. Ultimate Stuntman). A static screen can be a pretty good hint though, in most cases.
Finally you can verify by putting breakpoints on $4011. If you get more than one in a frame, you're probably getting PCM. You could certainly rig up a lua script or otherwise hack an emulator to listen for that and give you a display to let you know. (I think the new "overclock" mode for FCEUX does this to automatically detect PCM and disable the overclock, actually?)
I kind of think the "I'm bad!" sample from Bad Dudes might be raw PCM, I'm not wanting to play through a level at the moment to find out though.
Ooh, thanks! This is more just research I'm doing for an upcoming podcast episode about high quality sample playback on the NES. I have a spreadsheet I'm putting together, but also thought it would be good to have a forum post that's google-able, incase anyone else wants to look this up. It's always nice having lists of this kind of stuff.tepples wrote:Action 53 vol. 1-3 (speech)
Action 53 vol. 1 (TapeDump)
Action 53 vol. 3 ("Crowd" music in 240p Test Suite)
Is this for a massive PocketNES feature request?
za909 showed me a method where you can search for 4011 writes using the debugger in FCEUX. The emulator will pause whenever something comes up. There are a few false-positives to look out for, like DPCM samples that have that "pop" on them will trigger your breakpoint. But you can tell if it's regular DPCM vs raw PCM... if the rest of the sample audibly plays after hitting the "run" button again, then it's just DPCM. If it constantly pauses every time you hit "run", then it should be a full fledged raw PCM sample trying to play.Memblers wrote:Is there an easy way to tell? I tried FCEUX and Nestopia, and they both mute raw PCM when you mute DPCM. I seem to recall that the bell sound in Tecmo World Wrestling, and the crowd sound in Punch Out were raw PCM. But I could be remembering wrong. It could have been NESticle where I observed those.
I'll double check the examples posted here and report back!
- File > Lua > New Lua Script Window
- Browse... (open this file)
Edit: Lua scripts were later disallowed on this forum. Uploading a ZIP containing what I think was the original script.
- (538 Bytes) Downloaded 203 times
[The extension lua has been deactivated and can no longer be displayed.]
I suspect that Rad Racer 2 is using $4011 alone for it's drum sounds.
If you want to see something unusual, look at Star Tropics 2. It uses $4011 as a volume control for the triangle channel.
rainwarrior: neat, thanks
So did Startropics. It's part of its "fade out" routine for the music.Memblers wrote:If you want to see something unusual, look at Star Tropics 2. It uses $4011 as a volume control for the triangle channel.
Super Mario Bros. also does it to lower the triangle volume for some music tracks. (It has a gradual slide, +/-1 per frame, which actually produces an audible buzz during the transition-- the NSF kind of sucks for this because it always starts at 0, so a lot of tracks start with that buzz.)
These won't trigger the PCM detector here, though, since they're once-per-frame writes.
In the luaScripts folder there's a SoundDisplay.lua script you can run to just watch the various sound channels if you want an easy visual way to inspect these things.
Tenka no Goikenban - Mito Koumon (just load the ROM and wait a few seconds, pretty neat encoded speech)
Ah the podcast is Retro Game Audio. All episodes can be streamed or downloaded from our soundcloud. We have 20 episodes so far, this'll be our 21st.Memblers wrote:What's the name of the podcast?
Yes! I forgot to put that in the list, but I did double check all the vocal samples and those are all PCM.NovaSquirrel wrote:Smash TV seems to use it for the "Let's go!" and the sound on the title screen.
It is! Which is funny because it's so bad sounding anyways.Memblers wrote: I kind of think the "I'm bad!" sample from Bad Dudes might be raw PCM, I'm not wanting to play through a level at the moment to find out though.
Something I didn't mention in the OP was bit-rate, since it's a little over my head, but something that's kind of neat is that some samples have a lower bit rate. Before researching this I assumed everything was either 1-bit DPCM or 7-bit PCM. But Gauntlet 2, MULE, and Skate or Die 2 should all be using 4-bit samples.
To the best of my understanding, it's because they limited themselves to using a "smaller space" (less values) than 7-bits, but would've otherwise been 7-bit had they not gone out of their way to do that. I think of 7-bit as like the default bit depth for the NES' raw PCM, but it could be limited to anything smaller.
za909 helped me identify what's apparently 1-bit PCM, from World Champ. Which seems really strange to me!
The PC speaker could naturally do 1-bit PCM, for instance, and so could a few other systems (ZX, etc.). Did it originally appear on another platform?bucky o'hare wrote:za909 helped me identify what's apparently 1-bit PCM, from World Champ. Which seems really strange to me!
If you can get your samplerate high enough to be above the audible threshold, 1-bit PCM can effectively become equivalent to more bits (i.e. PWM). Eg. 160 kHz 1-bit output could sound like 40 kHz 2-bit.