HandyPalmStuff

Open Source software for PalmOS 5, mostly by Alexander Pruss

This project is an umbrella for a number of software projects for Palm OS 5 handhelds, as well as for a partial source code release of a commercial product.  All projects are available for use under the Gnu General Public License but some are also available under the revised BSD license (without the advertising clause), which is GPL compatible.  Projects include backup software, network printing of your PDA screen, and other goodies.  Source code is, of course, always available.

For all the software, please USE AT YOUR OWN RISK.  I've been known to hang around the forums at 1src.com, and asking questions there in the Applications forum may get you answers.

Currently, the projects are:

Capitalizer: Capitalize letters that cross the middle line on those PalmOS 5 PDAs that have Graffiti 1 installed.  You can also designate a special punctuation area.  On some Clies, many additional keyboard shortcuts, like screen-print, are enabled.  There is also a Graffiti magnifier in case you write too small for the standard Graffiti engine to recognize your text.  Do not use this if you have Graffiti 2.  (If you don't know which you have, one obvious difference is that in Graffiti 1, a "t" is a single stroke while in Graffiti 2, it is two strokes.)  [Download]
Clie Skin Generator: Generate Virtual Graffiti and Status Bar skins for the Sony Clie NR/NX/NZ/TH (maybe UX, too).  This is a collection of command-line tools.  [Download]
Graffiti State Indicator Hack: Newer Palms disable the Graffiti State Indicator, but sometimes it's a nice thing to have, for instance to know when auto-capitalization will occur.  This hack requires the YAHM OS 5 hack manager[Download]
NVBackup: This is currently my most popular HandyPalmStuff project.  It is a backup utility for NVFS-based PDAs: Palm T5, LifeDrive, TX, TE2, Treo 650, Treo 700P.  Unlike commercial backup utilities that access data via the database cache, this reads data direct out of the flash disk where it is store.  This seems to be the best backup utility in terms of restoring the exact state of the system before the backup, without a need to reenter registration codes for other software (there may be one or two exceptions) or anything else.  [Download]
Features include:
scheduled daily backups (including on locked devices)
ftp server support--automatically or manually export your backup to an ftp server
compression and checksum1
AES 128-bit encryption
selective restore
fast update of existing backup
connect to atomic clocks on the Internet to set the time, either manually or after a scheduled backup
BSD licensed so you can make a closed-source commercial backup program on the basis of this
Pros over some commercial solutions:
exact state restoration, usually with no need for warm or hard reset before restoring
should work better on unstable systems (e.g., due to unstable third-party utilities) than other utilities
may be faster for very large backup sets (say, 50mb)
does not affect cache memory significantly
Cons:
backup cannot be restored on another model PDA or maybe even on the same model PDA after a ROM upgrade
uses undocumented APIs
slower for smaller backup sets than some commercial solutions
NXSkinner: A very simple utility to load Virtual Graffiti and Status Bar skins on the Clie NX (and maybe NR, NZ, TH, UX).  [Download]
partial myKbd source: This is a BSD-licensed (acceptable for commercial, closed-source use!) release of large chunks of the code from my closed source mySkin/myKbd skin loader and hex-key virtual keyboard utilities.  The code is not compilable as it is because it is a partial release (the main thing missing is the skin loading code itself), but includes lots of goodies for developers, including the following. [Download]
Essentially complete 'hede' notification handler code for handling hex keyboards, macros and making a popup home button.  This code should be useful if you are making a virtual keyboard replacement because it compensates for many digitizer pen-up jumps (when the pen is lifted on some newer Palms, the digitizer sends out invalid data).  Moreover, this code can be used in ARM and 68K mode (ARM mode does not currently work on the T3 due to some of the undocumented APIs used for DIA handling).
Bilinear resize
Recolorize
Pilrc for skins: This is source code for a hacked version of pilrc that I use to generate Clie and Palm skins.  [Download]
PrintIt DA: This is simple a Desk Accessory (it requires a Desk Accessory launcher) for OS 4 and up that prints the screen to a network printer.  It supports PCL and PostScript printers, as well as RAW (port 9100) and LPR/LPD (port 515) protocols.  If you don't have a network printer but would like to network your printer, a RAW Print Server is included (Windows/OS X/Linux/etc.)  [Download]
Silence Hack: When activated in YAHM, this OS 5 hack deactivates all sound (except for Clie sound).  [Download]
source code to AESLib 3.1: For completeness, here is the source code for the AESLib library that NVBackup uses for encryption.  I didn't write the library and know almost nothing about it.  [Download]
T3SkinGen: Quick and dirty T3 DIA skin generator.  [Download]