INTRODUCTION ============ This package is meant to make the Psion 5 series of PDAs, as well as other small computers running Epoc 32, more usable to non-Windows users. But even they may profit from the data I collected. The package consists of several parts: * Documentation about Psion 5 data formats; * A library which can be linked against application that have to read (and in the future, perhaps write) Psion 5 files; * An example command-line program which reads Psion files and writes more commonly used formats. DATA FORMATS ============ As far as I know, and have gathered from the newsgroups, Psion does not want or is not able to release the data formats of the saved files of their internal applications. I am trying to reverse engineer these data formats and to document them for general use. At this moment, I understand their Word, TextEd, Sketch, MBM, Clipart and Record files. I want this information to be available to everyone, in order to write better file conversion utilities for popular (non-)Windows programs. All documentation is written in Psion 5 Word. Fortunately, the utilities in this package can translate it to HTML and other formats. Unlike all other files in this package, the *.psi files in the directory formats/psion are completely public domain. I ask anybody who reproduces them, or uses their information in other programs, kindly to attribute them to me. The documentation files are not installed on a `make install'; you can find them in the subdirectories of the formats directory. THE LIBRARY =========== libpsiconv is a library of routines that you can link against your own application. It allows you to read Psion 5 files. Note that it comes under the GNU General Public License; that means that you can only link it to programs which are also covered by that license. You can contact me if you need other license terms. The following formats can be read at this moment: Word Word processor files TextEd OPL editor files Sketch Picture files MBM Alternate picture format; several pictures can be combined in it ClipArt Internal picture format; several pictures can be combined in it The parser is quite good at the moment. Page layout codes are not yet read, but almost everything that is described in the documents in the format directory is supported by it; but it can not yet cope with inserted objects (ie. documents in some other format). Documentation is scarce; please examine the source code or the example psiconv program. Some things may also be found in the doc subdirectory. THE PROGRAM =========== Psiconv is a command-line converter that reads Psiconv files and outputs more commonly used formats. It is linked against libpsiconv, and can handle anything that it can. Please enter `psiconv --help' if you want to know about its syntax. The current HTML3 target is not very ideal. HTML is just not made to represent detailed layout considerations: it is a document description language. Still, the output is quite readable already. Of course, headers and footers are not displayed, because there is no notion of pages in HTML. Tabs are also difficult; they are not supported yet. This can be solved using tables, but it is quite hard to do it correctly. Some other things are just approximated too. The HTML4 target uses style sheets. You need a not-too-old browser for this to display correctly. Generally, the output of this generator is of higher quality than the normal HTML generator's. A plain TEXT target just grabs all text, without any futher conversions. The RTF target is not finished yet; in fact, it is no usable at all right now. All ImageMagick graphic output formats are supported; depending on how you compiled ImageMagick, this is betwee 20 and 50 different formats. Your favorite one should be somewhere in there... I would very much like to add other targets, like (La)TeX, RTF (Rich Text Format) and XML (for AbiWord). If other people want to work on this, please let me know! Of course, you could also write your own conversion applications just using my data format description. Native import/export filters for some word processors would be very welcome! Psiconv is licensed under the GPL. Please read the included file COPYING for exact licensing information. Please contact me if you need some other licensing terms. NEWS AND FUTURE DEVELOPMENTS ============================ Starting with version 0.2, psiconv should keep all namespaces unpoluted. Starting with version 0.4, the conversion routines are linked into a (static or shared) library. Version 0.5 has autoconf and libtool support, and should run on many more platforms. Version 0.6 has support for graphics. High on the TODO list are input routines for Record files. Sheet files will be next. I am running into some trouble understanding Data and Agenda files, but with a little luck, I'll figure it out after all. This is more long-term though. On the output side, I hope RTF will soon be done. This will allow most office tools to read the Psion files. INSTALLATION ============ Please read the file INSTALL for installation instructions.