A Look At Not An Android Emulator

Recently, Linux has been rising in desktop popularity in no small part to the work on WINE and Proton. But for some, the year of the Linux desktop is not enough, and the goal is now for the year of the Linux phone. To that end, an Android Linux translation layer called Android Translation Layer (we never said developers were good at naming) has emerged for those running Linux on their phones.

Android Translation Layer (ATL) is still in very early days, and likely as not, remains unpackaged on your distro of choice. Fortunately, a workaround is running an Alpine Linux container with graphics pass through via a tool like Distrobox or Toolbox. Because of the Alpine derived mobile distribution postmarketOS, ATL is packaged in the Alpine repos.

In many ways, running Android apps on Linux is much easier then Windows apps. Because Android apps are architecture independent, hardware emulation is unnecessary. With such similar kernels, on paper at least, Android software should run with minimal effort on Linux. Most of what ATL provides is a Linux/Android hardware abstraction layer glue to ensure Android system calls make their way to the Linux kernel.

Of course, there is a lot more to running Android apps, and the team is working to implement the countless Android system APIs in ATL. For now, older Android apps such as Angry Birds have the best support. Much like WINE, ATL will likely devolve into a game of wack-a-mole where developers implement fresh translation code as new APIs emerge and app updates break. Still, WINE is a wildly successful project, and we hope to see ATL grow likewise!

If you want to get your Android phone to talk to Linux, make sure to check out this hack next! 

Nintendo Switch Runs Vita Software With Vita2hos

Good news for fans of PlayStation Vita — a new project from [Sergi “xerpi” Granell] allows users to run software written for Sony’s erstwhile handheld system on Nintendo’s latest money printing machine, the Switch. To be clear, there’s a very long road ahead before the vita2hos project is able to run commercial games (if ever). But it’s already able to run simple CPU-rendered Vita homebrew binaries on the Switch, demonstrating the concept is sound.

Running a Vita CHIP-8 emulator on the Switch. Credit: Modern Vintage Gamer

On a technical level, vita2hos is not unlike WINE, which enables POSIX-compliant operating systems such as Linux, Mac OS, and BSD to run Windows programs so long as they use the same processor architecture. Since the Switch’s ARM v8 processor is capable of executing code compiled for the Vita’s ARM v7 while running in 32-bit compatibility mode, there’s no emulation necessary. The project simply needs to provide the running program with work-alike routines fast enough, and nobody is the wiser. Of course, that’s a lot easier said than done.

According to the project page, the big hurdle right now is 3D graphics support. As you could imagine, many Vita games would have been pushing the system’s graphical hardware to the limit, making it exceptionally difficult to catch all the little edge cases that will undoubtedly come up when and if the project expands to support commercial titles. But for homebrew Vita games and utilities that may not even utilize the system’s 3D hardware, adding compatibility will be much easier. For instance, it’s already able to run [xerpi]’s own CHIP-8 emulator.

[xerpi] provides instructions on how to install vita2hos and the Vita executable to be tested onto an already hacked Nintendo Switch should you want to give it a shot. But unless you’ve got experience developing for the Vita or Switch and are willing to lend a hand, you might want to sit this one out until things mature a bit.

Thanks to [NeoTechni] for the tip.