iPhone developer Manomio has created a slick, feature-packed Commodore 64 emulator for iPhone.

The emulator and the five games it ships with are legally licensed. After a year of development, they submitted the program to Apple, who rejected it, citing the following SDK agreement clause:

We’ve reviewed C64 1.0 and determined that we cannot post this version of your iPhone application to the App Store because it violates the iPhone SDK Agreement; “3.3.2 An Application may not itself install or launch other executable code by any means, including without limitation through the use of a plug-in architecture, calling other frameworks, other APIs or otherwise. No interpreted code may be downloaded and used in an Application except for code that is interpreted and run by Apple’s Published APIs and built-in interpreter(s).

Of course, there are a number of iPhone apps that do just that, most notably Frotz, a Z-machine interactive fiction interpreter for iPhone.

According to the SDK agreement, Frotz and other emulators shouldn’t have been approved for the App Store. Some emulated games are stand-alone (e.g. Sonic the Hedgehog, and there’s no reason why Apple would ever know that such programs execute or interpret code.

Yet, Frotz also includes a download function in the app to allow users to pull new games down to run on the system. Perhaps Apple’s reviewers saw interactive fiction titles as “just text files” rather than executable programs.

It’s tempting to blame Apple for some sort of abusive practices. Or perhaps more poetically, for bitterness held over from a 1980s competitor. But the far simpler explanation is inconsistency. Apple’s review process has been rife with it since the beginning. These are the results.

One of the more disappointing lessons to learn from this news is that the iPhone might not be a promising platform for commercializing new games written for older platforms, platforms that demand emulation. As someone who has advocated for such a use of emulation, I’m sorry to see it.

published June 22, 2009