Palm Development

content partially from D. Allen and from www.palmos.com

Wireless Application Options

The Palm is a popular handheld device. One reason for its popularity is the ease with which individual programmers could write small, useful applications that integrated with other applications that are part of the Palm Platform. They have an active developer community and it is easy to access the information developers need to begin to develop applications for the Palm. Their Palm's Developer Website is well organized and contains all the information needed to get started.

 

Palm Emulator

We can do development and testing for the Palm platform on our Windows, Unix, or Linux machine. An emulator, POSE, can be downloaded (for free) and installed on our home (or work) computer. This emulator can be used to test our Palm applications.

 

Go to www.palmos.com and search for the Palm OS Emulator and download it for your operating system:

1) Download SW Palm OS emulator (POSE)

2) Join Developer Site so you can download from www.palmos.com one or more ROM images. You need at least one ROM imageto run the emulator:

  • ROM image= contains all of the code used for a specific version of the Palm OS. One for each version of the Palm OS

After starting POSE you will create a new session and specify what kind of Palm OS and its corresponding ROM image file as follows:

3) Read about how to use POSE on the www.palmos.com web-site (e.g. at http://oasis.palm.com/dev/kb/papers/1311.cfm)

4) Now you are ready to install an application,etc.

 

Native Code

While the standard tool used for Palm native code development is MetroWorks CodeWarrior, a commercial product, a free toolchain (preprocessor, compiler, assembler, linker) that can be used to develop Palm native applications is available for free. There is a version of the GNU toolchain that produces code for the Palm, but runs on Windows, Unix, or Linux machines. It is what is commonly called a cross-compiler. Information on getting that free cross-compiler as well as other needed tools is available at Palm's Developer Website.

 

 

Web Clipping

It can be challenging to develop web based applications that work well on PDA's such as the Palm. In addition to the small screens, the (relatively) slow processors and restricted amount of memory available, a successful web application targeted at the Palm must also consider the low bandwidth, high latency wireless connection that is available for internet connectivity. To address these issues, Palm created their web-clipping architecture. This allows web developers to compile parts of their application (ideally as much as possible, all the static content in their web based application) and load that into the Palm. This serves to limit the amount of information that must be transmitted to the device when using the application, speeds the rendering process in the browser on the palm, and by restricting the HTML accepted (we must use their DOCTYPE) ...

  • web clipping application = is a set of HTML pages compressed into a special format called PQA (Palm Query Application) and downloaded onto the device. Users fill out the HTML forms provided by these pages. When they tap the Send button, the web clipping application sends the request to the Palm.net proxy server which translates it into an HTTP request that is forwarded to your company's web server. Typically, the web server runs a CGI script that generates the next page. That page is relayed to the Palm.net proxy server, compressed, and downloaded to the device.
  • how to create it? you write a set of HTML pages and run them through the free Web Clipping Application Builder tool to create a WCA. Web clipping applications are written in a subset of the HTML 3.2 specification. Many of the usual tags for things like tables, forms, checkboxes, radio buttons, select lists, and font sizes are supported. However, in order to work well even though constrained by the limited bandwidth available on the wireless connection, web clipping applications do not support more resource intensive features such as JavaScript, nested tables, frames, cookies, or Java.
  • information about how to develop
  • Creation and testing
  • Remember, this is not web browsing, but web clipping. Web clipping appplications should be written to provide users with only the information that they need without any extraneous items. Try to limit the size of your result pages to about 400 bytes.
  • Important Meta Tags
  • Other HTML tips

 

File Extensions

An application (.prc)

A database (.pdb)

A Palm query application (.pqa)

 

Items to Install and Where

1) Palm OS Emulator (w/ skins) (currently see note on naming of directories). Place in C:/Palm

2) Palm ROM Images. Place in C:/Palm/ROMImages . Each one place in a separate subdirectory with the name of the version of the ROMImage (e.g. ROMImageOS4.0 for the OS version 4.0)

3) Palm's Web Clipping Application Builder. Place in C:/Palm/WebClipping

4) Any web clipping applications you create place inside of C:/Palm/WebClipping/MyPQAs

 

 

Documentation

HTML 3.2 can use on Palms

Tutorial on Web Clipping

Web Design Issues for Palms

Some Palm web-sites

Web-Browsers for Palms

A Rom that works and does Web Clipping

© Lynne Grewe