No nonsense guide for patching into a gaming controller

patching-into-a-gaming-controller

Here a straight-forward guide for tapping into the buttons on most gaming controllers. Why do something like this? Well there’s always the goal of conquering Mario through machine learning. But we hope this will further motivate hackers to donate their time and expertise developing specialized controllers for the disabled.

In this example a generic NES knock-off controller gets a breakout header for all of the controls. Upon close inspection of the PCB inside it’s clear that the buttons simply short out a trace to ground. By soldering a jumper between the active trace for each button and a female header the controller can still be used as normal, or can have button presses injected by a microcontroller.

The Arduino seen above simulates button presses by driving a pin low. From here you can develop larger buttons, foot pedals, or maybe even some software commands based on head movement or another adaptive technology.

Continue reading “No nonsense guide for patching into a gaming controller”

The 14th game for the Nintendo Power Pad

Released 25 years ago, the Nintendo Power Pad, a plastic mat that plugged into an NES, saw very limited success despite its prevalence in basements and attics. In total, only six games for the Power Pad were released in North America, and only 13 worldwide. The guys over at cyborgDino thought they should celebrate the sliver anniversary of the Power Pad by creating its 14th game, using an Arduino and a bit of playing around in Unity 3D.

The first order of business was to read the button inputs on the Power Pad. Like all NES peripherals, the Power Pad stores the state of its buttons in a shift register that can be easily read out with an Arduino. With a bit of help from the UnoJoy library, it was a relatively simple matter to make the Power Pad work as intended.

The video game cyborgDino created is called Axis. It’s a bit like a cross between Pong and a tower defense game; plant your feet on the right buttons, and a shield pops up, protecting your square in the middle of the screen from bouncing balls. It’s the 14th game ever created for the Power Pad, so that’s got to count for something.

Video of the game below.

Continue reading “The 14th game for the Nintendo Power Pad”

FPGA plays Mario like a champ

fpga-controls-mario-bros

This isn’t an FPGA emulating Mario Bros., it’s an FPGA playing the game by analyzing the video and sending controller commands. It’s a final project for an engineering course. The ECE5760 Advanced FPGA course over at Cornell University that always provides entertainment for us every time the final projects are due.

Developed by team members [Jeremy Blum], [Jason Wright], and [Sima Mitra], the video parsing is a hack. To get things working they converted the NES’s 240p video signal to VGA. This resulted in a rolling frame show in the demo video. It also messes with the aspect ratio and causes a few other headaches but the FPGA still manages to interpret the image correctly.

Look closely at the screen capture above and you’ll see some stuff that shouldn’t be there. The team developed a set of tests used to determine obstacles in Mario’s way. The red lines signify blocks he will have to jump over. This also works for pits that he needs to avoid, with a different set of tests to detect moving enemies. Once it knows what to do the FPGA emulates the controller signals necessary, pushing them to the vintage gaming console to see him safely to the end of the first level.

We think this is more hard-core than some other autonomous Mario playing hacks just because it patches into the original console hardware instead of using an emulator.

Continue reading “FPGA plays Mario like a champ”

Beautiful Modded NES for the 25th anniversary of Mega Man, plus bonus interview!

Today I had the pleasure of interviewing [PlatinumFungi] about this fantastic NES mod he did. This year is the 25th anniversary of the first Mega Man video game. Unhappy with the current celebratory actions of capcom, [PlatinumFungi] set out to create something he felt was worthy. He managed to pull that off pretty well.

The NES you can see in the video is fantastic looking. It has a beautiful shiny automotive finish, supplied by [Custom NES Guy] and a pixel perfect backlit Mega Man on top. Additional enhancements are stylized decals on the front of the game bay and matching labels on the sides and back. The cartridge is even illuminated while it is in place.

Check out some pictures after the break!

Continue reading “Beautiful Modded NES for the 25th anniversary of Mega Man, plus bonus interview!”

Teaching a computer to play Mario… seemingly through voodoo

computer-learning-mario

Some people know [Tom Murphy] as [Dr. Tom Murphy VII Ph.D.] and this hack makes it obvious that he earned those accolades. He decided to see if he could teach a computer to win at Super Mario Bros. But he went about it in a way that we’d bet is different that 99.9% of readers would first think of. The game doesn’t care about Mario, power-ups, or really even about enemies. It’s simply looking at the metrics which indicate you’re doing well at the game, namely score and world/level.

The link above includes his whitepaper, but we think you’ll want to watch the 16-minute video (after the break) before trying to tackle that. In the clip he explains the process in laymen’s terms which so far is the only part we really understand (hence the reference to voodoo in the title). His program uses heuristics to assemble a set of evolving controller inputs to drive the scores ever higher. In other words, instead of following in the footstep of Minesweeper solvers or Bejeweled Blitz bots which play as a human would by observing the game space, his software plays the game over and over, learning what combinations of controller inputs result in success and which do not. The image to the right is a graph of it’s learning progress. Makes total sense, huh?

Continue reading “Teaching a computer to play Mario… seemingly through voodoo”

Mining bitcoins on a Nintendo

NES

His friends know [gbg] as an aficionado of just about anything with a 6502 processor in it. He’s also interested in bitcoins. A while back, a friend asked if it would be possible to mine bitcoins with an old Nintendo Entertainment System. While this suggestion was made in jest, it’s not one of those ideas anyone can let go of easily. Yes, it is possible to mine bitcoins with an NES, and [gbg] is here to show us how.

Mining bitcoins is simply just performing a SHA256 hash on a random value from the bitcoin network and relaying the result of that calculation back to the Internet. Of course this requires an Internet to NES bridge; [gbg] brought in a Raspberry Pi for this task. There’s the problem of actually getting data into an NES, though, and that’s something only a USB CopyNES can handle. After doing some 32-bit math, the NES sends this out to the Raspberry Pi and onto the bitcoin network.

When you consider that even a high-end gaming computer has little chance of mining a bitcoin in any reasonable amount of time, there’s little chance RetroMiner will ever be able to mine a bitcoin. It’s all random, though, so while it’s possible, we’ll just appreciate the awesome build for now.

NES annoyance timer makes no friends at your work

mario-annoyance-timer

Still trying to solidify that reputation as the office Grinch? This project will let everyone know you’re a complete jerk in no time. It’s called the 8-bit Annoying Person Remover. It detects when someone enters your office at which point it starts to play the Super Mario Bros. theme song while the display counts down 400 seconds. Just like in the game the music gets faster at the end and when it stops they know it’s time to get the heck out.

The hardware inside isn’t too complicated. An Arduino and a Wave shield do most of the work. The song played is stored on an SD card and can easily be changed. There’s a speaker mounted under the top heat vent of the enclosure. The device defaults to displaying the time of day, but monitors a motion sensor on one side to detect when someone comes through the door. This also works when someone leaves, cutting off the music and resetting the display. Don’t miss a video of it in action after the break.

It’s as if this was made specifically for the Comic Book Guy

Continue reading “NES annoyance timer makes no friends at your work”