ppms is based on ppm (regarded by many as the best available compression technique) with modifications by Fabrice Bellard for speed and memory efficiency and by myself to support random access on smaller devices. I call this modified format ppms (for ppm, segmented).
The ppms program which is used to produce ppms files from plain text is available from http://www.timwentford.uklinux.net where there is also a comparison of file sizes produced by several compression methods. This is summarised below:
| Compression method | Size in bytes | Memory required to decompress |
| Plain text | 573714 | N/A |
| Makedoc (PalmDoc format) | 329543 | 2k |
| ppms (default) | 184187 | 350k |
| ppms (best) | 151733 | 800k |
| bzip2 -1 | 180175 | 340k |
| bzip2 -9 | 154280 | 2.2M |
The default settings used here were chosen to suit the Agenda VR3. I would expect the Zaurus to be able to use settings which give 170kb file size and 500k memory without any problem. The format encodes the settings used so the user may choose whatever suits them. I choose based on the amount of memory required and on whether or not pageup performance is acceptable.