SONIC Torn Apart to Expose SEGA's Insanity With Multichip Madness

  Рет қаралды 100,545

Coding Secrets

Coding Secrets

Күн бұрын

Пікірлер: 331
@darren8453
@darren8453 4 жыл бұрын
As a developer nowadays, I get the sense that I would have simultaneously loved and hated working on the Saturn 🙂 Simultaneous Multi-Thinking, if you will.
@ciaragarrity6425
@ciaragarrity6425 4 жыл бұрын
Can you clarify on how hard or easy it was to develop for the saturn? I am curious about homebrewing a game. A question I have is: Do you need a machine made by SEGA, do I have to buy a expensive physical kit? How about the dreamcast?
@caseycu
@caseycu 4 жыл бұрын
Ciara Garrity it depends what you want to make; a fast 3D game with lots of special effects takes a great deal of knowledge in both C and Hitachi assembler. But getting started and making simpler games isn’t difficult, and you don’t need any custom hardware if you use an emulator or mod chip. I used to use a dev environment called Saturn Orbit but idk if it’s still around.
@ciaragarrity6425
@ciaragarrity6425 4 жыл бұрын
@@caseycu oh goody! Ill try to find it. Thank you!
@sandakureva
@sandakureva 4 жыл бұрын
The way I understand it, it was a super crunchy setup to work with. It's a matter of "how much did you enjoy haskell back in college?" If the answer is anything other than "oh god no," then you'd probably enjoy it.
@adlaiHoller
@adlaiHoller 4 жыл бұрын
I would love to see a video about that crazy parallelism on the DSP
@AesculapiusPiranha
@AesculapiusPiranha 4 жыл бұрын
It exists as 'Coding for the World's Trickiest Chip,' so that should be uploaded soon, but we are still waiting on the sequel to that video.
@sseb22
@sseb22 4 жыл бұрын
And if you can't wait: kzbin.info/www/bejne/pGnTnZikbch_qNE
@liam1253
@liam1253 4 жыл бұрын
Seconded!
@yabbaso
@yabbaso 4 жыл бұрын
Me three
@jameskelly9277
@jameskelly9277 4 жыл бұрын
Me as well!!
@henrygreen2096
@henrygreen2096 3 жыл бұрын
Mate, the way you did the visualisation deserves a fucking award, showing a window of what each chip does on the chip. Brilliant, I have never seen that before, if done before someone show me where.
@andrezunido
@andrezunido 4 жыл бұрын
More please! I find the Saturn fascinating, it had such stark differences in game graphics quality. I believe that one must be a wizard developer (team) to make great looking 3d games like Powersslave, panzer Pragoon zwei, etc using this architecture. The Saturn, was part of my teenage gaming years, hope to get more coding secrets content for it. Great work!
@codmott286
@codmott286 3 жыл бұрын
to think a company ported quake 1 in near entirety to the saturn is unbelievable.
@robertwilson3866
@robertwilson3866 Жыл бұрын
It's also about how much time you are willing to spend making a game. Time = money. Are you going to sell enough copies to make that extra time spent on polish worthwhile?
@JimHawkwind03411
@JimHawkwind03411 2 жыл бұрын
You should check out PowerSlave, whose SlaveDriver engine was reused for the Saturn ports of Duke Nukem 3D and Quake. Ezra Dreisbach, the lead architect of the SlaveDriver Engine, was one of the few people who used the Saturn to its full effect, despite him criticizing the Saturn’s architecture.
@shukterhousejive
@shukterhousejive 4 жыл бұрын
I think I'm starting to see why Yuji Naka just gave up and ran his game loops on the 68k
@kevinmarshall6449
@kevinmarshall6449 4 жыл бұрын
He did? Is there a story here?
@Amesuki
@Amesuki 4 жыл бұрын
The Sega Saturn did sound like a bloody "knightmare" to code for.
@melficexd
@melficexd 4 жыл бұрын
I think it sounds very interesting to pull cool stuff with Saturn 😁
@Shonicheck
@Shonicheck 4 жыл бұрын
@@melficexd It's interesting after you pulled this off, but a nightmare to come up with and code.
@RedTygon
@RedTygon 4 жыл бұрын
I think you and I are the only ones that got the joke. I remember knightmare.
@rhiannonband
@rhiannonband 4 жыл бұрын
Sounds like you could easily get yourself into a Pickle.
@scottman572
@scottman572 3 жыл бұрын
Such good games on it though!
@keiyakins
@keiyakins 4 жыл бұрын
And to think that's not even the most absurd system Sega ever produced. A Sega Genesis with both the CD and 32x add-ons formed a system with: A 68000 at 7.67MHz, a 68000 at 12.5 MHz, a Z80 at 3.57MHz, and two SH-2s at 23.01MHz, then for sound you have a YM2612 with 6 FM channels (or 5 and 1 PCM channel), a PSG with 3 channels of square waves and 1 noise channel, a QSound chip with 2 PWM channels, an RF5C164 with 8 PCM channels, and two channels of CDDA, and then for graphics you have... I'm not even going to try to describe the CD32x graphics hardware, but it's 3 completely different chips being over or underlayed.
@jlewwis1995
@jlewwis1995 3 жыл бұрын
Can you utilize all that hardware at once? Or is some of it locked out most of the time? I know the z80 and 68k can't work together at once but what about all the other stuff
@Charlie-eq3dj
@Charlie-eq3dj 3 жыл бұрын
With all that power, could it do FF7 at the appropriate resolutions?
@CharlesHepburn2
@CharlesHepburn2 3 жыл бұрын
Now THAT is Blast Processing!!!
@robintst
@robintst 3 жыл бұрын
All these years I never stopped to consider what a Frankenstein's monster all of those pieces of hardware are together under the hood. Really it's a shame things turned out like they did, I would have really loved to see a CD, 32X, or CD32X game that utilized all that hardware to it's fullest... maybe helmed by Hideo Kojima fresh off the Sega CD port of Snatcher that was so amazing.
@derpinbird1180
@derpinbird1180 3 жыл бұрын
@@jlewwis1995 The z80 operates as a sound controller and not really a coprocessor. Yes you can use them all at once. They would generate the background, overlay and other 2d stuff with the 68000 and its graphics hardware on the genesis while more fancy graphics were generated with the SH-2 processors on the 32x. There wasn't a lot of communication between the CPUs and the images were combined via the video signal so no shared frame buffer or anything like that.
@xmbovlogs
@xmbovlogs 3 жыл бұрын
this is the man who programed magnets into the walls
@profblack
@profblack 4 жыл бұрын
There were many revisions made through its life. Me: Wait. The Saturn had a lifespan?
@mutalix
@mutalix 3 жыл бұрын
Mostly for Japan I imagine.
@NemXX2
@NemXX2 3 жыл бұрын
I know for a fact that there were at least 2 in europe. The launch units had small elipse buttons, but these were replaced with round ones on later units.
@takeo3998
@takeo3998 3 жыл бұрын
@@NemXX2 I had one with round buttons in Brazil, no disc access LED in the panel.
@opaljk4835
@opaljk4835 2 ай бұрын
Even a short lifespan is a lifespan. But the Saturn har games released for it from 1994 - 2000, the majority of which came out from 94-98, so it had a pretty typical console life. There were around 1000 total games, and it outsold the N64 in Japan.
@OminousBagel
@OminousBagel 4 жыл бұрын
3:23 Extreme Danger Dungeoneers! (Nice reference to Knightmare!)
@batlin
@batlin 4 жыл бұрын
Used to love that show, despite being creeped out every time by the life force draining animation...
@rayredondo8160
@rayredondo8160 4 жыл бұрын
You already know we want to see the DSP code explained again; why would you ask?
@WebGame2k
@WebGame2k 3 жыл бұрын
"I loved coding on the Saturn" - Coding Secrets
@DampedGosling
@DampedGosling 4 жыл бұрын
Im still at 8th Grade but I aspire to be a programmer. I really love YOUR VIDEOS
@ZX81v2
@ZX81v2 3 жыл бұрын
Man, I don't envy you for your assembly code... Ouch, I remember the nightmare 68000 assembly was, let alone the SCU interaction... Thanks for these videos
@notreallythere477
@notreallythere477 3 жыл бұрын
This is the most diplomatic and tactful description of the Sega Saturn's patchwork architecture I've ever seen. A more pragmatic take would be "a confused, schizophrenic design resulting from haphazardly converting a system originally designed exclusively for 2D games into a 3D system in order to compete with the PS1, which blindsided Sega while they were still focused on one-upping the SNES". Given Traveler's Tales' penchant for doing crazy stunts with limited hardware, it's no wonder Mr. Burton has such fond memories of the console, but most third-party developers hated it, which was one of the reasons the Saturn flopped.
@CarbonRollerCaco
@CarbonRollerCaco Жыл бұрын
Sega: Welcome to the Next Level! Competitors: Dude, you should be on the next _game._
@Jachii9
@Jachii9 3 жыл бұрын
fun fact: "sram" is "im sh!tting" in polish
@DougSalad
@DougSalad 4 жыл бұрын
I notice that Tails is named "Tales" in the code. because Traveler's Tales, I presume?
@WebGame2k
@WebGame2k 3 жыл бұрын
Funny
@SomariTheAdventurerJam6
@SomariTheAdventurerJam6 3 жыл бұрын
yeah he actually did confirm that Tails is called Tales because you know though i can't remember which video it was
@coldcaption
@coldcaption 4 жыл бұрын
These are really awesome videos, both the explanation and the graphical representations really paint a picture of what's going on. I'd definitely want to see a video on how you programmed the DSP too
@boiii3productions945
@boiii3productions945 3 жыл бұрын
Non Sega creators are left relentless and uncertain when it comes to creating games for the Saturn. It’s not because they aren’t skilled, but rather how complex and challenging it is to code this kind of game on a system like this
@wizzenberry
@wizzenberry 4 жыл бұрын
Sonic r was my childhood, thankyou
@b13cw53
@b13cw53 4 жыл бұрын
Have I seen all of these episodes before? Yes. Am I watching them all again as they're uploaded on the new channel? Absolutely. They're just too good not to 👍
@Charlie-eq3dj
@Charlie-eq3dj 3 жыл бұрын
Why is there a new channel?
@Lethaltail
@Lethaltail 4 жыл бұрын
I had no idea that the Saturn had twin CPUs. The 32X/Mars also has twin SH-2s as far as I'm aware. I only knew that because of 32X test programs that people have come across. They make reference to the Master/Slave SH chips.
@pigpenpete
@pigpenpete 4 жыл бұрын
Or ya know, you can open one up and see "SH2" stamped right on the chips
@Phredreeke
@Phredreeke 4 жыл бұрын
A significant difference is that unlike on the Saturn, graphics on the 32X are all software rendered (not counting the underlying Megadrive graphics layer)
@rustymixer2886
@rustymixer2886 4 жыл бұрын
Thought sh1 chips
@geniedumal2974
@geniedumal2974 4 жыл бұрын
The 32X had dual SH-2s specifically because the Saturn did. Somebody at Sega had the harebrained scheme that they could use the 32X as a "bridge" to the next generation to make developing Saturn games easier.
@rustymixer2886
@rustymixer2886 4 жыл бұрын
@@geniedumal2974 I thought inside was a Mars sh1 chip
@JasonB808
@JasonB808 3 жыл бұрын
Sega programmer tasked to make seemingly impossible graphics on complex hardware: ok, I am gonna just develop my own 3D engine and use every trick I know about the hardware to get it to run. The real blast processing was not the hardware, but the brain power of Sega Devs.
@AndrewHelgeCox
@AndrewHelgeCox 3 жыл бұрын
It would be interesting to go a little deeper and break open some of the steps that were a little handwavy. Like, "finally all the layers were combined", what does that mean? The pixels for each layer were sitting in memory and the scan-out could read from multiple buffers at the same time, compositing final pixels as they were sent to display? If so, how were transparent pixels in the layers indicated? If not, was there a composition step boiling the layers down to one framebuffer? If so, what chip performed that? Etc.... Love the videos and your presenting style by the way.
@0MoTheG
@0MoTheG 3 жыл бұрын
I agree. Software people make it sound more complicated than it seems to a HW person. The tasks and pipeline were clear. The VDP2 did all of the video output. VDP1 did the rendering. SCU does the setup/transform of the polygons/geometry. Master CPU did control the memory transfers and main loop. Slave CPU does the processing heavy but conditional/sequential math. All games were frame driven, not asynchronous real time. Depending on the TV standard 50 or 60 frames were computed. A frame update mid picture would usually cause a black line.
@Zeldon567
@Zeldon567 4 жыл бұрын
A technology advanced enough is indistinguishable from magic to the average person. Computers are freaking magical.
@bloeckmoep
@bloeckmoep 4 жыл бұрын
@1:36, looking at that thing and looking at a modern mainboard. XD. Back then a hundred different chips with different languages and different buses. Today a cpu and a chipset and MAYBE some ram sticks if not soldered on. The dying of the various chips and buses began in 2006, when AMD started putting the dram memory controller into their cpus. Subsequently intel started eradicating various other chips like ata and sata controllers and usb hc's from their boards and moved them into the boards chipset. Nowadays looking at a schematic, you have the cpu and chipset, all ios extend from those two like a tree root, no other controller or chip involved.
@radishpineapple74
@radishpineapple74 4 жыл бұрын
Well, it is faster, cheaper, and smaller to combine chips if you can.
@midierror
@midierror 4 жыл бұрын
Love these videos, I mess around in Unity and this seems like another world. I LOVED sonic R!
@Campo_
@Campo_ 3 жыл бұрын
Servent CPU? Isn't it typically referred to as the slave ?
@Cha90Z
@Cha90Z 4 жыл бұрын
You do a great job on these videos btw
@beanofchaos
@beanofchaos 3 жыл бұрын
"But sir, we can't program that in!" "yes"
@mikebravo891
@mikebravo891 3 жыл бұрын
I read this in C-3PO's voice: "But sIR!"
@frost8077
@frost8077 3 жыл бұрын
I have Sonic R for the PC. The environment and various time/weather changes looked so good while the soundtrack was perfect for the game. Sonic R has a strange spot in my heart separate from the other games. Running around in the rain looking for balloons was oddly satisfying.
@xeostube
@xeostube 3 жыл бұрын
wow. I'd love an in-depth version of this entire video actually!
@antthegord9411
@antthegord9411 4 жыл бұрын
i played the crap out of sonic r on pc as a kid. its crazy getting to see the technical aspects of it so many years later.
@Migue14
@Migue14 4 жыл бұрын
Now that's a lot of chips!
@DaGleese
@DaGleese 4 жыл бұрын
From the thumbnail I thought you were going to say that each one of Sonic's limbs was controlled by a separate cpu.
@mryoyo1234
@mryoyo1234 3 жыл бұрын
I love how you break this down.
@richardgmiami
@richardgmiami 4 жыл бұрын
Dude, I know that doing this sort of thing was commonplace for you and your team, but this sounds like the most complicated sort of programming ever. You must have been so thoroughly familiar with the hardware. How long was the documentation for that beast of a console?
@richardgmiami
@richardgmiami 4 жыл бұрын
@ReviewRevue true
@amberdean1263
@amberdean1263 3 жыл бұрын
Thousands of pages. You can find it all online.
@Reynsoon
@Reynsoon 4 жыл бұрын
the one frame shot of 'Knightmare'
@cst1229
@cst1229 4 жыл бұрын
"SEGA's Insanity" No, YOUR insanity.
@QuickTimeVelocity
@QuickTimeVelocity 4 жыл бұрын
*in key to the song* Virtuaaal Insanity!
@QuickTimeVelocity
@QuickTimeVelocity 4 жыл бұрын
Wow, I LOVED this one!!! Man, the way computer stuff work is just SO interesting! Highly looking forward to more vids pertaining to console hardware!!!
@rays5163
@rays5163 3 жыл бұрын
I like how he explained all that in only five minutes
@R9000
@R9000 3 жыл бұрын
"Multichip Madness" is what I call it when I order 2x large fries with my McDonald's instead of just one.
@brunosiffredi
@brunosiffredi 4 жыл бұрын
This is awesome. Amazing video
@UXXV
@UXXV 4 жыл бұрын
Master and servant - I didnt realise this was a “PC” mainboard 😂
@smash461986
@smash461986 4 жыл бұрын
It's a shame when technically minded people feel the need to change standard terminology because of political correctness.
@TetsuDeinonychus
@TetsuDeinonychus 4 жыл бұрын
Eh "to-may-to", "to-mah-to"
@EduMatsu
@EduMatsu 4 жыл бұрын
@@TetsuDeinonychus It's actually tomatl from the Nahuatl language, aka Aztec.
@TheQuizDeck
@TheQuizDeck 4 жыл бұрын
Absolutely loved Sonic R!
@VirtuaBros
@VirtuaBros 4 жыл бұрын
So cool! Thanks for the breakdown.
@some-online-dude
@some-online-dude Ай бұрын
I'd love to learn more about the DSP.
@NinjaNezumi
@NinjaNezumi 4 жыл бұрын
1:10 - Saturn was promoted back then as having access to an internet based system where you could play original genesis games. I still believe I have my old Game Pros which talk about Sega Net, so I bet that chip was there in the case they could run genesis roms via the online server (that failed horribly).
@Toonrick12
@Toonrick12 4 жыл бұрын
If only Traveler's Tales were hired to help tame the beast that was Sonic X-Treme. Ah well, maybe in some other universe.
@trixareforkids59
@trixareforkids59 4 жыл бұрын
What is a servant cpu and how is it different than a slave cpu?
@radishpineapple74
@radishpineapple74 4 жыл бұрын
One is post-BLM and one is pre-BLM.
@TetsuDeinonychus
@TetsuDeinonychus 4 жыл бұрын
"To-may-to, To-mah-to"
@MrEdrftgyuji
@MrEdrftgyuji 4 жыл бұрын
Because people will keep Burning down buildings, Looting stores and Murdering people if you don't. Who am I kidding? They will keep doing that whatever you do. NEVER NEGOTIATE WITH TERRORISTS.
@RevCode
@RevCode 4 жыл бұрын
Somehow "Servant CPU" just doesn't sound right..
@shiva_MMIV
@shiva_MMIV 4 жыл бұрын
Yes, it was always "slave", but apparently that's no PC anymore...
@geniedumal2974
@geniedumal2974 4 жыл бұрын
Servant CPU sounds too close to "server" for me, and they're programming the Saturn to play games, not store and fetch web pages.
@ragexg
@ragexg 4 жыл бұрын
On the old hdd's (IDE OR PATA) you had a master and a slave hdd ^^let me guess you think that's even worse right ;P
@RevCode
@RevCode 4 жыл бұрын
@@ragexg Master and slave are, in my humble opinion, the proper terms that shall be used, PC culture should not be applicable everywhere.
@OpenKeith
@OpenKeith 4 жыл бұрын
main cpu and sub cpu?
@nicwilson89
@nicwilson89 3 жыл бұрын
4:05 Yes please, would love to know how that worked. The Saturn is fascinating architecture wise :)
@Noxedwin
@Noxedwin 4 жыл бұрын
I remember submitting subtitles for this back on GameHut. But it seems Jon never integrated them. :(
@Noxedwin
@Noxedwin 4 жыл бұрын
@mPky1 Because Jon's making a channel expressly for coding stuff, like he did with his aeronautical content, and he's exporting stuff over.
@ToriningenGames
@ToriningenGames 4 жыл бұрын
IIRC, the Saturn was designed to be the best 2D console of all time. The the Playstation arrived. In their panic, Sega did the standard arcade solution to make the Saturn 3D: add more hardware! They took the graphics processor and doubled it. This explains the unusual polygon style of the Saturn: quadrangles of solid (immobile) texture. They were sprites with distortion. The resulting system was considered difficult to program for (obviously), and Sega's dev tools weren't very optimizing on this hardware (less obviously). As a result, developers gravitated to the Playstation, which was easy to develop for, on, and with Sony approval. On an unrelated note, I have a copy of PC Sonic R, as released by Express. Know anything about the porting of Sonic R to the PC?
@wishusknight3009
@wishusknight3009 4 жыл бұрын
The panic was to add the second SH-2 and the matrix DSP. VDP1 and 2 were always in the recipe.
@melficexd
@melficexd 4 жыл бұрын
@Lassi Kinnunen more like optimized memory access, if textures were accessed as quads, the whole process can be parallelize better. Currently gpus access their memory in 4x4 blocks laid out as a linear arrays of characters. Actually, the only advantage of triangles is their texture coordinates flexibility, but textures are still accessed as quads
@noop9k
@noop9k 4 жыл бұрын
3DO already did quads in almost the same way BTW
@TetsuDeinonychus
@TetsuDeinonychus 4 жыл бұрын
The Saturn was a 2D Powerhouse that could run circles around the PlayStation in sprite-based games, as any Capcom fighter fan can tell you. But, in 3D games the tables were turned and the PlayStation, if not more powerful at 3D, was at least easier to program 3D games in. The idea that the Saturn was basically a 2D system that was being forced to do 3D would help explain that, except that Sega themselves also played a part in kicking off the 3D revolution with Virtua Fighter. They had to know going in that a home version of Virtua Fighter would be expected on their next gen console. So, it seems weird that they would make a console with only 2D in mind and then only add 3D capabilities at the last minute to compete with Sony... Does anybody know if Sega's Model 1-2 arcade hardware (that they used for 3D arcade games at the time) used quads or triangles? If their arcade hardware used quads then it makes sense that Sega's programmers would be used to quads and didn't realize that 3rd party developers would prefer working with triangles. That would probably be a better explanation.
@guspaz
@guspaz 4 жыл бұрын
@@TetsuDeinonychus The problem was that the Saturn could only run circles around the PlayStation in sprite-based games if the developers knew how to take advantage of the difficult hardware... which many didn't. There are direct comparisons of games that run much worse on the Saturn than their Playstation counterparts, like Symphony of the Night. Not because the Saturn was incapable of doing a 2D sprite game as well as the Playstation, but because the developers were incapable of doing so.
@YouShisha1393
@YouShisha1393 4 жыл бұрын
Meanwhile, the PS1 had just a CPU and a GPU and it was much more popular than Saturn.
@ValentinesEve1996
@ValentinesEve1996 4 жыл бұрын
The PS1 also had a better install base for 3D games than the Saturn.
@kasterborous1701
@kasterborous1701 4 жыл бұрын
A nightmare you say? Ooh, nasty.
@ninjabaiano6092
@ninjabaiano6092 4 жыл бұрын
Soo interesting that tecno mages existed at some point in time.
@IronSK
@IronSK 3 жыл бұрын
The ironic thing is, that Sonic R could've been repurposed from a racing game to what sonic Xtreme was supposed to be.
@znelson32
@znelson32 4 жыл бұрын
Servant CPU? Come on.
@sandakureva
@sandakureva 4 жыл бұрын
I heard a minor delay before he said it. Odds are he got demonetised and had to change it to get the video out.
@dirk9787
@dirk9787 4 жыл бұрын
I hereby leave a comment to let you know I want to see a video on how exactly this code works.
@plflorence
@plflorence 4 жыл бұрын
Thank you so much I love this!
@TetsuDeinonychus
@TetsuDeinonychus 4 жыл бұрын
I'd be all in favor on a video about that special assembly code.
@BuysDB
@BuysDB 4 жыл бұрын
Guess what? He already made the video: kzbin.info/www/bejne/eYHEf4Gfd5d7Y9U . Have fun!
@TetsuDeinonychus
@TetsuDeinonychus 4 жыл бұрын
@@BuysDB Woo-hoo!
@ShinoSarna
@ShinoSarna 4 жыл бұрын
I wonder if Saturn lost the console war because programmers said "I cant be arsed to code for this, I will just do N64 and PSX ports, they're both running 64 bit MIPS, that should be straightforward enough"? :p
@BuzzaB77
@BuzzaB77 4 жыл бұрын
definitely a contributing factor, but the damage was done long before with the mega cd, certainly 32x 6 months prior, and then that early 'surprise' launch that pi**ed off most retailers, and publishers before the 'war' even started.
@jbmaru
@jbmaru 4 жыл бұрын
@@BuzzaB77 I would concur, especially as the PS2 is allegedly as complex to code for, but had the PSX success to build upon.
@geniedumal2974
@geniedumal2974 4 жыл бұрын
No, they lost because SOA released the Saturn 6 months early, making magazines covering the September launch date look like idiots, and angering retailers who were not given Saturns for the early launch. Consequently, many retailers didn't carry the Saturn at all, so many gamers never saw a Saturn in their stores to buy if they wanted one. And most of the gaming press took a hostile stance against Sega for the next two generations because they were lied to about the launch of the Saturn. That and SOJ's boneheaded decision to produce far fewer Saturns than consumers demanded are what did the Saturn in. They did that because they lost money on each console sold, and they were so obsessed with staying in the black that they would rather produce half as many units if that meant staying profitable that fiscal year. What that did was send a signal to developers that the Saturn would have a small user base by design, because even if more customers wanted a Saturn than a PlayStation, they couldn't get one. So of course developers focused on the PlayStation because they could sell more games on it, because Sony didn't put a ceiling on how many consoles they wanted to sell. The launch and the under-production are what did the Saturn in. Any other issue was minor and could have been overcome, including its difficulty to develop for and the failure of the 32X. Also, the PlayStation ran a 32-bit MIPS, and the N64 was even harder to develop for.
@geniedumal2974
@geniedumal2974 4 жыл бұрын
@@BuzzaB77 The Sega CD did not damage Sega going into the Saturn, but I concur with your other points.
@TetsuDeinonychus
@TetsuDeinonychus 4 жыл бұрын
@@geniedumal2974 Sega made such great games and consoles but was such a dysfunctional shit-show behind the scenes, and always made baffling decisions.
@Yupppi
@Yupppi 3 жыл бұрын
Absolutely do want to see how the scu chip coding worked.
@NoobsDeSroobs
@NoobsDeSroobs 4 жыл бұрын
I want to see how you handle multiprocessing like that. Are they prone to raceconditions, or is this more in tune with MIMD architecture?
@wishusknight3009
@wishusknight3009 4 жыл бұрын
In this application it sounds like there would be little to no inter process communication needed. So it would be a snap. The SH-2 are VLIW and use trace scheduling afaik....
@NoobsDeSroobs
@NoobsDeSroobs 4 жыл бұрын
@@wishusknight3009 VLIW, ok. Thanks.
@darren8453
@darren8453 4 жыл бұрын
This is deliberately dividing the problem into independent parts to minimise synchronization, locking, and race conditions. Though I am sure that would be a problem at the end of processing for each frame.
@wishusknight3009
@wishusknight3009 4 жыл бұрын
@@darren8453 That is very possible. But with the kind of intricacy and detail he went into programing the matrix dsp for this game, it sounds like he went to great care to make sure everything was timed just right. That video will be probably coming up soon. It is really something quite amazing.
@Julian_Pepper
@Julian_Pepper 3 жыл бұрын
the stuff Travelers Tales did here with Sonic R is the reason I believe the Saturn far exceeded the original Playstation in capability.
@mluna
@mluna 4 жыл бұрын
How is it possible to write and compile a program in two languages (assembly and C)?
@KailashNathan
@KailashNathan 3 жыл бұрын
The compiler takes care of interpreting the higher level language (C) and also noting directives to the compiler to inline/inject assembly directly into the binary before creating the final output binary. If the ASM code and C code are targeting different CPUs / machine languages, the tool chain may cross compile (or use specific definitions) for each chip.
@mcsweatshop
@mcsweatshop 3 жыл бұрын
I understand a fraction of what you’re talking about but I’m fascinated nonetheless
@taskanawa9604
@taskanawa9604 4 жыл бұрын
we need more
@ThatGuyNamedBender
@ThatGuyNamedBender 4 жыл бұрын
Who handled the PC version of Sonic R and were the limitations any different on PC than it was on the Saturn?
@OpenKeith
@OpenKeith 4 жыл бұрын
i REALLY want to see that dsp video
@sandakureva
@sandakureva 4 жыл бұрын
Yeah seriously. I was a kid around this console generation, and a lot of how they work seemed like magic back then. An explanation on how the magic works would be glorious.
@jeremymitchell4370
@jeremymitchell4370 Жыл бұрын
I mean i didnt like sonic r because i couldnt control it at all but its very interesting to learn how you made it
@graalcloud
@graalcloud 4 жыл бұрын
I definitely would be interested in a video showing a more advanced look at how the code works.
@Azziee
@Azziee 4 жыл бұрын
I wonder how the transparent level was made.
@MartinPiper6502
@MartinPiper6502 4 жыл бұрын
Brings back memories
@lorenzodigaetano3591
@lorenzodigaetano3591 3 жыл бұрын
That people had balls. Now if you want to make games you can download 3D engines for free, sometimes even without a single line of code.
@philbateman1989
@philbateman1989 4 жыл бұрын
I'd love to see a video series on how assembler relates to C, C++ etc. I primarily code in C++ and C#, so when I look at C code you're written, it's a little more complex than the code I write, but I can see what you're doing in a given snippet. When you show assembly, I'm just lost. Best I can do in assembly (and only x86 assembly at that) is perform operations on arbitrary numbers with mov and add/sub/div/mul commands etc. Anything above that? No chance. I could maybe write you a basic calculator, but that's about it lol I guess a big question I would have is did hardware manufacturers back then give you datasheets on how to send commands to the various components and red input etc? Or did they just hand you the dev kit and just expect you to figure it out? I ask because I've done a bit of work with PS4 development with a dev kit at the university I teach at, and they provide a COLOSSAL amount of documentation on the internals and how to use the various abstraction layers built into it so you can write code to run on it. Of course, you wouldn't write code in assembly for a PS4 or you'd still be working on one game 50 years from now, but in theory you *could*. I'm just curious how, say, the C++ instructions I write for it convert into assembly, even at a basic level to give me an idea. We have a separate lecturer who teaches the low level stuff like assembly, and I teach the more creative stuff like game design and high level scripting, but I'd love to get an insight into how our two disciplines relate.
@phreak761
@phreak761 4 жыл бұрын
Download flat assembler by Thomasz Grysztar and his programming guide, flat assembler comes with some example programs to help as well.
@sonyp180
@sonyp180 4 жыл бұрын
3.58 in sounded like boris johnson wrote that little sentence.
@MrSamPhoenix
@MrSamPhoenix 3 жыл бұрын
Interesting stuff, I wonder if this guy ever worked on non-Sega gaming systems such as the PlayStation 3.
@AnthonyCook78
@AnthonyCook78 4 жыл бұрын
Go forward. Nightmare!
@RonsonDenmark
@RonsonDenmark 4 жыл бұрын
4:02 No..
@Naudia93
@Naudia93 4 жыл бұрын
Multi Threaded Parallelism
@linorocha6319
@linorocha6319 4 жыл бұрын
Can you show us how the Sega Saturn programming software looks like?
@GatheringHall
@GatheringHall 4 жыл бұрын
Wizards you guys were!
@jmssun
@jmssun 4 жыл бұрын
I am wondering did the x68k chip play any role in this game? If not, why not? Since it was still relatively a capable (not powerful) chip that could contribute some to the game, like drawing hud, mixing, etc
@blackmage-89
@blackmage-89 4 жыл бұрын
@2:34 that "height hack" comment tho :)
@digimaks
@digimaks 4 жыл бұрын
My gosh this was overly complicated, yet Sega Saturn was heavily underappreciated, along with Sonic R. By itself it looks like grandfather off multi-CPU processing, with manually assigned processing instructions. Wild! While PC world statred to get dual-core processors around 2000's.
@tjharmon6360
@tjharmon6360 3 жыл бұрын
I wouldn't admit to making that turd...
@KangJangkrik
@KangJangkrik 3 жыл бұрын
Remember, microprocessor still weak back then! So engineers must combine some chips with different purpose
@Mystiskmusli
@Mystiskmusli Жыл бұрын
I love these videos ❤
@autotalon
@autotalon 3 жыл бұрын
So the VDPs werent actual GPUs in the sense that we'd think of them now, they just draw the screen output? They just display whatever objects are given to them more or less? Just trying to understand how this machine worked.
@william.tomassetti
@william.tomassetti 3 жыл бұрын
From what I understand, the CPUs give information like vertex coordinates, lighting and textures to use, and the VDPs do the actual rendering, somebody correct me if I'm wrong
@thedangerroom7747
@thedangerroom7747 4 жыл бұрын
I feel like I've never heard someone refer to a slave cpu as a "servant cpu". Doesn't really roll off the tongue.
@ElementalAer
@ElementalAer 4 жыл бұрын
Sound better than slave
@sswpp8908
@sswpp8908 4 жыл бұрын
The renaming of "slave" has come up recently because some people claim that it has a racist connotation. I think that's ridiculous, but I wouldn't mind if servant became the new term.
@lucassantossj
@lucassantossj 4 жыл бұрын
@@sswpp8908 Yes, servant sounds good. I don't care much but sounds more "voluntary" than Slave.
@overwatch761
@overwatch761 4 жыл бұрын
Gotta be politicially correct these days lol.
@dylanharding5720
@dylanharding5720 4 жыл бұрын
@@lucassantossj a slave cpu isn't really voluntary though
@justinlrich1993
@justinlrich1993 4 жыл бұрын
These videos about your work on the Saturn and how it functioned are completely fascinating. Extremely underrated console.
@segat-800
@segat-800 4 жыл бұрын
Fascinating stuff. The Saturn architecture looks super complicated. Would love to see more. How would you have developed Sonic R on the PS1?
@OryxTheMadGod3
@OryxTheMadGod3 4 жыл бұрын
I cant believe Sonic is dead
@johneygd
@johneygd 4 жыл бұрын
Sonic R is definitely a showcase for what the sega saturn is capable off through careful and optimal programming. Now about the sega genesis Am sure the sega genesis games can be made compatible with the sega saturn,maybe trough emulation, the gba can do it,so therefore it should be also possible on the sega saturn,,, In fact i remember vaguebly about a planned adaptor for wich you could plug in sega genesis,sega mastersystem games and gamegear games into a sega saturn, but not so sure about that,mmmm.
@MattAlexanderMe
@MattAlexanderMe 4 жыл бұрын
Was that called the "servant CPU" at the time, or was it "slave"? Real question.
@rena--chan
@rena--chan 4 жыл бұрын
Slave, you can see it in code.
@davidgutierrez8297
@davidgutierrez8297 4 жыл бұрын
Political correctness requires people to censor everything at this point.
@MattAlexanderMe
@MattAlexanderMe 4 жыл бұрын
I work at a software company and we're renaming everything
@jmssun
@jmssun 4 жыл бұрын
Ohhh~ politically correct everything is TIGHT! No? You don’t think it’s a good idea? Nah, it’s actually VERY stupid Oops! Oopsi!
@dorklymorkly3290
@dorklymorkly3290 4 жыл бұрын
It's slave. >political correctness Well, well, well, are YOU a politician? I am not. Guess we are excempt.
@rafaelfavretti4009
@rafaelfavretti4009 4 жыл бұрын
Would love to see a video teaching some of that assembly programing for the Genesis or Saturn! Even a hello world of sorts
@ShinoSarna
@ShinoSarna 4 жыл бұрын
I believe GameHut had some basic tutorials for coding on Genesis.
@geniedumal2974
@geniedumal2974 4 жыл бұрын
You can find that on Game Hut.
@JohnnyThousand605
@JohnnyThousand605 4 жыл бұрын
In some parallel universe the Saturn was backwards compatible with the Mega Drive. Let that sink in for a second. O_O Probably the same universe where the 32X never happened =\
@TetsuDeinonychus
@TetsuDeinonychus 4 жыл бұрын
@ReviewRevue ...and then a Dreamcast that used DVDs and was backwards compatible with all of that!
@Wheeljack2k
@Wheeljack2k 4 жыл бұрын
That universe would have gotten the Sega Neptune instead.
@JohnnyThousand605
@JohnnyThousand605 4 жыл бұрын
@@TetsuDeinonychus I do declare, I have come over a-flush =D
@JohnnyThousand605
@JohnnyThousand605 4 жыл бұрын
@@Wheeljack2k I was thinking more along the lines of no 32X at all and the money Sega *didn't* lose developing and ultimately writing off on that thing, going towards developing Mega Drive compatibility in the Saturn
Sonic R's code the Hardest in the World?
7:08
Coding Secrets
Рет қаралды 101 М.
Secrets of Sonic 3D's "Impossible" scrolling
8:43
Coding Secrets
Рет қаралды 211 М.
Beat Ronaldo, Win $1,000,000
22:45
MrBeast
Рет қаралды 158 МЛН
We Attempted The Impossible 😱
00:54
Topper Guild
Рет қаралды 56 МЛН
How a Laser-Shot Disk Defeats Hackers & Pirates
5:08
Coding Secrets
Рет қаралды 62 М.
Sonic R's "Impossible" Fading
5:15
Coding Secrets
Рет қаралды 104 М.
Toy Story's Hardware Defying Music - How We Did It
5:52
Coding Secrets
Рет қаралды 109 М.
How Sega Almost RUINED Sonic 2
13:27
pojr
Рет қаралды 240 М.
The Mystery of Sonic R's Impossible Code - Coding Secrets
6:16
Coding Secrets
Рет қаралды 162 М.
What is the Smallest Possible .EXE?
17:04
Inkbox
Рет қаралды 573 М.
SEGA's Crazy Trick to Create Sonic 2's Special Stage - CODING SECRETS
6:38
Beat Ronaldo, Win $1,000,000
22:45
MrBeast
Рет қаралды 158 МЛН