If you liked playing Super Mario Bros. 35, the unique multiplayer battle royale Mario game that Nintendo released last year on the Switch to celebrate 35 years since the original NES version of Super Mario Bros, then it’s likely that you have been disappointed since April. The gaming giant ended support and removed the game’s servers once their 35 year celebrations were over, leaving the game’s players hanging. Happily there’s a solution, because [Kinnay] has presented a reverse-engineered Nintendo game server replacement along with a game patch, that should keep gamers in multi-Mario fun forever.
While it’s a boon for fans of this particular game, the real value here is in introducing us to the reverse engineering work on those Nintendo servers. We learn about their various foibles over several generations of console, and perhaps most importantly we learn something of their inner workings.
The rumor mill has recently been buzzing about Nintendo’s plans to introduce a new version of their extremely popular Switch console in time for the holidays. A faster CPU, more RAM, and an improved OLED display are all pretty much a given, as you’d expect for a mid-generation refresh. Those upgraded specifications will almost certainly come with an inflated price tag as well, but given the incredible demand for the current Switch, a $50 or even $100 bump is unlikely to dissuade many prospective buyers.
But according to a report from Bloomberg, the new Switch might have a bit more going on under the hood than you’d expect from the technologically conservative Nintendo. Their sources claim the new system will utilize an NVIDIA chipset capable of Deep Learning Super Sampling (DLSS), a feature which is currently only available on high-end GeForce RTX 20 and GeForce RTX 30 series GPUs. The technology, which has already been employed by several notable PC games over the last few years, uses machine learning to upscale rendered images in real-time. So rather than tasking the GPU with producing a native 4K image, the engine can render the game at a lower resolution and have DLSS make up the difference.
The implications of this technology, especially on computationally limited devices, is immense. For the Switch, which doubles as a battery powered handheld when removed from its dock, the use of DLSS could allow it to produce visuals similar to the far larger and more expensive Xbox and PlayStation systems it’s in competition with. If Nintendo and NVIDIA can prove DLSS to be viable on something as small as the Switch, we’ll likely see the technology come to future smartphones and tablets to make up for their relatively limited GPUs.
But why stop there? If artificial intelligence systems like DLSS can scale up a video game, it stands to reason the same techniques could be applied to other forms of content. Rather than saturating your Internet connection with a 16K video stream, will TVs of the future simply make the best of what they have using a machine learning algorithm trained on popular shows and movies?
The Nintendo Switch has been a hugely successful console for the century-old former playing card manufacturer. At least part of that success has come from its portability, of which [Michael Pick] has probably lost a bit with his 65-pound giant Nintendo Switch built for St. Jude’s Children’s Hospital. (Video, embedded below.) What he’s lost in portability has been more than made up in coolness-factor, though, and we’re sure the kids will appreciate that they can still play the monster gaming machine.
From its plywood body to the 3D-printed buttons, the supersized build looks solid. Docked inside the left Joy-Con is the actual console powering its big brother. Perhaps the biggest surprise, however, is that tiny (well, normal-sized) Joy-Cons are also hidden inside. These are manipulated via servos for the buttons and a direct pass-through setup for the joysticks to control games on the Switch.
While the Joy-Cons are unmodified and completely removable, [Michael] does recognize this isn’t necessarily the ideal solution. But he was certain it was a hack he could make work in the time he had, so he went for it. He’s looked into the controller emulation possible with Teensys and would probably use that solution for any giant Switch projects in the future. Of course, with this build, players can still pair regular Joy-Cons and pro controllers for more practical gaming.
Most Nintendo mods we see attempt to make the console smaller, not larger, so this is an eye-catching change of pace. Unfortunately, we don’t get to see the colossal console in action after it was installed, only some stills of hospital staff wheeling it in the front doors. But we can imagine that the children’s smiles are at least as big as ours were when we saw it.
We love seeing Linux run on basically anything with a processor. It’s a classic hack at this point. Nintendo has traditionally kept its consoles fairly locked down, though, even in the face of some truly impressive efforts; so it’s always a treat to see the open-source OS run relatively smoothly on the console. This Ubuntu install is based on NVIDIA’s Linux for Tegra (L4T) package, which affords some performance gains over Android installations on the same hardware. As we’ve seen with those Android hacks, however, this software mod also makes use of the Switchroot project and, of course, it only works with specific, unpatched hardware. But if you’ve won the serial number lottery and you’re willing to risk your beloved console, [LOE TECH] also has a video detailing the process he used to get Ubuntu up and running.
Check out the video below for a medley of Gamecube game test runs. Some appear to run great, and others, well… not so much. But we truly appreciate how he doesn’t edit out the games that stutter and lag. This way, we get a more realistic, more comprehensive overview of unofficial emulation performance on the Switch. Plus, it’s almost fun to watch racing games go by in slow motion; almost, that is, if we couldn’t empathize with how frustrating it must have been to play.
[Facelesstech] programmed an Arduino Pro Micro to fake controller button presses. It starts with a couple of presses to identify itself to the Switch, before generating an endless stream of button presses that automatically catch every shooting star. Hooking it up is easy—an on-the-go adapter allows the Switch’s USB-C port to connect directly to the Arduino’s Micro-USB port, even supplying power!
[Facelesstech] also designed a compact 3D-printed case that packages up the Arduino Pro Micro along with an ISP header for easy updating. The case even lets the Arduino’s power LED shine through so you know that it’s working!
If you, too, need to automate video game button-pushing, [Facelesstech] has kindly uploaded the source code and 3D designs for you to try. If you’d prefer something a little more low-tech, perhaps you might try a mechanical button pusher.
Press button, wait, press button again, repeat. There must be a better way! If that kind of interaction drives you nuts, you’ll probably appreciate [Tommy]’s buttonpusher, which has only one job: automate away some of the more boring parts of Nintendo’s Animal Crossing. On one hand the job the device does is very simple: press a button on the Nintendo joy-con in a preprogrammed pattern. There’s no feedback loop, it just dumbly presses and waits. But there are still quite a few interesting bits to this build.
For one thing, [Tommy] discovered that the little 9g RC servo can reliably exert enough force to press the button on the joy-con with the right adapter. He had assumed the servo would be too weak to do the job without a greater mechanical advantage, but a simple hammer-style actuator that attaches to the servo horn easily does the job. Well, it does as long as the servo and joy-con are held rigidly; his first version allowed a little too much wiggle in how well the parts were held, and button presses didn’t quite register. With a 3D-printed fixture to rigidly mount both the servo and the joy-con, things were fine.
In the process of making buttonpusher, which uses CircuitPython, [Tommy] created a tool to automate away another pesky task he was running into: circuitpython_tools was created to automatically watch for code changes, convert the .py files into (smaller) MicroPython bytecode .mpy files, then automatically deploy to the board. This saved [Tommy] a lot of time and hassle during development, but it was only necessary because he quickly ran out of memory on his M0 Metro Express board, and couldn’t fit his code in any other way.
Still, it’s a good example of how one project can sometimes spawn others, and lead to all kinds of lessons learned. You can see buttonpusher automate the crafting process in Animal Crossing in the video, embedded below.
Nintendo’s Switch is perhaps most famous for blurring the lines between handheld consoles and those you plug into a TV. However, the tablet-esque device can also run Android if you’re so inclined, and it recently got an upgrade to version 10.
It’s an upgrade that brings many new features to the table, most of which you might consider must haves for regular use. The newer port brings support for USB Power Delivery, as well as deep sleep modes that enable the unit’s battery to last for several weeks. There’s also support for over-the-air updates which should ease ongoing maintenance, and improvements for Bluetooth compatibility and the touch screen as well.