For better or for worse, a considerable number of the projects we’ve seen here at Hackaday can be accurately summarized as: “Raspberry Pi put into something.” Which is hardly a surprise, the Pi is so tiny that it perfectly lends itself to getting grafted into unsuspecting pieces of consumer tech. But we see far fewer projects that manage to do the same trick with proper x86 PC hardware, but that’s not much of a surprise either given how much larger a motherboard and its components are.
So this PC built into a Super Nintendo case by [NoshBar] is something of a double rarity. Not only does it ditch the plodding Raspberry Pi for a Mini-ITX Intel i5 computer, but it manages to fit it all in so effortlessly that you might think the PAL SNES case was designed by a time traveler for this express purpose. The original power switch and status LED are functional, and you can even pop open the cart slot for some additional airflow.
[NoshBar] started by grinding off all the protruding bits on the inside of the SNES case with a Dremel, and then pushed some bolts through the bottom to serve as mounting posts for the ASUS H110T motherboard. With a low profile Noctua CPU cooler mounted on top, it fits perfectly within the console’s case. There was even enough room inside to add in a modified laptop charger to serve as the power supply.
To round out the build, [NoshBar] managed to get the original power slider on the top of the console to turn the PC on and off by gluing a spring-loaded button onto the side of the CPU cooler. In another fantastic stroke of luck, it lined up almost perfectly with where the power switch was on the original SNES board. Finally, the controller ports have been wired up as USB, complete with an adapter dongle.
[NoshBar] tells us the inspiration for sending this one in was the Xbox-turned-PC we recently covered, which readers might recall fought back quite a bit harder during its conversion.
There are a lot of good reasons to think fondly of the Nintendo GameCube. Metroid Prime and Rogue Leader knocked it out of the park. The Game Boy Player was cool. There’s even something to be said for having a convenient carrying handle on a system designed for couch multiplayer. But if you ask anyone who played Nintendo’s sixth generation console what part they missed the least, it would probably be the controller. With all the visual flair of a Little Tikes playset and ergonomics designed for an octopus, it’s a controller that works well for first-party Nintendo titles and little else.
So it’s probably for the best that these Switch Joy-Cons created by [Madmorda] focus on recreating the aesthetics of the GameCube controller for Nintendo’s latest money-printing machine rather than its feel. With a surprising amount of work required to create them, these definitely count as a labor of love by someone who yearns for the days when gaming was more…cubic.
To start with, nobody makes Joy-Con cases in that signature GameCube purple so [Madmorda] had to paint them herself. The longevity of a painted controller is somewhat debatable, but the finish certainly looks fantastic right now.
For the left analog stick [Madmorda] was able to use the cap from a real GameCube controller, which fit perfectly. Apparently, Nintendo has been pretty happy with their analog stick sizing decisions for the last two decades or so. The right analog stick was another story, however, and she had to cut the shaft down to size with a Dremel to get the cap to fit.
Finally, molds were made of the original face buttons, which were then used to cast new buttons with colored resin to match the GameCube color scheme. Since the original Switch buttons don’t have indented lettering to get picked up by the mold, she had to laser etch them. This little detail goes a long way to selling the overall look.
The final result looks great, and compared to previous attempts we’ve seen to bring some of that early 2000’s Nintendo style to the Switch, this one is certainly less destructive. Check them out in action after the break!
Continue reading “Get Nostalgic with these GameCube Themed Joy-Cons”
Just this summer, the Nintendo Entertainment System had its 35th release anniversary, and even after years of discontinuation, it is still going strong in the hacker community. Exhibit A: [Matthew Earl]. For one of his upcoming projects, [Matthew] needed to get his hands on the background images of the NES classic Super Mario Bros. Instead of just getting some ready-rendered images and stitching them together, he decided to take care of the rendering himself, once he extracts the raw game data.
Since there is no official source code available for Super Mario Bros, [Matthew] used a disassembled version to get started looking for the image data. To avoid reading through thousands of lines of assembly code, and to also see what actually happens during execution, he wrapped the game’s ROM data into py65emu, a Python library emulating the 6502, the CPU that drives the NES. By adding a simple wrapper around the emulator’s memory handler that tracks reads on uninitialized data, [Matthew] managed to find out which parameters he needs to feed to the parser routine in order to get the image tile data. After an excursion into the Picture Processing Unit (PPU) and its memory arrangements, [Matthew] had everything he needed to create the Python script that will render the game background straight from its ROM data.
Even if extracting NES game data is not your thing, the emulator concept [Matthew] uses might be still worth a read. On the other hand, if you want to dig deeper into the NES, you should definitely have a look at emulating an SNES game on a NES, presented on the NES itself.
Many of the games released on the Nintendo 64 have aged remarkably well, in fact a number of them are still considered must-play experiences to this day. But the years have not been so kind to the system’s signature controller. While the N64 arguably defined the console first person shooter (FPS) genre with games like “Goldeneye” and “Perfect Dark”, a modern gamer trying to play these classics with the preposterous combination of analog and digital inputs offered by the N64 controller is unlikely to get very far.
Of course, you could play N64 games in an emulator and use whatever controller you wish. But where’s the challenge in taking the easy way out? [Ryzee119] would much rather take the insanely complex route, and has recently completed work on an add-on board that let’s you use Xbox 360 wireless controllers on Nintendo’s 1996 console. He’s currently prepping schematics and firmware for public release, with the hope that support for additional USB controllers can be added by the community.
Nintendo historians may recall that the N64’s controllers had an expansion port on the bottom where you would connect such accessories as the “Rumble Pak” and “Controller Pak”. The former being an optional force feedback device, and the latter a rather oddly named memory card for early N64 games which didn’t feature cartridge saves. Only “90’s Kids” will recall the struggle of using the “Rumble Pak” when a game required the “Controller Pak” to save progress.
Thankfully [Ryzee119] has solved that problem by adding battery backed storage to his adapter along with some clever code which emulates the “Controller Pak”. Similarly, the “Rumble Pak” is emulated by the Xbox 360 controller’s built-in force feedback and a bit of software trickery. Specific button combinations allow for enabling and disabling the various virtual accessories on the fly.
But the best part of this modification might be how unobtrusive the whole thing is. Not only does it allow you to still use the original controllers and accessories if you wish, but it only requires soldering a handful of wires to the console’s motherboard. Thanks to the surprising amount of dead space inside the system’s case, it’s not even a challenge to fit the board inside. You do need to use the official USB Xbox 360 controller receiver, but even here [Ryzee119] opted to put a USB port on the board so you could just plug the thing in rather than having to cut the connector off and trying to solder it to the board yourself.
It probably won’t come as a surprise that this isn’t the first time [Ryzee119] has fiddled with the internals of a classic Nintendo system. We’ve previously covered his fantastic custom PCB to fit a Raspberry Pi Zero into a GameBoy Advance.
[Thanks to Gartral for the tip.]
Cardboard is one of the easiest ways to build something physical, far easier than the 3D printing and laser cutting we usually write about here. So when Nintendo released their Labo line of cardboard accessories, it doesn’t take a genius to predict the official product would be followed by a ton of user creations. Nintendo were smart enough to provide not only an internet forum for this creativity to gather, they also hold contests to highlight some of the best works.
The most impressive projects in the winner’s circle combined the one-of-a-kind cardboard creations with custom software written using Toy-Con Garage, the visual software development environment built into the Nintendo Switch console. Access to the garage is granted after a user runs through Nintendo Labo’s “Discover” activities, which walk the user behind the scenes of how their purchased Labo accessories work. This learning and discovery process thus also serves as an introductory programming tutorial, teaching its user how to create software to light up their custom cardboard creations.
It’s pretty cool that Nintendo opened up a bit of the mechanism behind Labo activities for users to create their own, but this is only a tiny subset of Nintendo Switch functionality. We have different hacks for different folks. Some of us enjoy reverse engineering details of how those little Joy-Cons work. Others hack up something to avoid a game puzzle that’s more frustrating than fun. And then there are those who are not satisfied until they have broken completely outside the sandbox.
Continue reading “Thinking Inside The (Cardboard) Box With Nintendo Labo Hacks”
It turns out that there were a few challenges to work around and a few new problems to solve, not least of which was mapping VR controllers to control an N64 game in a sensible way. One thing that wasn’t avoidable is that the N64’s rendered world may now pop in 3D, but it still springs forth from a rectangular stage. The N64, after all, is still only rendering a world in a TV-screen-sized portion; anything outside that rectangular window doesn’t really exist, and there’s no way around it as long an emulated N64 is running the show. Still, the result is impressive, and a video demo is embedded below where you can see the effect for yourself.
Continue reading “N64 Emulated in VR Makes Hyrule go 3D”
Originally released on the Nintendo 64 in 2001, Animal Crossing was the first entry into what has become a massively successful franchise. But while the game has appeared on more modern Nintendo consoles, most recently Android and iOS, the version released on the GameCube holds a special place in many fan’s hearts. The GameCube version was the first time those outside of Japan got a taste of the unique community simulation offered by Animal Crossing, and maintains a following nearly 20 years after its release.
[James Chambers] has recently been investigating creating mods for the GameCube version of Animal Crossing, and in the process uncovered some interesting references to a debug mode. That launched a deep dive into the game’s assembly code in an attempt to find what the debug functions did and if they could be enabled without having to patch the game ROM. In the end, he was able to find a push button code that enables debug mode on the retail copy of the game.
[James] starts by using the debugger provided by the Dolphin GameCube emulator to poke around and figure out exactly what flags need to be modified to activate the debug mode. This leads to a few interesting finds, such as being able to pop up a performance monitor graph and some build info. Eventually he finds the proper incantation to bring up a functional debug display in the game, but there was still the mystery of how you do it on the real hardware with a retail copy of the game.
It wouldn’t be unreasonable to think that some special dongle or development version of the GameCube would be required to kick the game into debug mode. But through careful examination of the code path, [James] was able to figure out that hitting a specific combination of buttons on the controller was all that was required to use the debug mode on the stock game. Once the debug mode is started, a controller plugged into the second port allows the user to navigate through options and perform tasks. Not everything is currently understood, but some progress has been made, such as figuring out how to add items to your inventory.
It’s hardly Nintendo’s most popular console, but there’s still a healthy interest in GameCube hacking as the machine approaches its 20th anniversary. We recently saw some impressive work being done to reverse engineer the system’s wireless controllers, though some people are more interested in just cutting the thing in half.
[Thanks to Tim Trzepacz for the tip.]