I've had a bit of feedback so far, most people just want to try it for themselfs. So, I've hacked up a distribution and a little test "game" (since I don't want to give my soccer game source away). I haven't had a chance to build this one for android and iphone, but it's considerbly more primitive than soccer so should work just fine. The test game is available as an applet already.

From the distribution readme:

Applet/Android/IPhone Portable Code
-----------------------------------

This is just a quick snapshot of where I am with this stuff. Build instructions below 
and please remember this isn't really for use unless you already know a fair bit
about what you're doing. There is no support.

Note that the majority of this work is based on the http://www.xmlvm.org project.

There may be troubles with project configuration. If you're not experienced 
enough to resolve class path errors in projects you're likely to get stuck later on. 
Stop now :)

Setup
-----

There are 6 eclipse projects included.

aboid - The Game API
aboid-applet - An implementation for applets in Java2D
aboid-android - An implementation for android using the Canvas API
aboid-iphone - An implementation for iphone making use of XMLVM
objc-compat - An update version of the XMLVM compatibility library 
             (note that this is actually included in xmlvm.jar)
TestGame - a simple test game to show the system

Import these projects, they have interdependencies. Note that the aboid-iphone project 
must export the objc-compat project and that the aboid-android project must export it's 
android.jar library so that the game can rely on their classes.

Building Applet
---------------

An included ant script build's a versioned applet JAR. Note that the ant script must be 
configured with the location of your workspace (and hence all the project) and the 
location of the xmlvm.jar.

The "build" target creates the applet JAR

Building Android
----------------

I use the Android Eclipse integration to build the Android project and test on the 
emulator. Note that you must generate the R.class file locally to the TestGameActivity 
class included in the TestGame project.

Building IPhone
---------------

An included ant script build's the ObjC. Note that the ant script must be configured 
with the location of your workspace (and hence all the project) and the location of 
the xmlvm.jar.

The "iphone" target generates the ObjC code to the "target/iphone/output" directory. 
On OSX run "make" in the directory containing the generated ObjC to build the IPhone 
application (assuming you have the IPhone SDK installed). The make file also tries 
to run the emulator. You need to run the produced object from the command line to 
get stdout, rather than through the emulator.

The distribution is available and based on source from previous articles. Note that it includes an extended version of the XMLVM project.

Let me know how you get on, but please don't expect support. It's way to early for bugs. I'll be trying to build the test game against IPhone and Android in the next couple of days, let me know if you beat me to it :)

UPDATE

Ok, confirmed the test app builds for applet, android and iphone. If you want to use RuntimeException just copy the java_lang_Exception.h/m and rename. Confirmed running on all 3:

You're a legend. Still, I

You're a legend.

Still, I stopped at the classpath warning bit at the top :)

Off to an excellent

Off to an excellent start!

Not that this is at all as important as the meat of what you are doing, just some thoughts on naming:

iPhone + Applet + Android = ipploid

Or maybe sense you start with Applet, Appdronelet

Or perhaps iDroidlet

Kev: *chuckle* It's funny, Aboid = Abstraction around Android which is where I started. I can't imagine it'll be that separte from XMLVM for long enough to really require a unique name.