Tuesday, March 31, 2009

MIDPath on the iPhone

I started a port of MIDPath on the iPhone a few weeks ago. It was a bit easier than I expected.

First I had to understand how to use iPhone APIs from Java. Markus Heberlings from the MicroEmulator project helped me a lot in this task. I used Markus's library (straptease) to write a simple backend for MIDPath.

Next I added a directional pad to give a chance to people with large fingers to navigate through complex user interfaces.

Finally, I improved overall performances by compiling native backends for rasterization and SVG rendering.

Currently MIDPath runs on top of JamVM 1.5.1/Classpath and performances are correct for productivity applications. It should be faster when the iPhone backend will use OpenGL ES.

Available features:
  • Full support of the MIDP2 widgets (LCDUI)
  • JSR226/SVG
  • JSR75/File Connection API
  • Networking
Missing:
  • Sound
In the video below, you can see a few midlets running on the iPhone:



http://www.youtube.com/watch?v=Z1jU3abjG4w