The xKVM / Color KVM
The xKVM, formerly known as ColorKVM, is our latest development project.
We decided to rename the ColorKVM to xKVM (extended KVM) because we have
added several new features since our initial color enhancement.
The following features were added to SUN's KVM 1.0.2 sources:
- Color and grayscale support on PalmOS 3.5 devices
- 16-Bit Color support for Handspring PRISM devices
- JogDial support for Sony Clie devices
- HandEra 330s 240 x 320 QVGA high resolution screen and support for minimizing and maximizing the silkscreen
Additionaly, we use JavaCodeCompact to ROMize the kAWT directly to the
KVM. This feature reduces loading times of kAWT applications up to factor
10. For example, loading the kAWT Sample running on a non ROMized KVM
takes up to 40 seconds loading time. ROMizing the kAWT classes
reduces the loading time to 4-5 secs.
Using Color or Grayscale with kAWT
The simpliest way to use colors in the ColorKVM is to use the Graphics
method setColor(Color c) to set the actual color for drawing e.g. a
line.
Using color with the com.sun.kjava classes
For the color support, we did not add new native methods to
the KVM. Instead, we just modified the drawing routines for lines, text and
rectangles to accept additonal drawmode values, determining the color,
while still preserving the meaning of the KJava constants for
compatibility with existing applications.
For colored or grayscale drawing, set the lowest byte of
the paint mode to 5, the highest byte to the red value, the second
highest byte to the green value, and the second lowest byte to the
blue value. The corresponding formula is:
(red << 24) + (green << 16) + (blue << 8) + 5
Example for drawing a colored line:
int red = 255;
int green = 0;
int blue = 0;
int mode = (red << 24) + (green << 16) + (blue << 8) + 5;
Graphics g = getGraphics ();
g.drawLine(0, 0, 100, 100, mode);
Here is a small sample application which shows how to use the new color feature without kAWT:
Download the xKVM / ColorKVM
Download the xKVM / ColorKVM binaries...