Donate

You can make a donation if you'd like to support my work:


Contact

I deactivated the rating mechanism for now due to excessive spamming; while I got some interesting comments when I started it the current ratio is several hundred spam comments for one useful comment. If you have anything to say, please write an email to bwachter-hp@lart.info

Palm stuff

This page has been round for quite some time, only as non-public because I've been unable to get the time to finish it.

Introduction

I started building my own firmware-ROMs for my Palm Vx some years ago. Main reason was that I wanted to have all important applications in ROM, to be able to use them even after some crash. For example, ssh-client or terminal application can be useful without the other data. Another reason was that I only had to sync application data, I did not need to remember where I got all those applications.

This page will not tell you what nice palm software is out there. There are enough pages out there doing that. It will tell you which software is nice to have in your ROM, and what you should do (or not) if you'd like to have your own ROMs. Whenever possible I'll make use of free software. I prefer open source, if I can't find that I'd take freeware, and only if that fails commercial software. I appreciate any hints for an open source replacement of commercial software I use.

I know that the Vx is one of the older devices, but it's small, robust and suitable for addresses as well as ssh login. I was thinking about replacing it some times, but always decided it will just do fine for some more years. Mine is running PalmOS 3.5. I gave 4.0 a try, but then realized that there are not that many functions I needed and went back to 3.5 due to the smaller size -- smaller size means more space in ROM for my stuff. Some things I really missed could be made working using hacks.

Building the ROM image

I did not find another free flash utility for palm other than osflash. Though you could theoretically use up to 2064384 bytes for the large rom you're limited to 1667072 when using os-flash, thus wasting about 400000 bytes. os2pdb will happily convert any bigger images, osflash will warn you on the palm about the image being truncated. If you get this warning do not try to flash, even if the checksums are correct. It will not work, you'll need to reflash the palm using the debugger in the small ROM -- either using gdb or with official palm firmware using Windows.

$ romeo -a 3.50 -l:1667072 prcs.big/* sw/* -s prcs.small/* -o my3.rom 

Writing 32768 ROM bytes (16384 used)... success

Writing 2064384 ROM bytes (1667072 used)... success
    

Writing the ROM images

Writing with osflash

Flashing gets done with osflash

Writing with Palm Flash

This tool will only run under Windows (maybe wine, did not test it), but enables you to flash ROMs in advanced mode using the debugger in the small ROM. It will not overwrite the small ROM, thus you can't finally kill your palm. It will not flash images containing the small ROM, therefore you have to remove it before trying to flash. You can do this using dd:

dd if=my1.rom of=my2.rom skip=32768 bs=1
      

The large ROM starts at byte 32769, the above line will simply start reading at the first byte of the large ROM and write the whole large ROM into the file my2.rom. Because we read it bytewise this will take some time. If you want to speed it up a bit you can tell dd to make the blocksize as big as the small rom and skip only one block:

dd if=my1.rom of=my2.rom skip=1 bs=32768