Installing Babbletower on C860

NOTE: These instructions are for Zaurus SL-Cxxx devices running the factory rom.

Babbletower is one of my favorite programs because of its versatility and usefulness. It runs much better on Cxxx devices because the runtime is j2me instead of Jeode; however, installing BT on a clamshell Zaurus is more complicated than on other models.

Here is a zipped archive of the files discussed in this page.

Preparation

Installation of BT on any device is not exactly simple, but there are font issues on Cxxx which make BT unusable "out of the box". Assuming you have not changed anything in the fonts directory, we must edit babbletower.properties to use different font sizes. In addition to displaying boxes where there should be kanji, most of the fonts will be too small to be easily readable on the high-res screen. Some font sizes must exactly match a built-in font; others don't. I haven't determined why this is, but I haven't spent much time on it, since there is a way around it.

Font properties begin with a device name followed by the property name. The arbitrary device name "zaurus" is used here and an argument must be added to the command that starts BT which calls the "zaurus" device. This is useful for multiple configurations, such as using BT to look up non-Japanese languages when you don't have a Unicode font, using a different resolution, screen rotation, etc. For further explanation of the properties file, please consult the Babbletower website. I have changed my properties file like this:

For the dictionary results screen, lcfont 24; lcfont 18 for the input field and default messages

zaurus.font.default=lcfont,*,18
zaurus.font.dictio.page = *, *, 24
zaurus.font.dictio.field=*,*,18



Lupe doesn't seem to support fonts larger than 36 on j2me; this is lcfont 36. Also, sometimes it seems that highlighting is right-offset by one character, so if you don't see your character in the lupe, highlight the one immediately to the right, even if it is a space.

zaurus.font.lupe=lcfont,*,36



lcfont 18 for the wordbox menus and lists, stats and nostats

zaurus.font.menus=lcfont,*,18
zaurus.font.wblist.stats=lcfont,*,18
zaurus.font.wblist.nostats=lcfont,*,18




I liked using lcfont 24 for the kanji field of the flash card, but this presented a problem in kanji cards. I tried reducing the font to 20, but decided I liked 24 better. Edit zaurus.font.card.verybig to change. Kanji cards also don't seem to display larger than 36 in j2me.

zaurus.font.card.kanji=*,*,36
zaurus.font.card.verybig=*,*,24
zaurus.font.card.big=*,*,20
zaurus.font.card.small=*,*,18



Installation

Installation consists of placing certain files in certain directories. Initial installation is provided on BT's website, so this document will only cover Zaurus installation. The following information applies to all Zaurus models.

You can start BT from the command line each time you use it, but this quickly becomes tiresome. Ideally, you can place an icon on the desktop that calls a shellscript to start BT when tapped. To do this, you will need to create a script, icon and .desktop file. Here are some guidelines for setting all this up:

We'll create a script to start BT using -XappName:

#!/bin/sh
cd /mnt/cf/babbletower/

evm -XappName=$0 -classpath /mnt/cf/babbletower/babbletower.jar Babbletower -f -d zaurus

where "zaurus" is the device name specified in the properties file and the path is the path to babbletower.jar. The argument -f makes BT start in a framed window and -d is the device name paramater. Make the script executable and place it in /home/QtPalmtop/bin.

Next we need to place an icon in /home/QtPalmtop/pics. The format must be .png and the size should be about 16x16 pixels.

Finally, we need to make a .desktop file. You can do this manually or use the "Tab Setting" preference pane to do this. To do it manually, create a file with the following paramaters:

[Desktop Entry]
Comment=Dictionary
Exec=babbletower
Icon=babble
Type=Application
Name=Babbletower
Display=640x480/144dpi, 480x640/144dpi


where "Exec=" is the name of your shellscript, "Icon=" is the name of your icon without the .png extension, and "Name=" is the name you want to appear on the desktop. I'm not sure if the "Display=" line is necessary since it seems to make no difference on my device whether it is included or not. You probably want to leave it out if your Zaurus is not a clamshell model. Make the filename end in .desktop and place it in the directory of /home/QtPalmtop/apps which corresponds to the desktop pane you want the icon to live in; for example, I keep mine in /home/QtPalmtop/apps/Applications because I want the icon in the Applications pane.

To create a .desktop file using the "Tab Setting" app, select an item in the desired pane and tap the "new" icon. You will see a dialog asking you to select an icon and program. If you put your executable shellscript and icon in the right locations, they will be in the list that is generated when you tap the respective buttons. When you are done, save your changes and Qt will update the display.

If all went well, you should see something like this on your desktop: