I'm sure most or all of you have owned or at least played a GBA before, right?
Have you ever wondered what's inside? Well, no more.
(Beware of BIG pictures)
Some random tech data:
The CPU in the GBA is an [ame="http://en.wikipedia.org/wiki/ARM7TDMI"]ARM7TDMI[/ame] running at 16.78MHz. This same processor is used in cars, the Dreamcast, and in the Nintendo DS. It has 32KB or RAM embedded inside, this memory is faster than the external 256KB chip.
16.78MHz is double the speed of the Game Boy Color CPU, 4 times the speed of the original Game Boy CPU, half the speed of the ARM7 in the DS, and 1/4 of the speed of the ARM9 in the DS.
Somewhere inside the CPU is a Z80 core for compatibility with GB/GBC games, and also for generating the '8-bit' sounds that many GBA games use (Game & Watch Gallery 4 for example).
GB/GBC games have different colors if you play them on the GBA.
The largest a GBA game can be is 32MB (example: Mother 3).
You know that code that is printed on every GBA cartridge, that goes like this:
AGB-XYYZ-CCC
is actually printed on pretty much every game ever made by Nintendo? The format goes like this:
AGB - 3 letters for the system name, usually this is printed as the prototype name, for example Gamecube games are "DOL" (Project Dolphin), Wii games are "RVL" (Revolution), DS games are "NTR" (Nitro), N64 games are "NUS" (Nintendo Ultra System), Game Boy games are "DMG" (Dot Matrix Game).
X - For GBA, for most games this is either the letter A or B. A was printed on cartridges made before 2003ish, B is printed on later cartridges. A few special cartridges have unique codes, Warioware Twisted has an R, Drill Dozer has a V, Classic NES Series games have an F, probably some other unique games (Boktai w/ solar sensor, Yoshi Topsy Turvy w/ gyroscope) have other codes.
YY - This is either a short 2 letter abbreviation of the game's title, or is just random. Sometimes you can learn surprising things about games with this, for example, both Fire Emblem games are marked as 'E7' and 'E8' respectively, meaning these are the 7th and 8th games in the series.
Z - This is a language code, E for English, J for Japan, D for German, etc.
CCC - Country code, pretty self explanatory. This doesn't really matter since the GBA has no region protection.
_______________
Since we're talking about the GBA, let's talk about it's game cartridges too. You'd be surprised by the variety of cartridge types there are! Most of the differences are for the type of save device inside, but there are other unique cases too, as you'll see.
SRAM
This is your classic SRAM chip, powered by a battery. The SRAM chip is on the left, and has a capacity of 32KB (
bytes, not
bits as printed in the cartridge. 1 byte = 8 bits) This is pretty small but enough for game data =). It's hard to see date stamped on the batter, but this battery was manufactured March 2001. Almost ten years old! It's still going strong. Bonus lesson: that SRAM chip is actually a cheap bootleg clone of the HY62256A by Hyundai =P.
Flash
Flash....yes the same as your flash drive! Although MUCH much smaller, this is only 64KB! ROM is on the left, flash chip is on the right. Flash is usually used in games that require a lot of save data. Flash is also slow, so usually games that have it also have the typical "Do not turn off the power" delay message.
EEPROM
This is an [ame="http://en.wikipedia.org/wiki/EEPROM"]EEPROM[/ame] (
Electrically
Erasable
Programmable
Read-
Only
Memory) based saving solution. It seems to be used for games that need even less save data than SRAM. 8KB is not a lot! This memory also has a delay message usually.
(Also, check out the scratches on the connectors! I've played this game a lot ^^.)
FRAM
[ame="http://en.wikipedia.org/wiki/Ferroelectric_RAM"]FRAM (
Ferroelectric
RAM)[/ame] is a relatively new technology that is still only available for small memory sizes. Perfect for embedded systems like GBA save data! Basically, this functions the exact same way as SRAM, except it doesn't require a battery.
Bonus lessons:
SRAM/FRAM cartridges can have save data written to them at any time. Indeed, this is how Fire Emblem games on GBA keep the battle progress, by writing the results of the battle BEFORE it actually takes place. This is also how you get screwed if your character dies, by the time you see your character die, it's too late to stop it, and if you try to do that turn again you just watch him/her die again =P.
SRAM/FRAM games also have a slightly shortened 31rd connector pin. Look above and see for yourself, start counting from the left. This is because SRAM/FRAM data is not protected, and if you remove the cartridge the CPU may go berserk and write into the save data randomly, destroying whatever data is on it. The shortened pin triggers the cartridge interrupt on the GBA (basically saying that the cartridge was removed) before the data lines are disconnected, allowing the game to 'safely' hang up.
And now for two freak cartridges.
Pokemon Sapphire, Flash + Real Time Clock
Wow this one is crowded. What is special about this game is that it keeps time. So, while this game saves into flash memory, it also need a battery to power an RTC and it's crystal oscillator to keep the clock ticking while the game is powered off.
Drill Dozer w/ Rumble
This cartridge uses FRAM. It also has a lot of extra power components to trigger the an actuator for rumble.
______________________________
So that's all about the GBA. Some info is taken from
here. I hope you learned something today =).