23 votes
Accepted

How did the Game Boy Advance stretch Game Boy games to widescreen?

Firstly, the stretching isn't done in the vertical direction: Game Boy (and Color) games only used 144 rows of the 160 available on Advance screen, so there'd be black "letterbox" bars at the top and ...
user avatar
  • 7,564
21 votes
Accepted

What causes the glitchy sound when a GBA cartridge is removed?

One does not simply make a hot-swappable cartridge connector. For an electrical connector to handle hot-swapping well, it has to be specifically designed with that in mind. In particular, the ...
user avatar
  • 16.4k
19 votes

Role of the Z80 co-processor in GBA games

None of the GameBoy series machine has a Z80, but instead a Sharp LR35902, which runs a "GBZ80" instruction set, which is if I'm not mistaking similar but incompatible with the genuine Z80, as it ...
user avatar
  • 1,747
19 votes
Accepted

How did Legend of Zelda: Oracle of Seasons/Ages know it was running on a Game Boy Advance?

Probably the easiest way to discover whether a cartridge was started on a GameBoy Advance is to look at the initial register state. According to nitro2k01 at gbdev.gg8.se: cgb_agb_boot.bin - ...
user avatar
  • 16.4k
18 votes

What causes the glitchy sound when a GBA cartridge is removed?

This game seems to be playing PCM audio from memory buffer with DMA. Normally the CPU handles playback of DMA buffers and renders new audio into buffers for playback. When you unplug the game ...
user avatar
  • 16.1k
17 votes

How did the Rush 3D engine in Crazy Taxi: Catch a Ride work?

I don't have knowledge of the Rush 3D engine itself, but I used to work for a company that made software graphics engines, so I can speak in general terms about how they're likely to work. The GBA has ...
user avatar
  • 16k
16 votes
Accepted

What did the Supercard "patch" program actually do to GBA and NDS ROMs to make them playable?

The GBA's memory controller can be configured using WAITCNT, an MMIO port at 0x04000204, to use slow or fast timing when accessing the Game Pak slot. The BIOS boots up in slow mode, in case Nintendo ...
user avatar
14 votes
Accepted

Is it possible to run Linux on a GBA SP?

Not Linux, but I know you can run UNIX 5 with a tool called gbaunix. You can read about the process in Amit Singh's paper on kernelthread and you can browse through the source on my unofficial fork ...
user avatar
  • 9,162
14 votes
Accepted

Role of the Z80 co-processor in GBA games

The Wikipedia comment is misleading. The Game Boy CPU has several components in one chip, including the Z80-alike CPU core and a sound generator among others. These components may all be in the same ...
user avatar
11 votes
Accepted

Did GBA execute code directly from ROM, or load it into memory?

It depends on how the game (or the program, if not running a game) is programmed. It does not depend on the system, but on where the memory where program is executed is physically located. If a ...
user avatar
  • 1,747
10 votes

Is it possible to run Linux on a GBA SP?

Linux itself will not run on the GBA SP. The reason for this is that the CPUs (one ARM7TDMI and one Z80) do not have a way to protect and manage memory. The component to do that is the MMU, which ...
user avatar
  • 33.6k
7 votes

Role of the Z80 co-processor in GBA games

I developed few game on the GBA back in the days and I remember that I looked into using the Z80 but found nothing in the official documentation. Even if possible, it is an unsupported feature and ...
user avatar
5 votes

What causes the glitchy sound when a GBA cartridge is removed?

The reason that particular sound is generated has already been explained well by other answers, so I'll try to expand on the specific reasons for the second part of your question. How come Nintendo ...
user avatar
  • 1,771
5 votes

Is it possible to run Linux on a GBA SP?

Thanks to this Slashdot article, I also found a guide from 2004 with instructions on how to port Microcontroller Linux (uClinux) to the GBA. The main site is long dead, but I found a mirror via the ...
user avatar
  • 9,162
5 votes

Is there way to save the save state?

I would say no. I've never heard of anything like that ever. That would require dumping all of the memory of the actual Gameboy and the state of CPU, and then reading that information on startup. ...
user avatar
  • 2,713
2 votes

What did the Supercard "patch" program actually do to GBA and NDS ROMs to make them playable?

I don't know if this applies to this card in particular, but in all likelihood, one of the things the patch program does is to patch in custom save game functionality so that the ROMs can write to the ...
user avatar
  • 1,682
2 votes
Accepted

GBA reading 16-bit values (or instructions) from 32-bit bus

The GBA has various memory sections (e.g. IWRAM, EWRAM, ROM, etc), each with a bus width of either 16 bits or 32 bits. Of these only IWRAM (Internal Work RAM) is 32 bit wide. It's located on-chip, ...
user avatar
  • 166k
1 vote

Did the RTC in certain cartridges get power over the GBA bus?

To answer this with absolute certainty, you'd have to examine each cartridge on its own, particularly those that weren't made by Nintendo. I'm not sure anyone has ever done that, but people have ...
user avatar
  • 7,799

Only top scored, non community-wiki answers of a minimum length are eligible