TealPoint Logo



SEARCH
  
TECH ARTICLES

    The Palm Foleo - Thoughts for the Future
    Living with NVFS (updated)
    Crashes, Errors and PalmOS
    PalmSource Post Report
    What's That I Hear?
    Palms, ARMs, and Handhelds
    The Future of PalmOS
    Movies on the Move
    Hacks on your Handheld
  PalmOS Version-o-Rama
    Memory and the Modern Palm
    New PalmOS handhelds hit market
Help
      Am I Compatible?
      How to Purchase
      How to Install
      Get Support
      Tech Articles
      Contact Us
      Site Map

Company
    
Our Company...

      Press
      About Us
      Newsletter
      Online Store
    
Resources...

      Ad Banners
      PalmOS Links

HomeSoftwareAdd-InsGuidesCommunityPress

PalmOS Tech Articles > #3, September 2001

PalmOS Version-o-Rama
Evolution of PalmOS

Feeling behind the times? In the last two issues we've briefly touched on functionality of the PalmOS and the benefits of upgrading from one OS version to the next. In this issue, we'll continue by covering the relative benefits of each OS version in much closer detail, and how these benefits might affect which handheld to buy or your decision to upgrade to a newer OS version. As we'll discover, the choices are not always simple or obvious ones.

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. As covered in @Teal #2, 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, 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 (see @TEAL Issue #2) 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 (like us) 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 have now 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, appearing first on the Sony CLIE for their Memory Stick add-ons, 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 Sony CLIE and HandEra 330, and can also be added separately to some devices as a software library in development by Kopsis Engineering (www.kopsisengineering.com).

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, but those for PalmVII have been hard to come by. 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.

PURCHASING ADVICE
So how should upgradeability affect which new handheld to buy? Hopefully, this article will give you an idea of what each OS version offers, and the value of future OS upgrades. Most new handhelds ship with OS 3.5 or higher, though Visors and Visor Platinums still ship with OS 3.1. By purchasing a handheld with flash memory, you don't have to be locked into a single OS version. This gives you flexibility you can't get with limited RAM patches, which are typically released only to address specific bugs or issues in the OS.

However, while the ability to upgrade is definitely a plus, it's not the only factor to consider in making a purchase decision. Flash chips are more expensive than ROM chips, and this price difference is often reflected in the final price of the organizer. Also consider how long you realistically will keep the same handheld. Immediately after shelling out a few hundred bucks on a new handheld, the unit will seem like a lifelong friend you'll keep forever. After two or three years, however, your friend will likely appear quite a bit less zippy and entertaining than he (or she) once was. So if you think you might find yourself tempted to go make friends with a newer model after a few years, it might be worth foregoing flash memory if features and/or price would otherwise have you strongly leaning towards a non-upgradeable model. You could then use any cost savings to, say, register some quality apps from a PalmOS software developer. ;)

<<previous articlenext article >>

Home  |  Software  |  Add-Ins  |  Guides  |  Community  |  Press  |  Support  |  Site Map

This site is best viewed at 800x600 with Internet Explorer 4.0 or Netscape 4.0 or higher.
(c)1997-2008 TealPoint Software All rights reserved.