Palm Software

Introduction

I bought my first palm handheld in 2000. It was a fun little machine providing basic organizer functionality. And there were applications to extend it. It was super fast, even with the slow specs of the machine. But programs were written in C, only a thin layer of abstraction was provided, and all apps had to be written in a style that they were closed when switching to another task. Programs then quickly stored the state to a file.

When starting at university, I had only a very basic understanding of C at best. Then, I set out to learn Palm and C programming at the same time - not a combination I would recommend, having a different order on memcpy source and destination parameters (compared to regular C memcpy) just drives you nuts. But it taught a lot, especially, I had to learn about byte alignment, or the database files I would generate on the PC would not be compatible to the 16-bit Plam platform. The tool chain was pretty weird and hard to come by, even for past standards. That is, when you also wanted to do this on Linux.

In the following, there is an overview of some of the apps that I wrote. They can still be installed on Palms. Source code for some is also provided.

UniMatrix

This PalmOS applications allows you to manage your lessons on your Palm. If you open the program it jumps to the upcoming lessons so that you see fast what comes next. It shows all needed information on one screen.
Some features:

  • Multiple semesters: Up to 16 semester can be managed.
  • Manage courses, events and exams.
  • Beaming Support: Courses can be beamed to another palm (You can also beam whole semesters).
  • Keep your data easily in one place. Homepage, email, phone, everything about a lecture in your Palm.
  • Alarm for exams (but not during an exam, UniMatrix will take care of it, only PalmOS >= 4).
  • Notes for events and exams.

UniMatrix was available in 13 languages (German, English, Portugues, French, Greek, Slovenian, Spanish, Czech, Dutch, Polish, Catalan, Korean, and Hebrew) due to the help of individuals around the world. Only the English version is provided for download at this time. Many people have used this application and contributed ideas and feedback. It was even described in a magazin article.

Source Installer Archive

UniSorter

This PalmOS application visualizes some of the standard sorting algorithms, such as QuickSort or Bubble Sort. I wrote it many years ago to teach myself (and others) sorting algorithms.

Source Installer Archive

UniMensa

Back in the days without ubiquitos online connections and without campus-wide university wifi, finding the mensa with the best fitting menu was a matter of luck. UniMensa and its companion framework enabled to sync the mensa plan at home and take it with you on a Palm. A web robot would crawl the university website to get the weekly mensa menu. This would then be converted to a Palm database. A mailing list permitted timely updates. The application supported multiple mensas and beaming (via infrared data) the menu to another device.

Source Installer Archive

UniChat

Before instant messenger became ubiquitos, UniChat allowed to transmit messages quietly using infrared communication. Useful in quiet lecture halls.

Source Installer Archive

Onager

This PalmOS applications is a frontend GUI for the file sharing software MLDonkey. It was an interesting exercise as the GUI network protocol had only very little documentation back then.

Getting the Palm online was a major undertaking, though. Just look at the adapter, more than the size of the PDA itself, that was required for Wifi. Later models such as the later TX then finally had integrated wifi.

Source Installer Archive

OHSmobile

At some point, back in 2002, we realized that there was no portal to find wifi hotpots close by, especially not when offline. We created the OpenHotspots project that intended to provide a portal to register free wifi networks. OHSmobile was a PalmOS application that allowed to synchronize an off-line database with local access points and search them (since GPS was not ubiquitos we could not simply show wifi networks close by). It also allowed to report new public access points. With more ubiquitos mobile devices, the project lost its relevance.