Check Out the MAME Emulator Running on the New Apple TV [video]

MAME emulator running on the new Apple TV

mame-emulator-new-apple-tv-FSMdotCOM

Kevin Smith, one of the few developers selected to receive an early fourth-generation Apple TV dev kit, posted a video showing a version of Multiple Arcade Machine Emulator running on Apple’s tvOS allowing him to play a bunch of arcade titles with a paired Bluetooth controller.

This is something I’ve always wanted on the AppleTV. I was lucky enough to get hold of the AppleTV developers kit and here is the result using tvOS beta 2.

The tvOS app is based on Les Bird’s code I found here :
The original work is based on iMAME4all which is a iOS universal app, port of MAME 0.37b5 emulator by Nicola Salmoria for all iOS devices (iPad HD, iPhone 4G , iPod touch and older) based on GP2X, WIZ MAME4ALL 2.5 by Franxis.

I created a target for tvOS and set about getting the code to compile for arm64 (Mandatory for AppleTV), fixed a varierty 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.

The controller being used is the SteelSeries Stratus XL and paired to the AppleTV via the Bluetooth settings.

Most games are running well though there are some sound issues with Metal Slug and Street Fighter which I suspect are arm64 related which I still need to investigate.

Don’t expect to see this on the App Store any time soon as Apple doesn’t allow emulators of any kind.

Update: September 29th. I’ll work on the source a little more and endeavour to release the source code around the time the AppleTV launches to the public.



SUPPORT FSM

Monero (XMR) 43GnqUNJrTi9QyL7kEH8vM8pgWGCE6bjv1FSRipeNMM4TTeNnUVsRBb6MfMpQYxtLE7ReonxVVSXz2rFCEdW5H11LC3x73b
Bitcoin (BTC) 3PvaJPytg4pApTP5yCGpr62pRtudMgyfMQ
Ethereum (ETH) 0xd3c8677A4CfD9e8b4dFBb7720be2adb490Bd36b2