Hackaday Prize 2022: An Eastern Bloc NES Clone

If Nintendo is known for anything outside of their characters and admittedly top-notch video games, it’s being merciless to fans when it comes to using their intellectual property. They take legal action against people just for showing non-Nintendo hardware emulating games of theirs, and have even attempted to shut down the competitive scene for games like Super Smash Bros. To get away from the prying eyes of the Nintendo legal team extreme measures need to be taken — like building your Nintendo console clone behind the Iron Curtain.

[Marek Więcek] grew up in just such a place, so the only way to play Famicom (a.k.a NES) games was to use a clone system like this one circulating in the Eastern Bloc at the time called the Pegasus which could get the job done with some tinkering. [Marek] recently came across CPU and GPU chips from this clone console and got to work building his own. Using perf board and wire he was able to test the chips and confirm they functioned properly, but had a problem with the video memory that took him a while to track down and fix.

After that, he has essentially a fully-functional Famicom that can play any cartridge around. While we hope that living in Eastern Europe still puts him far enough away to avoid getting hassled by Nintendo, we can never be too sure. Unless, of course, you use this device which lets you emulate SNES games legally.

Continue reading “Hackaday Prize 2022: An Eastern Bloc NES Clone”

Game Boy Becomes Super Game Boy With A Pair Of Pis

For the Nintendo aficionados of the 90s, the Super Game Boy was a must-have cartridge for the Super Nintendo which allowed gamers to play Game Boy games on your TV. Not only did it allow four-color dot-matrix gaming on the big screen, but it let you play those favorite Game Boy titles without spending a fortune on AA batteries. While later handhelds like the PSP or even Nintendo Switch are able to output video directly to TVs without issue, the original Game Boy needed processing help from an SNES or, as [Andy West] shows us, it can also get that help from a modern microcontroller.

Testing the design before installing it in the NES case.

The extra processing power in this case comes from a Raspberry Pi Pico which is small enough to easily fit inside of a donor NES case and also powerful enough to handle the VGA directly. For video data input, the Pico is connected to the video pins on the Game Boy’s main board through a level shifter. The main board is also connected to a second Pico which handles the controller input from an NES controller. Some fancy conversion needed to be done at this point because although the controller layouts are very similar, they are handles by the respective consoles completely differently.

With all of the technical work largely out of the way, [Andy] was able to put the finishing touches on the build. These included making sure the power buttons, status LEDs, and reset button all functioned, and restoring the NES case complete with some custom “Game Guy” graphics to match the original design of the Game Boy. We commend the use of original Game Boy hardware in this build as well, which even made it possible for [Andy] and his wife to play a head-to-head game of Dr. Mario through a link cable with another Game Boy. If you’re looking for a simpler way of playing on original hardware without burning a hole in your wallet buying AA batteries, take a look at this Game Boy restoration which uses a Lithium battery instead.

Continue reading “Game Boy Becomes Super Game Boy With A Pair Of Pis”

Hacked Punch-Out Controlled With Actual Punches

In a slightly safer departure away from jetpack roller-skating and flinging around bolts of lightning, [Ian Charnas] has been hacking retro video games. After a lot of hard work [Ian] has managed to add pose estimation to control the character in the NES boxing game “Punch-Out.” Surely he can’t get hurt doing that? No, but since it wasn’t fair to hurt the poor suffering characters, without taking any damage himself, he added electric-shock feedback to give the game a bit more, ahem, punch. See, you can get hurt playing video games!

By starting with Google MoveNet, which is a pre-baked skeletal tracking model which can run in a browser using TensorFlowJS, he defined some simple heuristics for the various boxing moves usually performed with the game controller. Next, he needed to get the game. Being a all-round good guy, [Ian] bought an original copy of the game cartridge to obtain the license, then using the USB CopyNES from RetroUSB, dumped out the game binary for the next step.

Emulation of the NES hardware was chosen, taken care of by FCEUX, in order to run the game and the posture model on the same machine. This simplified the control of the game, since it would be somewhat more work to have it run on the original NES. By using emscripten, FCEUX was cross-compiled to WebAssembly, and so both the game and control side are both in the land of JavaScript. To be honest, after playing the game a little, [Ian] found it far too fast to be playable with posture control, as opposed to much faster button pressing, so some game hacking was required. Emulation made this much easier.

It took [Ian] around two months of disassembling the game binary, and figuring out the game logic around the characters in order to slow them down enough to make it playable, but he did manage it. You can be the judge, since he bought a bunch more cartridges to unlock more license copies, you can play it too. Just don’t add the electric-shock part, nobody needs to be administered electric shock therapy from a two inch high bright orange Mike Tyson!

Continue reading “Hacked Punch-Out Controlled With Actual Punches”

Google Maps, Now On The NES

Many years ago, Google created one of its famous April Fools jokes suggesting it would make an 8-bit version of Google Maps for the original Nintendo Entertainment System. [ciciplusplus] decided it needed to become a reality, however, and set to work. (Video, embedded below.)

