Toy Story's Hardware Defying Music - How We Did It

Поделиться
HTML-код
  • Опубликовано: 6 сен 2024

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

  • @SMole91
    @SMole91 6 лет назад +997

    I always get amazed how limited you was and what cool tricks you used to get around it.
    Your videos are always something like: "We had a spoon, box of matches, and bottle of water. And we had to go in space. Here's how we did it."

    • @DefinitiveDubs
      @DefinitiveDubs 6 лет назад +78

      Holy shit that's the best description for GameHut's videos I've ever heard.

    • @fortitude9932
      @fortitude9932 5 лет назад +7

      Lol yup

    • @halo3odst
      @halo3odst 4 года назад +20

      Easy actually, use the weld tool to make a rudimentary platform out of the hitboxes of the props, the matches can be arranged into a honeycomb pattern to create a large barrier with little mass. make sure that everything is welded to each other for a more stable platform. Afterwards use your phys gun on the platform while standing on top of it and scroll the mousewheel down, this will pull the platform towards your feet lifting you upwards until the desired altitude is achieved.

    • @tqft
      @tqft 4 года назад +2

      SMole yessssssssss lad!

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

      Gmod

  • @jasonblalock4429
    @jasonblalock4429 6 лет назад +520

    Yeah, OF COURSE an ex-Amiga dev would find a way to shove a MOD player onto the Genesis. ;-)

  • @skeletontoaster3811
    @skeletontoaster3811 6 лет назад +28

    There's a scene in Sonic Riders where Tails attempts to explain the "simple" mechanics of a hoverboard, and Knuckles's eyes start rolling into the back of his skull.
    _...What a lovely way of describing my current state._

  • @devil7660
    @devil7660 6 лет назад +84

    Impossible music, impossible logo fmv, impossible 3D chase, impossible intro sequence, impossible 148 color images.
    Everything this guy does is impossible, Paramount should hire you for Mission Impossible 7.

  • @doomfatlikesbluesphere9984
    @doomfatlikesbluesphere9984 6 лет назад +1235

    gotta *BLAST* that data.

    • @AltimaNEO
      @AltimaNEO 6 лет назад +112

      Only possible on the Sega Genesis because it comes with B L A S T P R O C E S S I N G

    • @doomfatlikesbluesphere9984
      @doomfatlikesbluesphere9984 6 лет назад +38

      Altima NEO funnily enough that's where the term came up...
      the story goes that one of the guys from marketing was chatting with a young dev group, and one mentioned getting the system to "BLAST data"...
      supposedly the guy liked the word blast, and soon after it became their slogan

    • @doomfatlikesbluesphere9984
      @doomfatlikesbluesphere9984 6 лет назад +2

      Austin Gaming ...
      you're trying, but not hard enough...

    • @Kimarnic
      @Kimarnic 6 лет назад +1

      Better gotta have a faster CPU clock rate unlike the SNES which was 4.09 mhz less than the Genesis thats why they call it blast processing and it sounded cool

    • @yohkom.7988
      @yohkom.7988 6 лет назад +7

      segaretro.org/Blast_processing
      Behold the power of blast processing (... and also Nintendo not ashamed to lie in order to damage control)

  • @BrianBates128
    @BrianBates128 6 лет назад +374

    As someone interested in programming for consoles of this era, I really like hearing these "how we did it" videos, straight from the horses mouth. I am a developer myself and while some of these tricks aren't needed anymore, it helps to expand the way you think about solving a problem.

    • @jota2d443
      @jota2d443 6 лет назад +10

      They should be needed. People has to stop going the easy way.

    • @BrianBates128
      @BrianBates128 6 лет назад +20

      Couldn't agree more. Part of my focus as a developer and computer scientist is looking at Execution Time and Performance. Things like Big-O Notation are important to me. This is a little different since its about using the hardware in a peculiar yet efficient way that wasn't thought of before. Most people took system restrictions as Challenges rather than cut and dry facts. Unfortunately it seems like this has become a lost art as more and more libraries and engines are released that take the developer away from the "bare metal".

    • @jota2d443
      @jota2d443 6 лет назад +9

      If it's built by humans, it can be improved by humans. I agree with everything you say. I think programmers nowadays just learn the little bit they need to compel their work, there is no curiosity nor "I can do this better" attitude.

    • @vinisasso
      @vinisasso 6 лет назад +8

      His videos are inspiring even to developers who use high-level languages. I think that, for ex., the frameworks and libraries of today should only be a way to accomplish more things in a more efficient way so you don't need to create and implement everything from point zero again and again, but this doesn't mean they substitute creative and innovative approaches on dealing with hardware issues and shortcomings, or software development questions. I think it's worth to mention that many developers today are Web developers, or maybe Mobile developers (I myself am a Web developer), and development has been cross-platform in a lot of cases, so this "next to the bare metal" approach is not so frequent than in the 16-bit era. Maybe the challenge is to avoid the easy and limited ways for everything, do research, be curious and be willing to dare new approaches to solve the problems that arise, and surely see limitations as challenges, not as unbreakable walls. Or maybe try to achieve the expected results in an unique and smart way. I'm sorry if my english is bad, it is not my native language.

    • @BrianBates128
      @BrianBates128 6 лет назад +4

      Vinícius, firstly, your English was excellent. And I totally agree with you as well. My day job is a web application developer, so primarily I do work in things like PHP/HTML/CSS/JS so I am taken away from the "bare metal" quite a bit. I guess the point I am trying to make (and you touched on it as well) is the efficiency piece. Its like the case of BogoSort versus QuickSort. Sure, most languages have a $list->justSortThis(); method so don't have to develop your own sorting algorithm, but I still think that these things need to be thought of and considered.

  • @NitroRad
    @NitroRad 6 лет назад +116

    This is one of the most fascinating channels I've ever watched. Very rarely do you get this kind of information in video form, actually coming from a real developer.
    A lot of people sent me your video about Haven after I recently played through the game, but I'm glad I decided to subscribe and stick around!

  • @sling-b
    @sling-b 6 лет назад +466

    While your games may vary in quality, your technical know-how and getting around something that sounds impossible to get through is really impressive! I'm surprised Traveller's Tales isn't praised by many gamers alike!

    • @SeanLawrenceMusic
      @SeanLawrenceMusic 6 лет назад +90

      Lol those backhanded compliments

    • @leonidas6682
      @leonidas6682 6 лет назад +86

      He is praised, his personal worth is over 100 million dollars, but still humble enough to teach us some neat tricks.

    • @flmalegre
      @flmalegre 6 лет назад +62

      That's what you get with former Amiga programmers.Boy could they make the 68000 sing.

    • @EeveeEuphoria
      @EeveeEuphoria 6 лет назад +26

      Quite literally it would seem.

    • @bangerbangerbro
      @bangerbangerbro 6 лет назад +6

      Sling Blue-Eyes Praised by normal people but not "gamers".

  • @65oh7
    @65oh7 6 лет назад +264

    True blast processing usage right there.

  • @B0MYT
    @B0MYT 6 лет назад +385

    "Very quickly read its memory and blast data to a thing called a DAC"
    So that explains why it has blast processing...

    • @DaVince21
      @DaVince21 6 лет назад +25

      B0M Honestly, almost anything that has audio capabilities at all will have a DAC - it means "Digital to Analog Converter" and is needed to convert the digital representation of a sound into an analog (electronic) signal that the speaker can play.

    • @nickwallette6201
      @nickwallette6201 6 лет назад +18

      B0M: You're closer to the truth than you may have thought:
      www.nintendolife.com/news/2015/11/the_man_responsible_for_segas_blast_processing_gimmick_is_sorry_for_creating_that_ghastly_phrase

    • @yohkom.7988
      @yohkom.7988 6 лет назад +15

      Except he shouldn't be sorry, this slogan is one of the best ever and based on facts.
      segaretro.org/Blast_processing
      Behold the power of blast processing (... and also Nintendo not ashamed to lie in order to damage control)

    • @Chriva
      @Chriva 6 лет назад +4

      They "blasted" the video DACs. Not the one used for audio :)

    • @nickwallette6201
      @nickwallette6201 6 лет назад

      That's kinda splitting hairs. The point is, the context and even the phrasing used in this video (which inspired this thread) is exactly how that phrase came to be.
      @Yohko
      I think the point he was making in that article (the "ghastly phrase" bit) is less about marketing and more about how it became a caricature of Sega. Consider how it's practically (if not literally) a meme now. Every review of anything Sega has at least ten "but does it have / that's because it has ..." posts. I can see how that would drive someone to regret having spawned the term.
      I have no comment on it, really. I only linked the article because it referenced how the phrase was coined.
      What somebody SHOULD apologize for is the whole "Sega does" campaign. Because of that, not one comment section can exist on the Internet without some melvin posting "yeah cuz Sega does what Nintendon't!!1 der hur hur" like it's still clever some 20 years later.

  • @NaviciaAbbot
    @NaviciaAbbot 6 лет назад +281

    I think I've said this before, but you folks are Genesis Wizards.

  • @davidscritchfieldds
    @davidscritchfieldds 6 лет назад +33

    I didn't understand this entirely, but the complexity of what you and your team did to ensure a quality end product absolutely amazes me. It makes me wish that every game designer from the 90s was as dedicated as you. I can only imagine the incredible games that would have come from that, having come to understand how much work you put into the games you made

  • @TheLonelyGoomba
    @TheLonelyGoomba 6 лет назад +44

    *nods politely*

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

      can't believe how little attention this is getting. such politeness should be rewarded

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

      @@cannon9009 ikr

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

      *nods gayly*

  • @LazerLord10
    @LazerLord10 6 лет назад +22

    My only reaction to this is "Holy shit, dude".
    Amazing!

  • @SpunkMcKullins
    @SpunkMcKullins 6 лет назад +803

    Ah, I understood some of those words.

    • @sasdagreat8052
      @sasdagreat8052 6 лет назад +42

      Spunk McKullins Me too! The most notable ones for me were the pronouns and a few of the verbs. The other parts may be Mandarin Chinese for me, but hey, I understood at least a few of the words! :D

    • @bangerbangerbro
      @bangerbangerbro 6 лет назад +3

      SasDaGreat hahaha!

    • @Dargonhuman
      @Dargonhuman 6 лет назад +14

      I know the words, but it's like they're lining up in a way that doesn't make sense to me.

    • @Lightblue2222
      @Lightblue2222 5 лет назад +2

      Words are for losers. It's just clicks and whistles to me.

    • @projektb4rd0n53
      @projektb4rd0n53 4 года назад

      Your profile pic gives me hard nostalgia

  • @SomeLinedPaper
    @SomeLinedPaper 6 лет назад +94

    geeze, you guys squeezed a lot of power out of the genesis hardware. impressive stuff.

  • @DagothBob
    @DagothBob 6 лет назад +166

    I have a feeling this channel will get a lot of people interested in computer science

    • @GraveUypo
      @GraveUypo 6 лет назад +8

      certainly helping me get the motivation to continue studying.

    • @vinisasso
      @vinisasso 6 лет назад +4

      Agreed. His work and his will to share knowledge is inspiring.

    • @ademkarakaya834
      @ademkarakaya834 6 лет назад +11

      Definitely, but during my years in a CS degree at University there was seldom much of this 'stuff' with the program solving aspect - a lot of it was mainly fundamental programming of different languages, and courses which geared towards software engineering planning and management. Very rarely did I engage with the theoretical aspect of CS and delved a lot into the practical aspects of it, essentially becoming a glorified code monkey. I like computer science AS a science itself, like how you learn Physics or Biology or Chemistry with both practical and theory in balance. However, the truth is that it sucked a lot. Reason being is because the course was geared to get you straight to finding a job. The reality, is that CS is a science and should be treated as such.
      I was doing this as a double degree with a computer and network Engineering degree and the honest truth was that the Engineering side of things is much more enjoyable for me, because the practical content is more 'hands on' and diverse rather than coding for hours on end. But for those who are considering or are pursuing computer science, please do! There is nothing wrong with computer science and it is absolutely fascinating. Be aware though that most CS degrees aren't directed as science degrees and do not focus on computational methodologies, concepts, philosophy etc.

    • @Lightblue2222
      @Lightblue2222 5 лет назад +1

      The electric wire went thru the sand chip yo. Fukn sweet. Computer chips are made of the beach bra

  • @Kraigon42
    @Kraigon42 6 лет назад +4

    I absolutely love hearing how hardware was specifically used in developing games, because we usually get stories like this, that involve ingenious workarounds to limited resources.

  • @PresStar2Play
    @PresStar2Play 6 лет назад +11

    Once again, the things you guys at Traveller's Tales were able to do with the hardware is still absolutely amazing. I've always been impressed by the .MOD track in Toy Story, it's something you don't think the Genesis is able to handle! And it honestly sounds good as well.

    • @bangerbangerbro
      @bangerbangerbro 6 лет назад

      Flammie Hi! Fancy seeing you here. I had a conversation with you on a sonic CD soundtrack video.

    • @PresStar2Play
      @PresStar2Play 6 лет назад

      Hai! I've seen you on many videos too.
      I don't remember what I had a conversation with you about though, could you remind me?

  • @Larry
    @Larry 6 лет назад +477

    This sounds quite similar to how Tim Follin managed to get the 48k Spectrum to play multiple tracks.
    But was t true the Mega Drive also had additional chips for running Master System games? (when it was being developed as the Mark IV) or something? could they be used?

    • @GameHut
      @GameHut  6 лет назад +168

      Larry Bundy Jr yeah, very similar to Tim’s. great guy, we employed his brother for a while...

    • @BottomOfTheDumpsterFire
      @BottomOfTheDumpsterFire 6 лет назад +25

      Isn't the Master System just a Z80 with its own little sound chip?

    • @Beansman-gp3ws
      @Beansman-gp3ws 6 лет назад +28

      The Genesis was half SMS. It had the new hardware but it also had the Z80 and the PSG. It didn't have the SMS sound upgrade chip though.

    • @Dylan-hi1os
      @Dylan-hi1os 6 лет назад +29

      I find you in the comments section of everything.

    • @SirDaShadow
      @SirDaShadow 6 лет назад +19

      The Mega Drive has the SMS's Z80 CPU, the 8K of ram and the PSG. The MD VDP (Video Display Processor) had a backward compatibility mode to display the SMS graphics modes, except the SG-1000 modes (which is the reason why F-16 Fighting Falcon was not compatible with the Power Base Converter)

  • @The_Mister_E
    @The_Mister_E 6 лет назад +35

    When you brought up the Amiga, I thought you just cheated all the way through and sequenced it on the Amiga then streamed audio to the PCM channel, using comparisons and reusing of audio sections short and long to compress it.
    Not only was your real execution higher quality, but more clever than I even thought possible. My hat is off to you, and you didn't even fill in the cracks with FM!

    • @JamesChurchill
      @JamesChurchill 6 лет назад +4

      Actually, that's pretty much *exactly* what they did. An amiga MOD track is already nothing more than a set of audio samples for instruments and patterns that specify which samples to play and at what speed (=pitch) and volume. Writing a MOD player for the 68000 is a bunch of work but is relatively straightforward. Streaming the resulting audio over to the Z80 is the unusual part.

    • @The_Mister_E
      @The_Mister_E 6 лет назад +1

      James Churchill I know that. What I was implying was streaming one stream of data with the entire song (like an .mp3 sorta), not having each instrument having its own "channel". Remember, I thought that the PCM channel was only capable of one sample at a time.

    • @andrewrobertson1473
      @andrewrobertson1473 6 лет назад +1

      The PCM channel is only capable of playing one sample at a time. In this case, the main 68000 processor combines four channels into one mathematically. To the Z80 processor, however, it is only one sample.
      You COULD calculate everything beforehand and store the result, but that would eat up way too much disk space. Even if you could compress it to a reasonable size, you still have to decompress it when playing the sound. You are then going to eat up the system's memory or have to decompress in real-time, which probably wouldn't be feasible.

  • @PhirePhlame
    @PhirePhlame 6 лет назад +238

    What do you think of MarkeyJester's "Sonic Next Level" ROM hack, speaking of impossible sample sound?

    • @BluecoreG
      @BluecoreG 6 лет назад +44

      72speedway, oh Yeah! I believe Sonic 1: The Next Level uses this exact trick to make the music sound so good.

    • @infurnus1
      @infurnus1 6 лет назад +44

      It's possible to just stream the audio. The only real limitation is memory/space available.
      Sonic 1 uses the 68k chip instead of the Z80, so it doesn't have the same issues shown in this video. This also means that it can go over 10khz, I've heard examples/demos that go up to 37khz.
      Other examples include Tempo (the title screen at least) on the 32x, and the Overdrive demos by Titan on MegaDrive/Genesis.
      I could have sworn I saw another reply mentioning this, but I can't find it any more, so I thought I'd make a post, hope this helps shine some light on it.

    • @shukterhousejive
      @shukterhousejive 6 лет назад +12

      Skitchin' uses mixed samples in places as well, I'd love to know what EA's technique was

    • @Blakeoramo
      @Blakeoramo 6 лет назад +7

      BAC0NB!TS I didn't know you did SEGA Genesis ROM hacking

    • @PP-bs3od
      @PP-bs3od 5 лет назад

      Some of the tracks in that hack (like Gust Planet 1 and 3) are SMPS with DualPCM if I'm not mistaken, and other ones like the Boss theme are simply short PCM clips that have been chained together to save memory.

  • @dewdude
    @dewdude 4 года назад +10

    Me: "I bet they did some rudimentary PCM mixing with spare CPU time."
    Video: *explains rudimentary PCM mixing*

  • @AltimaNEO
    @AltimaNEO 6 лет назад +70

    Travelers Tales, developer of the impossible?

    • @joshuakorynta3385
      @joshuakorynta3385 6 лет назад

      Altima NEO Lego Worlds is hilarious. It may be glitchy, but that makes it better.

    • @YuukiTakemoto1996
      @YuukiTakemoto1996 5 лет назад +1

      @@joshuakorynta3385 "Bugs scare the DIODES out of me!" ~ Cyborg, 2014
      "Have a _nice day._" ~ Grid, 2018
      Thank Traveller's Tales for those quotes. They don't know what the fuck a Sonic is!

    • @Lightblue2222
      @Lightblue2222 5 лет назад

      More bang for the buck?

  • @TalonTheRetroGamer
    @TalonTheRetroGamer 6 лет назад +50

    These Coding Secrets videos are great.

  • @ThomCote88
    @ThomCote88 5 лет назад +4

    Been watching through your backlog of Coding Secrets videos, this is one of my favorites so far! The technique to overcome the period of silence transferring between chips was really clever!

  • @MajatekYT
    @MajatekYT 6 лет назад +1

    So you basically used the main processor as a stand-in audio chip, and wrote bespoke software that mixed samples, compiled music, and barely used the rest of the audio chips as anything more than an intermediary buffer (as one half of its memory plays you load newly generated audio computed by the main processor into the other half of the Z80's memory before swapping over repeatedly) and streamed audio data to the end source. You guys were nuts, and immensely ingenious. Great stuff.

  • @Marigio300X
    @Marigio300X 6 лет назад +4

    That's amazing! You guys put so much work into these and pulled off SO MUCH cool things within! I'm glad you're taking the time to share these insightful views into how it was done.

  • @SteelyEyedH
    @SteelyEyedH 4 года назад +1

    Loved this one. Spent my day coding a VoIP system, with all the power we have now in modern systems, moving megabytes of data around, worrying about the odd kilobyte here and there, this video made me feel real awe for the out of the box solutions you guys implemented back in the day.

  • @iregretsomeofmypreviouscom3284
    @iregretsomeofmypreviouscom3284 6 лет назад +2

    Toy Story from Genesis has one of my favorite chiptune Soundtracks ever made. I didnt know how complex was the story about the music and the sound capabilities. Your videos are great!!

  • @ShinoSarna
    @ShinoSarna 6 лет назад +1

    These videos leave me with newfound appreciation for Traveller's Tales.

    • @YuukiTakemoto1996
      @YuukiTakemoto1996 5 лет назад

      Since Batman is your avatar, you know about LEGO DC Super-Villains, right? AND HOW SEXY GRID'S VOICE IS IN THAT GAME?
      Bitch, Grid's voice already left me with newfound appreciation for Traveller's Tales. As well as Cyborg fearing everything in LEGO Batman 3: Beyond Gotham.

  • @barc0deblankblank
    @barc0deblankblank 4 года назад +1

    Brilliant insight. I'm always amazed how back in the day, limitations gave rise to so many clever solutions. For better or worse, nowadays there's nowhere near the flexibility to attempt anything low-level or fancy on modern console SDKs. The hypervisor nannies (thankfully, I guess) everything.

  • @Bardock267
    @Bardock267 6 лет назад +18

    On the topic of Toy Story, do you happen to know of anything regarding un-used stuff in the Toy Story 2: Buzz Lightyear to the Rescue? I've always been curious of that game's development.

  • @afonline2004
    @afonline2004 6 лет назад +1

    You're right about the Amiga's sound, the low-end was lovely for bass-lines. There was multi-channel intro music of a sort in the Tandy CoCo/Dragon32 game "Donkey King" in 1984 by Ken Kalish, neither computer had a sound chip. He also wrote the first FPS I ever played "Phantom Slayer" in 1982.

  • @g.d.8065
    @g.d.8065 6 лет назад +1

    This reminds me of a lot of various microcontroller wavetable synth projects I've seen. It's amazing that you managed to do all that while still running the game itself.

  • @chrismills8251
    @chrismills8251 6 лет назад

    Although I didn't fully grasp it, you completely kept it interesting enough for me to keep watching. Small doses of technicality are much appreciated.

  • @dantefloressq
    @dantefloressq 6 лет назад +417

    I DON'T UNDERSTAND but i love your videos

    • @Dr0pDe4DDanny
      @Dr0pDe4DDanny 6 лет назад +4

      Amanda Flores Same

    • @wristhearts
      @wristhearts 6 лет назад +17

      i've never had any interest in game development but i binge these videos! SO interesting and explained in a simple way

    • @L0L247
      @L0L247 6 лет назад

      Amanda Flores LOL!

    • @justyouraverageellipsis658
      @justyouraverageellipsis658 6 лет назад +1

      Amanda Flores Haha me too Game Programming is so hard to understand but their videos make Game Programming interesting...

    • @axr6327
      @axr6327 6 лет назад +2

      Amanda Flores interestingly enough me too. Especially because there is such an awesome, relaxing tune in the background, it complements and adds some unintentional meaning to every video.

  • @derpmansderpyskin
    @derpmansderpyskin 6 лет назад +38

    1:14 accidental face reveal?

    • @SheepyChris
      @SheepyChris 6 лет назад +18

      Nah, I'm pretty sure that you'll find Jon by searching "Traveller's Tales' Founder" on Google ;)

    • @AnonymousFrogNG
      @AnonymousFrogNG 5 лет назад +1

      Sorry, Real face reveal was six months ago!

    • @theedwardian
      @theedwardian 4 года назад +1

      Get em boys

  • @SECONDQUEST
    @SECONDQUEST 6 лет назад +1

    Gosh darn I'm so happy to see this. You created my childhood, and now you're showing how it worked. I love it.

  • @HybridAngelZero
    @HybridAngelZero 6 лет назад +186

    Y'know, if modern developers were taught even half the ingenuity and skill you guys used on the Mega Drive, we probably wouldn't have games with 100+ GB mandatory installs

    • @bangerbangerbro
      @bangerbangerbro 6 лет назад +1

      Micaiah the Otaku Gamer [HybridAngelZero] Lol, is that a thing?

    • @DaVince21
      @DaVince21 6 лет назад +47

      It's uncommon, but a few games do get as large as 100 GB, yes.
      Part of the fact that huge games exist is because storage space isn't exactly a premium anymore. Also, more and more assets get saved in very high quality, (for example, textures at 4K resolutions).

    • @hoodedman6579
      @hoodedman6579 6 лет назад +26

      That's largely due to people not giving a shit, not them lacking skill; it's usually a bunch of uncompressed shit that could have easily been compressed.

    • @HybridAngelZero
      @HybridAngelZero 6 лет назад +1

      Hooded Man "Skill" isn't really the word I should have used, but you're totally correct

    • @zarieldriesen1743
      @zarieldriesen1743 6 лет назад +1

      You can blame the mandatory installs on BluRay as a format and specifically the BluRay drives in modern consoles simply not being fast enough to read games at a decent speed

  • @purrbox7514
    @purrbox7514 6 лет назад

    To see 4 channel mods being played by a z80 is the best thing I've ever seen. I loved the early PC days when the sound tracker format was adopted and expanded upon. The programmers were all competing to create better sound mixing routines in their software, impulse tracker was my favourite as it had resonant filters and interpolation to get rid of the harmonic distortion.

  • @kogok89
    @kogok89 6 лет назад +1

    I remembered a 6 years old me, pumping up the TV volume and listening to that intro music in a loop on my mega drive. Thanks for sharing these details and for your technical awesomeness.

  • @nononame26
    @nononame26 4 года назад +4

    "Blast data directly to the chip"
    Is that a blast processing joke?

  • @samysnes
    @samysnes 6 лет назад

    You are a freaking wizard. Everything you managed to do with that console is nothing short of a miracle. Talk about squeezing every last drop of power out of that hardware!

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

    This being a licensed game, it could have been half-assed and nobody would have batted an eye. The effort that went into it is astounding.

  • @unfasten
    @unfasten 6 лет назад +6

    Something similar was pulled off at EA. VGM composer Jeff Van Dyck said in an interview on the Legacy Music Hour podcast that a programmer named Kevin Pickell worked out a way to make the Genesis play simultaneous samples, which made the grunge-inspired "Skitchin'" soundtrack possible, as well as other compositions.

  • @Jayenkai
    @Jayenkai 6 лет назад +1

    I’ve just spent the past few days working on OpenAL based Ogg streaming, and am incredibly thankful that modern technology makes that a painless task when compared to this!!

  • @GameHut
    @GameHut  6 лет назад +129

    We have a GameHut discord server now if you want to chat about this kinda stuff at discordapp.com/invite/YjWnxm9

    • @Blox117
      @Blox117 6 лет назад

      how is there 4 channel sound if the console only had stereo out? usually when talking about multichannel PCM there are only as many channels as there are physical connections to the speakers.
      im not sure how multichannel sound works in games, but on devices these days all multichannel sound is downmixed if you only have stereo out.

    • @caiocc12
      @caiocc12 6 лет назад +5

      Blox117 when he says "channel" here he is talking about "tracks" - different instruments or "voices" playing simultaneously.

    • @vinisasso
      @vinisasso 6 лет назад

      Blox117 Caiocc12 is right. In the 16-bit era we used to call a "channel" each audio portion a soundchip could send. The Sega Genesis / Megadrive could output a maximum of 10 sounds at once in total. All those audio portions were downmixed to 2-channel stereo or mono output, depending on the model.

    • @bangerbangerbro
      @bangerbangerbro 6 лет назад

      What's discord?

    • @bangerbangerbro
      @bangerbangerbro 6 лет назад

      Vinícius Sasso The model 2 only has mono?
      "In the 16 bit era we used to". Lol.

  • @YoutubePizzer
    @YoutubePizzer 6 лет назад

    The way you explain these coding secrets make me think that these games you made were the most revolutionary games ever for its time

  • @taLLdavidproduction
    @taLLdavidproduction 4 года назад +1

    I remember seeing the travelers tales logo in the beginning of my game as a kid and it would reassure me that its a good game lol

  • @tphofficial64
    @tphofficial64 6 лет назад +1

    It's interesting knowing how much work was put into these games; it's honestly a shame that people call these games terrible

  • @tightlypackedcoil
    @tightlypackedcoil 6 лет назад +2

    Just as I thought, I have no clue wtf is going on, but I still find myself fascinated. Must be the soothing voice of the narrator. 😏

  • @SpiralPegasus
    @SpiralPegasus 6 лет назад

    The amount of thought that went into making this will _never_ cease to amaze me.

  • @MattFurniss
    @MattFurniss 6 лет назад +35

    6 channel FM + 4 channel PSG + 4 channel PCM . Do-able?

    • @saturndual32
      @saturndual32 6 лет назад +12

      I think homebrewer Stef came pretty close to that with his driver. He hacked it into the Sega Genesis Street Fighter 2 SCE, and now we have multiple samples playing at once, with great quality. Thats on top of the original game music.

    • @Scooblee1
      @Scooblee1 6 лет назад +11

      I know the driver used for Skitchin' had 4 PCM support alongside FM and PSG, and all of that was used for in-game music no less! (iirc only two PCM are actually used for music tho, I think the others are for SFX..) That's probably the best example I know outside of maybe homebrew.

    • @GameHut
      @GameHut  6 лет назад +22

      That actually you Matt?

    • @electronash
      @electronash 6 лет назад +2

      GameHut
      Fantasic vid. ;)
      I mentioned this the other day, and always wondered which tricks you used.
      And yes, it does look like the real Mr Furniss. ;)

    • @electronash
      @electronash 6 лет назад +1

      GameHut
      A few months ago, I finally got around to attempting my first Wavetable style synth.
      I'd never written any MOD players or other synths previously, and this was to be done in Verilog for an FPGA.
      I managed to get basic samples playing, then had to generate a small ROM table for the note pitch.
      The rest happened fairly quickly, and now it's pretty much a full MIDI Wavetable synth. ;)
      There's no CPU in this at all, all pure logic. The PC is streaming MIDI to the FPGA, though.
      Only used an 8-bit 11 KHz sample set at first (from Amiga DOOM), mainly due to the simple file format, and the limited 70ns Flash speed (and bus width).
      It does have it's own crusty charm to it, though. lol
      drive.google.com/open?id=0B1grqFdAErsrM19hZWNlU3hKNEE

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

    As an indie game developer and NOT a music composer by any means, I find this fascinating. It's well outside my ability to fully comprehend creatively and technically, but I did generally understand the premise of what you did and I find it extremely informative and important to have a little understanding about. I'm sure I'm going to run into these kids of problems later on when I become a better game developer and try my hand at more complicated games that push the limits of whatever hardware I'm working with. It's all just good stuff to be aware of and I'm glad I found your video. This is very cool stuff.

  • @MegaManNeo
    @MegaManNeo 6 лет назад +1

    You mention your coding tricks in such a way I can totally enjoy it, that's just cool!
    Please keep doing videos.

  • @wolfgangfrost8043
    @wolfgangfrost8043 4 года назад

    My family got a Sega system for me very late in it's life. I was just a kid but thanks to your games in particular I didn't think there was nearly as much of a gap in sound quality/colourful pre-rendered 3D visuals as there actually was versus a Super Nintendo, or even the 32-bit machines.

  • @EricTheCleric93
    @EricTheCleric93 6 лет назад

    A lot of your content often goes over my head but you explain things very clearly, and I really enjoy watching and learning.

  • @yeetlejuice7181
    @yeetlejuice7181 6 лет назад +8

    You're the Indiana Jones of Genesis cartridge technology!

  • @gabrielfrank2878
    @gabrielfrank2878 4 года назад

    Wow! These videos represent the main concept of a programmer: solving problems with very limited resources at their bests! I can't get enough of your videos! I've got amazed how many times you reinvented the wheel out of nowhere with your code. Thanks for sharing us!

  • @JoshuaTuttle18
    @JoshuaTuttle18 6 лет назад +1

    The technical aspects of the process you went through to do this shows the creative out of the box thinking that inspires others to do the same. This was a great video and the only improvement I could see would to play a small portion of the samples that were displayed after going through each mathematical operation so that the visual = math = audio giving a full understanding of the process. Keep up these amazing videos!

  • @Nauxe
    @Nauxe 6 лет назад +1

    This is extremely ingenious. Props to you in getting around the limitations.

  • @kylerclarke2689
    @kylerclarke2689 6 лет назад +1

    This content is really great, there isn't a need for clickbait titles or thumbnails.

  • @hmhamam_ham
    @hmhamam_ham 6 лет назад

    It is absolutely mind blowing the ideas that you guys came up with to work around the Saga's limiting hardware.

  • @walrusmedia924
    @walrusmedia924 6 лет назад

    this is so illuminating for me.
    please keep making these quality videos.

  • @joedoe1096
    @joedoe1096 6 лет назад +1

    Holy. Fucking. Shit.
    We did not appreciate what we had back in the day. You guys are geniuses.

  • @galaxyforever10
    @galaxyforever10 6 лет назад +1

    Dude you're so awesome. I'm currently going to school as a Computer Science student and I want to code for a developer. It's been my dream since I was a kid and you only make it a lot more awesome. I hope to be as skilled and intelligent as you. Keep up the good work man!

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

    I've watched this video approximately too many times. It's just so cool seeing you break down how you managed to basically ignore one of the biggest drawbacks of the system at the time, that being it's audio quality compared to competing systems. You're a friggin genius!

  • @objectiveasylum
    @objectiveasylum 6 лет назад

    you guys were wizards with the Genesis hardware. I am immeasurably impressed

  • @NeverwindOfficial
    @NeverwindOfficial 6 лет назад +1

    I think it would be really cool if you did a video not only about the actual coding secrets, but about your passion as a developer for squeezing the max out of the Genesis. Cause you obviously were and still are into this :D

  • @THEmuteKi
    @THEmuteKi 6 лет назад +33

    1:40 BLAST PROCESSING CONFIRMED FOR MASTER SYSTEM

    • @ABlob
      @ABlob 6 лет назад

      the_muteKi *Mega Drive

    • @bangerbangerbro
      @bangerbangerbro 6 лет назад +5

      A Blob He means the Z80.

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

    These videos feel to me like sitting at a table on my lunch break with a programming guru of the old guard describing amazing techniques he came up with a long time ago. It's really fascinating

  • @fortitude9932
    @fortitude9932 5 лет назад +1

    Saw many of your videos - You = resourcefulness

  • @Terotrous
    @Terotrous 6 лет назад

    Watching these videos really makes me appreciate how easy we have it with modern engines and tools.

  • @Introbulus
    @Introbulus 6 лет назад

    Kinda crazy how you have to buffer the sound like that in order to get the range of audio you needed - but it definitely came out with a pretty convincing rendition of the Toy Story music.

  • @MerriwynMoon
    @MerriwynMoon 6 лет назад

    Even with an explanation, it still amazes me. It's easy to take for granted all the work that has to be done in order to make a functioning game. Keep it up!

  • @dannieltaylor5833
    @dannieltaylor5833 6 лет назад

    Ooh, interesting work around. This is why I really need to brush up on how hardware works, because this is a problem I definitely wouldn't have been able to solve by myself.

  • @PlayerOneStart
    @PlayerOneStart 6 лет назад

    One of the best music arrangements I've ever heard on a stock Sega Genesis game. Very cool!

  • @matthewmiller6068
    @matthewmiller6068 6 лет назад

    Very cool - I'm not a gamer but as a software engineer it's really cool to see the sort of tricks and tweaks you can do to get impressive performance out of limited hardware.

  • @TehNewParalyzer
    @TehNewParalyzer 6 лет назад

    Would you believe me if I told you to this day at work I still find myself humming Toy Story's music. Childhood memories don't die man.

  • @alasyon
    @alasyon 6 лет назад

    That is absolute genius! I would not have thought of using the 68000 to combine samples and push them to the Z80!!

  • @amckeown
    @amckeown 5 лет назад

    This information goes above my head buts it's so fascinating to firstly be exposed to problems people were faced with during these era's , but the problem solving that went into creating solutions that wouldn't even be known to most, if not all us users at the time. Truly astonishing stuff

  • @Sly2Cooper
    @Sly2Cooper 6 лет назад

    This is the true beauty of coding! It is the beauty of one's mind to come up with such technics and ideas to overcome what seems to be the hardware limit and push beyond. Amazing! I love your videos! Thank you so much.

  • @RG7621
    @RG7621 6 лет назад +3

    Imagine how amazing video games would look and sound if every developer worked this hard.

  • @Theguypostingthis
    @Theguypostingthis 6 лет назад

    It's incredible what you have done with so little to work with

  • @Yezpahr
    @Yezpahr 4 года назад

    @GameHut
    YOU made all my favorite sega 16-bit games. You're my God (sort of,, from the game's perspective, kinda)
    Thank you personally for making all these games and thank you for going the extra mile to make them awesome!
    I hope this message reaches you.

  • @The_Real_Chris
    @The_Real_Chris 6 лет назад

    The stuff you took for granted when you were a kid playing these games. Amazing and impressive work,

  • @Bitplex
    @Bitplex 6 лет назад +9

    By the end of the month you'll have 100k subs and i'm backing all the way - you're incredible at what you do and this channel's inspiration keeps the fire in my heart on my own channel burning strong!

  • @RocketLawnchair
    @RocketLawnchair 6 лет назад

    I absolutely love seeing this kind of content. Really getting to the nitty gritty of how this kind of technical marvel was accomplished on the Genesis's limited hardware! Keep it up mate.

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

    It's good to see TT still making really good games

  • @sparkside217
    @sparkside217 4 года назад

    I love finding out that the game pushed the technology as hard as the movie did at the time. Toy Story is so cool to me in that it pushed the absolute limits of technology but the story was every bit as compelling and magical as any run of the mill animation.

  • @sonicmastersword8080
    @sonicmastersword8080 6 лет назад +32

    Quite impressive. It would be interesting to see what other types of compositions could be achieved. If there's one thing that the Genesis remained supreme in the 16-bit era, it was the bass in music. The raw power was masterfully utilized, making industrial sounding pieces possible.

    • @DaVince21
      @DaVince21 6 лет назад +2

      SonicMaster Sword I'm sure that with a little fiddling, the technique described in the video can be combined with still playing back some of its other, meatier sound channels. That'll enable complex sample playback with the kind of instrumentation you're talking about. :)

    • @fullsdready
      @fullsdready 6 лет назад +4

      A lot of things could be possible, but not really outside of a static screen since this method requires a lot of horsepower. Hence why it's only use on the title screen.

    • @yohkom.7988
      @yohkom.7988 6 лет назад +1

      Foulaisedé Rédi
      Check out Sonic the Next Level, it plays sampled music during actual gameplay and with sound fx too :)

  • @FictionFactoryGames
    @FictionFactoryGames 6 лет назад

    I had a PC rather than an Amiga, but PCs played four-channel sample based MOD music files in a similar way, by mixing the samples together into a single channel. (Or two, if it's a stereo card.) Interesting to see such a math-intensive system being developed for the Genesis! Thanks for the video.

  • @willyarma_uk
    @willyarma_uk 6 лет назад +3

    Ive just written a MOD player for the ESP8266 microcontroller this week, used pretty much the same techniques. I just used fixed point maths to re-sample the audio. Just convert the note period into a step amount that is shifted left a few times and then add this value to a pointer for each output sample, just take the upper bits of the pointer to find memory address of sample to copy from.

    • @noop9k
      @noop9k 6 лет назад

      willyarma you seem to not understand your obvious approach wouldnt work on 68000k due to its much lower performance.

    • @willyarma_uk
      @willyarma_uk 6 лет назад

      noop9k of course I do! I've been programming assembler for 30 years! I never said my approach would work on the megadrive or it was better. Btw I have also written a mod player for pure z80 too the video is on my channel but I'm using DMA audio so no tricks needed although I am using quite a few look up tables as division is too slow on z80.

    • @noop9k
      @noop9k 6 лет назад

      willyarma well, I reacted to “pretty much the same”

    • @willyarma_uk
      @willyarma_uk 6 лет назад

      noop9k AHH, guess I was a bit unclear.

    • @noop9k
      @noop9k 6 лет назад

      willyarma fixed point on more advanced CPUs with barrel shifters is quite dissimilar from what you do on more primitive ones, where anything but lookup tables and pre-generated code sequences are too slow :) anyway, I only wrote a mod player long time for 386, also quite straightforward.
      Wolf3d clone, for the same 386, used pre-generated code for all integral scaling factors. But this is slightly less clean-looking than fixed-point scaling.

  • @Noone-of-your-Business
    @Noone-of-your-Business 6 лет назад

    The same basic principle of software-based mixing of samples was done on the Amiga to double its 4 channels to 8 in the Octalyzer sound tracker. The result was stuffy-sounding enough, as it lost almost all high frequency, but man: _eight_ independent channels! That meant _real_ triads, not just arpeggios. I was so psyched when I was finally able to upgrade to MIDI. 😎

  • @Pr0jectFM
    @Pr0jectFM 4 года назад

    I like how people have been able to recreate Star Fox-like 3D shooters, Mode 7, and sample-based music on the Genesis.

  • @williamthemediocregamer4794
    @williamthemediocregamer4794 6 лет назад

    I get better a understanding programing every time I watch your videos

  • @lampini
    @lampini 6 лет назад +1

    Developer: there’s no way you can do this on a genesis.
    Gamehut: *cracks knuckles*

  • @littleonion216
    @littleonion216 6 лет назад +1

    This is actually really interesting to see what radical tricks developers used to get around limitations. Nowadays we don't even need to worry about this sort of thing.
    That said, is there a possible way people can get their hands on the original song used in Toy Story? Not the sample in the Genesis, I'm talkin' the actual music that was made from the Amiga with no modifications made to bypass the Genesis' limitations?

  • @J-Pow
    @J-Pow 4 года назад +2

    1:25 So many capacitors soldered on that circuit board. Like ticking time bombs. 😅