Why The Switch Still Excites

From Halcove
Revision as of 01:32, 24 December 2023 by Ha1vorsen (talk | contribs) (Created page with "The Nintendo Switch launched in 2017 as a game console, a common platform for software developers to create games that utilise common hardware. At the time, the prospect of a tablet-sized home gaming console on its own was amazing! What's more, is that it continued on the 3DS's legacy of using ARM-based processors, similar to other tablets and mobile computing devices. Like Apple's recent endeavor into its M-series processors with Apple silicon MacBooks, Nintendo Swi...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

The Nintendo Switch launched in 2017 as a game console, a common platform for software developers to create games that utilise common hardware. At the time, the prospect of a tablet-sized home gaming console on its own was amazing! What's more, is that it continued on the 3DS's legacy of using ARM-based processors, similar to other tablets and mobile computing devices. Like Apple's recent endeavor into its M-series processors with Apple silicon MacBooks, Nintendo Switch was the first major game device leveraged as a "home console" to use this ARM architecture. As most other devices usually use X86-based APUs, similar to desktop PCs, this reduced instruction set architecture directly allows developers to familiarise themselves with optimising games for this environment for professional game development, rather than more simple mobile games.

Fast forward to 2023, and Nintendo Switch has indeed transformed the consumer device sector. We now have devices like the Lenovo Legion Go, a mobile X86 PC designed around its DualStrike controllers that dwarfs the Nintendo Switch in computational performance, even being able to emulate a number of its most demanding titles. But what about the sector that the Switch carved out for its ARM64 factor?

As previously mentioned, most mobile devices, such as phones, tablets, and some laptops, all utilise a flavour of ARM64 as its instruction set. However, the predominant platform for these devices is Android, which is an open-source OS that has no meaningful minimum requirements, running anything from projector operating systems to dedicated game consoles. This means that a game developer cannot develop against a known target with the knowledge that their game will run properly on every device that accesses it, leading to software that caters towards the least-common denominator (the weaker devices), despite its most powerful platforms (such as the Snapdragon 888 Gen 3) having multitudes better performance than the Switch.

Being made on such a common platform and APU, the Nintendo Switch hardware has had much of its functionality documented and referenced in Nvidia's Technical Reference Manual ever since the Tegra X1's introduction with the Nvidia Shield TV. This assisted with the reverse-engineering efforts of the Nintendo Switch during the development of projects like SwitchBrew and Atmosphère, which both are also massive assets to teams aiming to implement software emulators on other devices.

The most exciting thing about this is that with all of the Switch's focused development over nearly a decade now, amazing developments have been made, not limited to ports of full home console games such as Persona 5, DOOM Eternal, and The Witcher III, but also its original titles such as The Legend of Zelda: Tears of the Kingdom and Super Smash Bros. Ultimate. This was the antithesis to ARM devices for the past decade or so; Android being the primary platform for it means that the software that runs on a Galaxy S23 Ultra also has to have minimal compatibility with the Galaxy A03s, bottlenecking what kind of software can release on this architecture.

The number one limiting factor when it comes to smooth emulation is... emulation. Specifically, the translation of instructions meant for one CPU into instructions that another CPU can interpret and execute. It's not any different from having an interpreter between a person speaking English and German. It would make everything faster if you removed the middleman, right?

This is where the Switch being an ARM64 device comes into play again. What if it were possible to run the Switch's original CPU instructions on the CPU of the new device as-is, bypassing CPU emulation? This still doesn't automatically result in a perfect gameplay experience - Switch games run under the Switch OS and have a number of software calls that reference the OS in. The games also expect a number of features and the proprietary hardware of the console, like the GPU. Regardless, CPU emulation represents one of the bigger bottlenecks for emulation. Luckily, the developers of yuzu thought the same, with developments of native code execution in its mainline builds finally being released to the public in the past week!

With all of the developments that happened on the Switch ever since 2017, with all of the software made for it; your local mobile device may now also be able to reap the same benefits, and become as legitimate of a gaming console as the Nintendo Switch. NCE improves performance dramatically, with some games like Super Smash Bros. Ultimate already running dramatically faster and more stable than on the Nintendo Switch itself.

But forget phones, what about the dedicated Android handhelds that were doomed to emulation of old consoles and game streaming? Now, especially when developed with active cooling in mind, they can become your Android-based console replacement, running titles with active developer support with billion dollar budgets. And that goes to the flipside too: yuzu is also able to run homebrew - Switch software made by people like you and me - equally as well. And there is no shortage of developer support on this end either.

All of Apple's latest laptops use Apple silicon, which are also ARM64 based. Mac devices are infamous for being particularly poor for gaming. While more developments are necessary before NCE can really shine on a MacBook, this is one of the largest hurdles for it. This development breathes new purpose into entire categories of devices, all thanks to the influence of Nintendo Switch.