It’s a suitably blocky, low-resolution implementation, but it nevertheless is a mapping app running on an NES. Zooming in and out is via the A and B buttons, while the D-pad is used to scroll. Country and city labels are rendered on the map in the relevant areas in a charming old-school font.

The project uses a Raspberry Pi 3A+ and a Cypress Semiconductor FX2LP microcontroller, which fits inside a NES cartridge. It works the same way as the earlier NES Doom project which uses the Raspberry Pi to feed data to the NES’s Picture Processing Unit. It’s achieved with a simple bit of code burned on a ROM inside the cartridge, which boots up the NES and primes it to receive data from the Raspberry Pi via the FX2LP.

In current form, it’s not capable of doing much more than allowing the user to scroll around and zoom in on parts of the map. We’d love to see a fully-fledged version that could deliver driving directions or similar, however. If you end up achieving such a feat, be sure to let us know. Continue reading “Google Maps, Now On The NES”

Thrashed, Damaged NES Controller Gets Brought Back To Life

Electronics might as well be a magical black box to some people. Where some would see a broken NES controller destined for the bin, [Taylor] saw the opportunity for a repair. Thus, the damaged hardware was brought back into useful service.

The controller was bought as part of a job lot, and was heavily damaged when it entered [Taylor]’s ownership. Nintendo built its hardware tough in those days, but the controller had nevertheless been smashed apart, with the case cracked and split and the PCB itself snapped in two.

For someone with basic electronics skills, though, repair was simple. The broken PCB was glued back together with epoxy. The broken traces had solder mask scraped back so that jumper wires could bridge the damaged area and return the circuit to functionality.

From there, it was a simple matter of 3D printing a new case, and the controller was back in service. The case in question was designed by [Alexander Myrman], and has a neat little inset Mario design that’s made visible by paint-filling the inlay.

While it was an easy fix, to the uninitiated in the electronic arts, it might as well be magic. It pays to remember that there are always new people joining the electronics hobby, and projects like these are a great way to learn. It’s also important to note that bringing back old retro hardware is often of great value, as in many cases, they’re not making any more! We see some great restorations around these parts, too. Video after the break.

Continue reading “Thrashed, Damaged NES Controller Gets Brought Back To Life”

Making A Left-Handed NES Controller

The controller for the original Nintendo Entertainment System is a classic, but perhaps not best known for its adherence to good ergonomic principles. Regardless, it can grow awkward to use for long stretches of time. To help alleviate this, [Taylor] whipped up an easy way to convert a NES controller to left-handed operation.

The mod board in question, installed on a NES controller PCB.

The crux of the hack is simple, with the controller’s buttons swapped left-to-right to enable the controller to be flipped upside down. In this orientation, the D-pad is used by the right hand and the action buttons by the left–the opposite of the usual way. Thus, left and right on the D-pad must be switched, as well as A and B, so all the controls are otherwise in a logical layout.

This is achieved through the use of a little mod board of [Taylor]’s own design. The original HD14021BP chip is desoldered from the controller’s PCB, and installed in the mod board instead. The modboard can then be soldered back into the controller, rerouting the traces to swap the buttons. There’s also a version that [Taylor] designed that can flip between right-handed and left-handed operation thanks to some onboard DIP switches.

It’s a tidy hack that could save the thumbs of some dedicated Tetris players. Alternatively, you can always make your own NES controller from scratch. Video after the break.

Continue reading “Making A Left-Handed NES Controller”

Mega Man 4 Free of Charge ROM Hack Pexels Anete Lusina

Mega Man Hack Drops Charge Shot, Adds Classic Style

When it comes to the six original Mega Man games there is a clear dividing line between the first three and the last. Mega Man 4 introduced the charging shot mechanic that allowed players to hold down the fire button in order to power-up a single blast from Mega Man’s arm cannon. The aptly named, “Mega Man 4: Free of Charge” ROM hack by [Peter] seeks to bring cohesion with the first trilogy of Mega Man games by removing the charge shot mechanic completely. To compensate for the change, enemy health bars were also adjusted so that enemies aren’t as bullet-spongy.

The Mega Man 4: Free of Charge download comes as an IPS patch file. There are free utilities out there like Floating IPS that can apply the patch file to a clean dump of a NES cartridge. This ROM hack is playable on original Nintendo Entertainment System hardware via a flashcart device, or it can be played by any common NES emulator like FCEUX or Nestopia.

One of the most annoying parts of Mega Man 4 (minus the difficulty) was the constant whir of the charge shot drowning out the brilliant soundtrack. With a patch like [Peter]’s this is no longer a going concern, and players are able to give their thumbs a bit of a break by not needing to continually hold down fire throughout a run. All welcomed changes aside, it still won’t change the fact that the Japanese TV commercial for the game is cooler than the print ads in the US.

Continue reading “Mega Man Hack Drops Charge Shot, Adds Classic Style”