iPhone development is a “doddle”, said the developers behind the project to port Doom to the device – revealing the first version of the port was created in just a week.
Developer Psychochromatic explains: “Looking at the hardware specs, I knew iPhone would be able to play a simple game like Doom no problem as it was open-source and already ran on the click-wheel iPod running Linux. I knew Stepwhite, who I work with on Mac projects, and as he’d just bought himself an iPhone and was working with the unofficial tool-chain I jokingly told him he had one week to port Doom to iPhone, and all it had to do was run; he didn’t have to implement controls. One week later, he proudly linked me to his Doom port homepage.”
The first build of Doom saw 15,000 downloads on the project site alone, even without a way to control the game. Once controller input had been included that version received over 25,000 downloads.
Behind the ease of development lies the iPhone’s inherent support for a full scale OS. “The iPhone runs OS X. It’s a full UNIX system in your pocket, with brilliant Objective-C frameworks that make coding beautiful and powerful applications a dawdle,” explains Psychochromatic.
Inherent to this is that Apple’s mobile device uses many of the API’s developers already use when designing full-strength apps for OS X, meaning they can develop for the mobile version “with minimal re-learning”. Apple’s shrewd move to introduce the iPhone SDK has also driven many Windows developers to begin learning Mac OS X programming languages (such as Objective C or Cocoa), meaning it will in future become easier for Windows developers to “program for OS X without too much effort.”
Stepwhite, explained that moving to iPhone development caused him to abandon many of the precepts he used in Mac design on account of the size of the screen, but remains full of enthusiasm: “Despite having to throw out a lot of my knowledge, the iPhone provides so much ease for the developers in terms of it’s APIs it’s a pleasure to work with.”
The iPhone software SDK has accelerated development. “It remained difficult to work upon due to problems with the unofficial compiler (causing non-working versions of the game) but with the release of Apple’s SDK it was trivial to get Doom running on iPhone 2.0,” said Stepwhite.
For all this success, there’s a few snags before iPhone users can anticipate buying Doom for the device from Apple’s App Store.
“Our current port of Doom would currently be rejected by Apple if we were to submit it to the iTunes App Store because we use certain APIs for accelerated drawing that are marked as "private". Before submission, we will have to rewrite portions of it to only use documented APIs; most probably moving to OpenGL/ES for the video output,” explained Stepwhite.
That Apple appears currently to be offering only limited access to these API’s means there’s still a future for iPhone jailbreaks, the developers observed, “some applications need more direct access to the underlying iPhone OS,” they said. Network file access, for example, requires deeper access to certain API’s, the developers said.
“Until iPhone ships unlocked there will still be people needing to Jailbreak the phone to save themselves from some of the miserable tariffs offered by the official operators,” they added.
Both developers seem genuinely excited at the potential future of Apple’s mobile standard.
“iPhone marries Apple’s popular image and brand excellence with the most powerful and fun to use operating system on mobile devices. The possibility of having Apple’s latest iPod also do all your phone and internet in one place is going to be very attractive. Everyone who plays with one wants one, and that alone puts it far ahead of any of the Windows Mobile devices or Nokia smartphones on the market,” observed Psychochromatic.