r11 - 14 Feb 2006 - 12:25:10 - GuilhermeCHazanYou are here: SuperWaba >  Codev Web  > PortingGeneral

Porting SuperWaba

Being Open Source, everyone is free to offer improvements to SuperWaba, however small. One of the more significant contributions that can be made is to port SuperWaba to another platform. Below are some projects that need your attention.

Image of Tux The Penguin

Linux

Ironically, SuperWaba does not yet run natively on that bastion of the Open Source community, Linux. It will run happily on Java under Linux, or on the WINE Windows emulation package. Native development has been started, but never finished. Hopefully now that the CVS repository on Gforge is now working, further contributions will become part of the build.

Even without a GUI, SuperWaba would come in useful on embedded Linux devices. This would allow the same code to be used in client and embedded devices.

One useful side effect of this process would be to have a version of SuperWaba that compiles under the GNU toolset. This would be beneficial not just for a Linux port, but for those wishing to use the free GCC platform to build SuperWaba (though some have reported successful builds under the free version of Codewarrior Lite). Unfortunately, it is not possible to debug a Palm device through a USB port under Linux, so some developers are reluctant to pursue this path right now. Do not let this put you off!

Win32

A native Win32 port is distributed in the SuperWabaSDK to run your SuperWaba applications on your desktop without any Java VM. This is different than the SuperWaba applet version using a JVM and an AWT interface to run on any machine or in a java-enabled browser. The project file to build this native win32 SuperWaba VM is available here.

Symbian

SuperWaba will run - or anecdotaly, crawl - under PersonalJava? on Nokia 9210 phones. The P800 is due for testing and Sony Ericsson have brought out a P900. Michal Hobot? has done some work on this. He says that you have to download tools for PersonalJava? development for Symbian. He used a Nokia PJAE (200 MB!). It integrates with JBuilder but also works without it. Compile SuperWaba with PJAE (Java 1.1.8). Superwaba is a normal Java application. Then, pack it into SIS file with the Symbian tools provided. You can run Superwaba under a Symbian emulator or install it on a real device.

The following links may be useful:
http://www.symbian.com/developer/techlib/papers/Khopera/Opera_KeithHollis.htm
http://www.symbian.com/developer/techlib/papers/cpp_migrating.html
http://www.yipton.demon.co.uk/content.html (source code good for reading!)
http://www.s2.org/putty/ http://dreo.org/p800/putty/

Full porting to Symbian is on indefinite hold as resources are now diverted to producing a Linux version. Symbian is not proving to be the major driver in the mobile phone industry that it was once held to be. Anyone interested in assisting should speak out on the newsgroup list or contact Vik Olliver. There is some overlap in porting between Linux and Symbian, like using an SDL library such as this one from Hannu Viitala (Email: hannu.j.viitala at mbnet.fi).

SuperWabaJump logo

The SuperWabaJump Toolkit

The SuperWabaJump Toolkit is a different type of port. Instead of porting to different hardware or a different operating system, the toolkit is a port of the SuperWaba class libraries to a different approach to creating Java applications.

The toolkit creates stand-alone applications for the Palm OS operating system. These applications do not use a Java virtual machine in the conventional sense. Instead a tool called Jump is used, which is an ahead-of-time compiler. Jump converts all of the class files for a project into machine code, and only the resulting machine code runs on the handheld device.

Q Why would you want to do this, though? Surely it is already possible to run SuperWaba applications on Palm OS devices?

A There are three main benefits:

  • the resulting code run much faster, typically five times faster.
  • a stand-alone application is produced, so installation is easier.
  • the application is very well obfuscated. No class files, just machine code.

See also the SuperWabaJump FAQ and SuperWabaJump Performance Guide

Special Requests

-- VikOlliver - 28 Apr 2004 -- PeterDickerson? - 30 Jan 2004

Edit | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r11 < r10 < r9 < r8 < r7 | More topic actions
 
SuperWaba home
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding SuperWaba? Send feedback