Apple TV hardware storage limits will keep most emulators away

Posted:
in iPod + iTunes + AppleTV

The developer behind iPhone emulator app Delta has revealed that one key limitation in Apple's tvOS is why he isn't making a version for Apple TV.

Pixelated rainbow apple on green landscape during rain in a block-style video game environment.
Minecraft used to be on Apple TV but was pulled



Apple TV is not short of games, since it has Apple Arcade, but an online developer conversation has highlighted how every game and every app on tvOS has to deal with a storage limitation. Each has a maximum of 500KB in which to save anything they need, from scores to saved games, or in the case of emulators, even game ROMs.

Writing on Mastodon, Berlin-based developer and author of a book on Swift, Ole Begemann, explains that more than 500KB can be saved, but at a risk.

A social media post criticizing tvOS for not allowing apps persistent storage, specifically affecting the RetroArch game emulator's savegames and data.
Developer Ole Begemann's thread on Mastodon about tvOS limitations



Even the Apple guidelines that Begemann links to describes the 500KB as "limited." Anything saved over that limit can be deleted by tvOS itself at any point when the Apple TV 4K is running low on space.

In response to Begemann, emulator developer Riley Testut revealed that this limitation has hampered him, too. "No persistent storage is honestly a big reason why I haven't yet ported Delta to Apple TV," he said.

The emulator RetroArch is available on Apple TV, but a discussion on gaming forum Resetera sparked by Begemann's thread, has users complaining about the same limitation. On Reddit, advice to new users about loading game ROMs into RetroArch includes using the cache, but as yet no comments about them potentially being erased by tvOS.

Apple's documentation explains that data stored in excess of the 500KB limitation is saved in a cache which is not purged while the game, or other app, is running. "However, when space is low and your app is not running, this data may be deleted," it says.

That cache has a limit, too. It plus all of the app's code and resources such as images and audio, must fit in a maximum of 4GB -- or actually slightly less. "Do not use the entire cache space as this can cause unpredictable results," warns Apple.

Apple does note that "your app can store and retrieve user data in iCloud," and it presents that as a solution. But downloading from iCloud is slow adds a complexity to the app as it has to manage whether its data is stored locally or not.

An unnamed developer, going by the Mastodon handle Ezekiel, then claimed in the Mastodon thread that it was this storage issue that brought Minecraft for Apple TV to an end. Minecraft launched on Apple TV in 2016, but it was later pulled.



Read on AppleInsider

Comments

  • Reply 1 of 8
    TS007TS007 Posts: 4member
    DOJ will probably force Apple to put a HD in it so epic can side load their games
    beowulfschmidtwatto_cobra
  • Reply 2 of 8
    TS007 said:
    DOJ will probably force Apple to put a HD in it so epic can side load their games

    That would be nice.
    Blizzardxyzzy-xxx
  • Reply 3 of 8
    LOL…you can play NBA2K on ATV but they can’t get their emulator to run?
    watto_cobra
  • Reply 4 of 8
    ransonranson Posts: 82member
    LOL…you can play NBA2K on ATV but they can’t get their emulator to run?
    The difference is that a download of NBA2K from the app store will include all of the game assets in the app, so the game itself is not subject to this max 500K limitation and will happily play. Conversely, emulators can't ship with actual games (ROMs) in the app distribution (since they are copyrighted). The user must load the game ROMs into the system, and Apple does not provide a persistent storage solution for downloadable content or misc file like these ROMs.

    So to be clear, the emulators work and runs just fine as-is. But imagine a situation where after a few weeks of everything going great, the AppleTV decides to just randomly delete some or all of the ROMs that the user had loaded in.

    That is what can happen and why there is a deterrent to developing apps/games on AppleTV that make use of DLC. This is not just a problem for emulators, but for any app or game that has downloadable content separate from the core app distribution. The same can happen to you on streaming video apps that allow downloads for offline viewing. Those downloads are not guaranteed to be around if the device decides to purge the cache. Apple should just allow up to 10GB (space permitting) for persistent data files.
    edited May 20 tenthousandthingsAlex1Nwatto_cobra
  • Reply 5 of 8
    ranson said:
    LOL…you can play NBA2K on ATV but they can’t get their emulator to run?
    The difference is that a download of NBA2K from the app store will include all of the game assets in the app, so the game itself is not subject to this max 500K limitation and will happily play. Conversely, emulators can't ship with actual games (ROMs) in the app distribution (since they are copyrighted). The user must load the game ROMs into the system, and Apple does not provide a persistent storage solution for downloadable content or misc file like these ROMs.
    But the article appears to be saying that anything larger than 500K will use free space on the NAND. Most ATVs around now are probably 32GB, 64GB or 128GB in size for the NAND. Not seeing how it's that much of an issue beyond requiring the user with the ROMs to be aware of their space requirements and what space is left on their ATV. 

    "Even the Apple guidelines that Begemann links to describes the 500KB as "limited." Anything saved over that limit can be deleted by tvOS itself at any point when the Apple TV 4K is running low on space."
    edited May 20 Alex1Nwatto_cobra
  • Reply 6 of 8
    How feasible would it be for the app to store a network share path for the roms etc., verify if they are all on the apple TV and download if purged?
    watto_cobra
  • Reply 7 of 8
    ransonranson Posts: 82member
    ranson said:
    LOL…you can play NBA2K on ATV but they can’t get their emulator to run?
    The difference is that a download of NBA2K from the app store will include all of the game assets in the app, so the game itself is not subject to this max 500K limitation and will happily play. Conversely, emulators can't ship with actual games (ROMs) in the app distribution (since they are copyrighted). The user must load the game ROMs into the system, and Apple does not provide a persistent storage solution for downloadable content or misc file like these ROMs.
    But the article appears to be saying that anything larger than 500K will use free space on the NAND. Most ATVs around now are probably 32GB, 64GB or 128GB in size for the NAND. Not seeing how it's that much of an issue beyond requiring the user with the ROMs to be aware of their space requirements and what space is left on their ATV. 

    "Even the Apple guidelines that Begemann links to describes the 500KB as "limited." Anything saved over that limit can be deleted by tvOS itself at any point when the Apple TV 4K is running low on space."

    Not much of an issue????  The user has no control over what is purged when the device is running low on space. The user doesn't even have any idea what "running low on space" means exactly and if the device is approaching that point or not. Imagine that on your Mac Laptop, any time MacOS decides that your drive is running low on space, the OS (rather than YOU) decides that some amount of your data must be purged, without asking your or giving you a chance object. That happens on tvOS and is a very poor experience, which developers have rightly recognized is problematic and a deterrent to publishing robust tvOS apps.

    Enough of this "Apple is always right" crap where everything is the user's fault. This is a terrible architecture design choice.
    muthuk_vanalingamxyzzy-xxx
  • Reply 8 of 8
    danoxdanox Posts: 3,284member
    Nice job Apple, Sony and Nintendo will eventually sue you mister deep pockets if you assist those who want to pirate games. These days even the Democratic Republic of Congo wants a piece of Apple.
    edited May 22 watto_cobra
Sign In or Register to comment.