Thursday, March 27, 2008

NES.app: first “game” to run on iPhone v2.0 firmware


Jonathan Zdziarski, the creator of NES.app and the author of iPhone programming book published by O’Reilly (you can read our interview with Jonathan here), claimed yet another impressive victory: iPhone NES.app emulator is now the first “game” (if you could call an emulator so) that runs on upcoming iPhone v2.0 (actually v1.2) “Aspen” firmware (screenshot below).

Jonathan writes: “NES.app now successfully builds using the Apple SDK with low-level “tool chain” headers, and can install straight to your device from the most excellent Xcode. It also builds fine using the open tool chain for Aspen. Source code has been committed to CVS along with new Makefiles and an Xcode project file. I could distribute a binary (using the open tool chain), but there’s no point at the moment. As you’ll see, only a very minimal number of code changes have been made that are specific to Aspen, illustrating that the proprietary Apple SDK headers are merely restricted overlays on top of the “real” objects used by the open tool chain.

nes.app iphone aspen

This serves as a good example for continued low-level application development on the iPhone, using the private APIs offered by the open source tool chain. Oh, and it runs faster on Aspen too. Unfortunately, Apple’s SDK license would prevent an “official” developer from building and distributing applications that use these private APIs so if you plan on distributing with the AppStore, your app will never get to be a “real app” (Pinocchio reference) like this one. Fortunately, the open source community has a community Installer application with hundreds of great applications, and somewhere around 40% of the eyeballs on the iPhone.

Not bad, considering I have never even installed Aspen on my iPhone. I’ve steered clear from it, as it is presently “warez” status. Just for the record, I condone ethical, sportsman-like hacking, but not illegal activities. A little bit of testing was done by a few people running Aspen, however my phone is still running 1.1.4.”

You can read more on Jonathan’s blog.

No comments: