OPX Epoc operating system extensions

OPX extends the Psion operating system.

OPXs are programs written in C++ that extend the functioning of the Psion EPOC operating system. They can then be called by Psion's OPL language. They are provided by both Psion and other software developers.

A newer version of an OPX should always be compatible with an older version, and thus any program should be able to run with the latest version. The SIS installation system should prevent an older OPX from overwriting a newer one. If a program is using an OPX, then a newer version will be prevented from updating the old one, so it is a good idea to close programs if updating OPX files.

If programs are removed using the Add/Remove feature, they may remove an OPX that you need for some other program. This can occur if a program SIS file includes OPX files. A new program that requires an OPX that may be used by any other program should install the OPX correctly, so that it will not automatically be removed when the program is removed.

This is covered in the OPL knowledge base at www.symbiandevnet.com
; shared OPX
@"<path>\shared.OPX.SIS",(UID3)
with UID3 of shared.OPX in hex with a leading 0x

Programs that are to be updated must retain the same case sensitive name.sis across all versions of the .sis file, or you will end up with different entries in Add/remove, all pointing at the same program. You could use a version number in a zip file, but not on the .sis Not sure where that is documented. That tip (like many others) came from Sander van der Wal.

What we really need is a way of checking program dependencies before a program is removed, and one is provided by Psion in their install.

Some people made a sub-folder of OPX backup files, just in case this happens.

John McAleely maintains a more comprehensive treatment of OPX than I do, and it would be a good starting place for more information (I found it after I got started).

Another extensive list of OPX is at http://www.dp.com.my/OpxTable.htm

Symbian OPX

Symbian Developer Network have released a number of OPXs that extend the EPOC operating system. These were once at www.symbiandevnet.com/downloads/opl/projectopx/projectopx_rel.htm their projectopx site, but seem to have disappeared yet again, and are now reported (thanks Leigh) to be at www.symbian.com/developer/downloads/projectopx_rel.html

These are generally copied to C: or D: \System\Opx If there is an equivalent .oph header file included, these generally go into \system\opl

Agenda.opx
Access Agenda ER3 files. v1.01, 10 Sept 1999, 7kb. Maintained for ER3 systems. Source code in C++ and OPL also available. For ER5, use Agenda2. [Symdevnet]
Agenda2.opx
Access Agenda files. v5.00 17 June 1999, 23kb. For ER5. [Symdevnet]
Alarm.opx
Access the 8 alarms and World cities database. v5.10 20 March 2000, 19kb. [Symdevnet]
Bmp
Sprite support, from Symbian. In ROM.
Buffer.opx
Buffer search and copy, use with dEditMulti. v5.00 19 June 1999, 8kb. [Symdevnet]
Contact.opx
ER5 vCard Contacts engine. v1.00, 11 Oct 1999, 18kb. [Symdevnet]
Data.opx
Access all DBMS field types. v5.00, 17 June 1999, 21kb. [Symdevnet]
Date.opx
Bug fix for ROM date.opx. Not required for ER4 or ER5. v1.01, 17 June 1999, 15kb. [Symdevnet]
dBase
DBMS functions. Symbian. In ROM.
DBUtils.opx
DBMS additional functions, especially for ER5. v1.00, 11 Oct 1999, 7kb. [Symdevnet]
Music.opx
Music and DTMF phone tones. v5.00, 17 June 1999, 7kb. [Symdevnet]
Printer.opx
For text and biutmap data printing. Built into the Psion ROM. Suitable for material in paragraphs, but not for vector graphics, nor charts and tables. See gPrinter.opx below.
Scomms.opx
Send and receive via IrDA. Adds the IrCOMMS (like a serial port) features to the existing TinyTP. v1.01, 17 June 1999, 117kb. Also SComms.oxh [Symdevnet]
Spell.opx
Access spelling checker. v5.00, 17 June 1999, 10kb. [Symdevnet]
Subst.opx
Adds subst like DOS, makes drive tree access easier. v5.00, 17 June 1999, 7kb. [Symdevnet]
SysRAM1.opx
Access system information, bug fixes for OPL commands. v5.20, 7 Aug 2000, 16kb. [Symdevnet] Version specific?
Sysinfo.opx
Access System setings set via Control Panel. v5.10, 7 Aug 2000, 22kb. [Symdevnet]
System.opx source code
Full working example for developers. v1.01, June 1999, 10kb. Included in all Psion ROMs. Has stuff like IrDA TinyTP which allows Psions to communicate with each other. [Symdevnet]

Third Party OPX

