187 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 ...
user avatar
  • 5,074
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 ...
user avatar
  • 95.7k
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 ...
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 ...
user avatar
  • 5,074
57 votes

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' ...
user avatar
  • 168k
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. ...
user avatar
  • 168k
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 ...
user avatar
  • 9,162
40 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 ...
user avatar
  • 11.3k
37 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 avatar
  • 13.7k
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 ...
user avatar
35 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 ...
user avatar
  • 466
35 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 ...
user avatar
  • 351
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 ...
user avatar
  • 32.4k
33 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 ...
user avatar
  • 431
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 ...
user avatar
  • 9,162
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'...
user avatar
  • 771
31 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 ...
user avatar
  • 95.7k
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 ...
user avatar
  • 8,373
29 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 ...
user avatar
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 ...
user avatar
  • 3,582
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 ...
user avatar
  • 1,770
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 ...
user avatar
  • 3,582
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 ...
user avatar
  • 5,074
22 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 ...
user avatar
  • 6,350
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 ...
user avatar
  • 17.2k
21 votes

Are NES turbo buttons internal to the controller?

In the case of the NES Advantage at least, the Turbo rate was adjustable, by turning the dial at the top of each button. You are right in assuming that the NES does not communicate the start of a ...
user avatar
  • 34.3k
21 votes

Why didn't SNES Doom use mode 7?

Among other reasons: floors and ceilings of different heights would be very difficult due to the way Mode 7 is used to imitate a projective transformed plane. The effect works by setting the rotation, ...
user avatar
  • 9,875
20 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 ...
user avatar
  • 891
19 votes
Accepted

How Did the 10NES lockout chip work?

If you read this, you'll find that the CIC chip is actually a primitive 4-bit CPU with a small bit of ROM. The chip in the NES and the chip in the cartridge attempt to communicate, if expected ...
user avatar
  • 1,039

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