Skip to main content
Skip table of contents

(v13) Specifying devices and filenames

This page applies to Harlequin v13.1r0 and later; and to Harlequin Core but not Harlequin MultiRIP

The PostScript language operators file , deletefile , renamefile , status and filenameforall take a file name operand that can be in one of four forms.

TEXT
                          filename
                          %devicename
                          %devicename%
                          %devicename%filename

If the first form is given, the interpreter will attempt the operation on all devices that are mounted and searchable until one succeeds. If they all fail, a PostScript language error is produced, as documented in [RB3]. The devices are placed in a list whose order is predictable; for the Harlequin Core, this order is the same as the order in which the devices were mounted.

If the other forms are given, the Harlequin Core attempts the operation only on that specific device.

There are two classes of device:

Device-relative devices

Standard file system devices that can store a number of files. The files on these devices can only be specified by the first and fourth filename forms.

Single file devices

(non-relative devices, absolute devices). Usually communication devices (serial, parallel, TCP socket, and so on). The one “file” of the device can only be specified by the second and third filename forms (but the file may be opened for reading or writing so two-way communication can be implemented by one device type).

Devices model an I/O system with the characteristics defined by the structure and functions described below. In many cases, this will be similar to existing operating system semantics, but particular care should be taken to ensure that differences between the Harlequin Core device semantics and those of the host operating system (if any) are correctly concealed from the Harlequin Core.

In most but not all respects, the model used is similar to a UNIX BSD 4.2 file system.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.