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 ...
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. ...
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 ...
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 ...
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 ...
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, ...
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 ...
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? ...
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 ...
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 ...
28
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 ...
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.
...
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 ...
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 ...
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 ...
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 ...
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 - ...
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 ...
21
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 ...
20
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 ...
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 ...
19
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 ...
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 ...
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 ...
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, ...
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 ...
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,...
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 ...
16
votes
Accepted
Game Boy DMG to VGA
A direct connection is not going to work - The Gameboy's pixel clock is much too low to drive a VGA screen:
GameBoy
VGA
Pixel clock
4 MHz
25 MHz
V-Sync
60 Hz
70 Hz
H-Sync
9 kHz
31 kHz
So, in a ...
16
votes
Why do sprites lag behind a scrolling map in first-generation Pokémon games?
Lacking meaningful research avenues, I started surveying YouTube videos, and I think I managed to mine some insights even from that scant evidence. Here is what I found out:
The issue is apparently ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
game-boy × 62assembly × 10
game-cartridge × 10
nintendo × 9
8080 × 8
emulation × 6
game-boy-advance × 5
hardware × 4
memory × 4
rom × 4
programming × 3
graphics × 3
gaming × 3
maintenance × 3
lcd-display × 3
z80 × 2
software × 2
memory-layout × 2
power × 2
snes × 2
bugs × 2
battery × 2
history × 1
apple-macintosh × 1
nes × 1