NES Sound: The DMC - Behind the Code

Поделиться
HTML-код
  • Опубликовано: 25 авг 2024
  • ИгрыИгры

Комментарии • 457

  • @slowfuse
    @slowfuse 3 года назад +453

    I studied audio engineering and sound design at College, and dude just summed up the first 2 years worth of textbooks better than they did.

    • @square-pixel
      @square-pixel 3 года назад +5

      Cortex Auth absolutely true!

    • @OGmolton1
      @OGmolton1 3 года назад +9

      great video... yeah sorry to hear that. What are they charging us all that money for anyway?

    • @slowfuse
      @slowfuse 3 года назад +17

      @@OGmolton1 lots of stuff, it was a good course. Just this video made it very easy for a layman to follow quickly and pick up the concepts

    • @nebularain3338
      @nebularain3338 3 года назад +19

      I tend to find that courses and the like are stuck in an overly formal format of presentation, and much of the way that the information is taught can be very dry and usually doesn't have much context.
      Manuals are the same, which is why I despise people on forums saying "Go read the manual" instead of giving a real answer. Usually the people asking questions have read the manual, but don't understand the way the information was presented and so are looking for another take on it.
      Many people also have a tenancy to bloat information and make it more complicated than it needs to be. I've seen tutorials which are borderline impossible to follow, but once I figured out what to do by myself I was shocked at how much they made it needlessly cumbersome.
      TL:DR - Get as many different explanations and takes as you can find on whatever topic you want to know about. If people just keep referring others to the same page of the same boring and hard to understand manual time and time again, then very few people will "get it".

    • @jordantfryman6184
      @jordantfryman6184 3 года назад +1

      @@slowfuse like me.
      Yep.

  • @MrCheeze
    @MrCheeze 3 года назад +171

    God damn, that revelation that "Double Dribble" was an encoding error that managed to still sound like what I expected sampled audio of that era to sound like was amazing.

    • @gregmark1688
      @gregmark1688 2 года назад +20

      Imagine how impressed we all would've been if they had sounded like they were meant to!

  • @MovieMovies1
    @MovieMovies1 3 года назад +210

    I find it interesting how people really started taking bit order reversal seriously after I discovered Sunsoft's DPCM conversion process had a reversed bit order in their games from Batman onward. I was actually prompted to investigate the whole bit-reversal thing due to the Double Dribble discovery, as I thought the fuzziness sounded similar to Sunsoft's DPCM samples.
    I remember the first sample I tried reversing was a slap bass sample from Gimmick, which after I reversed the bits of manually due to lack of tools until after this became more well known, I finally managed to hear that it was actually a classic Roland slap bass, found on lots of their samplers and ROMpler synths, including the MT-32 and SoundCanvas lines. I had been eluded by that sample for years on end wondering what it was, as the bit-reversal had made the high end frequencies much harder to identify, so hearing it so clearly was an immediate indicator that bit-reversal was probably more common than just Double Dribble. As for the Contra drums, as far as I remember they're from one of the Yamaha RX drum machines, at least the snaredrum is.
    I still don't know what the more common Sunsoft bass sounds are from though (The ones used in Journey to Silius, Batman: Return of the Joker, Hebereke, etc.).
    -Interestingly enough, Sunsoft's earlier usage of DPCM before Batman all had the right bit order, but the conversions themselves mangled the samples so bad that the newer, bit-reversed conversion method they eventually used sounds miles better than those :p- As it turns out, Sunsoft's old DPCM samples weren't even DPCM-converted, they were 1-bit PCM that the hardware then just interpreted as DPCM.

    • @DisplacedGamers
      @DisplacedGamers  3 года назад +31

      Wow! Good stuff, MovieMovies1!

    • @SleepingCocoon
      @SleepingCocoon 3 года назад +11

      are there public patches available for these? dying to hear them all directly! it's crazy how the earlier sunsoft bass goes from "i think it's a slap bass?" to a kind of phat moog sound. but I'd love a fixed version of gimmick!

    • @nickcarter4006
      @nickcarter4006 3 года назад +4

      That’s fascinating! I order if they might have done this to obscure the source of the samples? Might be kinda dicey to just lift Roland or Korg samples

    • @SleepingCocoon
      @SleepingCocoon 3 года назад +19

      @@nickcarter4006 nah, this is a non-issue. most of the instrument samples used in super famicom, n64, playstation, etc games come from either that era of romplers or sample discs. it's what they're there for. by that logic you wouldn't be able to use them in any music. it's assumed to be fine if you have to store recordings of the samples for playback. just wait until you find out how many samples the rompler manufacturers stole from one another!

    • @jordantfryman6184
      @jordantfryman6184 3 года назад

      @@DisplacedGamers
      May I please ask what the game in the outro specifically is?
      As I would like to listen to the whole tune.

  • @benanderson89
    @benanderson89 3 года назад +154

    I've written music for the NES sound chip before but I've never went deep diving into it's technical specifications. Fantastic video idea!

    • @okarowarrior
      @okarowarrior 3 года назад +3

      Real hardware or just a tracker?

    • @benanderson89
      @benanderson89 3 года назад +3

      @@okarowarrior Tracked and then played back on hardware.

    • @okarowarrior
      @okarowarrior 3 года назад +3

      @@benanderson89 ah. I thought you would've written music in assembly and it would be really interesting to hear the insides of it.

    • @benanderson89
      @benanderson89 3 года назад +5

      @@okarowarrior I've written in 65xx assembly before on both a BBC Micro and Commodore 64 (same CPU family as the NES). There's nothing really that interesting about it other than it's really labour intensive to get something up and running.

    • @okarowarrior
      @okarowarrior 3 года назад +2

      @@benanderson89 ohh neat. Haha. I'd imagine it would be the case. So, do you consider that really isn't that much of a gain in writing the music as code compared to using a tracker? other than the virtuosso/craftmanship factor?
      I'm interested because I use trackers myself, and always wondered "how would be to write this directly on assembly." Or at least in basic for the C64.
      Thanks for the reply

  • @Peter_Morris
    @Peter_Morris 2 года назад +19

    Holy cow that bit reversal thing blew my mind. I just always figured NES sound samples were so noisy and distorted because of the tiny storage space.
    But hearing “Double Dribble” so cleanly was eye opening! It actually sounded like the “Konami Arcade” voice.

  • @davidmcgill1000
    @davidmcgill1000 3 года назад +296

    Wow. So the Double Dribble devs must've thought the NES just sounded like garbage and never noticed this.

    • @jansenart0
      @jansenart0 3 года назад +74

      All code is held together with tape and hope...

    • @jamescurrie01
      @jamescurrie01 3 года назад +9

      @@jansenart0 so true

    • @MickeyD2012
      @MickeyD2012 3 года назад +24

      @@jamescurrie01 NO. Some assembly programmers ACTUALLY know what they're doing.

    • @FoxerTails
      @FoxerTails 3 года назад +40

      @@MickeyD2012 There's always the possibility of a mistake. Humans aren't perfect after all. That's how bugs are born. :)

    • @Kapin05
      @Kapin05 3 года назад +42

      @@jansenart0 If your code works first time, buy a lottery ticket

  • @Gold_Yoshi
    @Gold_Yoshi 2 года назад +7

    Nintendo still uses “DMC” for audio! In fact, they have upgraded it to tell if others use it in videos. They call it “DMC Advance” or “DMCA” (/s)

  • @sonikku9173
    @sonikku9173 3 года назад +40

    The music from journey to silious is amazing!

    • @23Scadu
      @23Scadu 3 года назад +10

      Sunsoft made some of the best music for the NES, no doubt.

    • @magoid
      @magoid 3 года назад +6

      It really is. In fact, is better than the game it is in.

    • @LorenHelgeson
      @LorenHelgeson 3 года назад +3

      Pretty much anything from Sunsoft is top-notch NES music. Even earlier stuff like Wing of Madoola, something a bit obscure like Platoon, or the downright unpopular like Fester's Quest. Regardless of game quality, the music is almost always a hit.

    • @joaonitro5149
      @joaonitro5149 3 года назад

      @@magoid NO

    • @aretrogamergentleman4426
      @aretrogamergentleman4426 3 года назад +1

      I agree with the boys, Sunsoft was practically the indisputable master in using the NES sound engine at its fullest to create this and countless other mesmerizing pieces.

  • @Acoha7
    @Acoha7 3 года назад +38

    The amount of work you must put into these videos is astonishing. I’d absolutely sit in one of your lessons if you were a teacher. Amazing work.

  • @ballandpaddle
    @ballandpaddle 3 года назад +73

    Great vid! A topic dear to my heart. I'd like to request a video about the various expansion chips that went into some games, like the Konami VRC6 or Namco N163.

    • @Skeletroy
      @Skeletroy 3 года назад +3

      I'd like to second this request.

    • @PabloAvilaEstevez
      @PabloAvilaEstevez 3 года назад +2

      Third! The Namco 163 is responsible for one of the greatest video game soundtracks of all time regardless of hardware, the Digital Devil Story Megami Tensei II soundtrack

    • @gluttonousmaximus9048
      @gluttonousmaximus9048 3 года назад +3

      I'd like to hear about how the Turbografx or the MSX Konami SCC created their distinctive wavetable sounds

    • @megamix5403
      @megamix5403 3 года назад +1

      I love you Trance Chiptunes! I hope you make more.

    • @nicholaswelch4376
      @nicholaswelch4376 3 года назад

      If you haven't heard them yet, Retro Game Audio did an individual podcast for each of the NES expansion chips. Very detailed with lots of audio examples.

  • @GameSack
    @GameSack 3 года назад +122

    Oh how I love videos about sound! Fascinating stuff. Some of it reminds me of how I mixed sound for home videos back in the 90s to take advantage of Dolby Pro-Logic. Same sound in both left and right channels. Should be mono, right? However you can adjust the sound in one of the channels (doesn't matter which) out of phase by 180º and BAM, that same sound now plays through the surround speakers! Another part of your video reminds me of how they rewrote the sample driver or some such thing for the Street Fighter 2 games on the Genesis to achieve MUCH better voice quality compared to the original retail release using the same exact samples that are already on the cart. Anyway great video!

    • @IllusionSector
      @IllusionSector 3 года назад

      Joe?

    • @xenos_n.
      @xenos_n. 3 года назад +2

      @@IllusionSector that's Mr. Sack to you.

    • @Lady_Moonsong
      @Lady_Moonsong 3 года назад +1

      @Lawrence Bo I tried this and now my cat is on fire and my mother in law is gay. Thanks for nothing

    • @skins4thewin
      @skins4thewin 3 года назад

      @@Lady_Moonsong LOL uh.... what?

    • @skins4thewin
      @skins4thewin 3 года назад +1

      While it definitely sounds better, the SF2 voices didn't sound THAT much better to me. A bit better sure, but not a ton. The voices still sound a bit shrill to me & still don't quite match the SNES voices. It really makes me wonder why devs struggled so mightily with samples on the Genesis, why was it so hard for most devs to get voices to sound right?
      Hell, the NES seemed like it had more games with excellent sounding samples than the Genesis had. If the NES is capable of such nice sounding voice samples, then why not the Genesis? Why did devs struggle so badly with it?

  • @VinsCool
    @VinsCool 3 года назад +11

    Great video!
    DPCM tuning issues were the reason why I went all out and sampled 3 octaves worth of bass, 1 sample per note.
    They take a massive load of ROM space but the quality made it really worth the time I spent splicing and normalizing them by hand in Audacity, lol

  • @Teuthida
    @Teuthida 3 года назад +25

    Fun fact: the first NES game to use DPCM in a musical context instead of just for sound effects was a Japan-exclusive bililards game from Konami, which included a single bass drum sample. This sample would go on to appear in most later Komani titles, usually together with the iconic Konami snare sample.

    • @null_state
      @null_state 3 года назад +2

      "Exciting Billiards"

    • @FinalLuigi
      @FinalLuigi 3 года назад +4

      I think Nintendo's Gumshoe is the first game to use musical samples; though only for one song, and 11 times at that. Interestingly, Wild Gunman is the first NES game to use samples at all, and both games are lightgun games. It's likely Nintendo made these decisions because of the controller read glitch.

  • @sadpacman3290
    @sadpacman3290 3 года назад +55

    Learned two things: I have a ton more respect for the coders/musicians who had to work through all this and came out with classic tracks. Also, I want to get a bass guitar and learn that Journey to Silus track.

    • @themadmallard
      @themadmallard 3 года назад +10

      truly, as a composer from the period, your melody had nowhere to hide when it came to instrumentation. you either had a hook, or you didn't

  • @sparrowthesissy2186
    @sparrowthesissy2186 3 года назад +2

    I love when part of what makes something distinct and special is that it was actually broken all along, but we just grew up with that brokenness so we remember it fondly.

  • @Choralone422
    @Choralone422 3 года назад +18

    I still find it fascinating how much developers were able to get out of the NES/Famicom with base hardware that was released in 1983 and used a main CPU (MOS 6502) that was from 1975! The custom PPU & APU were fantastic! The additional mapper chips in most cartridges after 1985 really helped stretch what the base hardware could do!

  • @MelonadeM
    @MelonadeM 3 года назад +18

    you always do such a great job explaining really complicated stuff in a clear and concise manner, i hope you keep up the great work!

  • @TomBrady1
    @TomBrady1 3 года назад +8

    I've studied DSP through both undergrad and grad school, you provide an excellent and concise description of signal processing. Thank you for such great explanation video.

  • @wojciechmilczarek6051
    @wojciechmilczarek6051 3 года назад +10

    I can't believe the quality of this channel. Your videos are very interesting, high quality and original, you honestly deserve more subs. Btw, that silus soundtrack was fire

  • @llamamiento
    @llamamiento 3 года назад +10

    This is becoming one of my favorite channels. I appreciate the visualization of information. I can't wait for the next video.

  • @xenos_n.
    @xenos_n. 3 года назад +1

    6 minutes in, I completely forgot what this video was about until you brought up the NES again.

  • @emmettturner9452
    @emmettturner9452 3 года назад +46

    Another thing about The Immortal: It doesn't seem to have been made with a proper dev kit or following official guidelines, since it uses the wrong value for black and causes issues on modern TVs (blacker than black value gets misinterpreted as a sync pulse). EA made their own dev kit for Genesis back then so they probably didn't want to be beholden to Nintendo either. Back in 2017 I made a ROM edit that fixes this and I plan to make a video about it showing that I have what may be the only "fixed" physical copy of the game in existence while I simultaneously release the patch. When John Riggs encountered the game I offered to send him the patch since he kinda got his start making repros and hadn't actually fixed a game in a long time but he didn't seem interested. :( If you want to do a video on it, let me know because I've been putting mine off for three years! ;)

    • @DisplacedGamers
      @DisplacedGamers  3 года назад +8

      Oh man, Emmett! I hope you make that video!

  • @Gpig20
    @Gpig20 3 года назад +13

    Hell yeah new video! These are always so good. Back when I was looking into making my console controllers wireless ala wavebird, the wiring of the NES controller video was the only example I could find that successfully mapped all buttons.

  • @fakeshemp9599
    @fakeshemp9599 3 года назад +12

    Hahaha "Dwouble Dwibble"... nice chapter name lol

    • @kimgkomg
      @kimgkomg 3 года назад +1

      I always heard it as "Double Dibble"

  • @Dark.Shingo
    @Dark.Shingo 3 года назад +7

    It SO interesting to learn all the quirks and bits of programming for the NES, so fascinating! The other day I was discussing with a friends how many developers nowadays don't optimize games anymore and create these monsters that eat disk space, that I missed how devs back in the day worked around limitations and it made them more creative to come up with solutions to this. That's why I love indie games, most of them have to work with limited resources and come up with great ideas. Thanks for such an awesome video as usual!

    • @DisplacedGamers
      @DisplacedGamers  3 года назад +6

      I am a firm believer in the fact that limitation breeds creativity. This is true of game design as well as keeping those of us who code "in check."

    • @d_valroth
      @d_valroth 3 года назад +4

      I agree with you, although that's not the reason games are 40GB now. It's the eight copies of every material in the game, each of which consists of like five textures for PBR, for everything from 4K down to the most distant, you can barely see it MIP map; along with the ten copies of the game's full dialogue in most of Earth's major languages. Because it's more efficient to have one copy of the game for everyone than to try to balance and patch across fifteen different variations, and the games are optimized for playback speed, not storage space, because we have almost infinite storage capacity these days. It's actually a case of precomputing as much a possible to save CPU and initialization/load times, and to fake complex visual calculations. All that data needs to be stored if we aren't going to generate it at run time.
      That said, giving people a system with limits will almost always result in something more creative as they are forced to focus and work things out and can't just do literally whatever they want. I feel the same way about Hollywood ever since they got their hands on workable CGI. When there were clear limits, it was all the more impressive when someone tricked their way around them, or at least created the illusion of doing so. Nowadays I don't get excited for new consoles or games for the most part because there's nothing left to work around. The best we can do is make the ultimate version of something we already have.

    • @KopperNeoman
      @KopperNeoman 2 года назад +1

      @Charles Faraone Optimising for load times is all the more important - ever tried playing Sea of Thieves on an old hard drive, such as the SATA II the Xbox Ones all ship with?
      Not fun.

  • @Legerine
    @Legerine 2 месяца назад

    i am so very sick in bed with a very high fever... listening to your voice and going on about all of this has been rather soothing while I am in and out of consciousness.

  • @Yngdady
    @Yngdady 3 года назад +12

    This is like learning about how difficult it must've been to compose music on a computer with limited memory in the 80s and knowing how much easier and precise it is today. Fascinating!

  • @skins4thewin
    @skins4thewin 3 года назад +1

    You honestly could teach classes man. You did a fantastic job explaining all of this in a way that makes it easy to understand. Bravo good sir, bravo!

  • @TroyBlackford
    @TroyBlackford 3 года назад +8

    Oh man, that was wonderful. Thank you so much for your high quality, enlightening, and highly entertaining videos. I would love more that go just as in-depth into other aspects of NES sound, or maybe into the SNES sound, which was *very* different. You should feel good about yourself, and the one guy who thumbs downed this a half hour after you posted it should chug a pissy milkshake.

  • @beipiaosaurus
    @beipiaosaurus 3 года назад +2

    This is such an informative video. As a gamer who has never learned about the coding side of things, your Behind the Code videos open up a new perspective and make it easy to comprehend. Please keep making more of these and congrats on the great work!

  • @gwalla
    @gwalla 3 года назад +10

    What I learned from this video is that the title screen music from Journey to Silius is kind of a banger

  • @jamescurrie01
    @jamescurrie01 3 года назад +3

    Absolutely fantastic, blown away by how comprehensive these videos are. Research and time spent really shows.

  • @johncoulter7006
    @johncoulter7006 Месяц назад

    Can’t believe Skate or Die 2 showed up for it’s intro audio!
    Great video. Love this educational series.

  • @strawmanhat
    @strawmanhat Год назад +1

    You replaced an NES sample with your own vocal sample. I am very impressed. Thanks for all the explanations and exploring this stuff.

  • @bdjeffyp
    @bdjeffyp 3 года назад +4

    I’m always excited for your deep dives into the inner working of NES games, but this dive into the NES itself was amazing! Looking forward to more of these fantastic videos. Keep up the great work you do.

  • @Controllerhead
    @Controllerhead 3 года назад +8

    Wonderful breakdown of general sound mechanics and the DMC channel: A difficult topic even for NES developers. You're doing gods work. It blows my my mind that the "iconic sunsoft bass" was likely a backwards mistake... man i just love that Thwanck.

  • @omegarugal9283
    @omegarugal9283 3 года назад +19

    so the NES had a lot of sound potential that went almost unexploited...

  • @SleepingCocoon
    @SleepingCocoon 3 года назад +6

    excellent video! I've written a lot of music for this chip and really came to love working the DMC channel. it's got a lot of personality!
    I've got a fun one for you :check out some stuff by KID, namely Kick Master and Recca - their audio driver has a comical bug where whenever the triangle isn't active in a piece it's getting used in, it constantly plays the lowest possible tone. they must not have caught it on their TVs during testing across multiple games but it cracks me up

  • @gregmark1688
    @gregmark1688 2 года назад +2

    As a semi-pro recording engineer, I would say that the reversed bass sample from Journey to Silius is very clearly meant to be played the second way. The result of the bit-reversal is mostly a large increase in higher harmonics, which is clearly audible in the A/B comparison you make at about @29:22 - the corrected bass has a far smoother waveform, while the bit-reversed version has a lot of high frequency distortion in the bass signal. (BTW, this is because the bass frequencies are low, which matches more closely the byte-width sampling rate, and the individual errors from the bit reversal tend to average out of the lower freqs. The main result is high frequency distortion. At the 33k sampling rate, sounds below around 4khz should be preserved fairly accurately, albeit with lots of higher freq noise added.)
    As I noted in a comment below, it seems likely that many companies were using the same tool to convert samples to DPCM and that many games will likely have the bad samples.

  • @miahthorpatrick1013
    @miahthorpatrick1013 9 месяцев назад

    This was such a great educational video for musicians like myself. I learned things I never knew after 25 years into my scholastic musical journey.

  • @loranfrank4403
    @loranfrank4403 Год назад

    This is very intuitive about the audio engineering science of how making 8-bit NES music. Alot of the later made Konami & Sunsoft games especially TMNT III The Manhattan Project & Batman Return of the Joker had one of the most polished techniques making
    them as high quality as possible considering the technology limitations of that era imagine how more powerful the NES audio sound engineering can be expanded upon with today's modern technology!!!!

  • @robintst
    @robintst 3 года назад +1

    You do fantastic videos. I get a little lost on the deeper technical stuff but you make the gist of it easy to understand and I'm still able to follow along. Great work!

  • @Yomom12388
    @Yomom12388 3 года назад +5

    Not only did I learn how these old school consoles process and implement sound, but I also learned that Journey to Silius’ soundtrack is a certified, Me Official Seal of Approval earning, downright goddamn banger.

  • @txrom
    @txrom 3 года назад +1

    Great video. I just implemented the DMC channel in my NES emulator, and this provided a lot of good material for understanding what I was doing, and why!

  • @skins4thewin
    @skins4thewin 3 года назад

    It's truly amazing to see all of the various techniques used in older game consoles to squeeze every little bit of performance out of them, in order to give us an experience that was as good as humanly possible with these rather weak & inexpensive CPU's. The results are honestly quite remarkable. We had it better than any of us realized back then.

  • @emolovetree
    @emolovetree 3 года назад

    Thank you for using the correct graphing method for digital samples

  • @SivakD
    @SivakD 2 года назад

    Very well explained. I never used this channel in any of my games, but now that I'm doing a disassembly I needed to know how certain things worked.

  • @Dwedit
    @Dwedit 3 года назад +8

    It turns out the "Blades of Steel" voice is actually simulating DPCM through use of RAW PCM. In order to be able to read the sample from a different ROM bank, it's played as RAW PCM, but the sample format itself is the same as DPCM.

  • @philp7353
    @philp7353 Год назад +2

    I have a feeling the majority of games have the bytes backwards but honestly when I was listening to your example comparing it on Silius I realized that I like it better backwards, elsewise it sounds too clean and not like an NES game. I think the reversed bits on the sound is actually a part of the charm of the NES sound.

  • @kitsunegiblaze8022
    @kitsunegiblaze8022 3 года назад +2

    Sunsoft and Konami had some of the best damn chiptune music on the NES.

  • @AjinkyaMahajan
    @AjinkyaMahajan 3 года назад +1

    This makes me admire old technology for its simplicity.
    Cheers✨✌

  • @JamieBainbridge
    @JamieBainbridge 3 года назад +1

    Damn dude this was an incredible video. So much information and experimentation, presented so clearly.

  • @PsychadelicoDuck
    @PsychadelicoDuck 3 года назад +4

    I'm just impressed that a reversed voice sample is understandable at all.

  • @emmettturner9452
    @emmettturner9452 3 года назад +32

    Well, now I think I know why Hi-Def NES only played the first bark in Duck Hunt when I first installed in July 2016 (first DIY shipment). It seems the FPGA sound implementation for digital audio broke the loop command. I remember wondering if you only got one "Hut!" from the "Hut! Hut! Hut!" from Tecmo Bowl but I'm not sure I ever tested that. I think I did and it worked normally meaning it probably repeated without the loop command. I made a video demonstrating the error and Kevtris fixed it long ago. It also demonstrated an issue late in Ninja Gaiden (Ryu's eyes remain distinct while the rest of the screen flashes).

  • @Izzy84075
    @Izzy84075 9 месяцев назад +1

    Having worked on some "current" audio hardware with less-than-stellar documentation... Little details like the bit-reversal are /hard/ to get right without a lot of dedication to making sure it's correct. If you don't know to look for it, you can go for years and never know there's an issue, it's just "how that hardware sounds".
    I had written an audio library that would add an extra sample occasionally, and it went unnoticed for almost a year until somebody else was comparing the output to another library and noticed that mine consistently output more samples than the file contained, and it was making it difficult to synchronize things. Turns out when I read a block of audio data, I had an off-by-one error in the size, and each block of samples got an extra byte added at the end. Much like the NES' DPCM, that extra byte's samples resulted in an output that was legible, and very /close/ to the correct output, but still not correct. It never got noticed because that hardware was weird to begin with, and it never quite sounded the same as any other hardware even after that got fixed, so I called it "good" and didn't thoroughly test it.
    The Silius samples are a good example, I think. I can hear a very slight "hiss" to the original version that isn't there in the bit-reversed version, which leads me to believe that the bit-reversed version is more "correct", but it's so slight that if there were any distortion by the speakers they were using during development, it was probably either entirely unnoticed or passed off as distortion in the speakers/amplifier, not a software/encoding bug in the data itself.

  • @UmEricYockey
    @UmEricYockey 2 года назад

    this is my favorite channel on youtube. please never change.

  • @djhaloeight
    @djhaloeight 3 года назад

    Absolutely enthralling video! Always a good day when a Displaced Gamers video shows up!

  • @rgarciaf071
    @rgarciaf071 3 года назад

    Fantastic video, I loved the ladder analogy to explain discrete functions/samples, I really enjoyed this video it can be used even for teaching a bit of digital signal processing so the students can relate to real world applications

  • @ElvisAaronBU
    @ElvisAaronBU 3 года назад

    Great job explaining a complex topic! I'm really enjoying this series.

  • @YeahItsKansas
    @YeahItsKansas Год назад

    All of a sudden all those times when I was a kid where the NES music felt haunted make sense. And then, how much of our lives as gamers were affected by the +1 and the reversals. Mind blown.

  • @lisapearson6053
    @lisapearson6053 3 года назад

    I love the Behind the Code series so much. Thank you.

  • @BubblegumCrash332
    @BubblegumCrash332 3 года назад

    I love these technical breakdowns about retro hardware. Thank you for taking the time to make these. Your MSX video was top notch. Hopefully one day you could make one on NES bank switching. I'm still insure what it is lol

  • @GimblyGFR
    @GimblyGFR 3 года назад +3

    Man, that was an AMAZING breakdown. Are you planning on explaining all of the NES sound channels? 'Cause that would be really great! Also, if you can get enough time, I'd love if you could make a video on the inner workings of sample playback on the Sega Genesis. Specially on the driver used on both Street Fighter II games, and the incredible hack that both games received that enhanced PCM. Thank you very much for this video. An outstanding work.

    • @DisplacedGamers
      @DisplacedGamers  3 года назад +2

      Oh my goodness - the Mega Drive/Genesis is such a dive when it comes to sound. So much there to talk about!
      I would like to make videos about the other sound channels of the NES - possibly going as far as various expansion audio chips. It depends on how well people respond to this vs the game-based Beyond the Code videos. This particular one took some extra time!

    • @GimblyGFR
      @GimblyGFR 3 года назад +2

      ​@@DisplacedGamers Excellent! All the videos on your Beyond the Code series are very interesting, and few (if any) content creators dived this deep into the inner workings of the sound on the NES (or other consoles).

  • @press_pause2236
    @press_pause2236 3 года назад

    Your videos are just incredible, honestly one of the best channels around here

  • @Wandering_Boots
    @Wandering_Boots 3 года назад

    This is a very clear, articulate and insightful video!

  • @tomsko863
    @tomsko863 3 года назад

    Thank you for this video! Alot of work went into it. You did a great job!

  • @code4chaosmobile
    @code4chaosmobile 3 года назад

    cannot say it enough , love this series!!! tyvm

  • @xtrance25
    @xtrance25 4 месяца назад

    Very informatic and very well explained 😍🥰

  • @michaelpowell3204
    @michaelpowell3204 Год назад

    Very good and legible explanation of a lot of DSP concepts here.

  • @johnbillings5260
    @johnbillings5260 2 года назад

    The Double Dribble sample had me crying. 🤣

  • @skins4thewin
    @skins4thewin 3 года назад

    Very educational! I learned a lot watching this. Thanks for making it!

  • @massivewon
    @massivewon 2 года назад

    Your videos are insanely good. Keep up the great work!

  • @ItsHyomoto
    @ItsHyomoto 6 месяцев назад

    I got distracted by: Journey to Silas has banging music. Sunsoft really had a talent for music on the NES.

  • @rulojuka
    @rulojuka 3 года назад

    That was awesome. I studied a lot of computer music in my computer science course and would`ve loved to see that video in those times!
    Also, I would love to see a similar video on the SNES!

  • @arcadelinkauthor
    @arcadelinkauthor Год назад

    This is awesome, thank you!

  • @a2sbestos768
    @a2sbestos768 6 месяцев назад

    No idea about the differences, but the Silius soundtrack is kickass

  • @marscaleb
    @marscaleb 3 года назад

    I love how you go into all this detail to explain really basic information about how sound works, and then later jump into obsolete assembly language code like you just expect everyone to know all this already.

  • @BokanoiD
    @BokanoiD 3 года назад +3

    Your bit-reversed Journey to Silius is correct; I remember using this bass sample from the Amiga ST-xx library.

    • @DisplacedGamers
      @DisplacedGamers  3 года назад

      Oh wow. Thanks for commenting! It is nice to have evidence for it rather than just go by ear/guessing.

    • @TakuikaNinja
      @TakuikaNinja 3 года назад

      do you happen to remember what the sample was called?
      I'm going through an archive of the sample library in question.

    • @BokanoiD
      @BokanoiD 3 года назад +1

      @@TakuikaNinja I should still have it as well; I'll get back to you on that one.

    • @BokanoiD
      @BokanoiD 3 года назад +1

      @@TakuikaNinja I didn't have to look very hard, it's called 'DeepBass' on ST-01. I've converted it to .wav and you can find it here: 1drv.ms/u/s!AgIMW_4kujbwgc9gSMSJABPkFEr4_Q?e=zUupdl

    • @TakuikaNinja
      @TakuikaNinja 3 года назад

      @@BokanoiD I've compared that sample to the silius bass in audacity. The frequency spectrums are similar but the waveforms are too different.
      I appreciate your help, though.

  • @OGmolton1
    @OGmolton1 3 года назад

    I was dissapointed when you said you were skipping the oscillator and noise channels but this was a great video, I hope you revisit them because they are what truly makes the nes unique for video game music imo Battletoads is a good example, versions on newer systems can't even replicate some of the original music in the later stages because they abandoned the oscillators for newer fm synthesis stuff

  • @dadrand0m
    @dadrand0m 2 года назад

    I just caught that Big Trouble in Little China reference..... "UP OR DOWN?!" LOL

  • @DanielHuman1996
    @DanielHuman1996 3 года назад

    Not only do you understand NES machine code, but you create a video that explains how it could be improved. You are a genius :)

  • @DonYagamoth
    @DonYagamoth 3 года назад +6

    That was quite fascinating, thank you for the video :)
    Now I'm curious what kind of techno wizardry and magic the composers had to work through in order to create such notable music pieces like The Immortal, Journey To Silius, Mega Man #, Solstice, and probably a bunch more
    I wonder - how do SNES cartridges with extra music chips compare to this? Like Tales of Phantasia, which has an entirely voiced song seems pretty ridiculous

    • @Teuthida
      @Teuthida 3 года назад +7

      The SNES never actually had any extra music chips except for the MSU, which never made it into any games - every official SNES OST you hear was done using the console's base sound chip.
      Moments like Tales of Phantasia were made possible by rapidly swapping out the SPC chip's limited memory (just 64 KB!) to essentially stream audio through the console. Just like the NES's $4011 PCM, this took up CPU time, so it was reserved for moments with little game logic or only used to switch samples in between tracks, like in Secret of Mana.

    • @MaxwelThuThu
      @MaxwelThuThu 3 года назад +2

      There's no special chip that improves sound on SNES.

  • @skins4thewin
    @skins4thewin 3 года назад

    Imagine what sort of NES game a truly talented team of devs could make these days if they truly tried? If enough time & resources were given to them, I bet we could end up with something truly magnificent that would absolutely blow away anything that came before it.
    Unfortunately such a thing simply isn't feasible or profitable in this day & age, so we may never know....

  • @igodreamer7096
    @igodreamer7096 2 года назад +1

    Love your videos, man! It's like take a class on gaming or something! xDDD

  • @ciberman
    @ciberman 2 года назад

    Never knew that the NES could play sample files. Amazing!

  • @inthefade
    @inthefade 3 года назад +1

    Wow. About 10-15 years ago I remember there was talk in the audio world about switching to ultra-high audio rates and 1-bit audio. I didn't know the NES did this. I actually learned quite a few things about NES audio that I didn't know, which is surprising to me. Cool.

    • @michalzustak8846
      @michalzustak8846 3 года назад

      NES did delta modulation but at 33 Khz as the highest rate. DSD/Super Audio CD used in the high end audio world used several Mhz(!), IIRC, 2.8 Mhz. But yes, the basic principle is similiar, NES just uses it at MUCH lower sample rates, resulting in sound that takes little space and is easy to play for 80s hardware but is very lo fi.

  • @mattthelumber3234
    @mattthelumber3234 3 года назад

    Idk what the hell im watching nor will with info stick, but you did a great job of explaining it

  • @realmchat6665
    @realmchat6665 3 года назад

    Awesome, very informative and well presented.

  • @markykid8760
    @markykid8760 3 года назад

    Fantastic video. Any more you would do on retro audio would be hugely appreciated. I love your channel.

  • @ChaunceyGardener
    @ChaunceyGardener 3 года назад

    Amazing video! This channel keeps giving!

  • @YourIdeologyIsDelusional
    @YourIdeologyIsDelusional 3 года назад +3

    I like the original Sunsoft bass better than the corrected one. The reversed bit order seems to be creating extra high frequency artifacts, adding high harmonics to the sound similar to that of a clean amp or exciter, which gives it more presence in the mix. I have to wonder if at some point they may have corrected it during development but decided the reversed bit order sounded better in the mix. That *might* be why they left the drums in Super Contra reversed, even.

    • @BigOlSmellyFlashlight
      @BigOlSmellyFlashlight Год назад +1

      i like how the original sounds for the same reason, it sounds like an electric bass and fits perfectly in the song

  • @persona83
    @persona83 2 года назад +1

    Can't understand sh*t, but it's always a pleasure to listen to you talking about NES and stuff.

  • @jodymcdougle8810
    @jodymcdougle8810 3 года назад

    I love these types of videos!!

  • @canalsenhorpe
    @canalsenhorpe 3 года назад

    great work

  • @909crime
    @909crime 3 года назад +4

    I really wish the NES had 2 DMC channels... as a NES composer it would really come in handy!

    • @MaxOakland
      @MaxOakland 2 года назад +3

      Two would be amazing. And as a Gameboy game dev, I wish it had one DMC channel!

    • @909crime
      @909crime 2 года назад +1

      @@MaxOakland that would be so awsome!

  • @minamur
    @minamur 3 года назад

    really great video

  • @AICJDR
    @AICJDR 3 года назад

    Awesome video as always!

  • @chadwolf3840
    @chadwolf3840 2 года назад

    super fascinating.

  • @dancinninja
    @dancinninja 3 года назад

    Absolutely fascinating!

  • @metarotta
    @metarotta 2 года назад

    great video!
    the DPCM was a good compromise for basic samples to be played while keeping the CPU free to run the game without issues, however it did have big downfalls specifically with synthesized sounds like a sawtooth wave, which were impossible to store correctly due to their nature, though that in a way makes what rob hubbard achieved with the immortal's soundtrack even more impressive