I. GBA Overview

Last change: 15/02/2002

1) Introduction

The successor of the GameBoy has a dot screen of 240x160 pixels, being able to show 16 bits coded colored pictures (a set of 32768 colors).

The GameBoy Advance run with a 32 bits ARM7TDMI 16,78 Mhz processor (Risc architecture) This processor allow the use of two kind of instruction: a 32 bits instructions in the ARM mode, and a 16 bits instructions in the THUMB mode. and is also combinated with a graphic processor witch execute the biggest part of 2d operation. The GameBoy Advance contain a second processor (Z80) that maintain the downward compatibility with the old Gameboy / GameBoy Color.

The GBA use severale memories: 96Ko of video ram (adressable etheir in 16 or 32 bits), 1Ko of ram palette (16/32 bits), 1Ko for the sprite properties (16/32 bits), 32ko of 'fast' ram (8/16/32 bits) and 256 ko of external 'slow' ram (8/16/32 bits).

There's a stereo sound generated on 6 channel. The first four channel are the same of the GameBoy, and the two others allow to play a continuous stream of data (like the *.WAV wave file).

Finally we have a directional trigger and 6 buttons (Start, Select, A, B, left and right trigger) and a plug for communication cable.

2) Memory Map of the GBA

Adresse
Description
Size
Bus
0x0E00FFFF

0x0E000000

RAM of the Game Cartridge
(Game Pak RAM)
64 Ko Max
8
0x0DFFFFFF

0x0C000000

Mirror of the Cartridge ROM
(Game ROM Mirror)
8 Mo (32 MB)
8/16/32
0x0BFFFFFF

0x0A000000

Mirror of the Cartridge ROM
(Game ROM Mirror)
8 Mo (32 MB)
8/16/32
0x09FFFFFF

0x08000000

Cartridge ROM
(Game ROM)
8 Mo (32 MB)
8/16/32
0x070003FF

0x07000000

Sprites RAM
(OAM)
1 Ko
16/32
0x06017FFF

0x06000000

Video RAM
(0x6010000 = Start location of sprite)
96 Ko
16/32
0x050003FF
0x05000200
0x05000000
} RAM Palette Sprites
} RAM Palette Background
1 Ko
16/32

 

0x04000000

I/O registers
-
8/16/32
0x03007FFF

0x03000000

Processor Internal RAM
(Work RAM)
32 Ko
8/16/32
0x0203FFFF

0x02000000

Processor External RAM
(External RAM)
256 Ko
8/16/32
0x00003FFF

0x00000000

System ROM (bios)
16 Ko
8/16/32