The Hoick

NES Controller – Classic Fun!

The History

According to the historical record, the D-pad was first introduced with the Game and Watch version of Donkey Kong. If you’re not familiar with the Game & Watch devices, they are small handheld games with a small LCD screen.

Not sure if I ever had a real Game & Watch, but we did have a couple Tiger Handheld games that were similar. And cheaper!

Lance Barr is credited with designing the grey and black NES controller. He is also behind the design of the Wiimote. That’s some pretty good controller wizardry.

According to LinkedIn he’s a/the Design & Brand Director at Nintendo of America. Must be nice to have that kind of job security!

The controllers for the Japanese Famicom, which came out before the NES, were hard wired into console itself. The thinking is that living rooms are a lot smaller in Japan then the U.S., but doesn’t seem like they’d be that much smaller. My thought is that in Japan playing video games is different. Maybe it’s simply taken more seriously… at least in the mid 80s.

Only controller 1 on the Famicom and a Start and Select button. Controller 2 came with a volume control and microphone. Each controller had the D-pad and A and B buttons though.

My History With The NES

The year was probably the fall of 1986 and the first time I played an NES was at a neighbor’s house. This particular neighbor was at least five years older than I was, and I was in awe of the whole thing. The colors, the sound, the fact that you could move the Mario character around the screen.

Awesome, just awesome!

I remember getting killed again and again by that first goomba. I know it’s super simple, but to a five (maybe six) year old it was a major accomplishment to finally jump on, or over, that first enemy.

Years later I experienced my own son getting wiped out by that first goomba too. I’m pretty sure he mastered the whole jumping thing in a lot less lives than I did.

That was my first experience with the NES. I may have seen an arcade game in a restaurant before that, but they didn’t make an impression the same way the NES did.

The OG NES – image from Wikipedia

The OG Famicom – image from Wikipedia

How It Works – Clock, Latch, and Data

Unlike the earlier Atari style controller, the NES controller contains a 4021 shift register inside it. Each of the buttons and D-pad are connected to pins on the shift register. The shift register is connected to the NES by the Clock, Latch, and Data lines.

According to The 8-bit Guy’s great video when you push a button on the controller it will change the voltage on the input lines connecting the buttons to the shift register.

I attempted to test this out using a controller I picked up from eBay, a bench power supply, and a multi-meter. The problem, I think, is that the the pulses on the Latch line are so fast that an oscilloscope is needed to view them.

The Shift register

A shift register is a bunch of flip flops connected together. The output of one if the input for another (if I understand this correctly). A flip flop is a circuit that has two stable states.

Flip flops are the basic element in sequential logic. Sequential logic is where the output doesn’t depend on the current input, but depends on what has happened to past inputs as well as the current input.

It all adds up to digital electronics, and that’s cool!

While attempting my multi-meter science experiment, I came across this great video by David Nunez about how the NES controller works. This is a great video and worth the time.

Getting back to how the controller works, once a button is pushed the data is sent to the shift register which ignores it until the NES sends a pulse on the Latch line. The shift register than captures the state of the input lines and places them on the Data line (in a sort of buffer). The NES then sends a pulse on the Clock line causing the shift register to shift the bits over by one. The clock line is pulsed until each of the eight bits is read via the latch line.

The NES now knows the state of the controller and will then further process that state. Usually the game ROM will handle this by maybe making a character on the screen jump, fire an arm cannon, etc.

NES Controller Restore

I picked up an original Nintendo controller that was in rough shape, but on the upside it was super cheap. It was a little touch to take apart due to some rusty screws and the cord took about 5 minutes with a damp cloth before it was clean. The front and back went in the sink with some soapy water for an hour followed by some scrubbing with an old tooth brush.

I tried out the retro-bright sun trick for a few hours and the color is definitely a few shades lighter. I don’t mind the yellowing so I’ll probably leave it at that.

Once everything was back together the controller works fine. The A button doesn’t always respond which isn’t good. Some new silicone parts will be needed, but other than that things are in working order.

The front before cleaning.

The back before cleaning.

A quick view of the inside.

Front after cleaning.

Back after cleaning.

Modern Versions

NES Replacement

The great thing about more and more people getting into retro systems is that there are now a plethora of new controllers available to buy for very cheap. Usually somewhere between $5 – $10 can get you one that will work great.

I recently picked up a NES controller by Retrobit for around $10 and it works great. There are a couple of differences you’ll notice right off the bat. The A and B buttons are staggered the A button is slightly above the B button. Also, the Start and Select buttons are above the Retrobit logo which differs from the classic controller.

The buttons are made of a different type of plastic then the original as well. I don’t think it’s a problem, but the feel of them is quite different. Not sure how to find out what type it is, but it’d be interesting to find out.

The insides are higher quality than other cheap controller replacements. Though the “chip” is a glop-top, or chip-on-board, configuration. The assumption is that it’s the same shift register used in the physical chip.

Front of the Retrobit NES Controller.

Back of the Retrobit NES Controller.

Inside the Retrobit NES controller.

Close up of the Retrobit board.

NES USB Controller For The PC

There are high quality NES style controllers that you can connect to a computer via USB. However this one was very cheap and consequently didn’t last very long at all.

Using a USB NES controller on a computer is a lot of fun, I highly recommend it. It’s great for NES, Famicom, and Sega Master System emulators. It’ll probably work great in a Turbo Grafx 16/PC Engine emulator as well… I haven’t made the time to try it out yet, sigh.

Back and front taken apart of the iNext.

Super small board… not surprising the qualit isn’t there.

The iNext controller might not be worth the money, but I do recommend the iNNext SNES controller. It’s works on Windows as well as Linux (and probably Mac too).

This controller also works with the C64 Mini and was recommended by the Facebook Group. So ya, it also works great on the C64 Mini.

I have a plan for some additional projects involving the NES and controllers, so until next time.