Alarm
Use the 8 alarms and World database in your own programs. Source included (may do same as Psion version). RMRSoftware www.rmrsoft.com
AldurFile.opx
OPX "AldurFile.opx" by Graham L. Holden. I think it is a file path navigator. Rolf Brunsting mentioned it in 2003.
AppInfo.opx
Application information, UIDs, all installed apps, icons, simulate events with development kit, from Andy Clarkson at www.twiddlebit.com
CDescriptor.OPX
CDescriptor.OPX (used in S5TV) www.starship.freeserve.co.uk/opxapps.html
CComm.opx
Keith Walker's CComms.OPX (used in S5TV) can be found at www.starship.freeserve.co.uk/opx.html
CDescriptor
Keith Walker. Descriptors for Epoc. See CComm.
CDescriptor
Keith Walker. Objects. See CComm.
CFile
Keith Walker. File system services. See CComm.
ClipBit
Access bitmaps for clipboard and MBM files, from EMCC.
ClipText
Access text for clipboard, from EMCC. Version specific?
CSocket
Keith Walker. Sockets and TCP/IP. See CComm above.
Database
More database functions (from Symbian?). Source supplied. Via RMRSoftware www.rmrsoft.com
E32er.oph
Apparently contains all the error codes SComms.opx can throw out. Mentioned by Barry at taximania..net
FTP OPX
From X-Soft. Includes a demo program that connects and uploads to a server. Version specific?
GPrinter.opx
Graphics printing, especially vector, table and charts, with development kit (originally for Plan 5), from Andy Clarkson. Version specific? www.twiddlebit.com
JpegMbm.OPX
You will find a SHEET named "Displaying a JPEG on a Psion". Go to www.opl32.com and follow the link "FICHES", then "OPX". Francis Goguelat www.opl32.com or maybe direct to www.opl32.com/Trucs/OPX/JpgVIEW.htm
Message.opx
For ER3 (Psion 5 classic) only. No details of operation, but may be related to vCard. RMRSoft www.rmrsoft.com
nDirNav.opx
Faster dFILE replacement file browser. From Neuon www.neuon.com
nEdit OPM
Graham Parks, shareware. Fully EIKON compliant edit window for use by OPL developers. OPM allows you to mimic the edit windows used by C++ authors in your own OPL applications. Includes support for zooming, full clipboard interaction and edit operations. With opx supplied buffers, nEdit supports the embedding of single or multi-line asynchronous edwins directly into an OPL window so they can be used as persistent 'form' controls rather just inside a dialog window. Supports any font style and zooming. Horizontal and vertical scrolling. Full clipboard support. Access the system special character dialog. www.neuon.com/
nlistbox.opx
Listbox user interface. From Neuon www.neuon.com
nmpd.opx
Multipage dialog from Neuon www.neuon.com
OPXScan
OPXscan application scans and reports active and inactive (potentially duplicates) OPX files and also scans for Programme files and reports all the OPX files linked to them! A useful little application written by Ralph Sprenger. www.psionwelt.de/ralphsprenger/
RunMime
Mine type identifier. Launch documents by type. mBrainSoftware Sander van der Wal.
Spellchecker
use the spellchecker in your own programs. RMRSoftware. www.rmrsoft.com
Subst OPX for CF by Otfried Cheong
OPX code provides DOS "Subst" function. Handy with a large CF card, because otherwise the system scans the whole card when you move to it. Was at www.cs.ust.hk/~otfried/Psion or ask otfried at cs.ust.hk
xdata.opx
Was at http://x-soft.cz

OPM - stand alone OPL functions from others

Various people have made OPL modules they use available to others. I've listed some I have encountered.

Clipboard OPM
Mark O'Neill. Read and write clipboard strings. www.freepoc.de
Menu.opm
Handles menus and keystrokes, returns key combinations. www.epotech.co.uk
OPMLoader.opm
Code for loading Epotech OPM files www.epotech.co.uk
PopUp
Mark O'Neill's scrollable popup menu. Add it to your OPL programs. Formerly at http://www.i27.com
ReadWrite.opm
Read and write text to and from a file. www.epotech.co.uk
Rsc.opm
Use a text file as a resource file, for settings, storing variables. www.epotech.co.uk
RS232.opm
Send and receive data or files via serial port. Single line command for file sending. www.epotech.co.uk
Toolbar
Jason Kneen. Toolbar module. Maybe from PocketIQ?

This site will look much better in a browser that supports W3C web standards but it is accessible to any browser or internet device, including Psion Web and similar PDA or limited browsers. Netscape 4.x users - turn Style Sheets off. Your style sheet support is too broken to use (sorry).


ericlindsay.com -> epoc -> miscellaneous -> opx

Contact Webmaster PO Box 640, Airlie Beach, Qld 4802 Australia