200 votes
Accepted

Why does the infamous "ENGAGERIDLEYMOTHERFUCKER" Metroid password break NES emulators?

Let's take a look at the code! A few seconds of Googling led me to a high-quality annotated disassembly by Kent Hansen and Nick Mikstas: https://www.metroid-database.com/source-code/ Whenever the user ...
NobodyNada's user avatar
  • 5,384
84 votes

Could you reverse engineer silicon just by looking at it?

With a powerful enough microscope, you can see each transistor. Reverse-engineering silicon then boils down to carefully removing each layer (ceramic or plastic to expose the chip, then each metal ...
Stephen Kitt's user avatar
77 votes
Accepted

How can tilting a N64 cartridge cause such subtle glitches?

The main point to understand is that the console is limited. RAM on the console itself is faster than memory on the cartridge (and the cartridge memory was usually read only, with a little non ...
Adam Davis's user avatar
60 votes
Accepted

How did Super Mario Bros. 3 create this tunnel vision effect?

No MMC3 tricks are used for this effect; just standard background and sprite manipulation. Tiles that are completely invisible are replaced with a blank tile, while black sprites forming a circle ...
NobodyNada's user avatar
  • 5,384
58 votes
Accepted

Why did Nintendo name its console the "Famicom"?

But why was it given an English name in Japan Foreign Branding is a common marketing strategy to give a product a more distinguished name. Think 'Häagen-Dazs', a fantasy name with some Nordic 'flair' ...
Raffzahn's user avatar
  • 207k
53 votes

Could you reverse engineer silicon just by looking at it?

(More of a memory dump related to Stephen's answer) At a time when ICs were of low complexity (compared today), could you actually see each transistor on the silicon and reverse engineer it? Yes. ...
Raffzahn's user avatar
  • 207k
51 votes

How can tilting a N64 cartridge cause such subtle glitches?

I wouldn't say "It's a very specific and subtle kind of behavior." I really think this is the case of undefined behavior that has been reproduced so many times from N64 launch to now that ...
JAL's user avatar
  • 9,392
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
  • 9,722
41 votes

Why does the original Donkey Kong update the screen in a curtain closing pattern?

This isn't a deliberate animation, it's an accident of the way the screen is being photographed, combined with the fact that a Donkey Kong arcade machine uses a CRT turned on its side. A typical CRT ...
Ken Gober's user avatar
  • 11.4k
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
38 votes
Accepted

Why does the original Donkey Kong update the screen in a curtain closing pattern?

Ken's answer is close but not quite right. On the real arcade hardware the signal sent to the CRT monitor is read directly from RAM as the electron beam scans over the screen. That means that ...
user's user avatar
  • 15.1k
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
36 votes

How is memory allocated in Super Mario World?

Memory is allocated statically in Super Mario World. Every RAM location used is hard-coded into the game, although some are re-used by different parts of the code. A full, annotated, and searchable ...
naught's user avatar
  • 361
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

Why does the infamous "ENGAGERIDLEYMOTHERFUCKER" Metroid password break NES emulators?

Fundamentally these 'passwords' aren't really passwords as such, but map back to a string of bits that control the state of the game - so it's more of a string representation of the current state of ...
Doc's user avatar
  • 451
33 votes
Accepted

Why didn't SNES Doom use mode 7?

Mode 7 is just an image warp — the programmer sets a 2d offset that is applied between each pixel and the next when proceeding in raster order. That allows 2d rotation and scaling to be applied; if ...
Tommy's user avatar
  • 35.5k
32 votes
Accepted

How does the NES Light Gun work?

The Zapper worked by receiving light through the photodiode at the front of the gun in the barrel. mental_floss has a really great description of what happens: When you point at a duck and pull ...
JAL's user avatar
  • 9,392
32 votes
Accepted

Why is a BIOS dump not required to emulate Nintendo 64 games in most modern emulators?

The Nintendo 64 ROM is only 2KB in size and apparently easy to emulate. It seems to only check the validity of the inserted cartridge's ROM and set up a limited environment. Nintendo 64 cartridges ...
Stephen Kitt's user avatar
32 votes

Could you reverse engineer silicon just by looking at it?

It's worth noting what you can see, and what you can't. First, you cannot see any feature that is much smaller than the wavelength of light that you are using. In 1995 I designed a chip for my Master'...
d3jones's user avatar
  • 891
30 votes
Accepted

What was Nintendo's Software Development Environment for NES Games?

This website might help. A guy (Chris Covell) picked up a children's picture book in Japan which shows kids how NES games were made. (Mostly focussing on Super Mario Bros. 3) Chris actually scanned ...
Jordan M. Baron's user avatar
30 votes

How can tilting a N64 cartridge cause such subtle glitches?

This is the pinout of a Nintendo 64 cartridge (from here). The Nintendo 64 used a multiplexed address/data bus with a three-stage access protocol: write the high word of the address you want to ...
Mark's user avatar
  • 8,501
28 votes
Accepted

What was the point of the label on the bottom of the NES?

Any electronic equipment using radio frequencies which is sold in the USA has to be tested to show that it doesn't cause interference to other equipment, and also that it doesn't fail in a dangerous ...
alephzero's user avatar
  • 6,645
25 votes

What was Nintendo's Software Development Environment for NES Games?

I worked with one and it was a pain to use. It was a cartridge made of static ram; the computer would write the contents to the cartridge and you would manually reset the console. it was slow, the ...
Thomas's user avatar
  • 3,792
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
  • 1,909
23 votes
Accepted

Main board of the original Game & Watch (Ball)

I was involved with hardware remakes / clones of a few machines and we did reverse engineer one G&W game; I think it was Green House, if I remember well. The games are build around a custom ASIC ...
Thomas's user avatar
  • 3,792
23 votes

NES cartridge ROM emulation with Arduino or Pi?

As cbmeeks said, you're much better off with a FPGA or CPLD. It's going to be nearly impossible to emulate an NES ROM with a microcontroller. A Raspberry Pi would be fast enough, but not with an ...
NobodyNada's user avatar
  • 5,384
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
  • 27k
22 votes

Why did Nintendo name its console the "Famicom"?

There are several interviews with Masayuki Uemura (the creator of the familiy computer) online that contain a section about the name “family computer”. Many publications seem to be copied from each ...
WimC's user avatar
  • 1,026
21 votes

Can removing a cartridge from an NES (or any other cartridge-based game system) damage the hardware or software?

The NES can be damaged by software, so removing the cartridge at just the wrong timing could theoretically damage the console. The 2CO2 PPU in the NES normally reads the background color from palette ...
NobodyNada's user avatar
  • 5,384

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