MAME Emulator Shown Running Well on New Apple TV
Earlier this month, developer James Addyman got his emulator, Provenance, working on the Apple TV Developer Kit provided to developers via lottery, and now developer Kevin Smith has gotten the popular MAME game emulator running on the device.
In the video below, a tvOS version of the MAME emulator is demonstrated on the fourth-generation Apple TV. For those unfamiliar with MAME, it stands for Multiple Arcade Machine Emulator. Over the years, several apps with the MAME code have snuck into the iOS App Store, letting people illicitly run old arcade games.
In the video, Smith shows several old arcade games running on the Apple TV, including Donkey Kong, Galaga, Street Fighter II, Raiden, and Metal Slug - Super Vehicle. All of the games are said to run well, though there are some lingering sound issues with a few of the titles.
The video's description includes some of the technical hurdles that had to be overcome to get the emulator working on tvOS.
I created a target for tvOS and set about getting the code to compile for arm64 (Mandatory for AppleTV), fixed a variety of compiler and linker errors. Removed code which was incompatible with tvOS frameworks and simplified code to work on tvOS. Added a basic icon compatible with tvOS. I added some tweaks to the source to allow the pause button to exit the game and supporting the resolution for the 1080p display.
While developers have been able to get emulators running on the developer versions of the fourth-generation Apple TV, which were handed out to help developers create Apple TV apps, emulators won't be available on the tvOS App Store. Apple doesn't allow emulators on iOS and will likely adopt the same policy for tvOS.
There is a possibility that emulators will be able to sneak into the tvOS App Store in the future, buried deep within legitimate apps, but as on iOS, such apps will only survive for hours before being pulled once discovered by Apple.