SuperWaba
This article's tone or style may not reflect the encyclopedic tone used on Wikipedia. |
SuperWaba is an exceptionally portable Java-like virtual machine (VM) and associated libraries and small tools, that implements a subset of Java, which means that it will run under a standard Java VM or as a browser applet.
It has been optimised for use on devices with small screens. It is extendable and is published under the GPL free software license. Licensees can buy an LGPL version, that enables them to link it with proprietary software.
Development can be done under any JDK supporting Java 1.2 or greater, and it is compatible with development environments such as Eclipse, JBuilder, etc.
It runs bytecode compiled for Java versions up to 1.2
It works on the following platforms:
- Windows CE 3.0 and above
- PocketPC - iPAQ, Axim etc.
- Palm OS 2.0 and above
- Palm OS 5 optimized for ARM CPUs
- Symbian series60 & UIQ devices
- Linux: Debian, Red Hat, etc.
- Windows 98, XP, Me, 2000
- Browser-based Java applets
The resulting code runs at 1/3 to 1/2 the speed of a pure "C" application on a Palm platform, and on a Windows 32 platform is approximately three to four times faster than a JIT-compiled Java due partly to its integer-only implementation. Additional mathematics libraries for non-integer arthmetic are provided with the Software Development Kit.
Since the 5.0 release, SuperWaba has used the SDL library for driving the display, which increases its portability to many other platforms.
Applications and libraries (from barcode scanners to complex mathematics) written for SuperWaba may be sold, but the majority appear to be available free from the main website. A wiki site is available for developers and users to contribute to the project.
SuperWaba evolved from the Waba project which was an independent forerunner of Java ME. Unfortunately, it did not port the VMs for MS-DOS and the Palm OS versions, which the original Waba project did. SuperWaba split off the Ewe project which catered for Windows CE devices, but was fortunately persuaded to merge again to provide the basis for the current cross-platform code base.