DP4 for Windows CE - Revised 13 Jan 2005

Level Of Facility

DP4 for Windows CE provides access to DP4 databases resident on a 'handheld device'. Most run time DP4 utilities are available, but their screens have not been adapted for the smaller displays typically found on CE devices. (However, for 4.621, some maps have been adapted for typical Pocket PC screens). You will probably find it convenient to run DP4 utilities on a PC connected to a CE device via DP4 networking, and install only a minimal set of DP4 on the CE device itself. Database files can be transferred between CE devices and other operating systems.

DP4 for Windows CE is very similar to the regular Win32 version of DP4: in particular, DP4 networking is fully supported, allowing a Windows CE device to act as a server to, or a client of, any other machine running DP4 (including Linux or Unix machines). The primary differences are as follows:

Supported Devices

Because CE devices come with a considerable variety of processors and different operating systems (even on devices from one manufacturer and using the same model name), it is difficult to be certain that DP4 for Windows CE will run on any particular device. However, DP4 will probably run on almost any MIPS, StrongArm, or Intel XScale based device running a Windows CE 3 or later based operating system such as Pocket PC,Handheld PC 2000, Pocket PC 2002, or CE.NET. Your device will also need to support Pocket Explorer and ActiveSync, otherwise it will be more or less impossible to install DP4 on it.

DP4 has been run on MIPS, and Strongarm, based Casio Cassiopeia Pocket PCs, and the Casio IT-500 (a CE.NET Intel XScale device) the HP Jornada (Handheld PC 2000 and Pocket PC 2002 versions), the Fujitsu Pen Centra (Handheld PC 2002) and Intermec Pocket PC (Pocket PC 2002), a variety of Compaq/HP Ipaq devices, XDA II mobile phones (CE.NET 4.2), and Psion Teklogix devices. Please ask about support for other devices.

If you have an Intel XScale device, you may need to try each of the "Thumb", "ArmV4" and "Arm" versions of DP4 on your device. (ArmV4 support is introduced in 4.622). The XScale processor is capable of running all these types of program, but in our (somewhat limited) experience, most devices will run either the "Thumb" or the "Arm/Armv4" sets, but not both "Thumb" and "Arm/ArmV4" programs. (Exceptionally the Psion Teklogix can run either type of program). If you have a CE.NET device we recommend you try the ArmV4 set first, then the Thumb set, and only then the ARM set. If supported the ARMV4 programs should be used in preference to the ARM programs as the latter are built with quite an old version of the Windows CE SDK, and although they run may possibly have subtle incompatibilities with Windows CE.NET.

Installation

We have not yet prepared an installation program for the Windows CE version of DP4 (and may well not any time soon). The directory \version\wince\processor (for example \620\wince\mips) contains a directory called DP4. This is arranged identically to the recommended installation on a CE device. It is only necessary to copy this directory to the root directory of your CE device (Make sure you do not simply move this folder to My Documents or anything similar on the CE device), for example by using drag and drop inside Windows Explorer once you have set up a partnership to your CE device using ActiveSync. You can install in another directory, for example, in a flash disk or storage card that CE has mounted as a subdirectory of the root, but in that case you will need to use DFSETUP to change the disk locations contained in dp4.sys - it is probably easiest to install in \dp4 first and then copy the installation to the new location prior to using DFSETUP. You may well find it convenient to first copy the directory to a PC so that you can remove DP4 utilities you will not need on Windows CE.

DP4 is loaded and configured almost as on regular Windows operating systems with only the minor differences caused by name changes. Apart from the differences resulting from name changes, the format of dp4.ini is identical to that of the regular Windows DP4 configuration file.

The DP4 configuration file should be edited as a plain text file. It should be an ASCII file, not a Unicode file.

DFSETUP & DP4.SYS

Both this file and the DP4 licence file (always DP4.SYS for Windows CE) are required to reside in the location specified for DP4HOME in the DP4 configuration file or same directory as syslibce.dll by default. Because there are no drive letters on Windows CE you cannot use an existing licence file without first editing it to remove any drive letters in the directory specifications. Initially you will probably have to create DP4.SYS using DFSETUP on a PC to edit a copy of the DP4 license file.
E.g. Copy your licence file the directory C:\WINCE and then use the command; DFSETUP -FROM C:\WINCE\

Starting the DP4 'Service'

In theory the DP4 will start automatically as on regular Windows if a DP4 program is run. In practice there are some problems with autoload:

Databases

It is recommended thet .IND and .DAT files are placed in the directory \DP4\DB\ on the Windows CE device and that the DP4.SYS is set accordingly. Alternatively you can use a flash disk or storage card if you have one.

Databases which are to be accessed on Windows CE devices are required to use number system 9. Failure to do so will probably cause programs to fail with data alignment exceptions.

Please make sure you use the Console/Transaction logging option of DFSETUP to set suitable maximum sizes for the various types of log file. If your dp4.sys is based on one used on a PC it will most likely contain values for these options that are completely unsuitable for Windows CE.

DP4 Programming for Windows CE

There are several possible ways of developing DP4 programs for CE devices: