What is POSE?

What is POSE, and why do I need it?

POSE is the Palm OS Emulator, a free program from Palm Computing which runs on any Win32, Macintosh or Unix/Linux system. (POSE is sometimes called POSER, and is still sometimes called by the name of its predecessor, CoPilot.) POSE runs most Palm OS programs, most probably including yours. Since it uses real device ROM files, you can make it behave like any Palm device. This is useful for compatibility testing, especially with older devices.

POSE doesn't ship with any ROM files though: you have to download a ROM image from a real Palm device. However, there's an exception to this rule for developers, so you can test your programs with ROMs for devices you don't actually own. See the next question (WhereGetROMs) for info on getting ROM files.

POSE has other nice features, too:

 

  1. The download/test cycle is shorter with POSE than a real device since you can load your app into POSE instantly instead of going through a synch process with a real device.
  2. POSE lets you save the state of the machine to a file, so you can quickly restore the emulator to a known state. During debugging, it's easy to crash your Palm unit or to corrupt its memory; it's much less painful to crash or corrupt a POSE session than your actual Palm unit.
  3. POSE can use special debugging ROMs, which can detect several common Palm programming errors. Again, see the next question (WhereGetROMs) for info on getting these special debug ROMs.
  4. It's much easier to do source-level debugging with POSE than with a real Palm unit.
  5. POSE has a built-in stress tester called Gremlins, which is the electronic version of a sugared-up two-year old with an infinite attention span. It randomly bangs on your program until you tell it to stop, or your program crashes.

There are some things POSE can't do as well as a real Palm device. Depending on the speed of your PC, POSE might not be as fast as a real Palm unit. Also, POSE support for infrared, wireless networking, serial ports, or hardware expansion features (Springboard, etc.) ranges from hackish to nonexistent.

If you plan on using POSE on a Linux system, there is a HOWTO document that you will probably find helpful.

Today: Sep 8, 2010