Well, I am in a stunned state. After more hours of playing, I got it working on my C3100. Boy, stuff really runs slowly using strace, doesn't it? My problem with the maps turned out to be that tomtom relied on the memory card being FAT16 and thus file name case insensitive, but I'd copied files to HDD; even when I made an sdcard copy to a fresh sdcard the filenames were still wrong for some reason.
So, strace + grep ENOENT and also strings on the binary... and it works. Such a thrill to see it have the map of my house on the Zaurus, and plot a route to a friends house. It seems to run at about half the speed of the tomtom 510.
OK, so, by now you're desperate, yes?
What are you going to need?
1/ any kind of GPS that the zaurus can read - serial, usb, bluetooth - so long as its NMEA, as you simply hack a link from /dev/gpsdata to /dev/rfcomm0 or whatever
2/ a copy of *YOUR* memory card from a GO300 or 500. the product code and activation key for the maps. WE WILL NOT BE SUPPLYING ANY TOMTOM FILES, CODES OR KEYS. Please don't ask. I believe that the codes for the Palm and PocketPC versions would probably work too.
3/ a Zaurus running Angstrom - I think this would even work on an old 5000/5500 series as the Zaurus drops down into 320x240 display mode.
4/ the ttimgextract program from opentom (I can provide an x86 binary if anyone needs it) to split the ttsystem file from the memory card, cpio to unpack the file system
Then, you simply unpack Rick's package, copy over the files extracted from ttsystem, edit the start script with your GO's unique ID, and run it.
I will discuss with Rick some tweaks to the start script before we can release the package.