
                
 |
Palm Operating
System History PALM OS 3.0
When
Palm released the Palm III in 1998, they thoughtfully included version 3.0 of
the operating system in flash memory for future upgrade potential. Flash memory
is a memory technology which stores data securely like traditional ROM (Read
Only Memory) chips, but can also be periodically rewritten when necessary.
Previous handheld models, including the Pilot 1000, Pilot 5000, and PalmPilot
Personal and Professional only included the OS in non-upgradeable ROM. While
these older devices can still be upgraded today by replacing their internal
memory cards (see "obtaining the upgrade" below), only flash memory allows full
software-based upgradeability at little or no cost.
PalmOS 3.0
represented a major milestone for Palm, providing a solid and stable platform
for applications, taking full advantage of what was then a state-of-the-art
16Mhz Dragonball processor, 4-shade grayscale display, and new infrared beaming
capabilities. The Palm III also represented a major commercial breakthrough for
Palm, gaining widespread acceptance for the first time. As such, virtually all
applications run under OS 3.0, and many require this version or
higher.
PALM OS 3.1
A slight upgrade to PalmOS 3.0, OS 3.1
premiered the following year on the Palm V, Palm IIIx , and Palm IIIe
handhelds. Supporting the new Dragonball EZ processing chip found in these
models, OS 3.1 contained other minor changes, mostly affecting the font and
text handling functions to bring them up to Windows-defined standards. OS 3.1
is still alive and well today, burned into ROMs on new Handspring Visor and
Visor Deluxe handhelds.
PALM OS 3.2
Later that same year,
Palm debuted its first entry in the un-tethered world of wireless connectivity,
the Palm VII. Included with the Palm VII was Palm OS 3.2, which added code for
wireless networking and support for Japanese and other languages. OS 3.2 also
added an improved serial interface library, allowing communications programs
and other apps to easily use the IR port and add-on peripherals as additional
serial devices. Older versions of the OS only supported the single serial port
at the bottom of the handheld. The new addition allows apps to communicate with
multiple serial devices simultaneously, and adds standardized access to add-on
modems, GPS devices, and digital cell phones. Interestingly, OS 3.2 was only
released on the Palm VII, with its additions incorporated later as part of OS
3.3.
PALM OS 3.3
While improvements to the operating
system were being steadily released on new devices, it wasn't until OS 3.3 that
Palm delivered on the promise of upgradeability by widely releasing an OS
upgrade kit. Appearing on the Palm Vx and available as a free downloadable
upgrade, OS 3.3 included all the improvements in previous versions, as well as
full OS support for the 16-shade grayscale capabilities of all modern handhelds
(the original Palm III and original Pilot and PalmPilot models only support
4-shade grayscale). While some programs had managed to add limited 16-shade
grayscale support by directly manipulating the Palm hardware, OS 3.3 added
support for the extra shades in all the system drawing, text, and interface
routines, allowing more complex apps to easily support them as
well.
Oddly enough, development on OS 3.3 reportedly ended with its
release. Possibly due to scheduling challenges in releasing the Palm IIIc on
time, OS 3.5 was instead developed based on the code of earlier versions, and
was probably developed in parallel with OS 3.3. While 3.5 duplicates all the
additions found in 3.3, this has the odd side-effect of leaving OS 3.3 an
"orphan" OS of sorts. While not generally an issue, there have been rare
reported conflicts, crashes, or other unintended "features" with some apps
running under OS 3.3 that does not occur on earlier or later OS versions due to
the differences.
PALM OS 3.5
A gargantuan improvement to
Palm OS came with the premiere of OS 3.5 on the Palm IIIc. Swelling in size
from roughly 1.2 Megabytes to about 1.7 Megs, OS 3.5 was chock full of internal
additions and modifications to the drawing routines to support color. For the
first time, it also had real interface improvements, including a new pop-up
icon bar for menu items, larger alarm dialogs, and masked record
support.
Under the hood, other changes included a new Notification
Manager to allow future programs to react to system-wide events, such as a
wireless antenna being raised or the display mode changing.
A more
critical change affected how working memory got allocated for the current
application. Under OS 3.0, the amount was fixed at 96 kilobytes. Under 3.5,
this was changed to vary depending on total RAM: 256kb for a device with 4Mb or
more of total memory, 128kb for 2Mb or higher, or only 64kb for a handheld with
less than 2Mb of RAM. This means that for most devices, programs typically have
more memory to work with at the expense of some file storage space. Because of
this, a few programs designed to run under OS 3.5 may not have enough working
memory to run properly on older versions of the operating system.
Other
internal changes, however, caused headaches for developers at the time. OS 3.5
changed slightly how applications interact with the display screen and
interface controls, and many programs needed to be updated to maintain
compatibility with the new OS. At this point, virtually all developers who
support their programs had fixed any problems, but there may still be issues
with older freeware or shareware programs that have not been updated in the
last year or two.
PALM OS 4.0
The newest kid on the block
is OS 4.0, which came out this spring on the new m500 series organizers from
Palm. Like moss to a stone that isn't going anywhere, many of the new features
in this release have been gathered externally. Included is a new Telephony
library to provide a common software interface to integrated phones and phone
peripherals, services once specific to devices like the Kyocera SmartPhone and
Handspring VisorPhone. Also included is the new Attention Manager, which allows
the user to view and manipulate upcoming timed events.
Perhaps the most
important update to OS 4.0, however, is the addition of the new Virtual File
System (VFS) library. This system provides a standard interface for the system
and apps to talk to external storage devices like Smart Media cards, Compact
Flash, and SD/MMC flash cards. With a standardized interface, software
developers can finally design applications to take advantage of add-on storage
devices without having to write separate code for each manufacturer's device.
VFS compatibility also comes standard on the HandEra 330.
CHOOSING AN
OS
So what does all this mean to you today? If you've got an m500 or
m505 running OS 4.0, you're sitting pretty because you not only have the latest
operating system, but you've got four megabytes of flash memory; a RAM-tastic
amount of space for future upgrades.
But what if you have another
handheld, say, one with only 2 Megs of flash? Don't fret, because you have many
expansion options. Even though the full install of OS 4.0 weighs in at a hefty
2.3 Megabytes, many of its components (such as the Telephony library) are
optional and can be omitted by the manufacturer, slimming down the OS enough to
fit in 2 Mb of flash.
So which OS version to choose ? One's first
instinct might be to always upgrade to the latest OS available, but this might
not be the best thing to do in a few circumstances. If you are particularly
fond of some particular older programs (particularly games), they might not
function properly if you upgrade your OS. To check, you can download the PalmOS
Emulator (POSE), and use it to run your apps in a simulated Palm on your PC,
using the OS version you intend to install. POSE is available in the developer
section on the PalmOS web site at http://www.palmos.com.
If your Palm is
absolutely packed to the limit with apps or data, you should know that
upgrading OS versions may force you to lose an invaluable database or favorite
game to make space for the new features. In general, you should consider
features, compatibility and space requirements in your decision. Benefits of
each OS include:
OS3.1: Excellent compatibility and minimal size,
leaving some 800k free flash space for storing apps there using FlashPro
(www.handera.com) or JackFlash (www.brayder.com).
OS3.3: Good
compatibility and minimal size. Adds full support of 16-shade grayscale on
Palms except Palm III and original PalmPilots.
OS3.5: Good compatibility
with all modern apps. Adds additional interface features and increasing program
working memory, but only leaves 300k free flash.
OS4.0: Adds standard
VFS library for expansion devices and Telephony library. Not yet available as
an official supported upgrade to older devices.
OBTAINING THE
UPGRADE
In order to install an OS upgrade, you need the OS in a file
called a ROM image. Palm has released upgrade kits for OS 3.3 (free) and 3.5
(small charge) with both ROM images and a program to rewrite ("flash") these
onto your Palm. The re-flashing tools and other ROM images are also available
for download from Palm's developer site. If you choose to upgrade to a version
not part of an upgrade kit, however, pay close attention to the warnings and
instructions Palm put on their web site as using the incorrect file can make
your Palm into a fairly function-free device. The Palm newsgroups are a good
source for information and hints about performing the process.
Older
Palm models such as the original Pilot or PalmPilot models can't normally be
re-flashed, but can be upgraded by replacing their internal memory expansion
boards with ones which do contain flash. SuperPilot 8Mb boards are still
available from HandEra (www.handera.com), though you can probably get a less
expensive used 2Mb board from someone who has upgraded their Palm III to more
memory.
Now here's the bad news. Each file needs to be customized by the
manufacturer to match your specific handheld, but not all devices have had
equal opportunity to upgrade. Upgrade ROM images have been plentiful for most
Palm Computing devices, HandEra has had a good record releasing ROM Images and
updates for their TRGPro and HandEra 330, but Handspring Visors don't have
flash memory so they can't be fully upgraded. Similarly, while Sony CLIE
organizers do use flash memory internally, they reportedly cannot be
user-upgraded. |