The graphical leap and performance from the NES to the SNES and especially from the SNES to the N64 was huge compared with these last 3 generations. We were gifted.
It seems that way because those were simpler times, so it's easier to see the improvements for the untrained eye. With the last three generations, and specifically calling out the PS3/360 to PS4/Xbox One to PS5/XSX, ask any game developer who's touched those platforms and they will tell you we've come a LONG WAY, leaps and bounds in the last 16-17 years. And it's not just raw compute power, although of course that does hold the brunt of it all. In terms of features available to developers we've come so incredibly far, to the point we can actually say stuff like "your imagination is the limit". I lived through that transition from 8 bit to 16 bit and then actual 3D games and it was truly incredible, but just because the leaps were more obvious back then doesn't mean today's leaps are any less impressive.
There were still quite some leaps in the recent decade though... But it's probably more on the software side rather than the hardware side. Nowadays regular mesh rendering can be as convincing as ray tracing, especially to those who don't know where to look for the differences. But at the same time we also lose the aesthetics of "wrong" way of rendering in retro 3D games.
@@Ebosan87 I think the PS4/X1 to PS5/XSX transition is mostly raw compute power, though... Unlike the PS3/360 to PS4/X1 where there have been major archetecture changes that affects how rendering are handled, but it's probably mostly just to improve efficiency (say, with the introduction of unified shading modules and redefineable pipelines) and ease of cross platform development (as there isn't a whole lot of platform specific features remaining).
I disagree i think everything gave something special n64: 3d, 360: hd, xbox one: really good graphical effects, series: raytracing i think everything made a big leap and its just amazing to see where its heading
5:22 Correction: Background layers always scroll independently in all modes. The ones marked as offset-per-tile (2 and 4) are unique in that they allow you to scroll each *column* of tiles independently of each other. This allows you to have vertical parallax on a single layer (and is also the only real way to accomplish this). We see this used quite a bit in Yoshi's Island, where it's used for the wavy lava effect seen in some castles, the LSD effect when Yoshi touches a fuzzy, and some really big castle platforms that move up and down.
@@Nobe_Oddy The chart shows how many colors each tile can use, but he's talking about how many colors can be used on the whole background. Backgrounds are made out of many tiles, so the background as a whole can use more colors than a single tile can. The SNES can load 256 colors at once into its palette RAM, that all graphics have to pull from. Sprites always use colors 129-255, whereas backgrounds start reading from color 1 (not 0). In most modes, only the first 128 colors are needed for the backgrounds, but in the 256 color modes the background can use the entire palette, even the ones that are normally for sprites. Mode3's first layer *can* use 256 colors, but most of the time it will only use 128 in order not to cause conflicts with sprites.
Unless I missed it he also didn't explain the importance of HDMA to what most people know as Mode 7. Without HDMA you couldn't do Mario Kart or F-Zero. Castlevania 4's swinging chandelier or rotating room is a perfect example of Mode 7 on it's own. Changing the scaling per line is how you achieve that pseudo 3d perspective. It's too bad he didn't have that in his explanation on mode 7. But for many viewers they probably got plenty of information they didn't have before so that's still positive.
@@mottzilla4858I agree: while it's good to speak about old machine tech, here (ruclips.net/video/pafOj9IrtuY/видео.html) you can find a far better explanation of the Castelvania IV "tube" section. Of course having in HW those effects is a huge bonus, many of these effectes are replicated via software in line scrolling by MD/Amiga (true 16-bit machines btw, while Snes cpu is still debate whether it's a full 16-bit cpu or a 8-bit derivate, PC Engine / TurboGrafx-16 got a 8 bit cpu with true 16-bit video system)
Amiga had copper and blitter and there was a big overlap of memory addresses all three could access. I would have thought that in 1991 the pendulum would have swung back to CPU. ZX80 had two sets of registers. In RISC CPU you could have the normal code running one set, and the line interrupt code on the other set. Instructions just enter the pipeline and there is a multiplexer to feed from either program pointer ( or make it 4 to be safe). People argue that this leads to a problem with the Branch Delay Slot. So the branch instruction went through before the interrupt. Then come all the instructions form the other program pointer. You just are not allowed to cheat. When interrupt stops it switches back to the main program and the pointer points to the delay slot, like before. Only then the branch instruction is allowed to take action. So like 4 sets of registers you would need 4 branch units. This does not sound to difficult on this abstract level. Just don't wait until VDHL when you do this. Also when you want to cascade more than those 4 levels of interrupts ( on a console??? ) you would need give single cycles to all hype threads until one is out of a branch delay slot. Why would you cycle time code for horizontal line interrupt? I thought you link it to an (invisible) sprite .. or on C64 to a scanline.
@@ArneChristianRosenfeldt There's the sprite 0 hit, but it is very limited. You can only really use it for a scoreboard layer on top. The NES has, fortunately, external IRQ support. That can be used by the appropriate mapper for horizontal interrupts. And you could also use the interrupts for raw PCM playback with less processing power wasted.
@@ArneChristianRosenfeldt Yeah, hyperthreading seems pretty simple on older CPUs. Yes NES gave you one sprite flag to do mid-screen effects, but you still had to poll the flag, and have it hit some pixels, and you had many cycles of jitter.
I'm surprised Super Mario World 2 wasn't mentioned or even shown. While Star Fox is the better remembered game using the FX chip it is Super Mario World 2 that is truly the epitome of everything the SNES was with its use of both the FX Chip and all the features available in the SNES' hardware in probably the most creative ways.
Agreed. Stunning game start to finish. I guess it was excluded as it may have complicated the video as it relies on a SuperFX 2 chip and maybe MVG is going to cover that separately?
@@kenrickkahn yeah the switch is easily my number 2. SNES has kept top spot purely for nostalgia given that switch can be hacked to run emulators that can play snes games perfectly anywhere (plus a heap of other systems too)
I was confused too haha, in here is a better explanation of what each of the modes are capable of and other if his videos explains in detail mode 7 with examples ruclips.net/video/5SBEAZIfDAg/видео.html
The actual computer engineering behind the SNES is really fascinating. I'll always be replaying SNES and Genesis titles. The sprite artwork on those consoles have a sort-of timeless perfection. 11:35 Also incredible advertising by Nintendo. My friends and were 10 and 12 years old, talking about the infamous "Mode 7" -- and this was before even the dial-up internet era!
Back when HD mode 7 beta was released for bsnes, I had just studied affine transformations, and I was so surprised to see this type of math being applied so elegantly... It comes without saying but I miss Near, even if there were other developers at that point...
HDMA was also used in Stunt Race FX for the coloured strips on the backgrounds for the "perspective" effect, the only tiles used for the track backgrounds are for the other background elements! The early alpha build from Gigaleak 1 (FX Trax) used 16x16 tilesize bgs while using tiles to create the bands like how its done in StarFox 2, but it was switched to 8x8 tilesize bgs using HDMA for the bands by late 1993 (it's seen in some backgrounds from that time period).
its videos like these that make me appreciate the history of game developement and it shows me how many thing I take for granted in modern software developement. Thanks for this great source of information
The overlooked feature in the video are the Windows. Some well knowns effects are - keyhole appearing on screen and zooming in a Super Mario game, same game featuring a disco ball to light some areas of the screen, there was also a cave level with a cart and a lamp projector in Donkey Kong. While being a simple effect it appears to be an important one for hardware designers as it is significantly complicated the rendering pipeline. Color math are shader granddad and could be used for many things besides transperancy. One of the good examples is Frankenstein, you could compare the SNES and Genesis versions to be blown away what could be achieved with color math. All an all SNES seems to be an overcomplicated system, it's design says that it was suppose to serve for a good extra years, and it would've been explored and used to it's full potential if not the skyrocket speed of hardware development in the 90th and 3D trends. And even then SNES did held for a while, with Playstation released
I wouldn't exactly call this a co-processor (the Copper on the Amiga was though). For it to be a co-processor, I think it should be able to independently execute a series of instructions from memory, which the PPU couldn't do. The SPU could though. If you include the PPU as a coprocessor, then you also need to include things like the hardware multiplier (which was not a CPU instruction) and the serial debug console (UART).
Nice video dude! It’s nice to let people know how coding used to be different, ie using different tricks to obtain the result your looking for and working within the confines of memory etc. Things sure are different nowadays with modern systems
Your work is always top shelf, MVG. I got my wisdom teeth pulled this morning, and your videos are helping me to learn and enjoy myself, while not focusing on the discomfort.
I remember I got a SNES bundle with Mario Kart for Christmas when I was about 7 years old, and the box for the game bundle had Mode 7 Graphics as a feature written on the box. Its great that I now have a great understanding of what that is, and how the console worked, thanks dude!
I love MVG and always look forward to his releases. That's even the ones I at first don't think are interesting; they then become super interesting. Thanks a lot man!
Always look forward to these kind of videos they’re very detailed & informative. it’s awesome to take a look back into videogame history & see the tricks developers pulled off behind the scenes. Thank you MVG🙏
The range of colors and better audio chips made the Snes much better to me in the era. Now I appreciate both for their strengths and faults, but man SNES games are still gorgeous.
Ive always played around with turning layers on and off in emulators to see how the scene is made up, but it's cool to know the technical details and reasoning behind it Good video!
can you do music next? to this date ive never seen a video on how music actually was composed and written for the NES or SNES. like it would have been back then, on that hardware and software avaliable then.
The channel Ahoy (formerly Retro Ahoy, I think) has a video about trackers (old school music production software, DAWs before DAWs were a thing) called "Trackers: The Sound of 8-bit" that will answer a lot of your questions, and Retro Game Mechanics Explained has a superb multi-part series of videos called "SNES Audio System Overview" that takes a comprehensive look at the SNES SPC700 sound generation chip. Between those two channels you should end up with an excellent understanding of how everything fit together and how developers of the day made the awesome music we all grew up with.
The reason is because few people do it that way anymore and it honestly wouldn't be that interesting to most people. The vast majority of game music back then would have been transcribed into a text format of some kind. MML was popular in Japan, hex based formats were probably the most common, and sometimes in raw assembly. Try finding an MML tutorial I guess.
@@jc_dogen or, or, I just said it would be cool to see a video on it, not a bunch of people thinking they're clever telling me how they think it was done?
Just wanted to say that I appreciate you uploading the videos in 4k. It's very nice quality and most youtubers don't. Just be aware that there are people out there that appreciate the extra effort.
Great video thank you. This reminds me of my childhood where i modded my supernintendo and added 8 swtiches which were installed on the back of my snes which were short circuiting single lines of the ppu which therefore gave me the control to hide single layers. In Mario Kart i was just deactivating the Main Kart which then looked like you were looking from the drivers perspective. In ShadowRun i had the effect that i was able to turn of the layer of the interiour design of the rooms and therefore being able to see all the hidden secrets like hidden money , weapons, etc... This was one of 4 mods for my snes which i did back in the time.
Wow nice, I loved discovering how these games where made back around 2000, switching on and off these backgrounds on emulator. I had no idea it was doable on a real hardware. I wounder if a similar mod could applied to the sound system in order to cut the 8 music channels independently so that you can listen to each of them solo, but on a real hardware.
@@mrnuage well actually i never tried to mod the sound. I was not even thinking about that but its a great idea. At that time everysingle mod was very risky to damage the mainboard which had happend. I was still a child and i was super curious to understand what all these chips do. So i took a wire and were short circuiting the board while it was running. This was not my first attempt in modding hardware. I tried that also before on a master system and a commodore c16. So i allready had some basic knowledge about what i can do and what i should avoid. Anyway on one attempt to get rid of the region protection i fried a coil and then paid a lot of money for a repair service just to try it again afterwards ;) and indeed i was able to find the chip which was responsible for the region lock. It was a great time and i loved my SNES.
@@renakunisaki i added a 60HZ crystal oscillator to my snes which was a pal system with 50HZ. With that mod i was able to remove the top and bottom black bars from the screen which the pal system usually had and played all the games with faster speed. Especially Street Fighter 2 Turbo played so much better with that mod. Also the colors got much more contrast. It looked great on an old Sony Trinitron CRT.
Very nice video! It would be useful to add that the perspective effect that createst he pseudo-3D in Mode 7 is done using HDMA since it's not an affine transformation. The background is zoomed in after each scanline, creating the perspective effect
Zooming with mode 7 is an affine transformation. It's just using a different transformation matrix for each horizontal strip. The matrix gets swapped out using HDMA.
@@angeldude101 Yes, that's what I meant. You can't make a non-parallelogram from a parallelogram with affine transformations alone. So to do it they have to apply different affine transformation for each scanline. This creates the illusion of a trapezoid transformation
Absolutely awesome video. I've always been super interested in how Mode 7 graphics worked, but most explanations go over my head. You did a fantastic job explaining it, along with the transparency effects (super cool!). Amazing work as normal!
Regardless of what follows in the next sentence, I just want to say thank you for always producing great videos on interesting topics! But I think either the table shown in the video or your voiceover is "wrong" (or rather missmatches the video) at around 5:29 for mode 3 and mode 4. The voiceover says 128 colors for BG0 while the table reads 256 colors.
I'm sure I speak for a large majority that the SNES is probably our most beloved and nostalgic console of all time and I personally prefer how MVG narrates and educates hardware and software and would enjoy an hour long video from him in like a tribute to SNES. Would be an instant classic.
I would love if they threw a 'Mode 7' reference, maybe a new FZero title on the Switch, that pulls the classic Mode 7 effect style in the intro, then it goes full 3D for the rest of the game.
Huge Genesis fan that had a lot of love for my Super Nintendo. We all got to enjoy so many great games on these two consoles. Their battles gave us all wins. Super Nintendo’s special effects really impressed and in turn forced developers to think outside the box to replicate some of those special hardware effects in game software on the Genesis which were equally impressive. So many great games those two consoles gave us.
There's a RUclips channel called Coding Secrets that you might be interested in. The channel's author, a graphics programmer from the 16-bit era, talks about how he pulled off mode 7 effects on the Genesis - without the hardware obviously.
@@megabyte01 He's not just any programmer. He's Jon Burton, founder of Traveller's Tales. Basically, the Genesis does it all in software using line manipulation tricks or simply by using multiple sprites. The Sega CD has full hardware support for scaling and rotation, but few games made good use of it due to the focus on FMV. Sonic CD's special stages are a notable example "Mode 7" on Sega 16-bit console hardware. The 32X also supports it in hardware, and actually got a few games that made full use of the technique. Space Harrier and After Burner are really solid Super Scaler arcade ports on the 32X. But again, support was hardly what you'd call "broad".
@@MmntechCa ah, I didn't know that guy was the founder of Traveller's Tales! I also didn't know that the Sega CD and 32X consoles/add-ons could do mode 7 effects in hardware. We were a Nintendo household.
@@megabyte01 yeah, and the Gen was plenty capable w/o those addons that ruined the reputation of Sega and the Genesis. Toy Story, Adventures of Batman, Red Zone, Ranger X etc have very cool 3d effects without cartridge upgrades on stock hardware. The addons did so much more harm than good.
The difference in speed between a 3.58 MHZ 65816 and an 8 MHz 68000 is not as great as it looks on paper. The 68000 has a 16-bit data bus and a vast instruction set, but the 65816 is faster at executing instructions. The 68000 is a little easier to program, but I had fun writing code for both. I spent months of my life as an assistant developer on Dirt Trax FX. I really loved working on the SNES. I wish that it had some sort of built-in OS with support for developers, but the developers had to do everything themselves.
I'd argue that the SNES did have "true transparency" since multiplying, adding and subtracting are all transparency methods used in digital graphics (see Photoshop layer transfer modes). I'd attribute "fake transparency" more to dithering or strobing.
@@mccad00 I'd still say that just a parameter of transparency, the actual effect still works without dithering of flickering; the colours were mixed, you just can't easily control by how much.
I feel this kind of logic could also be used to say that the SNES had true 3D, since most of what 3D is is applying affine transformations to textures. The SNES just has a max polygon count of 1. (Or 2? Since "polygon" usually implies triangle in graphics?)
@@angeldude101 yeah, but I guess that would be 1 polygon because you couldn't have different planes of transformation, while 2 would imply you could (4 points don't need to be in the same plane)
@@angeldude101 I mean, technically yes, if you do enough affine transformations you get Doom. Still, I think the "true transparency" term holds since there are clear examples of "fake transparency", namely dithering and strobing. It's primitive, but it's real multi-layer transparency.
Technically, they're both. You see, in mode 7, a 256-color palette (8bpp) is normally used. However, there's an additional mode that games didn't use. It's called EXT-BG and sets the color limit to 128 colors (7bpp), with the last color bit per pixel being used for priority.
My only question about the 'viewing window' in mode 7 came to mind while Mario Kart was being shown. In the game you appear to be able to see track elements much further away than the given view area size would seem to indicate.
Happy Pi Day and thanks for this breakdown! I was in my early teens and a local shop had imported Japanese SFCs for rent prior to the US release of the SNES. At the time, the GFX of the SNES/SFC was indistinguishable from magic!
This video is excellent! I've been wanting something like this ever since I saw your video explaining the GBA. It's done in such a way that an average layman like myself could understand. Please do more videos like this for more video game systems. I especially would love to see one on systems like the Neo Geo and Turbo Grafix. It would be amazing to learn what makes them different from their contemporary systems.
What's ironic about mode 7 is that even though it's used to name the flat 3D effects like games like Mario Kart or the airship view of several JRPGs of the time, mode 7 alone is not able to do this because perspective is not an affine transformation. The way the effect was done on the SNES was by changing the scaling every scanline, which programmers did with HDMA. Of course mode 7 is the only mode with hardware scaling and rotating so you still HAD to be in mode 7 though.
While the SNES base CPU was slow, there were a lot of interesting enhancement chips, such as the aforementioned Super FX chip, but not forgetting the various chips, such as the DSP chips, the powerful SA1 that was clocked faster than the Genesis's M68k, as well as Capcom's Cx4 chip for drawing wireframe graphics. Definitely a good topic to cover.
One of the most impressive of them is the compression one used in Star Ocean, allowing a 256 Mb game to fit in the cartridge when most games weren't even half that size.
@@BrunodeSouzaLino Star Oceans uncompressed takes 96 Mb, or 12 MB. Not 256 Mb / 32 MB. It used the SDD-1 chip for the on the fly decompression tasks, the same that Street Fighter Alpha 2 used.
overdrive 2 has flat shaded polygons in software, but they're all pre-computed. Demos are like a cool theoretical maximum of a system's capabilities, but you'd only see tricks on things like splash screens or one-off special areas.
Really interesting, thanks for making… was literally talking to a friend yesterday about SNES graphics and how they remain timeless and engaging still today for our own kids playing these games!
Let him talk about nested emulator wich is a nes emulator for the snes,wich is absolutely something very interesting because the snes was never designed with nes compatibility in mind because it was scrapped half way trough development, Btw do you know something about mode 8???
I'm probably on the small niche but games from SNES / Arcade pixel art era feel like they have way more charm to me than what most modern games provide. My best purchase this year was the SNES mini, so much fun revisiting old classics that i was playing as a kid. Beating most games that seemed impossible back then. I really love that Square Enix taking this route with 2.5D HD sprite work. It looks amazing and it feels as good as it was back in the day. Love your work with river city girls. Cheers o/
I'm pretty sure that small niche includes the entire indie gaming scene, so I'm not really sure it qualifies as much as a "niche" I think another factor that contributes to this, is that as games look more and more realistic, they become less of an escape from reality. Hence when something like "Journey" or "Okami" comes along, people get smacked in the face with how abstract they look and rave about them. There isn't an abundance of games that are led by art style, photorealistic assets could be pretty much interchangeable, whereas working with pixel art, having a strong style is basically a pre-requisite.
I highly recommend RGME's Series about the SNES Hardware, it goes into great detail about pretty much everything, with very good visuals: ruclips.net/video/57ibhDU2SAI/видео.html also it's not really fair to compare clock speeds of 2 completely different CPUs, the 3.58MHz 65816 runs slower than the 7.6MHz 68k but the SNES executes slightly more instructions per second as all 65xx CPUs require far fewer clock cycles to access memory and execute instructions compared to most other CPUs like the 68k.
Check out the channel "Retro Game Mechanics Explained" if you want to take a deeper dive (down to the assembly) into this topic and other old console effects. One of my favorite channels about old games, up with MVG.
I’m not pc expert I don’t even own one I don’t dabble in emulation I’m just a very casual console gamer but honestly I look forward to MVG videos every Monday and any other video of the week
Impressive hardware design, but I guess it largely defined how games played on the system, like how fast they were. The slow CPU is still, in my opinion, a limitation. I overall prefer the library of games on the Sega Megadrive, but both platforms of course were great. The higher resolution is a major factor for the Megadrive, since the resolutions we are talking about here are low to begin with.
The CPU could run at 3.58 MHz (6 master clock cycles per CPU cycle), but many publishers only bought cheaper "slow" (8 cycles) ROM chips, so the memory controller stretched the CPU cycles a bit. On the other hand, 65xxx CPUs could always do a lot of instructions in very few clock cycles (assuming the programmers knew what they were doing) compared to the Z80 or x86, not sure about the 68k. The SNES PPUs always calculated 512 pixels per line, but most game developers used that for transparency effects (by combining pixel pairs) instead of higher horizontal resolution. The video signal in these days was often shit anyway, first by converting RGB to NTSC then transmitting the result over an unshielded composite cable. Many Genesis games actually relied on that effect and used dithering...
Hey MVG, big fan here. I have a suggestion for a video, do some research on the Phantom System, a Brazilian clone of NES that Nintendo later partnered with the company in the 90s because it was a superior version with cheaper components that sold millions of copies in Brazil. It used a different set of chips that were cheaper to produce and in the end the company that produced it partnered up with Nintendo to represent them and to sell the official NES (and later the SNES) in Brazil. It's a pretty interesting story and I'm sure you will like it. Here's a documentary about it: ruclips.net/video/1w-OBRXmQok/видео.html
Great sums up of some of the SNES greatest features. Cool touch you had F-ZERO running in the background too as it probably was the reason why Miyamoto wanted MODE7 to be a thing.
Minor nitpick: Mode 7 transforms are 2D only. The pseudo 3D, e.g. for racing games, comes from the combination of Mode 7 and HDMA. For anyone looking for more details, these videos are absolutely great and helped me a lot: ruclips.net/p/PLHQ0utQyFw5KCcj1ljIhExH_lvGwfn6GV Also, if I my shamelessly plug a (free and open source) project of mine: If you want to see what Mode 7 looks like without the resolution limitation of the SNES check out bsnes-hd: github.com/DerKoun/bsnes-hd It also has other HD features like wide-screen (limited!) and true-color smooth background gradients.
MVG you probably won’t see this but I just wanted to say thank you for your awesome content. You are my favorite channel on RUclips. What’s more, we rubbed elbows on IRC back in the original Xbox days as I worked for a dev team “UIX” making dashboards… it’s awesome to see all you have accomplished.
Awesome analysis as always. One thing I would say is that although Mode7 has been elevated to cult like status I was never the biggest fan of it. It always produced half baked results but in some ways that was it’s charm.
Yes me too ,mode 7 may was impressive at the time but i was not all that much impressed with it,rverything just looked so cheap, and simple,take f zero for instance,no obstacles on screen,supermariokart did had obstacles on screen but the playfield was not in full screen(why nintendo???)heck that game even couldn’t run on a stock snes,heck even street racer was in full screen and could just run in full screen, However games such as speed racer and snow boarding were really impressive looking mode 7 games,no simple cheapass flat surfaces but hills & mountains,you have to see to believe it.
0:13 Looks like you've got your copy of Super Mario Collection (Japanese Super Mario All-Star) at Retro Game Camp. Somewhere in 2018. In Akihabara, Tokyo? Cos I've got some cartridges at Retro Game Camp in Akihabara back in Autumn of 2017. It's the sticker tag. It says "Battery replacement complete" or "バッテリー応安済". Then again, taking a closer look, I could only see English wordings more.
Work through real ROM dumps on PC identifying behavior, build homebrew based on findings to test specific parts of it, then test homebrew on emulator and actual hardware to determine correct behavior.
My OLD SNES has difficulty with mode 7. The map part freaks out and goes all over the place when trying to play Super Mario Kart or Contra 3's over head levels. I think It might be a problem with the CPU and it would need a replacement CPU.
Obviously there's a lot more to cover here than for the NES or Game Boy, so it would be great to see a follow-up going into more depth. I'd be really interested to see more breakdowns of specific effects/scenes in games, explaining how and why a certain mode/feature is being used in each case (like you did with Secret of Mana.) As someone who is very slowly beginning to understand how graphics work, that kind of stuff is helpful.
SNES and N64 were great systems, but sadly Nintendo cheaped out at the last minute. To save a few bucks, they went with a VERY slow CPU in the SNES and an incredibly small memory for bitmaps/polygons on the N64. If they gone with a legit 8mhz CPU in the SNES, the system would still hold up today, but unfortunately it had major slowdown issues (see games like Super Castlevania). There's no excuse for going with such a crappy CPU. And on the N64 the memory for textures and bitmaps was close to ZERO so you were left with games that either had really LAME bitmapping or none at all. Dreamcast was FAR superior in end result but N64 could have been MUCH closer if Nintendo folks put even a tiny bit more memory in their hardware.
@Dean Satan They got the hardware 100% right with the NES, and “solid” on SNES and Gamecube (despite obvious corners cut). N64 didn’t quite cut it, and the hardware for last 20 years has been pathetic. Great library has kept them afloat.
@Dean Satan"with competitors having a huge advantage, being able to offer gaming experiences that are unilaterally not possible on deficient Nintendo hardware, and yet, bitter and unsatisfied nintendrones will flock to this disappointing hardware, " if hardware was everything, then I'd have to prefer a system that was released today over anything from the 80s or 90s. I couldn't enjoy super mario world, or mario bros 3
Mode 3. Displayed was 256. You said "128." So which is it? Mode 6 displays 16 and you said "32." Am I missing something here? Or can you at least explain why you say something different than what you're showing?
SNES don't have color modes like PC, Atari ST or Amiga. SNES palettes are per tile not for whole screen and sprites can use 16-color palettes even in 4-color Mode 0. So essentially Mode 0 should be better than 16-color Atari ST graphics, while 16-color modes 1 and 2 are nearly comparable to 256 color VGA mode. Games using that modes usually have 120+ colors on screen. With hardware transparency SNES can display thousands of colors. Of course artists had to consider per-tile limitations, but overall games on SNES never had to rely on extensive use of dithering like it was present on Sega Genesis or Amiga. However, SNES had lowest resolution of just 256x224 without square pixels. 320x200 or 320x240 was a gold standard for 16-bit systems. Sega Genesis had less colors, but higher resolution allowed for more detailed graphics or wider view. Lion King is a good example here. It has better graphics and audio on SNES, but still plays better on Sega Genesis thanks to higher resolution. SNES's slow CPU had an impact on it's game library. Sega Genesis had fast arcade style action games, often with creative graphics effects and new gameplay mechanics, while SNES games were mostly generic platformers. However SNES architecture allowed story based games to thrive. Final Fantasy or Chrono Trigger weren't taxing CPU, but rather focused on story telling and interesting turn-based combat. Also SNES almost got Super FX chip inside for European and USA release. Super FX was almost finished when console launched and Nintendo was close to put it inside. This thing could totally changed video game history. SNES would got much more 3D games and 2D games would have huge sprites, rotations, scaling etc.
SNES can do 512 pixels per line, it's just that game developers opted to use transparency effects instead. The video signal was mangled anyway thanks to RGB to NTSC and composite (unless you had an RGB-capable setup). The games could be fast too if the programmers knew what they were doing, see Rendering Ranger R2 or any Factor 5 game.
@@shinyhappyrem8728 512 or 640 horizontal pixels required RGB cable to look good and games using such resolutions were mostly seen on computers, where RGB was common or even mandatory. 320 was the best value, since it nicely fit with 240p mode giving square pixels and NTSC had color clock at 160 pixels which allowed for artifact colors at 320 pixels. This was used in "composite color mode" of CGA on PC that gave 16-color graphics on 4-color device and most Sega Genesis used vertical stripes that blended into one color on Composite output. This gave Sega console more colors and transparency, you can look at Earthworm Jim in Hell stage there are flames that look horrible on RGB, but on composite they become a transparent layer. As for fast gameplay SNES could easily do it. However Genesis had simply better CPU that could do more calculation like move a lot more sprites on screen than SNES. Also nearly all Genesis games run on stock hardware, while many SNES games had custom chips on cartridges that did various things. Even Mario Kart has a custom chip to display more sprites than F Zero did.
@@Leeki85 The chip (DSP-1, to be precise) isn't responsible for sprites (in fact, none of the enhancement chips ever boost the PPU, much less sprites) but rather for 3D calculations, something which the stock SNES would have included on its own but it was scrapped because the base system would have been too expensive. In fact, one sign of it is that Pilotwings misses the Super Famicon release by one month and another is that Nintendo has got its own music engine but it went through multiple revisions, one of which is used by both, SMW and PW and is lacking many features while F-Zero, a release game like SMW, uses a different, modern one.
@@MarioFanGamer659 Mario Kart developers wanted to have more sprites on screen. While SNES graphics hardware could easily display them, CPU wasn't fast enough to calculate their position. This is why they added DSP-1 to the cartridge. Mario Kart is a 2D game, there's no need for 3D calculations. DSP-1 is used to simply transform world position to screen position that is based on camera position and camera angle. In the proces It also calculates object distance from camera so sprite of proper size can be used. SNES CPU could do it by itself, but for much less objects and probably splitscreen multiplayer would be impossible. Amiga 1200 (68020 14 MHz CPU) had Xtreme Racing which replicated Mario Kart style with Mode 7 graphics done entirely in software. Wacky Wheels on DOS PCs were nearly a ripoff of Mario Kart (but with awesome music!) with software Mode 7 and even had split-screen. It required 20-25 MHz 386 CPU.
@@Leeki85 Ah, now I get it. I was thinking of sprites in the technical sense while you were thinking of sprites in the sense of calculating their positions. That being said, I'd rather say that SMK would be impossible (or at the very least, difficult) to have at 60 FPS if it wasn't for the DSP-1 chip. And the reason why I mentioned that SMK is 3D is because it really is, every entity is represented in three dimensions, it's just that the tracks themselves are flat so the 3D-ness isn't as apparent as on later games. But I was primarily thinking in the graphical sense and indeed, the graphics themselves are 2D but that isn't really far off from how modern graphics work. Instead, you contracted yourself by dismissing the 3D-ness of the graphics but also wrote that "DSP-1 is used to simply transform world position to screen position that is based on camera position and camera angle." which _is_ 3D calculation, the game has to take care of depth instead of using cartesian coordinates, for example.
This was a very good explanation video. I really wish it was easy to remake the concept of the SNES mode 7 graphics in simplified software code. It would be really cool if people could software simulate or emulate the unique graphics very easily today.
Back then: "huh, this system is weak but it encouraged some really amazing and unique games" Now: "ugh this system is so weak. Sure it might have games but what's the point of living if it isn't strong enough for a resolution and frame rate the human eye can't differentiate?"
The graphical leap and performance from the NES to the SNES and especially from the SNES to the N64 was huge compared with these last 3 generations. We were gifted.
It seems that way because those were simpler times, so it's easier to see the improvements for the untrained eye. With the last three generations, and specifically calling out the PS3/360 to PS4/Xbox One to PS5/XSX, ask any game developer who's touched those platforms and they will tell you we've come a LONG WAY, leaps and bounds in the last 16-17 years. And it's not just raw compute power, although of course that does hold the brunt of it all. In terms of features available to developers we've come so incredibly far, to the point we can actually say stuff like "your imagination is the limit".
I lived through that transition from 8 bit to 16 bit and then actual 3D games and it was truly incredible, but just because the leaps were more obvious back then doesn't mean today's leaps are any less impressive.
There were still quite some leaps in the recent decade though... But it's probably more on the software side rather than the hardware side. Nowadays regular mesh rendering can be as convincing as ray tracing, especially to those who don't know where to look for the differences. But at the same time we also lose the aesthetics of "wrong" way of rendering in retro 3D games.
@@Ebosan87 Right. I would say that from PS1 to PS2 was huge too. I you play any PS2 game in HD they look amazingly well.
@@Ebosan87 I think the PS4/X1 to PS5/XSX transition is mostly raw compute power, though... Unlike the PS3/360 to PS4/X1 where there have been major archetecture changes that affects how rendering are handled, but it's probably mostly just to improve efficiency (say, with the introduction of unified shading modules and redefineable pipelines) and ease of cross platform development (as there isn't a whole lot of platform specific features remaining).
I disagree i think everything gave something special
n64: 3d, 360: hd, xbox one: really good graphical effects, series: raytracing
i think everything made a big leap and its just amazing to see where its heading
Always love these graphics rendering breakdowns, incredibly interesting seeing these old systems broken down so understandably
Yeah those are just always such great videos.
Same here, I have always loved the esthetic look of the 16-bit graphics.
When I broke down my SNES my mom wasn't so happy.
my opinion is that the snes visuals aged like good wine, much better than any other 2D console. It is even better than early 3D consoles IMO.
I most want one on the Sega Saturn.
5:22 Correction: Background layers always scroll independently in all modes. The ones marked as offset-per-tile (2 and 4) are unique in that they allow you to scroll each *column* of tiles independently of each other. This allows you to have vertical parallax on a single layer (and is also the only real way to accomplish this). We see this used quite a bit in Yoshi's Island, where it's used for the wavy lava effect seen in some castles, the LSD effect when Yoshi touches a fuzzy, and some really big castle platforms that move up and down.
ALSO he mentioned Layer1 (BG0) having only 128 colors, but the chart says 256 colors.... am I the only one that noticed this? which one is it?
@@Nobe_Oddy I second your observation
@@Nobe_Oddy The chart shows how many colors each tile can use, but he's talking about how many colors can be used on the whole background. Backgrounds are made out of many tiles, so the background as a whole can use more colors than a single tile can. The SNES can load 256 colors at once into its palette RAM, that all graphics have to pull from. Sprites always use colors 129-255, whereas backgrounds start reading from color 1 (not 0). In most modes, only the first 128 colors are needed for the backgrounds, but in the 256 color modes the background can use the entire palette, even the ones that are normally for sprites. Mode3's first layer *can* use 256 colors, but most of the time it will only use 128 in order not to cause conflicts with sprites.
Unless I missed it he also didn't explain the importance of HDMA to what most people know as Mode 7. Without HDMA you couldn't do Mario Kart or F-Zero. Castlevania 4's swinging chandelier or rotating room is a perfect example of Mode 7 on it's own. Changing the scaling per line is how you achieve that pseudo 3d perspective. It's too bad he didn't have that in his explanation on mode 7. But for many viewers they probably got plenty of information they didn't have before so that's still positive.
@@mottzilla4858I agree: while it's good to speak about old machine tech, here (ruclips.net/video/pafOj9IrtuY/видео.html) you can find a far better explanation of the Castelvania IV "tube" section. Of course having in HW those effects is a huge bonus, many of these effectes are replicated via software in line scrolling by MD/Amiga (true 16-bit machines btw, while Snes cpu is still debate whether it's a full 16-bit cpu or a 8-bit derivate, PC Engine / TurboGrafx-16 got a 8 bit cpu with true 16-bit video system)
HDMA really helped with mid-screen effects. No more cycle-timing code as on the NES. That freed the CPU up for calculations rather than delay loops.
Hey, I know you! You do a lot of emulation work. Kudos :)
The NES did have external irq support, though.
Amiga had copper and blitter and there was a big overlap of memory addresses all three could access. I would have thought that in 1991 the pendulum would have swung back to CPU. ZX80 had two sets of registers. In RISC CPU you could have the normal code running one set, and the line interrupt code on the other set. Instructions just enter the pipeline and there is a multiplexer to feed from either program pointer ( or make it 4 to be safe). People argue that this leads to a problem with the Branch Delay Slot. So the branch instruction went through before the interrupt. Then come all the instructions form the other program pointer. You just are not allowed to cheat. When interrupt stops it switches back to the main program and the pointer points to the delay slot, like before. Only then the branch instruction is allowed to take action. So like 4 sets of registers you would need 4 branch units. This does not sound to difficult on this abstract level. Just don't wait until VDHL when you do this. Also when you want to cascade more than those 4 levels of interrupts ( on a console??? ) you would need give single cycles to all hype threads until one is out of a branch delay slot.
Why would you cycle time code for horizontal line interrupt? I thought you link it to an (invisible) sprite .. or on C64 to a scanline.
@@ArneChristianRosenfeldt There's the sprite 0 hit, but it is very limited. You can only really use it for a scoreboard layer on top. The NES has, fortunately, external IRQ support. That can be used by the appropriate mapper for horizontal interrupts. And you could also use the interrupts for raw PCM playback with less processing power wasted.
@@ArneChristianRosenfeldt Yeah, hyperthreading seems pretty simple on older CPUs.
Yes NES gave you one sprite flag to do mid-screen effects, but you still had to poll the flag, and have it hit some pixels, and you had many cycles of jitter.
A timeless system. The artwork in SNES games is beautiful, even with all the gaming options today!
I'm surprised Super Mario World 2 wasn't mentioned or even shown.
While Star Fox is the better remembered game using the FX chip it is Super Mario World 2 that is truly the epitome of everything the SNES was with its use of both the FX Chip and all the features available in the SNES' hardware in probably the most creative ways.
Agreed. Stunning game start to finish. I guess it was excluded as it may have complicated the video as it relies on a SuperFX 2 chip and maybe MVG is going to cover that separately?
@@vix_in_japan That would be awesome, hope he considers that
I was addicted to the graphics of this game as a 10 year old. So much good memories :,)
Probably because Yoshi's island is more subtle in it's uses
The Super Nintendo was awesome. Still my favorite console after 30 years since it was first released
It was my favorite console but got moved to #2 when I bought a Switch.. I can play Videogames on the go while on break at work..
@@kenrickkahn yeah the switch is easily my number 2. SNES has kept top spot purely for nostalgia given that switch can be hacked to run emulators that can play snes games perfectly anywhere (plus a heap of other systems too)
Pra mim o the best até hoje
@@kenrickkahn the switch is junk. don't even look or feel like a console. the joy cons are a joke. the switch is overhyped, just like zelda wild
@@onenessseeker5683real lets not even get started on the graphics
You mentioned that the layers in certain modes could display 128 colours, but the graphic on screen says 256 colours.
Same about mode 6 - 16 colors written, 32 colors spoken
+1
I’d appreciate Modern vintage to respond with a clarification because I’m very curious what’s the right number
5:32
I was confused too haha, in here is a better explanation of what each of the modes are capable of and other if his videos explains in detail mode 7 with examples
ruclips.net/video/5SBEAZIfDAg/видео.html
MVG’s gaming content is unmatched. He presents this stuff in a way that makes it easy to understand. Thanks sir
Just started my first playthrough of FF6 on my Super NT a few days ago. Absolutely loving it. It's wild how well the SNES holds up in 2022.
When you're done, play Secret of Mana, Chrono Trigger, and Secret of Mana 2 (via translation patch). Also Donkey Kong Country, Super Metroid, ...
TERRANIGMA MY DUDE
The actual computer engineering behind the SNES is really fascinating. I'll always be replaying SNES and Genesis titles. The sprite artwork on those consoles have a sort-of timeless perfection.
11:35 Also incredible advertising by Nintendo. My friends and were 10 and 12 years old, talking about the infamous "Mode 7" -- and this was before even the dial-up internet era!
Wow! I have absolutely no idea what mode 7 is!
Back when HD mode 7 beta was released for bsnes, I had just studied affine transformations, and I was so surprised to see this type of math being applied so elegantly...
It comes without saying but I miss Near, even if there were other developers at that point...
HDMA was also used in Stunt Race FX for the coloured strips on the backgrounds for the "perspective" effect, the only tiles used for the track backgrounds are for the other background elements!
The early alpha build from Gigaleak 1 (FX Trax) used 16x16 tilesize bgs while using tiles to create the bands like how its done in StarFox 2, but it was switched to 8x8 tilesize bgs using HDMA for the bands by late 1993 (it's seen in some backgrounds from that time period).
its videos like these that make me appreciate the history of game developement and it shows me how many thing I take for granted in modern software developement. Thanks for this great source of information
The overlooked feature in the video are the Windows. Some well knowns effects are - keyhole appearing on screen and zooming in a Super Mario game, same game featuring a disco ball to light some areas of the screen, there was also a cave level with a cart and a lamp projector in Donkey Kong. While being a simple effect it appears to be an important one for hardware designers as it is significantly complicated the rendering pipeline. Color math are shader granddad and could be used for many things besides transperancy. One of the good examples is Frankenstein, you could compare the SNES and Genesis versions to be blown away what could be achieved with color math.
All an all SNES seems to be an overcomplicated system, it's design says that it was suppose to serve for a good extra years, and it would've been explored and used to it's full potential if not the skyrocket speed of hardware development in the 90th and 3D trends. And even then SNES did held for a while, with Playstation released
Sophisticated co-processors truly made the SNES and Amiga what they were. Great video, mate!
I wouldn't exactly call this a co-processor (the Copper on the Amiga was though). For it to be a co-processor, I think it should be able to independently execute a series of instructions from memory, which the PPU couldn't do. The SPU could though.
If you include the PPU as a coprocessor, then you also need to include things like the hardware multiplier (which was not a CPU instruction) and the serial debug console (UART).
ok
@@hjups I read his comments ant just assumed he meant the ones embedded in cartridges...
I'm working on making something for the original DS rn so this video was helpful in getting an understanding of how video modes work.
He has a video on DS graphics as well
@@mdihero ik I'm probably going to rewatch that
Nice video dude! It’s nice to let people know how coding used to be different, ie using different tricks to obtain the result your looking for and working within the confines of memory etc. Things sure are different nowadays with modern systems
Yeah compared to this using Unity is a walk in the park even though it doesnt always feel that way😭
@@TheIndieGamesNL unity.. meh.. real coder/dev make their own engine.
@@jackl2254 to be honest if I had unreal back in the day I deffo would of used it, no point in re inventing the wheel
Your work is always top shelf, MVG. I got my wisdom teeth pulled this morning, and your videos are helping me to learn and enjoy myself, while not focusing on the discomfort.
I remember I got a SNES bundle with Mario Kart for Christmas when I was about 7 years old, and the box for the game bundle had Mode 7 Graphics as a feature written on the box. Its great that I now have a great understanding of what that is, and how the console worked, thanks dude!
I love MVG and always look forward to his releases. That's even the ones I at first don't think are interesting; they then become super interesting. Thanks a lot man!
Always look forward to these kind of videos they’re very detailed & informative. it’s awesome to take a look back into videogame history & see the tricks developers pulled off behind the scenes. Thank you MVG🙏
The range of colors and better audio chips made the Snes much better to me in the era. Now I appreciate both for their strengths and faults, but man SNES games are still gorgeous.
Ive always played around with turning layers on and off in emulators to see how the scene is made up, but it's cool to know the technical details and reasoning behind it
Good video!
can you do music next? to this date ive never seen a video on how music actually was composed and written for the NES or SNES. like it would have been back then, on that hardware and software avaliable then.
that would be nice to hear about, but I do know that they used a certain type of tracker software to make music.
The channel Ahoy (formerly Retro Ahoy, I think) has a video about trackers (old school music production software, DAWs before DAWs were a thing) called "Trackers: The Sound of 8-bit" that will answer a lot of your questions, and Retro Game Mechanics Explained has a superb multi-part series of videos called "SNES Audio System Overview" that takes a comprehensive look at the SNES SPC700 sound generation chip.
Between those two channels you should end up with an excellent understanding of how everything fit together and how developers of the day made the awesome music we all grew up with.
@@sfdntk seen those vids, thanks! 👍None show how it was done though
The reason is because few people do it that way anymore and it honestly wouldn't be that interesting to most people. The vast majority of game music back then would have been transcribed into a text format of some kind. MML was popular in Japan, hex based formats were probably the most common, and sometimes in raw assembly.
Try finding an MML tutorial I guess.
@@jc_dogen or, or, I just said it would be cool to see a video on it, not a bunch of people thinking they're clever telling me how they think it was done?
Many of these games after almost 30 years I can still play to this day and enjoy.
Ahhh yes, the one I've been waiting for. My childhood in a beautiful gray and purple chassis.
I have seen similar SNES summaries before. But this is the best on point explanation of the system so far. Thanks!
Another great video! Thank you for making these!
Just wanted to say that I appreciate you uploading the videos in 4k. It's very nice quality and most youtubers don't.
Just be aware that there are people out there that appreciate the extra effort.
Great video thank you. This reminds me of my childhood where i modded my supernintendo and added 8 swtiches which were installed on the back of my snes which were short circuiting single lines of the ppu which therefore gave me the control to hide single layers. In Mario Kart i was just deactivating the Main Kart which then looked like you were looking from the drivers perspective. In ShadowRun i had the effect that i was able to turn of the layer of the interiour design of the rooms and therefore being able to see all the hidden secrets like hidden money , weapons, etc... This was one of 4 mods for my snes which i did back in the time.
Wow nice, I loved discovering how these games where made back around 2000, switching on and off these backgrounds on emulator. I had no idea it was doable on a real hardware. I wounder if a similar mod could applied to the sound system in order to cut the 8 music channels independently so that you can listen to each of them solo, but on a real hardware.
@@mrnuage well actually i never tried to mod the sound. I was not even thinking about that but its a great idea. At that time everysingle mod was very risky to damage the mainboard which had happend. I was still a child and i was super curious to understand what all these chips do. So i took a wire and were short circuiting the board while it was running. This was not my first attempt in modding hardware. I tried that also before on a master system and a commodore c16. So i allready had some basic knowledge about what i can do and what i should avoid. Anyway on one attempt to get rid of the region protection i fried a coil and then paid a lot of money for a repair service just to try it again afterwards ;) and indeed i was able to find the chip which was responsible for the region lock. It was a great time and i loved my SNES.
That's awesome, what other mods did you do?
@@renakunisaki i added a 60HZ crystal oscillator to my snes which was a pal system with 50HZ. With that mod i was able to remove the top and bottom black bars from the screen which the pal system usually had and played all the games with faster speed. Especially Street Fighter 2 Turbo played so much better with that mod. Also the colors got much more contrast. It looked great on an old Sony Trinitron CRT.
@@mrnuage: Sound is mixed internally in the S-SMP / S-DSP, afaik you can't disable channels by modding.
These are my absolute favorite of your videos! Thanks for the concise informative content sor!
I'd say that Super Mario kart footage takes me back, but I never left.
Great video! Love how you showed the layers of what was happening.
Very nice video! It would be useful to add that the perspective effect that createst he pseudo-3D in Mode 7 is done using HDMA since it's not an affine transformation. The background is zoomed in after each scanline, creating the perspective effect
Zooming with mode 7 is an affine transformation. It's just using a different transformation matrix for each horizontal strip. The matrix gets swapped out using HDMA.
@@angeldude101 Yes, that's what I meant. You can't make a non-parallelogram from a parallelogram with affine transformations alone. So to do it they have to apply different affine transformation for each scanline. This creates the illusion of a trapezoid transformation
Absolutely awesome video. I've always been super interested in how Mode 7 graphics worked, but most explanations go over my head. You did a fantastic job explaining it, along with the transparency effects (super cool!). Amazing work as normal!
Regardless of what follows in the next sentence, I just want to say thank you for always producing great videos on interesting topics!
But I think either the table shown in the video or your voiceover is "wrong" (or rather missmatches the video) at around 5:29 for mode 3 and mode 4. The voiceover says 128 colors for BG0 while the table reads 256 colors.
I really like your visualizations of the render layers, that's pretty cool. Thanks a bunch for the video!
Thanks for this video! It will make a fine addition to my rewatch list for later :)
I'm sure I speak for a large majority that the SNES is probably our most beloved and nostalgic console of all time and I personally prefer how MVG narrates and educates hardware and software and would enjoy an hour long video from him in like a tribute to SNES. Would be an instant classic.
I would love if they threw a 'Mode 7' reference, maybe a new FZero title on the Switch, that pulls the classic Mode 7 effect style in the intro, then it goes full 3D for the rest of the game.
That'd be pretty sweet, actually. F Zero was the first game I played on SNES. Between that and FF3 (U.S.) I have fond memories of Mode7 style games.
Huge Genesis fan that had a lot of love for my Super Nintendo. We all got to enjoy so many great games on these two consoles. Their battles gave us all wins. Super Nintendo’s special effects really impressed and in turn forced developers to think outside the box to replicate some of those special hardware effects in game software on the Genesis which were equally impressive. So many great games those two consoles gave us.
I'm curious of how Sega Genesis and other systems could mimic mode 7 style effects. What tricks were used? Will you make a video about that?
There's a RUclips channel called Coding Secrets that you might be interested in. The channel's author, a graphics programmer from the 16-bit era, talks about how he pulled off mode 7 effects on the Genesis - without the hardware obviously.
ruclips.net/video/nt-AxAqlrOo/видео.html
@@megabyte01 He's not just any programmer. He's Jon Burton, founder of Traveller's Tales.
Basically, the Genesis does it all in software using line manipulation tricks or simply by using multiple sprites. The Sega CD has full hardware support for scaling and rotation, but few games made good use of it due to the focus on FMV. Sonic CD's special stages are a notable example "Mode 7" on Sega 16-bit console hardware. The 32X also supports it in hardware, and actually got a few games that made full use of the technique. Space Harrier and After Burner are really solid Super Scaler arcade ports on the 32X. But again, support was hardly what you'd call "broad".
@@MmntechCa ah, I didn't know that guy was the founder of Traveller's Tales!
I also didn't know that the Sega CD and 32X consoles/add-ons could do mode 7 effects in hardware. We were a Nintendo household.
@@megabyte01 yeah, and the Gen was plenty capable w/o those addons that ruined the reputation of Sega and the Genesis. Toy Story, Adventures of Batman, Red Zone, Ranger X etc have very cool 3d effects without cartridge upgrades on stock hardware. The addons did so much more harm than good.
These are some of my favorite videos on RUclips! Love learning about retro gaming hardware design. Keep them up!
What most Americans don't know is that Europe had the SNES or Super Nes but with the Famicom design.
Never owned a Nintendo but I do find these vids so interesting. I grew up on Spectrums, Amigas and Macs.
Great job!
The difference in speed between a 3.58 MHZ 65816 and an 8 MHz 68000 is not as great as it looks on paper. The 68000 has a 16-bit data bus and a vast instruction set, but the 65816 is faster at executing instructions. The 68000 is a little easier to program, but I had fun writing code for both.
I spent months of my life as an assistant developer on Dirt Trax FX.
I really loved working on the SNES. I wish that it had some sort of built-in OS with support for developers, but the developers had to do everything themselves.
I always enjoy you technical explanations for how these systems work!
I'd argue that the SNES did have "true transparency" since multiplying, adding and subtracting are all transparency methods used in digital graphics (see Photoshop layer transfer modes). I'd attribute "fake transparency" more to dithering or strobing.
I’d say it’s not quite there in that you don’t have direct control over opacity
@@mccad00 I'd still say that just a parameter of transparency, the actual effect still works without dithering of flickering; the colours were mixed, you just can't easily control by how much.
I feel this kind of logic could also be used to say that the SNES had true 3D, since most of what 3D is is applying affine transformations to textures. The SNES just has a max polygon count of 1. (Or 2? Since "polygon" usually implies triangle in graphics?)
@@angeldude101 yeah, but I guess that would be 1 polygon because you couldn't have different planes of transformation, while 2 would imply you could (4 points don't need to be in the same plane)
@@angeldude101 I mean, technically yes, if you do enough affine transformations you get Doom. Still, I think the "true transparency" term holds since there are clear examples of "fake transparency", namely dithering and strobing. It's primitive, but it's real multi-layer transparency.
Wow, super interesting. I'm glad RUclips randomly stuck this in my recommendations. Definitely earned a subscribe from me.
So in the 256 color modes you wrote 256 colors but said 128 colors? Which one is which?
256 colours (it's 8bpp, not 7bpp, after all), though half of the colours comes from the sprite palette which does limit the 8bpp-ness a bit.
Technically, they're both. You see, in mode 7, a 256-color palette (8bpp) is normally used. However, there's an additional mode that games didn't use. It's called EXT-BG and sets the color limit to 128 colors (7bpp), with the last color bit per pixel being used for priority.
Ty for explaining this stuff in an easy to understand way for us dummies out here. Easy sub for me. Can't wait to watch your other videos!
My only question about the 'viewing window' in mode 7 came to mind while Mario Kart was being shown. In the game you appear to be able to see track elements much further away than the given view area size would seem to indicate.
Happy Pi Day and thanks for this breakdown! I was in my early teens and a local shop had imported Japanese SFCs for rent prior to the US release of the SNES. At the time, the GFX of the SNES/SFC was indistinguishable from magic!
Another informative episode, great work MVG, as always!
This video is excellent! I've been wanting something like this ever since I saw your video explaining the GBA. It's done in such a way that an average layman like myself could understand.
Please do more videos like this for more video game systems. I especially would love to see one on systems like the Neo Geo and Turbo Grafix. It would be amazing to learn what makes them different from their contemporary systems.
What's ironic about mode 7 is that even though it's used to name the flat 3D effects like games like Mario Kart or the airship view of several JRPGs of the time, mode 7 alone is not able to do this because perspective is not an affine transformation. The way the effect was done on the SNES was by changing the scaling every scanline, which programmers did with HDMA. Of course mode 7 is the only mode with hardware scaling and rotating so you still HAD to be in mode 7 though.
Aaahh! I was always wondering how those games were possible with just the mode 7 transformations. THANK YOU.
Love these layman breakdowns, keep up the great work MVG
Oops, from 5:30 onwards you start reading out the wrong number of colours for the graphics modes!
Thanks, I never understood the redundant background modes. Excellent video!!
While the SNES base CPU was slow, there were a lot of interesting enhancement chips, such as the aforementioned Super FX chip, but not forgetting the various chips, such as the DSP chips, the powerful SA1 that was clocked faster than the Genesis's M68k, as well as Capcom's Cx4 chip for drawing wireframe graphics. Definitely a good topic to cover.
One of the most impressive of them is the compression one used in Star Ocean, allowing a 256 Mb game to fit in the cartridge when most games weren't even half that size.
Sorta like the Amiga's weak CPUs paired with tons of powerful co-processors.
@@BrunodeSouzaLino Star Oceans uncompressed takes 96 Mb, or 12 MB. Not 256 Mb / 32 MB. It used the SDD-1 chip for the on the fly decompression tasks, the same that Street Fighter Alpha 2 used.
Top quality as usual. Super clear even a tech dummy like myself gets it. Love it.
In the 1st TITAN demo for the megadrive they showed the system could do Mode 7 all but software from registers in the vpu or something.
With the entire CPU dedicated to do only one thing. You still game, you know, a game, with gameplay, and sound.
overdrive 2 has flat shaded polygons in software, but they're all pre-computed. Demos are like a cool theoretical maximum of a system's capabilities, but you'd only see tricks on things like splash screens or one-off special areas.
Really interesting, thanks for making… was literally talking to a friend yesterday about SNES graphics and how they remain timeless and engaging still today for our own kids playing these games!
Hey MVG slight error with the number of colours avalible on the layers. You say 128 but the graphic on the screen has 256 colours.
Let him talk about nested emulator wich is a nes emulator for the snes,wich is absolutely something very interesting because the snes was never designed with nes compatibility in mind because it was scrapped half way trough development,
Btw do you know something about mode 8???
I'm probably on the small niche but games from SNES / Arcade pixel art era feel like they have way more charm to me than what most modern games provide.
My best purchase this year was the SNES mini, so much fun revisiting old classics that i was playing as a kid. Beating most games that seemed impossible back then.
I really love that Square Enix taking this route with 2.5D HD sprite work. It looks amazing and it feels as good as it was back in the day.
Love your work with river city girls. Cheers o/
I'm pretty sure that small niche includes the entire indie gaming scene, so I'm not really sure it qualifies as much as a "niche"
I think another factor that contributes to this, is that as games look more and more realistic, they become less of an escape from reality. Hence when something like "Journey" or "Okami" comes along, people get smacked in the face with how abstract they look and rave about them. There isn't an abundance of games that are led by art style, photorealistic assets could be pretty much interchangeable, whereas working with pixel art, having a strong style is basically a pre-requisite.
I highly recommend RGME's Series about the SNES Hardware, it goes into great detail about pretty much everything, with very good visuals:
ruclips.net/video/57ibhDU2SAI/видео.html
also it's not really fair to compare clock speeds of 2 completely different CPUs, the 3.58MHz 65816 runs slower than the 7.6MHz 68k but the SNES executes slightly more instructions per second as all 65xx CPUs require far fewer clock cycles to access memory and execute instructions compared to most other CPUs like the 68k.
Yes, it was slower but it wasn't half as slow. The little CPU punched a bit above it's weight.
I'm glad someone mentioned this channel, it's incredible.
Love this dive into graphical development detail. Thanks for your content!
Check out the channel "Retro Game Mechanics Explained" if you want to take a deeper dive (down to the assembly) into this topic and other old console effects.
One of my favorite channels about old games, up with MVG.
I’m not pc expert I don’t even own one I don’t dabble in emulation I’m just a very casual console gamer but honestly I look forward to MVG videos every Monday and any other video of the week
Impressive hardware design, but I guess it largely defined how games played on the system, like how fast they were. The slow CPU is still, in my opinion, a limitation. I overall prefer the library of games on the Sega Megadrive, but both platforms of course were great. The higher resolution is a major factor for the Megadrive, since the resolutions we are talking about here are low to begin with.
The CPU could run at 3.58 MHz (6 master clock cycles per CPU cycle), but many publishers only bought cheaper "slow" (8 cycles) ROM chips, so the memory controller stretched the CPU cycles a bit. On the other hand, 65xxx CPUs could always do a lot of instructions in very few clock cycles (assuming the programmers knew what they were doing) compared to the Z80 or x86, not sure about the 68k.
The SNES PPUs always calculated 512 pixels per line, but most game developers used that for transparency effects (by combining pixel pairs) instead of higher horizontal resolution. The video signal in these days was often shit anyway, first by converting RGB to NTSC then transmitting the result over an unshielded composite cable. Many Genesis games actually relied on that effect and used dithering...
@@shinyhappyrem8728 But European TVs since the 80s had RGB SCART. In France it was all the way in the 70s!
@@fungo6631 Back then nobody knew what RGB or composite was and everyone just used a composite to scart adapter or composite directly.
@@DasAntiNaziBroetchen I'm pretty sure that anyone with some technical knowledge knew about RGB.
Snes è mais rápido que o sega geniais pois consegue processar mais ciclos que o mega .snes forever the best
I love how you explained everything, make it really interesting and cool
Hey MVG, big fan here. I have a suggestion for a video, do some research on the Phantom System, a Brazilian clone of NES that Nintendo later partnered with the company in the 90s because it was a superior version with cheaper components that sold millions of copies in Brazil. It used a different set of chips that were cheaper to produce and in the end the company that produced it partnered up with Nintendo to represent them and to sell the official NES (and later the SNES) in Brazil. It's a pretty interesting story and I'm sure you will like it. Here's a documentary about it: ruclips.net/video/1w-OBRXmQok/видео.html
I really enjoy when you make SNES related content, it charges my batteries watching your videos
Ohhh damn.... A SNES video!
Very poggers indeed
Really love these retro-videos showing how things were made, so impressive. Thank you for the video
Do a video about Nintendo implementing AMDs FSR in their games and what the potential is.
U didn't even say please 🤦♂️
It's an ostrich, @@jahjoeka, they have no manners
Great sums up of some of the SNES greatest features.
Cool touch you had F-ZERO running in the background too as it probably was the reason why Miyamoto wanted MODE7 to be a thing.
The SNES was really one of the most impressive advancements in gaming history, and especially so at the time.
9:16 Dat Jump
Snes is my favorite console of all times by far. Thanks a lot for make this video.
Minor nitpick: Mode 7 transforms are 2D only. The pseudo 3D, e.g. for racing games, comes from the combination of Mode 7 and HDMA.
For anyone looking for more details, these videos are absolutely great and helped me a lot: ruclips.net/p/PLHQ0utQyFw5KCcj1ljIhExH_lvGwfn6GV
Also, if I my shamelessly plug a (free and open source) project of mine: If you want to see what Mode 7 looks like without the resolution limitation of the SNES check out bsnes-hd: github.com/DerKoun/bsnes-hd
It also has other HD features like wide-screen (limited!) and true-color smooth background gradients.
MVG you probably won’t see this but I just wanted to say thank you for your awesome content. You are my favorite channel on RUclips. What’s more, we rubbed elbows on IRC back in the original Xbox days as I worked for a dev team “UIX” making dashboards… it’s awesome to see all you have accomplished.
Awesome analysis as always. One thing I would say is that although Mode7 has been elevated to cult like status I was never the biggest fan of it. It always produced half baked results but in some ways that was it’s charm.
Yes me too ,mode 7 may was impressive at the time but i was not all that much impressed with it,rverything just looked so cheap, and simple,take f zero for instance,no obstacles on screen,supermariokart did had obstacles on screen but the playfield was not in full screen(why nintendo???)heck that game even couldn’t run on a stock snes,heck even street racer was in full screen and could just run in full screen,
However games such as speed racer and snow boarding were really impressive looking mode 7 games,no simple cheapass flat surfaces but hills & mountains,you have to see to believe it.
0:13 Looks like you've got your copy of Super Mario Collection (Japanese Super Mario All-Star) at Retro Game Camp. Somewhere in 2018. In Akihabara, Tokyo? Cos I've got some cartridges at Retro Game Camp in Akihabara back in Autumn of 2017.
It's the sticker tag. It says "Battery replacement complete" or "バッテリー応安済". Then again, taking a closer look, I could only see English wordings more.
Even with it's under-powered CPU, SNES Graphics still looked better than those on the Genesis. The 16-Bit wars were a great time to be alive!
Now that's the kind of progress I like @ 2:55 maximum number of NES colours became minimum number of SNES colours
So....for devs to make a working emulator for these systems, the devs had to understand HOW the hardware worked and not just the software?
Yes. The software can only give you hints to how the console was supposed to work
Work through real ROM dumps on PC identifying behavior, build homebrew based on findings to test specific parts of it, then test homebrew on emulator and actual hardware to determine correct behavior.
I can't even begin to imagine. Like, you're already a good programmer and now you have to study hardware.
Never heard someone break down modes before. Very cool. Thank you sir!
My OLD SNES has difficulty with mode 7. The map part freaks out and goes all over the place when trying to play Super Mario Kart or Contra 3's over head levels. I think It might be a problem with the CPU and it would need a replacement CPU.
Obviously there's a lot more to cover here than for the NES or Game Boy, so it would be great to see a follow-up going into more depth. I'd be really interested to see more breakdowns of specific effects/scenes in games, explaining how and why a certain mode/feature is being used in each case (like you did with Secret of Mana.) As someone who is very slowly beginning to understand how graphics work, that kind of stuff is helpful.
SNES and N64 were great systems, but sadly Nintendo cheaped out at the last minute. To save a few bucks, they went with a VERY slow CPU in the SNES and an incredibly small memory for bitmaps/polygons on the N64. If they gone with a legit 8mhz CPU in the SNES, the system would still hold up today, but unfortunately it had major slowdown issues (see games like Super Castlevania). There's no excuse for going with such a crappy CPU. And on the N64 the memory for textures and bitmaps was close to ZERO so you were left with games that either had really LAME bitmapping or none at all. Dreamcast was FAR superior in end result but N64 could have been MUCH closer if Nintendo folks put even a tiny bit more memory in their hardware.
@Dean Satan They got the hardware 100% right with the NES, and “solid” on SNES and Gamecube (despite obvious corners cut). N64 didn’t quite cut it, and the hardware for last 20 years has been pathetic. Great library has kept them afloat.
@Dean Satan"with competitors having a huge advantage, being able to offer gaming experiences that are unilaterally not possible on deficient Nintendo hardware, and yet, bitter and unsatisfied nintendrones will flock to this disappointing hardware, "
if hardware was everything, then I'd have to prefer a system that was released today over anything from the 80s or 90s.
I couldn't enjoy super mario world, or mario bros 3
Nice video ! 👍😊
Very interesting and well made.
"The Super NES became a global success worldwide"
All around the world, even.
Look at that super nt up there!! Amazing video with nice easter egg!
Mode 3. Displayed was 256. You said "128." So which is it? Mode 6 displays 16 and you said "32." Am I missing something here? Or can you at least explain why you say something different than what you're showing?
mode 3 has 256 and mode 6 has 16
The SNES mini brings back so many memories.
SNES don't have color modes like PC, Atari ST or Amiga. SNES palettes are per tile not for whole screen and sprites can use 16-color palettes even in 4-color Mode 0.
So essentially Mode 0 should be better than 16-color Atari ST graphics, while 16-color modes 1 and 2 are nearly comparable to 256 color VGA mode. Games using that modes usually have 120+ colors on screen. With hardware transparency SNES can display thousands of colors.
Of course artists had to consider per-tile limitations, but overall games on SNES never had to rely on extensive use of dithering like it was present on Sega Genesis or Amiga.
However, SNES had lowest resolution of just 256x224 without square pixels. 320x200 or 320x240 was a gold standard for 16-bit systems. Sega Genesis had less colors, but higher resolution allowed for more detailed graphics or wider view. Lion King is a good example here. It has better graphics and audio on SNES, but still plays better on Sega Genesis thanks to higher resolution.
SNES's slow CPU had an impact on it's game library. Sega Genesis had fast arcade style action games, often with creative graphics effects and new gameplay mechanics, while SNES games were mostly generic platformers. However SNES architecture allowed story based games to thrive. Final Fantasy or Chrono Trigger weren't taxing CPU, but rather focused on story telling and interesting turn-based combat.
Also SNES almost got Super FX chip inside for European and USA release. Super FX was almost finished when console launched and Nintendo was close to put it inside. This thing could totally changed video game history. SNES would got much more 3D games and 2D games would have huge sprites, rotations, scaling etc.
SNES can do 512 pixels per line, it's just that game developers opted to use transparency effects instead. The video signal was mangled anyway thanks to RGB to NTSC and composite (unless you had an RGB-capable setup). The games could be fast too if the programmers knew what they were doing, see Rendering Ranger R2 or any Factor 5 game.
@@shinyhappyrem8728 512 or 640 horizontal pixels required RGB cable to look good and games using such resolutions were mostly seen on computers, where RGB was common or even mandatory. 320 was the best value, since it nicely fit with 240p mode giving square pixels and NTSC had color clock at 160 pixels which allowed for artifact colors at 320 pixels. This was used in "composite color mode" of CGA on PC that gave 16-color graphics on 4-color device and most Sega Genesis used vertical stripes that blended into one color on Composite output.
This gave Sega console more colors and transparency, you can look at Earthworm Jim in Hell stage there are flames that look horrible on RGB, but on composite they become a transparent layer.
As for fast gameplay SNES could easily do it. However Genesis had simply better CPU that could do more calculation like move a lot more sprites on screen than SNES. Also nearly all Genesis games run on stock hardware, while many SNES games had custom chips on cartridges that did various things. Even Mario Kart has a custom chip to display more sprites than F Zero did.
@@Leeki85 The chip (DSP-1, to be precise) isn't responsible for sprites (in fact, none of the enhancement chips ever boost the PPU, much less sprites) but rather for 3D calculations, something which the stock SNES would have included on its own but it was scrapped because the base system would have been too expensive.
In fact, one sign of it is that Pilotwings misses the Super Famicon release by one month and another is that Nintendo has got its own music engine but it went through multiple revisions, one of which is used by both, SMW and PW and is lacking many features while F-Zero, a release game like SMW, uses a different, modern one.
@@MarioFanGamer659 Mario Kart developers wanted to have more sprites on screen. While SNES graphics hardware could easily display them, CPU wasn't fast enough to calculate their position. This is why they added DSP-1 to the cartridge.
Mario Kart is a 2D game, there's no need for 3D calculations. DSP-1 is used to simply transform world position to screen position that is based on camera position and camera angle. In the proces It also calculates object distance from camera so sprite of proper size can be used. SNES CPU could do it by itself, but for much less objects and probably splitscreen multiplayer would be impossible.
Amiga 1200 (68020 14 MHz CPU) had Xtreme Racing which replicated Mario Kart style with Mode 7 graphics done entirely in software.
Wacky Wheels on DOS PCs were nearly a ripoff of Mario Kart (but with awesome music!) with software Mode 7 and even had split-screen. It required 20-25 MHz 386 CPU.
@@Leeki85 Ah, now I get it. I was thinking of sprites in the technical sense while you were thinking of sprites in the sense of calculating their positions.
That being said, I'd rather say that SMK would be impossible (or at the very least, difficult) to have at 60 FPS if it wasn't for the DSP-1 chip.
And the reason why I mentioned that SMK is 3D is because it really is, every entity is represented in three dimensions, it's just that the tracks themselves are flat so the 3D-ness isn't as apparent as on later games.
But I was primarily thinking in the graphical sense and indeed, the graphics themselves are 2D but that isn't really far off from how modern graphics work. Instead, you contracted yourself by dismissing the 3D-ness of the graphics but also wrote that "DSP-1 is used to simply transform world position to screen position that is based on camera position and camera angle." which _is_ 3D calculation, the game has to take care of depth instead of using cartesian coordinates, for example.
This was a very good explanation video. I really wish it was easy to remake the concept of the SNES mode 7 graphics in simplified software code. It would be really cool if people could software simulate or emulate the unique graphics very easily today.
Back then: "huh, this system is weak but it encouraged some really amazing and unique games"
Now: "ugh this system is so weak. Sure it might have games but what's the point of living if it isn't strong enough for a resolution and frame rate the human eye can't differentiate?"
Retro Game Mechanics Explained has EXCELLENT videos on the SNES's graphical trickery, especially with how Mode 7 and HDMA are utilized.