How Graphics worked on the Nintendo Game Boy Advance | MVG

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
one year after the launch of the Nintendo Game Boy Color rumors were going around about a new and improved handheld that was in Nintendo's R&D lab one that would be a 32-bit system and had online wireless connectivity when launched in 1998 the Game Boy Color was an 8-bit handheld so a direct jump to a 32-bit system made many people skeptical keep in mind the panasonic 3do the Sega Saturn and the PlayStation 1 were all 32-bit systems in the household which had fairly large power requirements at the time towards the end of 1999 Nintendo officially announced the new handheld as the gameboy advance and was officially released in the middle of 2001 as part of the sixth generation of home console so it's 2001 The Game Boy Advance is released and people are in love with the system it's truly a portable SNES or so we're led to believe but as we'll see when we take a closer look at the graphics subsystem for the GBA there's a lot more going on here than meets the eye the Gameboy Advance is sometimes labeled as the portable Super NES with 16-bit style graphics smooth scrolling mode 7 rotation and mosaic effects it's as though Nintendo managed to shrink down the Super NES hardware into a portable system but this is not accurate in fact both the Super NES and Game Boy Advance are quite different in architecture the Game Boy Advance were GBA as it's known was a massive jump over the Game Boy Color the processor is an armed 70 d mi t-- d mi stands for thumb instructions debug port fast multiplier and enhanced ice while Nintendo used a 32-bit processor in the Virtual Boy this was the first time it was considered in a handheld and was a big step up from the Game Boy Color recall that the Game Boy Color uses an 8-bit sharp processor and ran at 8 megahertz with an enhanced color palette one of the biggest benefits of the arm7 processor used in the GBA is the three-stage pipeline the best way to explain this is if we consider traditional 8-bit CPUs the processor would fetch the next instruction then decode it and then execute it this was a top-down sir winchell process with a three-stage pipeline like the one found in the GBA while one instruction is being executed the next instruction is being decoded and the next one after that is being fetched all in parallel this process is used to increase the speed of flow and allows for operations to take place simultaneously there are many other benefits of the arm7 process are found in the GBA but let's turn our attention over to the graphics the Game Boy Advance comes with an increased screen resolution over the Game Boy Color at 240 by 160 pixels compared to 160 by 144 of the Game Boy Color both systems use a 15 bit color palette or over 32,000 colors recall that the Game Boy Color has one background tile layer one sprite layer and one window layer with a maximum of 512 tiles and 40 sprites on screen to save on space there is no bitmap mode or the ability to directly plot pixels to a frame buffer at all but these limitations did not stop the success of the system in fact because it was more affordable and already had a huge library of well-known franchises the Game Boy Color dominated its competition the Game Boy Advance took inspiration from the Game Boy Color but also did so much more first the arm7 system-on-a-chip took care of essentially the entire system taking a look at the internals of the GBA you can see it's very simple with only the AGB arm chip standing out next to that is the 256 K of work ram or w ram we said that the GBA is LCD display is 240 by 160 pixels wide and has a palette of 32,000 colors it also comes with 5 independent graphics layers just like the Game Boy and Game Boy Color the GBA uses backgrounds and sprites and from these five layers four of them are background layers and one must be a sprite layer so with 4 background layers means it's possible to do some cool effects like alpha blending mosaic rotation scaling and more in order to facilitate this the GBA has 96 kilobytes of video ram which is a large increase from the Game Boy Color which had just 16 the GBA screen is scanline based and refreshes at one sixtieth of a second or close [Music] the GBA supported 256 color background pala and a 256 color object or sprite palette but these palettes can also be split into sixteen individual sub palettes for both the backgrounds and sprites each of the palettes also has a transparency color defined staying true to the Super NES and Game Boy the GBA uses tiles for each of its four background modes each tile is eight pixels by eight pixels you can define the size of the tile Maps by the control registers of the GBA each of the four background layers can be scrolled individually for example this intro to Zelda a Link to the Past on the GBA you can see that backgrounds 1 & 2 are moving in completely different directions with 4 background layers means the inclusion of parallax scrolling effects is easier to accomplish over the Gameboy Color which required mid frame interrupt tricks that manipulated the scan lines for the first time ever for a Nintendo handheld the Game Boy Advance introduced bitmap modes with bit mapping mode to plot a pixel at location x & y on the screen you simply go to that location in memory and fill in the color value while bit mapping is much easier for the beginner to learn when it came to the Game Boy Advance graphics they have some limitations that made it difficult for games but it certainly wasn't impossible doom on the GBA used bitmap mode and heavy optimization in order for the game engine to run at a good level of framerate and performance on the Gameboy Advance but because of these limitations almost 90% of Game Boy Advance commercial games utilized tile modes tile modes work very similar to the Game Boy Color 8x8 pixel tile map stored in a memory location that's used to build out the background this means a total of 30 tiles across by 20 vertically represents a background the Game Boy Advance also uses sprites this time around 128 sprites can be on-screen at one time sprites are a minimum of 8 by 8 pixels in size but with different combinations can go all the way up to 64 by 64 pixels in size each sprite uses a 256 color palette or one of 16 pellets with 16 colors each sprites are controlled by three separate object attributes that handle things like the position if the sprite is visible if it's masked the rotation value the mosaic affect its color mode and more one of the biggest strengths of the GBA was the variety of games that came out for the system you had everything from 2d scrollers SNES ports 3d games that used 3d engines now probably wondering how does the GBA have all this variety and power underneath the hood well it all boils down to two things the first thing is obviously the arm7 processor but Nintendo was smart enough to incorporate six different modes that really determine the type of game that you wanted to develop on the Gameboy Advance the GBA comes with six different video modes each have limitations 0 1 & 2 are the tile-based modes and three four and five are the bitmap modes it's a trade-off to determine which is the correct mode to use for example mode 0 has all available for backgrounds but no ability for rotation and scrolling of these backgrounds while something like mode 2 allows for scaling and rotation but only allows for 2 backgrounds then there are the bitmap modes which allows for up to 32,000 colors on screen however in something like video mode for where each pixel consists of only 8 bits 2 pixels must be drawn at a time which is very slow compared to the tile-based modes and if we go back and look at the first three tile modes the resolution is larger than the Game Boy advances viewport this means Hardware scrolling can be used and for something like mode 3 bitmap mode this is great for displaying a high color static image so which mode is considered the best well the answer is neither it really depends on the game and that's what makes the GBA such a wonderful handheld if we consider a scrolling image like this it's 512 pixels wide by 256 pixels in size which means that mode 0 1 or 2 could be used but attempting to perform this using bitmap mode would consume too much via RAM and then scrolling per pixel would require heavy optimization so why bother doing this when you can just use tile modes that have Hardware scrolling registers on the flip side for 3d engines like Ray casting games Wolfenstein and doom for example use of bitmap modes makes more sense and there are many examples of impressive 3d engines that were developed on the Gameboy vents that utilize these modes so we have modes 0 to 5 but what about mode 7 the legendary mode that was found on the Super NES where is mode 7 we know that the GBA has the ability to do mode 7 style effects but is there actually mode 7 on the GBA mode 7 on the Super NES is a graphics mode that allows for a single background to be rotated and scaled per scanline to make cool and unique effects like this one found in super Castlevania for hundreds of games made use of this mode and was one of the biggest selling points of the hardware the term mode 7 is used when talking about the GBA but as you've guessed technically there is no mode 7 to be found what's actually happening is the Game Boy Advance comes with a fine background registers which are separate registers to allow the backgrounds to scale and rotate mode 7 style there is also a fine register specifically for sprites this means sprites can be zoomed rotated and scaled in the same way as backgrounds the GBA also has registers for blending and mosaic effects so with these combinations you can essentially replicate many of the Super NES styled mode 7 effects this is one of the main reasons why the GBA is considered a handheld Super NES but in reality from an architecture standpoint they really don't have too much in common it's been almost 22 years since the launch of the GBA and it's truly a classic handheld that took gaming to the next level with its 32-bit processing power impressive graphical effects and a massive library of games it took the strength of the Game Boy Color the Super NES and even introduced bitmap modes from the PC and often develop as many different choices at the time it felt like the GBA could do anything and with some of the ports to the system who could argue in many ways it represents the ultimate retro experience and one that I urge anyone to go back and revisit so they have a guys that is the graphics system on the Gameboy Advance it's a really interesting topic to go back and take a look at obviously Nintendo took all of the great features that were found on the Gameboy line of systems and move them across to the GBA yet thank operated so many cool effects and tricks and tips from the Super NES as well as additionally adding their own effects exclusively for the GBA and kind of wrapped this up into this really powerful handheld that could pretty much do everything I mean you could do side-scrolling games you could do 3d FPS style games that were racing games there were so many different things you could do on the GBA and that's really what makes the system so special and so awesome from a retro standpoint it's such a cool system to go back and revisit and developers really embrace the gameboy advance as one of the earliest handhelds used for homebrew and that's definitely something that I want to explore in a future episode on the channel because the homebrew abilities of the Game Boy Advance were some of the most unparalleled things you could do back in 2001 for a handheld system well guys we're going to leave it here for this video thank you so much for watching if you liked it you know what to do leave me a thumbs up and as always don't forget to Like and subscribe and I'll catch you guys in the next video bye for now [Music] [Applause] [Music] [Applause] [Music]
Info
Channel: Modern Vintage Gamer
Views: 617,691
Rating: undefined out of 5
Keywords: nintendo, game boy advance, mode7, gba, game boy, dmg, super mario land, gameplay, gaming, gunpei yokoi, gaming history, mvg, modern vintage gamer, donkey kong land, sprites, pixels, backgrounds, scrolling, graphics, soc, vram, switch, link's awakening, game boy color, gbc, bitmap modes, 2001
Id: mpNWEbZdXNw
Channel Id: undefined
Length: 12min 30sec (750 seconds)
Published: Mon Feb 17 2020
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.