This page contains the following two manuals related to the MKIII Datapak Copier:
© copyright Psion Ltd 1987. All rights reserved. This Manual and the programs referred to therein are copyrighted works of Psion Ltd, London, England. Reproduction in whole or in part, including utilization in machines capable of reproduction or retrieval, without express written permission of Psion Ltd, is prohibited. Reverse engineering is also prohibited.
Psion Ltd makes no representation that the interconnections of its products in the manner described herein will not infringe on existing or future patent rights, nor do the descriptions contained herein imply the granting of license to make, use or sell equipment constructed in accordance with the descriptions.
The information in this document in subject to change without notice.
The MKIII Datapak Copier provides the facility for standalone copying of MKII Organiser Datapaks (up to 8 at a time) and for the direct transfer of data between other computers and the packs.
The main features of the copier are:
The software supplied with the copier provides some additional facilities for directly examining the contents of packs, searching for bytes and for verifying data between packs, etc.
All types of MKII Organiser Datapacks are supported: 8k, 16k, 32k, 64k, 128k, EPROM, and RAM packs.
The red switch on the front panel above the Organiser is used to switch on the copier. The Organiser will power itself up automatically when this switch is on, and will load and run the software which is present in Slot C.
Note the following:
The copier has 9 green LEDs, a green 'status' light and a red warning light. Their purpose is as follows:
See section 4.8 for the lights test.
When the Organiser is powered up, a menu containing the following items is displayed:
COPY DUMP VERIFY QUERY INFO RS232 LOCK-PC TEST
These options can be selected in the same way as the items in the Organiser standard menus, by pressing the initial letter of the selection required, or by use of the cursor keys and the EXE key.
COPY is used for duplicating MKII Datapaks and supports the following features:
When the COPY option is chosen, a new menu will be displayed:
CPY CPY_C CPY_W COPY_CW CPY_NP
These options will produce target packs with the following protection:
CPY | - same protection as master. |
CPY_C | - copy protection only. |
CPY_W | - write protection only. |
CPY_CW | - copy and write protection. |
CPY_NP | - no protection. |
Select the one you require in the usual way and the screen will show, for example:
INSERT MASTER same protection
The bottom line contains a message confining the choice of protection selected.
The pack to be duplicated should he placed in the slot marked M and the EXE key pressed.
When using the COPY option, the EXE key will always take you to the next step in the copying process and the ON/CLEAR key will return you to the INSERT MASTER prompt. Pressing ON/CLEAR when INSERT MASTER is displayed will exit from COPY and return you to the TOP LEVEL MENU.
The master is now checked to be a valid MKII Organiser pack. If it is not, an error will be displayed followed by "press space key". SPACE or ON/CLEAR must then be pressed to go back to INSERT MASTER.
If the pack is valid, the screen will now display:"
INSERT DATAPACKS data size= nnnnn
"nnnnn" is the size of the data to be copied (in hex). Up to 8 blank packs should now be inserted in slots 1 to 8 and the EXE key pressed. The packs must all be the same size and must be at least as large as the data size displayed.
The packs are now 'sized' which involves blank checking the entire pack and determining its size and type. If any pack fails, or if the target packs are not of identical type an error will be reported in the following manner. The tope line will display SIZED: followed by eight characters representing each of the target slots, while the bottom line will display a general description of the error that has occurred.
The eight characters indicate the status of each slot and may be any one of the following:
_ | - An empty slot |
w | - A write error has occurred |
b | - The pack is not blank |
v | - A verify error has occurred (after copy only) |
1-8 | - The pack has been sized without error |
For example, the following may be displayed:
SIZED: 123wb___ BAD PACK(S)
This would mean slots 1,2 and 3 contain good blank packs, slot 4 contains a pack which cannot be written to, slot 5 contains a pack which is not blank and slots 6, 7 and 8 are empty.
If the packs present are all good but of different sizes or types the following may be displayed:
SIZED: 12345___ PACKS DIFFERENT
The offending packs should be replaced or removed and 'the EXE pressed to repeat the 'sizing' process.
If all the target packs are good blank packs of identical type, the size of the packs is checked to be sufficient for the size of data to be copied. If the packs are too small, the following error will be reported:
TARGET TOO SMALL press space key
Press the space key to return to the INSERT DATAPACKS prompt. When all packs are good, blank, identical and of sufficient size, the copying process will begin. The screen will show:
COPYING nnnnn
"nnnnn" is the current pack address (in hex) at which copying is occurring but is only refreshed every 256 bytes. Copying will continue until either all bytes have been copied or all the target packs have failed.
When copying has finished, the packs are individually verified. The screen will show:
VERIFYING...
The results of the copy are then displayed in a similar way to sizing. The top line of the display will display: COPIED: followed by eight characters representing each of the slots. If any pack has failed to copy for some reason, COPY ERROR will be displayed on the bottom line. If, for example, there are packs in slots 1 to 5 and they have all been copied and verified ok, the following will be displayed:
COPIED: 12345___
If the display shows:
COPIED: w234v___ COPY ERROR
this means that the pack in slot 1 has failed whilst being written to and the pack in slot 5 has failed the verify pass. The packs in slots 2, 3 and 4 have all being copied and verified correctly. Slots 6, 7 and 8 are empty.
If you wish to make further copies of the same master pack, press the EXE key to return to the INSERT DATAPACKS prompt. Otherwise press the ON/CLEAR key to return to the INSERT MASTER prompt. Pressing ON/CLEAR a second time will exit from COPY.
DUMP is used for examining the contents of a pack. Bytes can be searched for and a 'negative' search is provided (this can be used as a blank check). When the DUMP option is chosen the screen will show:
PACK? 0-9 :
Press a digit 0 - 9 to select the pack you wish to examine.
0 | - for the master slot (slot M) |
1 - 8 | - for the slots 1 to 8 |
9 | - for the internal ram card (if fitted) |
The copier will then read the header of the pack you selected to determine the size and type of pack to be read. If this header is ok, the screen will display the bottom 8 bytes of the pack end you can use the cursor keys to move up the pack, see below. If this header does not conform with the MKII standard header, one of the following errors will be reported:
BLANK HEADER | - if the bottom bytes are ff |
NOT PRESENT | - if the bottom bytes are 0 |
NOT A MK2 PACK | - if the id byte is invalid |
BAD MK2 SIZE | - if the size byte is invalid |
The bottom line of the display will have the message:
EXE to set size
If you now decide not to examine this pack, press the ON/CLEAR key to exit from DUMP. If you wish to continue press the EXE key and you will be presented with the following choice of pack sizes:
8k 16k 32k 64k 128k
Position the cursor over the size of the pack you are examining and press the EXE key.
You are now presented with a list of the bottom 8 bytes of the pack in the following format:
6E 04 01 FEo0000 10 FE 00 19o0004
"o0000" is the address of the byte in the top left hand position (the 6E) and "o0004" is the address of the byte in the bottom left hand position (the 10). The 'o' character represents the most significant bit of the address and for addresses greater than FFFF, this will change to a '1'. You can use the UP and DOWN cursor keys to move up and down the pack and when the end of the pack is reached, the address will wrap around to the start.
The display format can be changed from hex to ascii pressing the RIGHT arrow key and back to hex with the LEFT arrow key. When displaying in ascii, 16 characters can be shown an the screen, e.g.:
n....... o0000 .x..MAIN o0008
The "." characters represent characters outside the standard ascii set ($20 to $80).
Pressing the EXE key will begin a search for the 'current search character', which is 'non FF' by default (i.e. a blank check). To alter this character press the MODE key.
Pressing the MODE key will present you with the following menu:
GOTO SEARCH NSEARCH
To jump to a particular address on the pack, select GOTO and the screen will prompt you to enter a hex address:
ADDRESS:_ (in hex)
Enter the address you require and press EXE. The screen will then display the bytes from that address.
SEARCH and NSEARCH are for changing the current search character. NSEARCH is for 'negative' search. You will be prompted for a hex byte:
SEARCH FOR:_ (hex byte)
Enter the byte you wish to search for and press EXE. The search will begin at the address of the first character in the BOTTOM line of the current display and will continue up the pack. When the byte is found, the screen will be refreshed with that character on the top line. Pressing EXE when the screen is displaying bytes on the pack will always continue the search.
The search will 'wrap around' the pack but if no bytes are found:
xx NOT FOUND
will be displayed, where xx is the character being searched for.
While searching, the display will show:
Searching for xx
To abort the search press ON/CLEAR and you will return to the original pack address.
NSEARCH works in a similar way.
Note that while running the DUMP option the packs are always switched on (the red warning light will be on), so Datapaks must not be removed or inserted into any slot.
VERIFY is for checking whether the contents of one pack are identical to the contents of others. Note that different size packs can be verified against one another because the bottom 10 byte header is not checked. However, all target packs must be of identical size and type.
The VERIFY option is used in a similar way to COPY. You are prompted to INSERT MASTER then INSERT DATAPACKS. The results of the verify are displayed in the usual way, e.g.:
VERIFY: 1234v___ VERIFY FAIL
This would indicate that packs 1,2,3 and 4 have verified ok, but pack 5 has failed to verify. Slots 6,7 and 8 are empty.
The QUERY option is for reporting the size and type of a particular pack. It will also tell you if the pack is bootable, copy protected or write protected.
When QUERY is selected, you are prompted for the pack you wish to examine. As with the DUMP option, enter:
0 | - for the master slot (slot M) |
1 - 8 | - for the slots 1 to 8 |
9 | - for the internal ram card (if fitted) |
The copier will then read the header of the pack you selected to determine the size and type of the pack. If the header does not conform to the standard MKII pack format an error will be reported before exiting from QUERY.
If the header is ok the following information will be displayed on the top line:
Size: | 8k, 16k, 32k, 64k or 128k |
Type: | LINEAR or PAGED EPROM or RAM |
The bottom line will report if the pack is bootable, write protected or copy protected. If any of these are not true, they will not be displayed. For example:
64k PAGED EPROM bootable, copy protected
indicates a 64k paged eprom Datapak which is bootable and copy protected but not write protected. The bottom line will scroll if it has more than 16 characters.
INFO will display the version number of the software controlling the copier, the serial number and the configuration of the copier, the serial number is a unique decimal number in the range 0 to 2047 used for identification purposes. The configuration is a 4 bit binary number whose bits have the following meaning:
bit 0 | = always set |
bits 1 and 2 | = 0 - No external interface
= 1 - 128K ram card fitted = 2 - 256K ram card fitted = 3 - External board fitted |
bit 3 | = reserved. Currently 0 |
For example:
MKIII Ver 1.0 S/N 0003 CF 0001
This indicates the version of the software is 1.0, the serial number is 3 and there is no external interface or ram card fitted.
When the RS232 option is selected, the screen will show:
COPIER EXTERNAL INTERFACE V1.0
The copier will wait for RS232 communication. For details see section 6.2. Press ON/CLEAR to escape and return to the top-level menu.
LOCK-PC is to prevent accidental interruption of PC control. When the copier is displaying the top-level menu, a PC can control the copier, but if one of the options in the menu is selected the Organiser may take back control.
When LOCK-PC is entered, the screen will display:
PC CONTROL
All keys will be disabled except the ON/CLEAR key. When this is pressed the following will be displayed:
PC CONTROL UNLOCK PC Y/N
If N or ON/CLEAR is pressed, the screen will revert to PC CONTROL. Y must be pressed to escape back to the top-level menu.
When TEST is chosen, a menu is displayed containing 2 items: LIGHTS and RS232. Select the one you wish to test in the usual way.
When LIGHTS is selected, all lights on the copier will be switched on and the display will say LIGHTS ON. Pressing the EXE key will toggle between LIGHTS ON and LIGHTS OFF. Pressing ON/CLEAR will exit TEST.
To use the RS232 test, a special 'loopback' connector is required. This is a 9 pin D-type male connector with pins 2 and 3 linked and pins 4 and 5 linked.
The display will prompt:
INSERT LOOPBACK CONNECTOR
This must be inserted in the 9 pin D-type socket at the back of the copier before pressing EXE to begin the test. If the test passes the display will show:
RS232 LOOPBACK OK!
Press ON/CLEAR to return to the main menu.
The MKIII copier can have an optional 128K or 256K ram card fitted. The INFO option will inform you of the size.
The ram card cannot be accessed by the copier on its own. It is only for use through external communications.
The MKIII copier can communicate through a parallel interface via control from a PC or through a standard RS232 interface.
The MKII copier can be directly controlled through its parallel interface (usually by an IBM PC or compatible). To use this facility a user-specific program running on a PC is required.
The MKIII copier can be controlled through the RS232 interface. To use this facility a user-specific program running on a PC is required.
All rights reserved. This manual and the programs referred to herein are copyrighted works of Psion PLC, London, England.
1 INTRODUCTION ABOUT THIS MANUAL ABOUT THE COPIER UTILITIES 2 THE "CMAKE" UTILITY Flags For CMAKE A CMAKE Log File Example Use Of CMAKE 3 THE "CUNMAKE" UTILITY Flags For CUNMAKE A CUNMAKE Log File Example Use Of CUNMAKE 4 THE "CADDF" UTILITY Flags For CADDF A CADDF Log File Example Use Of CADDF 5 THE "CEXTF" UTILITY Flags For CEXTF A CEXTF Log File Example Use Of CEXTF 6 THE "SPLIT" UTILITY Flags For SPLIT A SPLIT Log File Example Use Of SPLIT 7 ERRORS AND STATUS MESSAGES Returned Error Numbers Pak Status Numbers Technical Status Messages A ORGANISER PC FILE EXTENSIONS
This manual assumes basic knowledge of Psion Organiser II data files and Datapaks, and the use of DOS on PCs or PS/2s. It explains how to run each of the utilities and what they can be used for, and gives examples of their usage.
The word "pak" is used throughout to mean "Datapak or Rampak", and "PC" is used to mean an IBM PC/XT/AT, PS/2, or similar compatible machine. The term "data file" means only an Organiser data file, and not an Organiser procedure file.
The Mk-III Copier File Transfer Utilities are a set of programs which allow you to transfer both Organiser data files and entire pak contents between a PC and a Psion Mk-III copier. Two floppy disks are supplied, containing different versions of the programs - one for parallel communication and one for serial (RS-232). You should copy the programs onto either a hard disk or another floppy disk and run them from there, keeping me original disks as backups.
The programs are aimed at Organiser II system developers, as an aid to data gathering and data distribution. The "parallel" disk contains the following programs:
By default the LPT2 port is used if present, since it will usually be a modified parallel board. Otherwise, the default is LPT1.
The "serial" disk contains serial versions of the first four programs (called CMAKES, CUNMAKES, CADDFS and CEXTFS) with another copy of the SPLIT program which, since it runs entirely on the PC is the same on both disks. Apart from using serial communication, the versions on the "serial" disk work in exactly the same way. If you use a serial communication, connect pins 2, 3 and 7 from your PC to the copier, and select RS232 from the menu on the copier itself. By default, the COM1 port is used. No error-checking is used in serial communication with the copier.
Developers may also find Psion's "Organiser Developer" package useful - for example, it contains the BLDPACK utility, for putting together pak image files on a PC, which is referred to elsewhere in this manual.
The Copier Utilities run under MS-DOS or pc-dos (version 2.0 or above) on all versions of the IBM PC, XT, AT, PS/2 and compatibles. You may communicate with the MK-III Copier via any serial port, or via a Psion-modified parallel port on the PC.
All five programs are ordinary DOS executable files and can be run from the DOS prompt, and all five require you to specify the name of file to use. Each has its own set of options which can be used by setting "flags" on the command line when you run the program.
The following chapters explain the operation of the Copier Utilities using the names which they have on the "parallel" disk.
CMAKE takes the pack image file you specify and writes it to any paks in slots 1 to 8 on the copier. The default file extension is ".opk"; Organiser Emulator pak image files, which have the extension ".ipk" cannot be used with CMAKE.
When you run CMAKE, it checks that the specified file exists and that a Mk-III copier is connected to your PC parallel port. You are then prompted to insert one or more paks in slots 1 to 8.
CMAKE then checks all the paks and displays their status (either GOOD or BAD) on the screen. Any Datapaks used should be blank and unsized initially, while Rampaks will have any existing data deleted. By default, all paks must have the same size and type. If any of the paks are bad (e.g. a Datapak which is not blank) you will be asked to remove or replace them. CMAKE will then write the contents of the pak image file which you specified to each pak, modifying the header from the file to match each pak. The paks are then verified and the results displayed. You can then continue writing to more paks, or quit the program.
You may use any of the following flags on the command line when you run CMAKE:
-b<size> : Only write to paks of this size. The <size> given should be one of 8, 16, 32, 64 or 128. A special case is "-b0" which allows you to use paks of different sizes and/or types.
-e : Override any errors when initially checking the paks. CMAKE will then ignore paks which appear to be bad.
-l<filename> : create a log file, using the name given. The contents of a CMAKE log file are outlined in a later section. If no file extension is given, ".cmk" will be used.
-m : copy different pak image files to each pak. If, for example, the pak image used is "fred", and there are good paks in slots 1, 3 and 5, using this flag will cause "fred.opk" to be written to slot 1, "fred1.opk" to go to slot 3, and "fred2.opk" to slot 5. This feature is useful is you have built several pak image file from one large set of data by using the BLDPACK utility (part of the "Organiser Developer" package), since it generates sequential filenames like these.
-p<port> : set which PC port to use. The port may be 1 or 2, to set LPT1 or LPT2 (COM1 or COM2 for CMAKES).
-s : set "silent" mode. Nothing is printed on screen, no keys need to be pressed, and the program stops immediately if an error occurs. You can also add column and row numbers to this flag (e.g. "-s0,15") to cause the display at that screen position of the current pak address being written to.
-t : display technical information about any bad paks, instead of just saying that they are "bad". The list of technical status messages and their meanings can be found in the final chapter.
If the "-l" flag is specified when running CMAKE, a typeable log file of relevant information will be produced. The first and last lines in the log file contain the date and time at which CMAKE started and finished. In between these will be eight lines of text - one for each slot on the copier. Each line contains first a pak status number, then the first ten bytes of the pak (in hexadecimal), after CMAKE has finished writing to them. The commonest status numbers are 0 (which means "no error"), and -3 (which means "pak not present", and which may be followed by zeroes). In the case of other status numbers, the list of bytes may help you to see what is wrong with the pak. The full list of possible pak status numbers can be found in the final chapter.
An example CMAKE log file is shown below.
11:23:48 01/04/88 0 7c 04 56 00 03 07 2e 00 32 81 -3 00 00 00 00 00 00 00 00 00 00 0 7c 04 56 00 03 07 2e 00 32 81 0 7c 04 56 00 03 07 2e 00 32 81 -3 00 00 00 00 00 00 00 00 00 00 -3 00 00 00 00 00 00 00 00 00 00 0 7c 04 56 00 03 07 2e 00 32 81 0 7c 04 56 00 03 07 2e 00 32 81 11:24:37 01/04/88
Here is an example of running CMAKE:
CMAKE \prj2\mypak2 -p2 -t -b0
CMAKE would try to find the file "mypak2.opk" on the directory "\prj2" on the current drive, and then check for a copier connected to the LPT2 port on your PC (because of the "-p2" flag). The "-t" flag would cause any bad paks to have their status shown on screen. As soon as all the paks are OK, CMAKE would then write the file to paks on the copier. The paks could be of differing sizes, because of the "-b0" flag.
CUNMAKE reads the contents of the pak in the MASTER slot on the copier and writes it to a pak image file on your PC.
When you run "CUNMAKE", it first checks that a Mk-III copier is connected to your PC parallel port, and then prompts you to insert a pak in the master slot.
CUNMAKE then checks the pak and displays its status (either GOOD or BAD) on the screen. If the pak is bad (e.g. copy-protected), you will be asked to replace it. CUNMAKE will then read the contents of the pak to file you have specified using ".opk" as the default file extension.
You may use any of the following flags on the command line when you run CUNMAKE:
-e : Override any errors when initially checking the pak. CUNMAKE will still try to read from paks which appear to be bad. Note that this will NOT override copy-protection.
-l<filename> : create a log file, using the name given. The contents of a CUNMAKE log file are outlined in a later section. If no file extension is given, ".cnm" will be used.
-p<port> : set which PC port to use. The port may be 1 or 2, to set LPT1 or LPT2 (COM1 or COM2 for CUNMAKES).
-s : set "silent" mode. Nothing is printed on screen, no keys need to be pressed, and the program stops immediately if an error occurs. You can also add column and row numbers to this flag (e.g. "-s0,15") to cause the display at that screen position of the current pak address being read from.
-t : display technical information about any bad paks, instead of just saying that they are "bad". The list of technical status messages and their meanings can be found in the final chapter.
-u : in addition to producing the pak image file, "split" the pak into its constituent parts and make a file for each. This flag in fact causes the SPLIT program to be run as a sub-process after CUNMAKE has produced the pak image file. Note that this requires DOS 3.0 or above. Standard Organiser II file extensions will be used, as listed in the appendix to this manual. So if, for example, the pak contains a MAIN data file, this flag will copy it as "main.odb" on your PC.
If you do use the "-u" flag, there are five more flags which you can also use:
-a : Instead of overwriting any existing PC data file which has the same name as one generated by CUNMAKE, append the new data to it. Note that this ONLY applies to data files.
-d : include any deleted records in the data files created on the PC. When a record is deleted from a data file on a Datapak, the data in fact remains; the record is simply marked as having been deleted. When this flag is used, such records will appear in the PC data files with "**" added at the start.
-f<character> : use the specified character as the field separator when creating PC data files, instead of TAB.
-o : create separate ".opl" source files of any procedure files which contain their source. This is in addition to the ".ob3" files which will contain source, object or both.
-r<filename> : create a control file for the BLDPACK utility, to allow it to rebuild the pack. If no file extension is given, ".bld" will be used.
If the "-l" flag is specified when running CUNMAKE, a typeable log file of relevant information will be produced. The first and last lines in the log file contain the date and time at which CUNMAKE started and finished. In between these will be another line of text, beginning with a pak status number, and followed by the first ten bytes of the pak (in hexadecimal). The commonest status number is 0 (which means "no error"). In the case of other status numbers, the list of bytes may help you to see what is wrong with the pak. The full list of possible pak status numbers can be found in the final chapter.
An example CUNMAKE log file is shown below.
11:27:48 01/04/88 0 7c 04 56 00 03 07 2e 00 32 81 11:28:12 01/04/88
Here is an example of running CUNMAKE:
CUNMAKE bluesys -lblue -u -d
CUNMAKE would create a pak image file named "bluesys.opk" on your current directory containing the contents of the pak in the master slot, a log file named "blue.cnm" (because of the "-l" flag), and separate files for each file on the pak (because of the "-u" flag). The "-d" flag means that any deleted records in data files on the pak would appear in the PC file, preceded by "**".
CADDF takes a data file on the PC and adds it to any pak in slots 1 to 8.
When you run CADDF, it first checks that the specified file exists on your PC, using ".odb" as a default file extension, and that a Mk-III Copier is connected to your PC parallel port. You are then prompted to insert one or more paks in slots 1 to 8.
CADDF then checks all the paks and displays their status (either GOOD or BAD) on the screen. If any of the paks are bad (e.g. a write-protected Datapak), you will be asked to remove or replace them. By default, all packs should be of same size and type. CADDF will then copy the contents of the file which you specified to a data file on each pack, verify each pack, and display the results. The data file will be given the same name as on the PC. If any pak already has a data file with the same name, it will by default be overwritten.
Each line of the PC file, ending with a "carriage return" character (ASCII 13) and a "line feed" character (ASCII 10), will become a separate record in the data file on the pak. By default, each TAB character (ASCII 9) in the PC file will cause a new field to begin.
CADDF then prompts you to insert further paks or to quit.
You may use any of the following flags on the command line when you run CADDF:
-a : instead of overwriting any existing data file which has the name specified, append the new data to this file.
-b<size> : Only write to paks of this size. The <size> given should be one of 8, 16, 32, 64 or 128. A special case is "-b0" which allows you to use paks of different sizes and/or types.
-e : Override any errors when initially checking the paks. CADDF will then ignore paks which appear to be bad.
-f<character> : treat the specified character as the field separator in the PC file, instead of TAB.
-l<filename> : create a log file, using the name given. The contents of a CADDF log file are outlined in a later section. If no file extension is given, ".caf" will be used.
-m : copy different data files to each pak. If, for example, the filename used is "fred", and there are good paks in slots 1, 3 and 5, this flag will cause "fred.odb" to be copied to "fred" in slot 1, "fred1.odb" to "fred" on slot 3, and "fred2.odb" to "fred" on slot 5. This is the reverse of what happens when you use CEXTF.
-p<port> : set which PC port to use. The port may be 1 or 2, to set LPT1 or LPT2 (COM1 or COM2 for CADDFS).
-s : set "silent" mode. Nothing is printed on screen, no keys need to be pressed, and the program stops immediately if an error occurs. You can also add column and row numbers to this flag (e.g. "-s0,15") to cause the display at that screen position of the current slot number being written to.
-t : display technical information about any bad paks, instead of just saying that they are "bad". The list of technical status messages and their meanings can be found in the final chapter.
If the "-l" flag is specified when running CADDF, a typeable log file of relevant information will be produced. The first and last lines in the log file contain the date and time at which CADDF started and finished. In between these will be eight lines of text - one for each slot on the copier. Each line contains first a pak status number, then a count of the number of records written to the pak. If the status number is non-zero, an error has occurred. The full list of possible pak status numbers can be found in the final chapter.
An example CADDF log file is shown below.
13:01:58 01/04/88 0 123 0 123 -3 0 -3 0 0 123 0 123 0 56 -3 0 13:02:05 01/04/88
Here is an example of using CADDF:
CADDF NICK.TXT -F, -A
CADDF would copy the data file "nick.txt" in paks in slots 1 to 8 on the copier. If any paks already contains a data file called "nick", the information in "nick.txt" would be appended to it, because of the "-a" flag. The "nick.txt" file might look like this:
ROBIN SCROOGE,555 6502,BANK MANAGER SUE GRABBIT + RUNNE,555 8086,LAWYERS I.M.A.PHIBBA,555 6301,TAX ADVISOR
Each line of the file would become a record on the paks, and because "-F," was specified, CADDF would treat each comma in "nick.txt" as a field separator.
CEXTF extracts a named data file from paks in slots 1 to 8 on the copier, and saves each copy of the file to a file on the PC.
When you run CEXTF, it first checks that a Mk-III copier is connected to your PC parallel port, and then prompts you to insert a pak in the master slot.
CUNMAKE then checks the paks and displays their status (either GOOD or BAD) on the screen. If a pak is bad (e.g. copy-protected), you will be asked whether you still want to create a pak image file from it. CEXTF will then read the named data file from each pak on which it occurs, from slot 1 to slot 8, creating a series of files on the PC. The file extension ".odb" is used. When more than one file is created, a number is added to the filename you specified - for example, "fred.odb", "fred1.odb" and "fred2.odb" might be created. CEXTF then prompts you to insert further paks, or to quit.
You may use any of the following flags on the command line when you run CEXTF:
-a : Instead of overwriting any existing PC data file which has the same name as one generated by CEXTF, append the new data to it.
-c : Instead of making separate files on the PC for every occurrence of the data file, concatenate them into one file.
-d : include any deleted records in the data files created on the PC. When a record is deleted from a data file on a Datapak, the data in fact remains; the record is simply marked as having been deleted. When this flag is used, such records will appear in the PC data files with "**" added at the start.
-e : Override any errors when initially checking the paks. CEXTF will then ignore paks which appear to be bad.
-f<character> : use the specified character as the field separator when creating the PC file, instead of TAB.
-l<filename> : create a log file, using the name given. The contents of a CEXTF log file are outlined in a later section. If no file extension is given, ".cex" will be used.
-p<port> : set which PC port to use. The port may be 1 or 2, to set LPT1 or LPT2 (COM1 or COM2 for CEXTFS).
-s : set "silent" mode. Nothing is printed on screen, no keys need to be pressed, and the program stops immediately if an error occurs. You can also add column and row numbers to this flag (e.g. "-s0,15") to cause the display at that screen position of the current slot number being read from.
-t : display technical information about any bad paks, instead of just saying that they are "bad". The list of technical status messages and their meanings can be found in the final chapter.
-v - verify that the specified data file exists on all the paks, and only continue if it does.
If the "-l" flag is specified when running CEXTF, a typeable log file of relevant information will be produced. The first and last lines in the log file contain the date and time at which CEXTF started and finished. In between these will be eight lines of text - one for each slot on the copier. Each line contains first a pak status number, then the number of records read from the pak. If the status number is non-zero, an error has occurred. The full list of possible pak status numbers can be found in the final chapter.
CEXTF log files are similar to CADDF log files, as in the example below.
13:02:59 01/04/88 0 123 0 123 -3 0 -3 0 -3 0 -3 0 -3 0 -3 0 13:03:12 01/04/88
Here is an example of running CEXTF:
CEXTF phone -a -c
CEXTF would copy the first "phone" data file it comes across to a PC file called "phone.odb". If this file exists already, the "-a" flag means that it will be appended to instead of being overwritten. If a data file named "phone" is found on any subsequent paks, the data it contains will be added to "phone.odb" instead of creating "phone1.odb" etc., because of the "-c" flag.
SPLIT looks at the named pak image file on the PC, and creates new PC files for each Organiser file (of any type) which it contains. The original pak image file is not changed. This program does not communicate with the copier, and is therefore the same on both serial and parallel disks.
SPLIT uses ".opk" as a default file extension. When creating the new files, standard Organiser II file extensions will be used, as listed in the appendix to this manual. If any files already exist with the same names as any of those generated by running SPLIT, they will be overwritten.
You may use any of am following flags on the command line when you run SPLIT:
-a : Instead of overwriting any existing PC data file which has the same name as one generated by SPLIT, append the new data to it. Note that this ONLY applies to data files.
-d : include any deleted records in the data files created on the PC. When a record is deleted from a data file on a Datapak, the data in fact remains; the record is simply marked as having been deleted. These records are also kept when pak image files are created. When this flag is used, such records will appear in the PC data files with "**" added at the start.
-f<character> : use the specified character as the field separator when creating PC data files, instead of TAB.
-i: assume the file specified is a PC pak image created by the Organiser Developer. In this case, the default extension is ".ipk".
-l<filename> : create a log file, using the name given. The contents of a SPLIT log file are outlined in a later section. If no file extension is given, ".spl" will be used.
-o : create separate ".opl" source files of any procedure files which contain their source. This is in addition to the ".ob3" files (or ".lno" files in the case of ".ipk" pak images) which will contain source, object or both.
-r<filename> : create a control file for the BLDPACK utility, to allow it to rebuild the pack. If no file extension is given, ".bld" will be used.
-s : set "silent" mode. Nothing is printed on screen, and the program stops immediately if an error occurs.
If the "-l" flag is specified when running SPLIT, a typeable log file of relevant information will be produced. The first and last lines in the log file contain the date and time at which SPLIT started and finished. In between these is a list of the names of all the files generated by SPLIT.
An example SPLIT log file is shown below.
13:04:12 01/04/88 ASCII.OB3 ASCII.OPL MAIN.ODB 13:04:18 01/04/88
Here is an example of running SPLIT:
SPLIT robert -o -r
SPLIT would make new files for all the constituent parts of the pak image file "robert.opk". If the pak contains any procedure files which an not object-only, the "-o" flag means that the source of each of these procedures will also be copied to files with file extension ".opl". The "-r" flag will generate a file called "robert.bld" which can be used by the BLDPACK utility to regenerate the pak image file from its parts.
The following error numbers may be returned by the Copier Utilities. A DOS batch file can act on these numbers by using the "errorlevel" test (see your DOS manual). The corresponding error message will be displayed unless the "-s" option has been selected. If there is no error then zero is returned.
242 | "Bad filename <name>" |
241 | "Copier not found" |
240 | "Cannot open file <name>" |
239 | "Failed to write to file <name>" |
238 | "Failed to read from file <name>" |
237 | "Failed to read from pak" |
236 | "Invalid header in file <name>" |
235 | "Directory full" |
234 | "Cannot open serial port <name>" |
233 | "Not enough memory to run" |
232 | "Invalid parameters" |
231 | "Pak is copy protected" |
229 | "Not all paks are of specified size" |
Below is a list of pak status numbers which may appear in log files, and their meanings.
0 | No error |
-1 | Pak is blank |
-2 | Bad size byte |
-3 | Pak is not present |
-5 | Pak is not blank |
-7 | Failed to write to pak |
-8 | Not an Organiser II pak |
-9 | Pak is too small |
-10 | Bad structure on pak |
-11 | Failed to verify pak |
-25 | Pak is copy-protected |
-26 | Pak is write protected |
-27 | Pak is not specified size |
-28 | Pak does not contain specified file |
This is a list of technical status messages which may appear on screen to describe the contents of the copier slots, together with their meanings.
----- | No pak |
GOOD | Pak is ok |
NBLNK | Pak is not blank (when attempting to write) |
BHEAD | Pak has bad header |
BLANK | Pak is blank (when attempting to read) |
BSIZE | Pak has bad size byte |
TSMAL | Pak is too small |
FWRIT | Failed to write to pak |
FVERY | Failed to verify pak |
NCOPY | Pak is copy-protected |
NWRIT | Pak is write-protected |
SSIZE | Pak is not specified size |
NFILE | Pak does not contain specified file |
OPL SOURCE CODE (ASCII) | .OPL |
OPL object code for IBM PC | .LNO |
IBM PC pak image | .IPK |
Organiser pak image | .OPK |
Object code (binary) | .BIN |
Database file (ASCII) | .ODB |
Translate command file (ASCII) | .TRN |
Build command file (ASCII) | .BLD |
Diary file | .OB2 |
OPL source/object code for Organiser | .OB3 |
Comms Link setup file | .OB4 |
Spreadsheet file | .OB5 |
Reserved by Psion | .OB6-7 |
Unspecified | .OB8-F |
Organiser database file | .ODB |