63 votes
Accepted

Is it possible to know which lines in the Gameboy Color cartridge connection is missing by looking at the glitched Nintendo logo?

Yes, it is possible to determine the problem from the bit pattern. Sometimes it is bit 5 and sometimes it is bit 4. It seems that the problem never happens if both bits are equal, and the problem ...
Justme's user avatar
  • 31.7k
50 votes

Why did the Nintendo GameBoy Color make the name of any game to have a specific checksum?

The GameBoy Color has predefined colour palettes for a number of black-and-white GameBoy games. The title checksum is used to see if the current game is one of those, and if so, select the right ...
Michael Graf's user avatar
  • 10.1k
41 votes
Accepted

Why did the Nintendo GameBoy Color make the name of any game to have a specific checksum?

What is the purpose the checksum feature? To provide limited colorization to a selection of legacy, Nintendo-published games, as well as show the Nintendo logo for two specific games, explained later. ...
nitro2k01's user avatar
  • 706
37 votes
Accepted

GameBoy Color games do not save any more

Gameboy games use a CR2025 battery which over the years eventually dies stopping games from saving and causing previously saved games to disappear. Note however while the game is powered you can still ...
Loktar's user avatar
  • 486
37 votes
Accepted

Why does the GameBoy Pocket produce a blue line on power off?

The gameboy has a "normally white" LCD. If the pixels are uncharged, the display is bright. The more you charge the pixels, the darker they get. Interestingly, this effect works with either ...
Michael Karcher's user avatar
36 votes

Why do Game Boy Colors not want nickel-cadmium batteries?

I suspect more "don't disappoint the users" than "harm to the device". From the Wikipedia AA article, not only is the nominal voltage lower (1.2V vs. 1.5V for both alkaline and ...
manassehkatz-Moving 2 Codidact's user avatar
35 votes

Did the Super Game Boy (1) run 2.5% or 4% faster than a Game Boy?

For Gameboy clocking 3 'generations' need to be seen All 'classic' Gameboy, that is the original all the way including micro run (the 8 bit CPU) from the same 4.194 MHz MHz crystal, divided by two, ...
Raffzahn's user avatar
  • 223k
35 votes
Accepted

Why do Game Boy games have explicit save functions, instead of using battery-backed non-volatile cartridge SRAM to store the game state?

Game Boy games do not always need a manual save operation. There's no hardware reason that would prevent Game Boy games from saving in the way you describe. For the Game Boy hardware, RAM present on ...
knol's user avatar
  • 11.9k
34 votes

Why would poking an inserted Game Boy cartridge while powered on cause a game/device to hang?

Surely data is not constantly transferred to and from the cartridge? Surely it is. That's the huge benefit of cartridges. Only when loading a new level or starting the game and things like that? ...
hobbs's user avatar
  • 5,093
33 votes
Accepted

What does a Nintendo Game Boy do when turned on without a game cartridge inserted?

Here's a selection of Game Boys I've dug out from my drawer: The original Game Boy displays a solid black rectangle (and a ®) which scroll down from the top of the screen, in the same way that the ...
Kaz's user avatar
  • 8,086
32 votes

Why do Game Boy games have explicit save functions, instead of using battery-backed non-volatile cartridge SRAM to store the game state?

Microprocessors have a minimum operating voltage spec, but that generally doesn't mark a threshold where they stop executing code. Instead, it specifies level below which they aren't guaranteed to ...
supercat's user avatar
  • 36.2k
29 votes
Accepted

How does the Gameboy's memory bank switching work?

ROM and RAM bank switching is controlled by a memory bank controller present on the cartridge. By writing values to areas of read-only memory, a game or program is able to specify which ROM banks to ...
b13rg's user avatar
  • 406
27 votes
Accepted

How does the Gameboy Link Cable work?

You'll need to manipulate the memory address 0xFF02, and shift the data (MSB first) into 0xFF01, as stated below. If there is no cable - ergo, no gameboy connected - then 0xFF is received, in 0xFF01. ...
Greenonline's user avatar
  • 4,356
25 votes

In Tetris on Game Boy, does the speed increase depend on time or on the number of points?

Neither. The level determines how fast the pieces drop. At level 9 a piece drops (assuming you don't press down) 1 row every 11 frames. So at the Gameboy's framerate of 59.73fps that means it drops at ...
David's user avatar
  • 2,111
24 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 ...
Kaz's user avatar
  • 8,086
24 votes

Why did Pokémon Red have so many overflow bugs?

Overflow doesn't mean what you think. That flag exposes the internal ALU carry from bit 6 -> bit 7. It's needed when you are handling the most significant byte of a 2-complement number, because you ...
Janka's user avatar
  • 2,162
24 votes

Why did Pokémon Red have so many overflow bugs?

I cannot speak about Pokémon in particular, but as a programmer for ~30 years, I'll answer thus: either laziness, incorrect assumption, or surprise. Laziness After an operation that overflows, you ...
John Burger's user avatar
  • 1,335
24 votes
Accepted

Is the Game Boy Sharp LR35902 object-compatible with the 8080/Z-80?

However, looking at some of the opcodes they don't seem compatible. There's your answer. The LR35902, the Z80 and the 8080 really are different CPUs. They are similar in many ways, such as the ...
Omar and Lorraine's user avatar
22 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 - ...
user3840170's user avatar
  • 23.1k
22 votes

Why do Game Boy Colors not want nickel-cadmium batteries?

Two simple reasons. Different battery chemistries have different voltage and safety. Standard alkaline batteries are nominally rated for 1.5V, but they can have more than 1.6V when brand new and are ...
Justme's user avatar
  • 31.7k
21 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 ...
Bregalad's user avatar
  • 1,866
20 votes

What does a Nintendo Game Boy do when turned on without a game cartridge inserted?

To complement the previous answer on why this happens, the Game Boy contains a very small ROM that is executed by the CPU before running the cartridge. One of its routines include checking if the ...
Rodrigo's user avatar
  • 301
20 votes
Accepted

On the LR35902, what does the assembly 'LD (HL-),A' do?

I'm working on implementing the instructions of the z80 chip inside a gameboy for an emulator. Well, I guess that's the most important point here: The Gameboy doesn't feature a Z80, but an ...
Raffzahn's user avatar
  • 223k
19 votes

On a Gameboy, what happens when attempting to read/write external RAM while RAM is disabled?

Technically, the behaviour is what we call "undefined,"* meaning you can't know what will happen and the system is allowed to do anything it wants in response, up to and including launching a nuclear ...
cjs's user avatar
  • 25.9k
19 votes

How can a Game Boy game "glitch-inherit" the music from a different game like this?

I don't know if this is correct, but it seems to fit. The SNES sound chip is a full processor. It can run its own program and play sounds independently of the main processor. It is also possible for ...
RETRAC's user avatar
  • 13.7k
19 votes

Does Game Boy Color have *perfect* simulation of original Game Boy games?

The Game Boy Color does not 'simulate' anything (*1), nor does it execute an emulation. It is simply an upward compatible and enhanced Game Boy design. The Game Boy Color is a Game Boy in all details, ...
Raffzahn's user avatar
  • 223k
18 votes
Accepted

Is there an equivalent of "#pragma once" in RGBASM (Gameboy DMG assembly language)?

Assembly language is typically not providing any safety nets or harnesses - so, in general, the answer would be "no". Assembly language is also not in any way standardized, especially in the ...
tofro's user avatar
  • 35k
17 votes

GameBoy Color games do not save any more

Gameboy games use CR2025 battery, which will die and take all the data with it: It's lost for good. Saved games back in those days were preserved through the use of a battery right in the game pack,...
Anthony Pham's user avatar
  • 2,464
17 votes
Accepted

How does the RST operation of GameBoy (SHARP LR35902) work?

The documentation is correct. Tetris does not use the RST 38 instruction (restart vector $38 is a custom vector, not tied to any Game Boy hardware interrupt), so the emulator I assume you're ...
tobiasvl's user avatar
  • 1,489
16 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 ...
raisin-wrangler's user avatar

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