Home » Personal collection » Acorn hard disk » apps » Printers » RiscOs2/!PrinterPS/ReadMe

RiscOs2/!PrinterPS/ReadMe

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » Personal collection » Acorn hard disk » apps » Printers
Filename: RiscOs2/!PrinterPS/ReadMe
Read OK:
File size: 200D bytes
Load address: 0000
Exec address: 0000
Duplicates

There are 2 duplicate copies of this file in the archive:

File contents
This is PrinterPS, version 1.12 (11-Jul-89)

Documentation on how to use PrinterPS and its associated printer driver
module can be found in Edition 2 of the Archimedes User Guide and in the
RISC OS User Guide.


PrinterPS
=========

The following remarks should be noted about this version of PrinterPS and
its documentation.

When a file is dropped on the printer driver application, a message is
broadcast to all existing applications, asking them if they are able to
print it. If no application responds to this, the printer driver then looks
for a system variable of the form Alias$@PrintType_xxx, where xxx is the
hexadecimal type of the file concerned. If it is found, it is used to load
and run an application or other program which will do the printing.

If the variable is not found, files of type PoScript (&FF5) are sent
directly to the printer. Simple text printing is applied to files of types
Text (&FFF), Command (&FFE) and Obey (&FEB). For all other file types, the
printer driver checks with the user whether to print the file; if the reply
is yes, simple text printing is used.

If an application is found to print the file, either via the broadcast
message or via the Alias$@PrintType variable, the printer driver checks for
the existence of a file <Printer$Temp> afterwards. If it is found, it is
sent directly to the printer if it is of type PoScript and printed as simple
text otherwise.

This usually results in the following behaviour:
   (1) PoScript files are sent directly to the printer.
   (2) Text, Command and Exec files are printed as simple text.
   (3) Most graphics applications' files will be printed by the application
       concerned, provided the application's !Boot file has been executed.
   (4) All other files are printed as simple text, provided the user
       confirms this.

You can override this treatment of a particular type file by setting the
system variables of the form Alias$@PrintType_xxx, provided no currently
loaded application thinks it can print the file. If the variable exists,
then the printer driver performs *@PrintType_xxx <filename> before doing
anything else. This command can either output directly to the printer or put
its output in the file <Printer$Temp>. If it does the latter, the printer
driver will then transmit this file to the printer.

For instance, if you have a print utility program "PrintUtil" whose output
you prefer to the printer driver's for Text files, set Alias$@PrintType_FFF
to the macro *PrintUtil <%0> -to <Printer$Temp>. If the result of the
PrintUtil program is PostScript then you should set the type of
<Printer$Temp> to PoScript in the macro or in PrintUtil; if it is straight
text, you should set the type of <Printer$Temp> to Text.

Clicking SELECT on the PrinterPS icon produces a window with data about the
current printer driver settings. Clicking on the name field steps through
the printers enumerated in the file PrData. Manual feed can also be
selected, and options set that apply to simple text printing.

The PrData file supplied with the printer driver provides settings for an
Apple LaserWriter and for a generic colour PostScript printer. The former is
totally accurate for an Apple LaserWriter, but can also be used as a generic
monochrome PostScript printer. The PrData file can be edited to add to the
set of printers if desired.

Clicking MENU on the PrinterPS icon allows you to (a) see the version of the
printer driver you've got; (b) choose between output to a file or to a
serial, parallel or network printer; (c) choose the paper size you wish to
use; (d) save your current choices in this menu and in the window brought up
by clicking SELECT, so that they will be used by default when the
application is started up again.

If the output is to the serial line and XON/XOFF protocols are being used
then a small module, SerialRxIgnore, is loaded and used to discard incoming
characters (except XON/XOFF control characters).

Simple text printing
--------------------

This prints the file using the printer's fixed pitch Courier font, in one or
more columns per page. It handles various characters as follows:

Printable characters (ASCII 32-126 and 128-255): the appropriate character
from Acorn's standard character encoding is printed. If the character isn't
defined (this is currently true for character codes 128-142) or if your
PostScript printer's Courier font doesn't contain the required character, an
ellipsis character (a triple dot) is printed in its place.

Line feed (LF = ASCII 10) and form feed (FF = ASCII 12) characters: these
terminate lines. In addition, FF terminates the current column of output and
starts a new one, starting a new page if there are no more columns on the
current page. An LF/FF combination is treated as though it were a single FF.

Other control characters (ASCII 0-9,11,13-31) and the DELETE character
(ASCII 127): these are printed in the form "[<two hex digits>]" - e.g. the
DELETE character is printed "[7F]". To distinguish them from ordinary
characters, they are printed in bold.

If a line overflows a column, it is wrapped round onto the next output line.
A bold "|" is printed at the end of each incomplete output line to indicate
that this has happened.

Two output formats can be selected from the window brought up by clicking
SELECT on the PrinterPS icon:
   (a) "Portrait": this prints the text in one column, using 10 point type
and with the paper in portrait orientation.
   (b) "Landscape": this prints the text in two columns, using 7 point type
and with the paper in landscape orientation.

In addition, you can select whether you want a title printed at the top of
each page of output. This title is printed using 10 point bold text, and
contains the page number, the name of the file and the time of printing.

Various additional options can be selected and/or changed by editing the
PrData file.


The printer driver module
=========================

The following remarks should be noted about this version of the printer
driver module and its documentation.

For each RISC OS font used, the printer driver needs to be told which
PostScript font to use in its place and the character encoding to be used
for it. Near the end of the file !PrinterPS.PSprolog is a list of the font
translations used. This can be added to or modified by the user as desired -
usually, you should add a suitable translation for each new font you
acquire. It is a good idea to ensure that the PostScript font you use has
similar metrics to the RISC OS font: the PostScript code used for text
printing will compensate automatically for differences between the metrics
of the two fonts, but the results are likely to be ugly if these differences
are too large.

The file !PrinterPS.PSprolog also contains two PostScript encoding vectors
(which say what actual character corresponds to each character code). One
has been chosen to conform with the ISO 8859-1 Latin 1 alphabet as far as
possible, though there are some ambiguities (e.g. character code &2D is
defined in the ISO standard to be hyphen or minus, which are usually two
different characters in PostScript fonts). The other is a special character
encoding for the Selwyn font. Both encoding vectors can be edited if
necessary - but make sure you know what you are doing.

Not all PostScript fonts contain all the characters in the encoding vectors.
The PostScript code in !PrinterPS.PSprolog is set up to ignore any character
that you try to print if it doesn't appear in the PostScript font being
used. If you would prefer a PostScript error to be generated instead, there
is a commented single line change you can make to !PrinterPS.PSprolog to
achieve this effect.

Printing RISC OS sprites to PostScript is a rather complicated business and
always generates quite a lot of PostScript output. It may also take quite a
long time to print. Under some circumstances (particularly if there are a
lot of colours in the sprite and/or if the sprite is to occupy a large
amount of space on the printed page), the time taken by the printer and/or
the application to print the sprite may become quite large (of the order of
several minutes or even more). Do not worry unduly about this.
00000000  54 68 69 73 20 69 73 20  50 72 69 6e 74 65 72 50  |This is PrinterP|
00000010  53 2c 20 76 65 72 73 69  6f 6e 20 31 2e 31 32 20  |S, version 1.12 |
00000020  28 31 31 2d 4a 75 6c 2d  38 39 29 0a 0a 44 6f 63  |(11-Jul-89)..Doc|
00000030  75 6d 65 6e 74 61 74 69  6f 6e 20 6f 6e 20 68 6f  |umentation on ho|
00000040  77 20 74 6f 20 75 73 65  20 50 72 69 6e 74 65 72  |w to use Printer|
00000050  50 53 20 61 6e 64 20 69  74 73 20 61 73 73 6f 63  |PS and its assoc|
00000060  69 61 74 65 64 20 70 72  69 6e 74 65 72 20 64 72  |iated printer dr|
00000070  69 76 65 72 0a 6d 6f 64  75 6c 65 20 63 61 6e 20  |iver.module can |
00000080  62 65 20 66 6f 75 6e 64  20 69 6e 20 45 64 69 74  |be found in Edit|
00000090  69 6f 6e 20 32 20 6f 66  20 74 68 65 20 41 72 63  |ion 2 of the Arc|
000000a0  68 69 6d 65 64 65 73 20  55 73 65 72 20 47 75 69  |himedes User Gui|
000000b0  64 65 20 61 6e 64 20 69  6e 20 74 68 65 0a 52 49  |de and in the.RI|
000000c0  53 43 20 4f 53 20 55 73  65 72 20 47 75 69 64 65  |SC OS User Guide|
000000d0  2e 0a 0a 0a 50 72 69 6e  74 65 72 50 53 0a 3d 3d  |....PrinterPS.==|
000000e0  3d 3d 3d 3d 3d 3d 3d 0a  0a 54 68 65 20 66 6f 6c  |=======..The fol|
000000f0  6c 6f 77 69 6e 67 20 72  65 6d 61 72 6b 73 20 73  |lowing remarks s|
00000100  68 6f 75 6c 64 20 62 65  20 6e 6f 74 65 64 20 61  |hould be noted a|
00000110  62 6f 75 74 20 74 68 69  73 20 76 65 72 73 69 6f  |bout this versio|
00000120  6e 20 6f 66 20 50 72 69  6e 74 65 72 50 53 20 61  |n of PrinterPS a|
00000130  6e 64 0a 69 74 73 20 64  6f 63 75 6d 65 6e 74 61  |nd.its documenta|
00000140  74 69 6f 6e 2e 0a 0a 57  68 65 6e 20 61 20 66 69  |tion...When a fi|
00000150  6c 65 20 69 73 20 64 72  6f 70 70 65 64 20 6f 6e  |le is dropped on|
00000160  20 74 68 65 20 70 72 69  6e 74 65 72 20 64 72 69  | the printer dri|
00000170  76 65 72 20 61 70 70 6c  69 63 61 74 69 6f 6e 2c  |ver application,|
00000180  20 61 20 6d 65 73 73 61  67 65 20 69 73 0a 62 72  | a message is.br|
00000190  6f 61 64 63 61 73 74 20  74 6f 20 61 6c 6c 20 65  |oadcast to all e|
000001a0  78 69 73 74 69 6e 67 20  61 70 70 6c 69 63 61 74  |xisting applicat|
000001b0  69 6f 6e 73 2c 20 61 73  6b 69 6e 67 20 74 68 65  |ions, asking the|
000001c0  6d 20 69 66 20 74 68 65  79 20 61 72 65 20 61 62  |m if they are ab|
000001d0  6c 65 20 74 6f 0a 70 72  69 6e 74 20 69 74 2e 20  |le to.print it. |
000001e0  49 66 20 6e 6f 20 61 70  70 6c 69 63 61 74 69 6f  |If no applicatio|
000001f0  6e 20 72 65 73 70 6f 6e  64 73 20 74 6f 20 74 68  |n responds to th|
00000200  69 73 2c 20 74 68 65 20  70 72 69 6e 74 65 72 20  |is, the printer |
00000210  64 72 69 76 65 72 20 74  68 65 6e 20 6c 6f 6f 6b  |driver then look|
00000220  73 0a 66 6f 72 20 61 20  73 79 73 74 65 6d 20 76  |s.for a system v|
00000230  61 72 69 61 62 6c 65 20  6f 66 20 74 68 65 20 66  |ariable of the f|
00000240  6f 72 6d 20 41 6c 69 61  73 24 40 50 72 69 6e 74  |orm Alias$@Print|
00000250  54 79 70 65 5f 78 78 78  2c 20 77 68 65 72 65 20  |Type_xxx, where |
00000260  78 78 78 20 69 73 20 74  68 65 0a 68 65 78 61 64  |xxx is the.hexad|
00000270  65 63 69 6d 61 6c 20 74  79 70 65 20 6f 66 20 74  |ecimal type of t|
00000280  68 65 20 66 69 6c 65 20  63 6f 6e 63 65 72 6e 65  |he file concerne|
00000290  64 2e 20 49 66 20 69 74  20 69 73 20 66 6f 75 6e  |d. If it is foun|
000002a0  64 2c 20 69 74 20 69 73  20 75 73 65 64 20 74 6f  |d, it is used to|
000002b0  20 6c 6f 61 64 0a 61 6e  64 20 72 75 6e 20 61 6e  | load.and run an|
000002c0  20 61 70 70 6c 69 63 61  74 69 6f 6e 20 6f 72 20  | application or |
000002d0  6f 74 68 65 72 20 70 72  6f 67 72 61 6d 20 77 68  |other program wh|
000002e0  69 63 68 20 77 69 6c 6c  20 64 6f 20 74 68 65 20  |ich will do the |
000002f0  70 72 69 6e 74 69 6e 67  2e 0a 0a 49 66 20 74 68  |printing...If th|
00000300  65 20 76 61 72 69 61 62  6c 65 20 69 73 20 6e 6f  |e variable is no|
00000310  74 20 66 6f 75 6e 64 2c  20 66 69 6c 65 73 20 6f  |t found, files o|
00000320  66 20 74 79 70 65 20 50  6f 53 63 72 69 70 74 20  |f type PoScript |
00000330  28 26 46 46 35 29 20 61  72 65 20 73 65 6e 74 0a  |(&FF5) are sent.|
00000340  64 69 72 65 63 74 6c 79  20 74 6f 20 74 68 65 20  |directly to the |
00000350  70 72 69 6e 74 65 72 2e  20 53 69 6d 70 6c 65 20  |printer. Simple |
00000360  74 65 78 74 20 70 72 69  6e 74 69 6e 67 20 69 73  |text printing is|
00000370  20 61 70 70 6c 69 65 64  20 74 6f 20 66 69 6c 65  | applied to file|
00000380  73 20 6f 66 20 74 79 70  65 73 0a 54 65 78 74 20  |s of types.Text |
00000390  28 26 46 46 46 29 2c 20  43 6f 6d 6d 61 6e 64 20  |(&FFF), Command |
000003a0  28 26 46 46 45 29 20 61  6e 64 20 4f 62 65 79 20  |(&FFE) and Obey |
000003b0  28 26 46 45 42 29 2e 20  46 6f 72 20 61 6c 6c 20  |(&FEB). For all |
000003c0  6f 74 68 65 72 20 66 69  6c 65 20 74 79 70 65 73  |other file types|
000003d0  2c 20 74 68 65 0a 70 72  69 6e 74 65 72 20 64 72  |, the.printer dr|
000003e0  69 76 65 72 20 63 68 65  63 6b 73 20 77 69 74 68  |iver checks with|
000003f0  20 74 68 65 20 75 73 65  72 20 77 68 65 74 68 65  | the user whethe|
00000400  72 20 74 6f 20 70 72 69  6e 74 20 74 68 65 20 66  |r to print the f|
00000410  69 6c 65 3b 20 69 66 20  74 68 65 20 72 65 70 6c  |ile; if the repl|
00000420  79 0a 69 73 20 79 65 73  2c 20 73 69 6d 70 6c 65  |y.is yes, simple|
00000430  20 74 65 78 74 20 70 72  69 6e 74 69 6e 67 20 69  | text printing i|
00000440  73 20 75 73 65 64 2e 0a  0a 49 66 20 61 6e 20 61  |s used...If an a|
00000450  70 70 6c 69 63 61 74 69  6f 6e 20 69 73 20 66 6f  |pplication is fo|
00000460  75 6e 64 20 74 6f 20 70  72 69 6e 74 20 74 68 65  |und to print the|
00000470  20 66 69 6c 65 2c 20 65  69 74 68 65 72 20 76 69  | file, either vi|
00000480  61 20 74 68 65 20 62 72  6f 61 64 63 61 73 74 0a  |a the broadcast.|
00000490  6d 65 73 73 61 67 65 20  6f 72 20 76 69 61 20 74  |message or via t|
000004a0  68 65 20 41 6c 69 61 73  24 40 50 72 69 6e 74 54  |he Alias$@PrintT|
000004b0  79 70 65 20 76 61 72 69  61 62 6c 65 2c 20 74 68  |ype variable, th|
000004c0  65 20 70 72 69 6e 74 65  72 20 64 72 69 76 65 72  |e printer driver|
000004d0  20 63 68 65 63 6b 73 20  66 6f 72 0a 74 68 65 20  | checks for.the |
000004e0  65 78 69 73 74 65 6e 63  65 20 6f 66 20 61 20 66  |existence of a f|
000004f0  69 6c 65 20 3c 50 72 69  6e 74 65 72 24 54 65 6d  |ile <Printer$Tem|
00000500  70 3e 20 61 66 74 65 72  77 61 72 64 73 2e 20 49  |p> afterwards. I|
00000510  66 20 69 74 20 69 73 20  66 6f 75 6e 64 2c 20 69  |f it is found, i|
00000520  74 20 69 73 0a 73 65 6e  74 20 64 69 72 65 63 74  |t is.sent direct|
00000530  6c 79 20 74 6f 20 74 68  65 20 70 72 69 6e 74 65  |ly to the printe|
00000540  72 20 69 66 20 69 74 20  69 73 20 6f 66 20 74 79  |r if it is of ty|
00000550  70 65 20 50 6f 53 63 72  69 70 74 20 61 6e 64 20  |pe PoScript and |
00000560  70 72 69 6e 74 65 64 20  61 73 20 73 69 6d 70 6c  |printed as simpl|
00000570  65 0a 74 65 78 74 20 6f  74 68 65 72 77 69 73 65  |e.text otherwise|
00000580  2e 0a 0a 54 68 69 73 20  75 73 75 61 6c 6c 79 20  |...This usually |
00000590  72 65 73 75 6c 74 73 20  69 6e 20 74 68 65 20 66  |results in the f|
000005a0  6f 6c 6c 6f 77 69 6e 67  20 62 65 68 61 76 69 6f  |ollowing behavio|
000005b0  75 72 3a 0a 20 20 20 28  31 29 20 50 6f 53 63 72  |ur:.   (1) PoScr|
000005c0  69 70 74 20 66 69 6c 65  73 20 61 72 65 20 73 65  |ipt files are se|
000005d0  6e 74 20 64 69 72 65 63  74 6c 79 20 74 6f 20 74  |nt directly to t|
000005e0  68 65 20 70 72 69 6e 74  65 72 2e 0a 20 20 20 28  |he printer..   (|
000005f0  32 29 20 54 65 78 74 2c  20 43 6f 6d 6d 61 6e 64  |2) Text, Command|
00000600  20 61 6e 64 20 45 78 65  63 20 66 69 6c 65 73 20  | and Exec files |
00000610  61 72 65 20 70 72 69 6e  74 65 64 20 61 73 20 73  |are printed as s|
00000620  69 6d 70 6c 65 20 74 65  78 74 2e 0a 20 20 20 28  |imple text..   (|
00000630  33 29 20 4d 6f 73 74 20  67 72 61 70 68 69 63 73  |3) Most graphics|
00000640  20 61 70 70 6c 69 63 61  74 69 6f 6e 73 27 20 66  | applications' f|
00000650  69 6c 65 73 20 77 69 6c  6c 20 62 65 20 70 72 69  |iles will be pri|
00000660  6e 74 65 64 20 62 79 20  74 68 65 20 61 70 70 6c  |nted by the appl|
00000670  69 63 61 74 69 6f 6e 0a  20 20 20 20 20 20 20 63  |ication.       c|
00000680  6f 6e 63 65 72 6e 65 64  2c 20 70 72 6f 76 69 64  |oncerned, provid|
00000690  65 64 20 74 68 65 20 61  70 70 6c 69 63 61 74 69  |ed the applicati|
000006a0  6f 6e 27 73 20 21 42 6f  6f 74 20 66 69 6c 65 20  |on's !Boot file |
000006b0  68 61 73 20 62 65 65 6e  20 65 78 65 63 75 74 65  |has been execute|
000006c0  64 2e 0a 20 20 20 28 34  29 20 41 6c 6c 20 6f 74  |d..   (4) All ot|
000006d0  68 65 72 20 66 69 6c 65  73 20 61 72 65 20 70 72  |her files are pr|
000006e0  69 6e 74 65 64 20 61 73  20 73 69 6d 70 6c 65 20  |inted as simple |
000006f0  74 65 78 74 2c 20 70 72  6f 76 69 64 65 64 20 74  |text, provided t|
00000700  68 65 20 75 73 65 72 0a  20 20 20 20 20 20 20 63  |he user.       c|
00000710  6f 6e 66 69 72 6d 73 20  74 68 69 73 2e 0a 0a 59  |onfirms this...Y|
00000720  6f 75 20 63 61 6e 20 6f  76 65 72 72 69 64 65 20  |ou can override |
00000730  74 68 69 73 20 74 72 65  61 74 6d 65 6e 74 20 6f  |this treatment o|
00000740  66 20 61 20 70 61 72 74  69 63 75 6c 61 72 20 74  |f a particular t|
00000750  79 70 65 20 66 69 6c 65  20 62 79 20 73 65 74 74  |ype file by sett|
00000760  69 6e 67 20 74 68 65 0a  73 79 73 74 65 6d 20 76  |ing the.system v|
00000770  61 72 69 61 62 6c 65 73  20 6f 66 20 74 68 65 20  |ariables of the |
00000780  66 6f 72 6d 20 41 6c 69  61 73 24 40 50 72 69 6e  |form Alias$@Prin|
00000790  74 54 79 70 65 5f 78 78  78 2c 20 70 72 6f 76 69  |tType_xxx, provi|
000007a0  64 65 64 20 6e 6f 20 63  75 72 72 65 6e 74 6c 79  |ded no currently|
000007b0  0a 6c 6f 61 64 65 64 20  61 70 70 6c 69 63 61 74  |.loaded applicat|
000007c0  69 6f 6e 20 74 68 69 6e  6b 73 20 69 74 20 63 61  |ion thinks it ca|
000007d0  6e 20 70 72 69 6e 74 20  74 68 65 20 66 69 6c 65  |n print the file|
000007e0  2e 20 49 66 20 74 68 65  20 76 61 72 69 61 62 6c  |. If the variabl|
000007f0  65 20 65 78 69 73 74 73  2c 0a 74 68 65 6e 20 74  |e exists,.then t|
00000800  68 65 20 70 72 69 6e 74  65 72 20 64 72 69 76 65  |he printer drive|
00000810  72 20 70 65 72 66 6f 72  6d 73 20 2a 40 50 72 69  |r performs *@Pri|
00000820  6e 74 54 79 70 65 5f 78  78 78 20 3c 66 69 6c 65  |ntType_xxx <file|
00000830  6e 61 6d 65 3e 20 62 65  66 6f 72 65 20 64 6f 69  |name> before doi|
00000840  6e 67 0a 61 6e 79 74 68  69 6e 67 20 65 6c 73 65  |ng.anything else|
00000850  2e 20 54 68 69 73 20 63  6f 6d 6d 61 6e 64 20 63  |. This command c|
00000860  61 6e 20 65 69 74 68 65  72 20 6f 75 74 70 75 74  |an either output|
00000870  20 64 69 72 65 63 74 6c  79 20 74 6f 20 74 68 65  | directly to the|
00000880  20 70 72 69 6e 74 65 72  20 6f 72 20 70 75 74 0a  | printer or put.|
00000890  69 74 73 20 6f 75 74 70  75 74 20 69 6e 20 74 68  |its output in th|
000008a0  65 20 66 69 6c 65 20 3c  50 72 69 6e 74 65 72 24  |e file <Printer$|
000008b0  54 65 6d 70 3e 2e 20 49  66 20 69 74 20 64 6f 65  |Temp>. If it doe|
000008c0  73 20 74 68 65 20 6c 61  74 74 65 72 2c 20 74 68  |s the latter, th|
000008d0  65 20 70 72 69 6e 74 65  72 0a 64 72 69 76 65 72  |e printer.driver|
000008e0  20 77 69 6c 6c 20 74 68  65 6e 20 74 72 61 6e 73  | will then trans|
000008f0  6d 69 74 20 74 68 69 73  20 66 69 6c 65 20 74 6f  |mit this file to|
00000900  20 74 68 65 20 70 72 69  6e 74 65 72 2e 0a 0a 46  | the printer...F|
00000910  6f 72 20 69 6e 73 74 61  6e 63 65 2c 20 69 66 20  |or instance, if |
00000920  79 6f 75 20 68 61 76 65  20 61 20 70 72 69 6e 74  |you have a print|
00000930  20 75 74 69 6c 69 74 79  20 70 72 6f 67 72 61 6d  | utility program|
00000940  20 22 50 72 69 6e 74 55  74 69 6c 22 20 77 68 6f  | "PrintUtil" who|
00000950  73 65 20 6f 75 74 70 75  74 0a 79 6f 75 20 70 72  |se output.you pr|
00000960  65 66 65 72 20 74 6f 20  74 68 65 20 70 72 69 6e  |efer to the prin|
00000970  74 65 72 20 64 72 69 76  65 72 27 73 20 66 6f 72  |ter driver's for|
00000980  20 54 65 78 74 20 66 69  6c 65 73 2c 20 73 65 74  | Text files, set|
00000990  20 41 6c 69 61 73 24 40  50 72 69 6e 74 54 79 70  | Alias$@PrintTyp|
000009a0  65 5f 46 46 46 0a 74 6f  20 74 68 65 20 6d 61 63  |e_FFF.to the mac|
000009b0  72 6f 20 2a 50 72 69 6e  74 55 74 69 6c 20 3c 25  |ro *PrintUtil <%|
000009c0  30 3e 20 2d 74 6f 20 3c  50 72 69 6e 74 65 72 24  |0> -to <Printer$|
000009d0  54 65 6d 70 3e 2e 20 49  66 20 74 68 65 20 72 65  |Temp>. If the re|
000009e0  73 75 6c 74 20 6f 66 20  74 68 65 0a 50 72 69 6e  |sult of the.Prin|
000009f0  74 55 74 69 6c 20 70 72  6f 67 72 61 6d 20 69 73  |tUtil program is|
00000a00  20 50 6f 73 74 53 63 72  69 70 74 20 74 68 65 6e  | PostScript then|
00000a10  20 79 6f 75 20 73 68 6f  75 6c 64 20 73 65 74 20  | you should set |
00000a20  74 68 65 20 74 79 70 65  20 6f 66 0a 3c 50 72 69  |the type of.<Pri|
00000a30  6e 74 65 72 24 54 65 6d  70 3e 20 74 6f 20 50 6f  |nter$Temp> to Po|
00000a40  53 63 72 69 70 74 20 69  6e 20 74 68 65 20 6d 61  |Script in the ma|
00000a50  63 72 6f 20 6f 72 20 69  6e 20 50 72 69 6e 74 55  |cro or in PrintU|
00000a60  74 69 6c 3b 20 69 66 20  69 74 20 69 73 20 73 74  |til; if it is st|
00000a70  72 61 69 67 68 74 0a 74  65 78 74 2c 20 79 6f 75  |raight.text, you|
00000a80  20 73 68 6f 75 6c 64 20  73 65 74 20 74 68 65 20  | should set the |
00000a90  74 79 70 65 20 6f 66 20  3c 50 72 69 6e 74 65 72  |type of <Printer|
00000aa0  24 54 65 6d 70 3e 20 74  6f 20 54 65 78 74 2e 0a  |$Temp> to Text..|
00000ab0  0a 43 6c 69 63 6b 69 6e  67 20 53 45 4c 45 43 54  |.Clicking SELECT|
00000ac0  20 6f 6e 20 74 68 65 20  50 72 69 6e 74 65 72 50  | on the PrinterP|
00000ad0  53 20 69 63 6f 6e 20 70  72 6f 64 75 63 65 73 20  |S icon produces |
00000ae0  61 20 77 69 6e 64 6f 77  20 77 69 74 68 20 64 61  |a window with da|
00000af0  74 61 20 61 62 6f 75 74  20 74 68 65 0a 63 75 72  |ta about the.cur|
00000b00  72 65 6e 74 20 70 72 69  6e 74 65 72 20 64 72 69  |rent printer dri|
00000b10  76 65 72 20 73 65 74 74  69 6e 67 73 2e 20 43 6c  |ver settings. Cl|
00000b20  69 63 6b 69 6e 67 20 6f  6e 20 74 68 65 20 6e 61  |icking on the na|
00000b30  6d 65 20 66 69 65 6c 64  20 73 74 65 70 73 20 74  |me field steps t|
00000b40  68 72 6f 75 67 68 0a 74  68 65 20 70 72 69 6e 74  |hrough.the print|
00000b50  65 72 73 20 65 6e 75 6d  65 72 61 74 65 64 20 69  |ers enumerated i|
00000b60  6e 20 74 68 65 20 66 69  6c 65 20 50 72 44 61 74  |n the file PrDat|
00000b70  61 2e 20 4d 61 6e 75 61  6c 20 66 65 65 64 20 63  |a. Manual feed c|
00000b80  61 6e 20 61 6c 73 6f 20  62 65 0a 73 65 6c 65 63  |an also be.selec|
00000b90  74 65 64 2c 20 61 6e 64  20 6f 70 74 69 6f 6e 73  |ted, and options|
00000ba0  20 73 65 74 20 74 68 61  74 20 61 70 70 6c 79 20  | set that apply |
00000bb0  74 6f 20 73 69 6d 70 6c  65 20 74 65 78 74 20 70  |to simple text p|
00000bc0  72 69 6e 74 69 6e 67 2e  0a 0a 54 68 65 20 50 72  |rinting...The Pr|
00000bd0  44 61 74 61 20 66 69 6c  65 20 73 75 70 70 6c 69  |Data file suppli|
00000be0  65 64 20 77 69 74 68 20  74 68 65 20 70 72 69 6e  |ed with the prin|
00000bf0  74 65 72 20 64 72 69 76  65 72 20 70 72 6f 76 69  |ter driver provi|
00000c00  64 65 73 20 73 65 74 74  69 6e 67 73 20 66 6f 72  |des settings for|
00000c10  20 61 6e 0a 41 70 70 6c  65 20 4c 61 73 65 72 57  | an.Apple LaserW|
00000c20  72 69 74 65 72 20 61 6e  64 20 66 6f 72 20 61 20  |riter and for a |
00000c30  67 65 6e 65 72 69 63 20  63 6f 6c 6f 75 72 20 50  |generic colour P|
00000c40  6f 73 74 53 63 72 69 70  74 20 70 72 69 6e 74 65  |ostScript printe|
00000c50  72 2e 20 54 68 65 20 66  6f 72 6d 65 72 20 69 73  |r. The former is|
00000c60  0a 74 6f 74 61 6c 6c 79  20 61 63 63 75 72 61 74  |.totally accurat|
00000c70  65 20 66 6f 72 20 61 6e  20 41 70 70 6c 65 20 4c  |e for an Apple L|
00000c80  61 73 65 72 57 72 69 74  65 72 2c 20 62 75 74 20  |aserWriter, but |
00000c90  63 61 6e 20 61 6c 73 6f  20 62 65 20 75 73 65 64  |can also be used|
00000ca0  20 61 73 20 61 20 67 65  6e 65 72 69 63 0a 6d 6f  | as a generic.mo|
00000cb0  6e 6f 63 68 72 6f 6d 65  20 50 6f 73 74 53 63 72  |nochrome PostScr|
00000cc0  69 70 74 20 70 72 69 6e  74 65 72 2e 20 54 68 65  |ipt printer. The|
00000cd0  20 50 72 44 61 74 61 20  66 69 6c 65 20 63 61 6e  | PrData file can|
00000ce0  20 62 65 20 65 64 69 74  65 64 20 74 6f 20 61 64  | be edited to ad|
00000cf0  64 20 74 6f 20 74 68 65  0a 73 65 74 20 6f 66 20  |d to the.set of |
00000d00  70 72 69 6e 74 65 72 73  20 69 66 20 64 65 73 69  |printers if desi|
00000d10  72 65 64 2e 0a 0a 43 6c  69 63 6b 69 6e 67 20 4d  |red...Clicking M|
00000d20  45 4e 55 20 6f 6e 20 74  68 65 20 50 72 69 6e 74  |ENU on the Print|
00000d30  65 72 50 53 20 69 63 6f  6e 20 61 6c 6c 6f 77 73  |erPS icon allows|
00000d40  20 79 6f 75 20 74 6f 20  28 61 29 20 73 65 65 20  | you to (a) see |
00000d50  74 68 65 20 76 65 72 73  69 6f 6e 20 6f 66 20 74  |the version of t|
00000d60  68 65 0a 70 72 69 6e 74  65 72 20 64 72 69 76 65  |he.printer drive|
00000d70  72 20 79 6f 75 27 76 65  20 67 6f 74 3b 20 28 62  |r you've got; (b|
00000d80  29 20 63 68 6f 6f 73 65  20 62 65 74 77 65 65 6e  |) choose between|
00000d90  20 6f 75 74 70 75 74 20  74 6f 20 61 20 66 69 6c  | output to a fil|
00000da0  65 20 6f 72 20 74 6f 20  61 0a 73 65 72 69 61 6c  |e or to a.serial|
00000db0  2c 20 70 61 72 61 6c 6c  65 6c 20 6f 72 20 6e 65  |, parallel or ne|
00000dc0  74 77 6f 72 6b 20 70 72  69 6e 74 65 72 3b 20 28  |twork printer; (|
00000dd0  63 29 20 63 68 6f 6f 73  65 20 74 68 65 20 70 61  |c) choose the pa|
00000de0  70 65 72 20 73 69 7a 65  20 79 6f 75 20 77 69 73  |per size you wis|
00000df0  68 20 74 6f 0a 75 73 65  3b 20 28 64 29 20 73 61  |h to.use; (d) sa|
00000e00  76 65 20 79 6f 75 72 20  63 75 72 72 65 6e 74 20  |ve your current |
00000e10  63 68 6f 69 63 65 73 20  69 6e 20 74 68 69 73 20  |choices in this |
00000e20  6d 65 6e 75 20 61 6e 64  20 69 6e 20 74 68 65 20  |menu and in the |
00000e30  77 69 6e 64 6f 77 20 62  72 6f 75 67 68 74 20 75  |window brought u|
00000e40  70 0a 62 79 20 63 6c 69  63 6b 69 6e 67 20 53 45  |p.by clicking SE|
00000e50  4c 45 43 54 2c 20 73 6f  20 74 68 61 74 20 74 68  |LECT, so that th|
00000e60  65 79 20 77 69 6c 6c 20  62 65 20 75 73 65 64 20  |ey will be used |
00000e70  62 79 20 64 65 66 61 75  6c 74 20 77 68 65 6e 20  |by default when |
00000e80  74 68 65 0a 61 70 70 6c  69 63 61 74 69 6f 6e 20  |the.application |
00000e90  69 73 20 73 74 61 72 74  65 64 20 75 70 20 61 67  |is started up ag|
00000ea0  61 69 6e 2e 0a 0a 49 66  20 74 68 65 20 6f 75 74  |ain...If the out|
00000eb0  70 75 74 20 69 73 20 74  6f 20 74 68 65 20 73 65  |put is to the se|
00000ec0  72 69 61 6c 20 6c 69 6e  65 20 61 6e 64 20 58 4f  |rial line and XO|
00000ed0  4e 2f 58 4f 46 46 20 70  72 6f 74 6f 63 6f 6c 73  |N/XOFF protocols|
00000ee0  20 61 72 65 20 62 65 69  6e 67 20 75 73 65 64 0a  | are being used.|
00000ef0  74 68 65 6e 20 61 20 73  6d 61 6c 6c 20 6d 6f 64  |then a small mod|
00000f00  75 6c 65 2c 20 53 65 72  69 61 6c 52 78 49 67 6e  |ule, SerialRxIgn|
00000f10  6f 72 65 2c 20 69 73 20  6c 6f 61 64 65 64 20 61  |ore, is loaded a|
00000f20  6e 64 20 75 73 65 64 20  74 6f 20 64 69 73 63 61  |nd used to disca|
00000f30  72 64 20 69 6e 63 6f 6d  69 6e 67 0a 63 68 61 72  |rd incoming.char|
00000f40  61 63 74 65 72 73 20 28  65 78 63 65 70 74 20 58  |acters (except X|
00000f50  4f 4e 2f 58 4f 46 46 20  63 6f 6e 74 72 6f 6c 20  |ON/XOFF control |
00000f60  63 68 61 72 61 63 74 65  72 73 29 2e 0a 0a 53 69  |characters)...Si|
00000f70  6d 70 6c 65 20 74 65 78  74 20 70 72 69 6e 74 69  |mple text printi|
00000f80  6e 67 0a 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |ng.-------------|
00000f90  2d 2d 2d 2d 2d 2d 2d 0a  0a 54 68 69 73 20 70 72  |-------..This pr|
00000fa0  69 6e 74 73 20 74 68 65  20 66 69 6c 65 20 75 73  |ints the file us|
00000fb0  69 6e 67 20 74 68 65 20  70 72 69 6e 74 65 72 27  |ing the printer'|
00000fc0  73 20 66 69 78 65 64 20  70 69 74 63 68 20 43 6f  |s fixed pitch Co|
00000fd0  75 72 69 65 72 20 66 6f  6e 74 2c 20 69 6e 20 6f  |urier font, in o|
00000fe0  6e 65 20 6f 72 0a 6d 6f  72 65 20 63 6f 6c 75 6d  |ne or.more colum|
00000ff0  6e 73 20 70 65 72 20 70  61 67 65 2e 20 49 74 20  |ns per page. It |
00001000  68 61 6e 64 6c 65 73 20  76 61 72 69 6f 75 73 20  |handles various |
00001010  63 68 61 72 61 63 74 65  72 73 20 61 73 20 66 6f  |characters as fo|
00001020  6c 6c 6f 77 73 3a 0a 0a  50 72 69 6e 74 61 62 6c  |llows:..Printabl|
00001030  65 20 63 68 61 72 61 63  74 65 72 73 20 28 41 53  |e characters (AS|
00001040  43 49 49 20 33 32 2d 31  32 36 20 61 6e 64 20 31  |CII 32-126 and 1|
00001050  32 38 2d 32 35 35 29 3a  20 74 68 65 20 61 70 70  |28-255): the app|
00001060  72 6f 70 72 69 61 74 65  20 63 68 61 72 61 63 74  |ropriate charact|
00001070  65 72 0a 66 72 6f 6d 20  41 63 6f 72 6e 27 73 20  |er.from Acorn's |
00001080  73 74 61 6e 64 61 72 64  20 63 68 61 72 61 63 74  |standard charact|
00001090  65 72 20 65 6e 63 6f 64  69 6e 67 20 69 73 20 70  |er encoding is p|
000010a0  72 69 6e 74 65 64 2e 20  49 66 20 74 68 65 20 63  |rinted. If the c|
000010b0  68 61 72 61 63 74 65 72  20 69 73 6e 27 74 0a 64  |haracter isn't.d|
000010c0  65 66 69 6e 65 64 20 28  74 68 69 73 20 69 73 20  |efined (this is |
000010d0  63 75 72 72 65 6e 74 6c  79 20 74 72 75 65 20 66  |currently true f|
000010e0  6f 72 20 63 68 61 72 61  63 74 65 72 20 63 6f 64  |or character cod|
000010f0  65 73 20 31 32 38 2d 31  34 32 29 20 6f 72 20 69  |es 128-142) or i|
00001100  66 20 79 6f 75 72 0a 50  6f 73 74 53 63 72 69 70  |f your.PostScrip|
00001110  74 20 70 72 69 6e 74 65  72 27 73 20 43 6f 75 72  |t printer's Cour|
00001120  69 65 72 20 66 6f 6e 74  20 64 6f 65 73 6e 27 74  |ier font doesn't|
00001130  20 63 6f 6e 74 61 69 6e  20 74 68 65 20 72 65 71  | contain the req|
00001140  75 69 72 65 64 20 63 68  61 72 61 63 74 65 72 2c  |uired character,|
00001150  20 61 6e 0a 65 6c 6c 69  70 73 69 73 20 63 68 61  | an.ellipsis cha|
00001160  72 61 63 74 65 72 20 28  61 20 74 72 69 70 6c 65  |racter (a triple|
00001170  20 64 6f 74 29 20 69 73  20 70 72 69 6e 74 65 64  | dot) is printed|
00001180  20 69 6e 20 69 74 73 20  70 6c 61 63 65 2e 0a 0a  | in its place...|
00001190  4c 69 6e 65 20 66 65 65  64 20 28 4c 46 20 3d 20  |Line feed (LF = |
000011a0  41 53 43 49 49 20 31 30  29 20 61 6e 64 20 66 6f  |ASCII 10) and fo|
000011b0  72 6d 20 66 65 65 64 20  28 46 46 20 3d 20 41 53  |rm feed (FF = AS|
000011c0  43 49 49 20 31 32 29 20  63 68 61 72 61 63 74 65  |CII 12) characte|
000011d0  72 73 3a 20 74 68 65 73  65 0a 74 65 72 6d 69 6e  |rs: these.termin|
000011e0  61 74 65 20 6c 69 6e 65  73 2e 20 49 6e 20 61 64  |ate lines. In ad|
000011f0  64 69 74 69 6f 6e 2c 20  46 46 20 74 65 72 6d 69  |dition, FF termi|
00001200  6e 61 74 65 73 20 74 68  65 20 63 75 72 72 65 6e  |nates the curren|
00001210  74 20 63 6f 6c 75 6d 6e  20 6f 66 20 6f 75 74 70  |t column of outp|
00001220  75 74 20 61 6e 64 0a 73  74 61 72 74 73 20 61 20  |ut and.starts a |
00001230  6e 65 77 20 6f 6e 65 2c  20 73 74 61 72 74 69 6e  |new one, startin|
00001240  67 20 61 20 6e 65 77 20  70 61 67 65 20 69 66 20  |g a new page if |
00001250  74 68 65 72 65 20 61 72  65 20 6e 6f 20 6d 6f 72  |there are no mor|
00001260  65 20 63 6f 6c 75 6d 6e  73 20 6f 6e 20 74 68 65  |e columns on the|
00001270  0a 63 75 72 72 65 6e 74  20 70 61 67 65 2e 20 41  |.current page. A|
00001280  6e 20 4c 46 2f 46 46 20  63 6f 6d 62 69 6e 61 74  |n LF/FF combinat|
00001290  69 6f 6e 20 69 73 20 74  72 65 61 74 65 64 20 61  |ion is treated a|
000012a0  73 20 74 68 6f 75 67 68  20 69 74 20 77 65 72 65  |s though it were|
000012b0  20 61 20 73 69 6e 67 6c  65 20 46 46 2e 0a 0a 4f  | a single FF...O|
000012c0  74 68 65 72 20 63 6f 6e  74 72 6f 6c 20 63 68 61  |ther control cha|
000012d0  72 61 63 74 65 72 73 20  28 41 53 43 49 49 20 30  |racters (ASCII 0|
000012e0  2d 39 2c 31 31 2c 31 33  2d 33 31 29 20 61 6e 64  |-9,11,13-31) and|
000012f0  20 74 68 65 20 44 45 4c  45 54 45 20 63 68 61 72  | the DELETE char|
00001300  61 63 74 65 72 0a 28 41  53 43 49 49 20 31 32 37  |acter.(ASCII 127|
00001310  29 3a 20 74 68 65 73 65  20 61 72 65 20 70 72 69  |): these are pri|
00001320  6e 74 65 64 20 69 6e 20  74 68 65 20 66 6f 72 6d  |nted in the form|
00001330  20 22 5b 3c 74 77 6f 20  68 65 78 20 64 69 67 69  | "[<two hex digi|
00001340  74 73 3e 5d 22 20 2d 20  65 2e 67 2e 20 74 68 65  |ts>]" - e.g. the|
00001350  0a 44 45 4c 45 54 45 20  63 68 61 72 61 63 74 65  |.DELETE characte|
00001360  72 20 69 73 20 70 72 69  6e 74 65 64 20 22 5b 37  |r is printed "[7|
00001370  46 5d 22 2e 20 54 6f 20  64 69 73 74 69 6e 67 75  |F]". To distingu|
00001380  69 73 68 20 74 68 65 6d  20 66 72 6f 6d 20 6f 72  |ish them from or|
00001390  64 69 6e 61 72 79 0a 63  68 61 72 61 63 74 65 72  |dinary.character|
000013a0  73 2c 20 74 68 65 79 20  61 72 65 20 70 72 69 6e  |s, they are prin|
000013b0  74 65 64 20 69 6e 20 62  6f 6c 64 2e 0a 0a 49 66  |ted in bold...If|
000013c0  20 61 20 6c 69 6e 65 20  6f 76 65 72 66 6c 6f 77  | a line overflow|
000013d0  73 20 61 20 63 6f 6c 75  6d 6e 2c 20 69 74 20 69  |s a column, it i|
000013e0  73 20 77 72 61 70 70 65  64 20 72 6f 75 6e 64 20  |s wrapped round |
000013f0  6f 6e 74 6f 20 74 68 65  20 6e 65 78 74 20 6f 75  |onto the next ou|
00001400  74 70 75 74 20 6c 69 6e  65 2e 0a 41 20 62 6f 6c  |tput line..A bol|
00001410  64 20 22 7c 22 20 69 73  20 70 72 69 6e 74 65 64  |d "|" is printed|
00001420  20 61 74 20 74 68 65 20  65 6e 64 20 6f 66 20 65  | at the end of e|
00001430  61 63 68 20 69 6e 63 6f  6d 70 6c 65 74 65 20 6f  |ach incomplete o|
00001440  75 74 70 75 74 20 6c 69  6e 65 20 74 6f 20 69 6e  |utput line to in|
00001450  64 69 63 61 74 65 0a 74  68 61 74 20 74 68 69 73  |dicate.that this|
00001460  20 68 61 73 20 68 61 70  70 65 6e 65 64 2e 0a 0a  | has happened...|
00001470  54 77 6f 20 6f 75 74 70  75 74 20 66 6f 72 6d 61  |Two output forma|
00001480  74 73 20 63 61 6e 20 62  65 20 73 65 6c 65 63 74  |ts can be select|
00001490  65 64 20 66 72 6f 6d 20  74 68 65 20 77 69 6e 64  |ed from the wind|
000014a0  6f 77 20 62 72 6f 75 67  68 74 20 75 70 20 62 79  |ow brought up by|
000014b0  20 63 6c 69 63 6b 69 6e  67 0a 53 45 4c 45 43 54  | clicking.SELECT|
000014c0  20 6f 6e 20 74 68 65 20  50 72 69 6e 74 65 72 50  | on the PrinterP|
000014d0  53 20 69 63 6f 6e 3a 0a  20 20 20 28 61 29 20 22  |S icon:.   (a) "|
000014e0  50 6f 72 74 72 61 69 74  22 3a 20 74 68 69 73 20  |Portrait": this |
000014f0  70 72 69 6e 74 73 20 74  68 65 20 74 65 78 74 20  |prints the text |
00001500  69 6e 20 6f 6e 65 20 63  6f 6c 75 6d 6e 2c 20 75  |in one column, u|
00001510  73 69 6e 67 20 31 30 20  70 6f 69 6e 74 20 74 79  |sing 10 point ty|
00001520  70 65 0a 61 6e 64 20 77  69 74 68 20 74 68 65 20  |pe.and with the |
00001530  70 61 70 65 72 20 69 6e  20 70 6f 72 74 72 61 69  |paper in portrai|
00001540  74 20 6f 72 69 65 6e 74  61 74 69 6f 6e 2e 0a 20  |t orientation.. |
00001550  20 20 28 62 29 20 22 4c  61 6e 64 73 63 61 70 65  |  (b) "Landscape|
00001560  22 3a 20 74 68 69 73 20  70 72 69 6e 74 73 20 74  |": this prints t|
00001570  68 65 20 74 65 78 74 20  69 6e 20 74 77 6f 20 63  |he text in two c|
00001580  6f 6c 75 6d 6e 73 2c 20  75 73 69 6e 67 20 37 20  |olumns, using 7 |
00001590  70 6f 69 6e 74 20 74 79  70 65 0a 61 6e 64 20 77  |point type.and w|
000015a0  69 74 68 20 74 68 65 20  70 61 70 65 72 20 69 6e  |ith the paper in|
000015b0  20 6c 61 6e 64 73 63 61  70 65 20 6f 72 69 65 6e  | landscape orien|
000015c0  74 61 74 69 6f 6e 2e 0a  0a 49 6e 20 61 64 64 69  |tation...In addi|
000015d0  74 69 6f 6e 2c 20 79 6f  75 20 63 61 6e 20 73 65  |tion, you can se|
000015e0  6c 65 63 74 20 77 68 65  74 68 65 72 20 79 6f 75  |lect whether you|
000015f0  20 77 61 6e 74 20 61 20  74 69 74 6c 65 20 70 72  | want a title pr|
00001600  69 6e 74 65 64 20 61 74  20 74 68 65 20 74 6f 70  |inted at the top|
00001610  20 6f 66 0a 65 61 63 68  20 70 61 67 65 20 6f 66  | of.each page of|
00001620  20 6f 75 74 70 75 74 2e  20 54 68 69 73 20 74 69  | output. This ti|
00001630  74 6c 65 20 69 73 20 70  72 69 6e 74 65 64 20 75  |tle is printed u|
00001640  73 69 6e 67 20 31 30 20  70 6f 69 6e 74 20 62 6f  |sing 10 point bo|
00001650  6c 64 20 74 65 78 74 2c  20 61 6e 64 0a 63 6f 6e  |ld text, and.con|
00001660  74 61 69 6e 73 20 74 68  65 20 70 61 67 65 20 6e  |tains the page n|
00001670  75 6d 62 65 72 2c 20 74  68 65 20 6e 61 6d 65 20  |umber, the name |
00001680  6f 66 20 74 68 65 20 66  69 6c 65 20 61 6e 64 20  |of the file and |
00001690  74 68 65 20 74 69 6d 65  20 6f 66 20 70 72 69 6e  |the time of prin|
000016a0  74 69 6e 67 2e 0a 0a 56  61 72 69 6f 75 73 20 61  |ting...Various a|
000016b0  64 64 69 74 69 6f 6e 61  6c 20 6f 70 74 69 6f 6e  |dditional option|
000016c0  73 20 63 61 6e 20 62 65  20 73 65 6c 65 63 74 65  |s can be selecte|
000016d0  64 20 61 6e 64 2f 6f 72  20 63 68 61 6e 67 65 64  |d and/or changed|
000016e0  20 62 79 20 65 64 69 74  69 6e 67 20 74 68 65 0a  | by editing the.|
000016f0  50 72 44 61 74 61 20 66  69 6c 65 2e 0a 0a 0a 54  |PrData file....T|
00001700  68 65 20 70 72 69 6e 74  65 72 20 64 72 69 76 65  |he printer drive|
00001710  72 20 6d 6f 64 75 6c 65  0a 3d 3d 3d 3d 3d 3d 3d  |r module.=======|
00001720  3d 3d 3d 3d 3d 3d 3d 3d  3d 3d 3d 3d 3d 3d 3d 3d  |================|
00001730  3d 3d 0a 0a 54 68 65 20  66 6f 6c 6c 6f 77 69 6e  |==..The followin|
00001740  67 20 72 65 6d 61 72 6b  73 20 73 68 6f 75 6c 64  |g remarks should|
00001750  20 62 65 20 6e 6f 74 65  64 20 61 62 6f 75 74 20  | be noted about |
00001760  74 68 69 73 20 76 65 72  73 69 6f 6e 20 6f 66 20  |this version of |
00001770  74 68 65 20 70 72 69 6e  74 65 72 0a 64 72 69 76  |the printer.driv|
00001780  65 72 20 6d 6f 64 75 6c  65 20 61 6e 64 20 69 74  |er module and it|
00001790  73 20 64 6f 63 75 6d 65  6e 74 61 74 69 6f 6e 2e  |s documentation.|
000017a0  0a 0a 46 6f 72 20 65 61  63 68 20 52 49 53 43 20  |..For each RISC |
000017b0  4f 53 20 66 6f 6e 74 20  75 73 65 64 2c 20 74 68  |OS font used, th|
000017c0  65 20 70 72 69 6e 74 65  72 20 64 72 69 76 65 72  |e printer driver|
000017d0  20 6e 65 65 64 73 20 74  6f 20 62 65 20 74 6f 6c  | needs to be tol|
000017e0  64 20 77 68 69 63 68 0a  50 6f 73 74 53 63 72 69  |d which.PostScri|
000017f0  70 74 20 66 6f 6e 74 20  74 6f 20 75 73 65 20 69  |pt font to use i|
00001800  6e 20 69 74 73 20 70 6c  61 63 65 20 61 6e 64 20  |n its place and |
00001810  74 68 65 20 63 68 61 72  61 63 74 65 72 20 65 6e  |the character en|
00001820  63 6f 64 69 6e 67 20 74  6f 20 62 65 20 75 73 65  |coding to be use|
00001830  64 0a 66 6f 72 20 69 74  2e 20 4e 65 61 72 20 74  |d.for it. Near t|
00001840  68 65 20 65 6e 64 20 6f  66 20 74 68 65 20 66 69  |he end of the fi|
00001850  6c 65 20 21 50 72 69 6e  74 65 72 50 53 2e 50 53  |le !PrinterPS.PS|
00001860  70 72 6f 6c 6f 67 20 69  73 20 61 20 6c 69 73 74  |prolog is a list|
00001870  20 6f 66 20 74 68 65 20  66 6f 6e 74 0a 74 72 61  | of the font.tra|
00001880  6e 73 6c 61 74 69 6f 6e  73 20 75 73 65 64 2e 20  |nslations used. |
00001890  54 68 69 73 20 63 61 6e  20 62 65 20 61 64 64 65  |This can be adde|
000018a0  64 20 74 6f 20 6f 72 20  6d 6f 64 69 66 69 65 64  |d to or modified|
000018b0  20 62 79 20 74 68 65 20  75 73 65 72 20 61 73 20  | by the user as |
000018c0  64 65 73 69 72 65 64 20  2d 0a 75 73 75 61 6c 6c  |desired -.usuall|
000018d0  79 2c 20 79 6f 75 20 73  68 6f 75 6c 64 20 61 64  |y, you should ad|
000018e0  64 20 61 20 73 75 69 74  61 62 6c 65 20 74 72 61  |d a suitable tra|
000018f0  6e 73 6c 61 74 69 6f 6e  20 66 6f 72 20 65 61 63  |nslation for eac|
00001900  68 20 6e 65 77 20 66 6f  6e 74 20 79 6f 75 0a 61  |h new font you.a|
00001910  63 71 75 69 72 65 2e 20  49 74 20 69 73 20 61 20  |cquire. It is a |
00001920  67 6f 6f 64 20 69 64 65  61 20 74 6f 20 65 6e 73  |good idea to ens|
00001930  75 72 65 20 74 68 61 74  20 74 68 65 20 50 6f 73  |ure that the Pos|
00001940  74 53 63 72 69 70 74 20  66 6f 6e 74 20 79 6f 75  |tScript font you|
00001950  20 75 73 65 20 68 61 73  0a 73 69 6d 69 6c 61 72  | use has.similar|
00001960  20 6d 65 74 72 69 63 73  20 74 6f 20 74 68 65 20  | metrics to the |
00001970  52 49 53 43 20 4f 53 20  66 6f 6e 74 3a 20 74 68  |RISC OS font: th|
00001980  65 20 50 6f 73 74 53 63  72 69 70 74 20 63 6f 64  |e PostScript cod|
00001990  65 20 75 73 65 64 20 66  6f 72 20 74 65 78 74 0a  |e used for text.|
000019a0  70 72 69 6e 74 69 6e 67  20 77 69 6c 6c 20 63 6f  |printing will co|
000019b0  6d 70 65 6e 73 61 74 65  20 61 75 74 6f 6d 61 74  |mpensate automat|
000019c0  69 63 61 6c 6c 79 20 66  6f 72 20 64 69 66 66 65  |ically for diffe|
000019d0  72 65 6e 63 65 73 20 62  65 74 77 65 65 6e 20 74  |rences between t|
000019e0  68 65 20 6d 65 74 72 69  63 73 0a 6f 66 20 74 68  |he metrics.of th|
000019f0  65 20 74 77 6f 20 66 6f  6e 74 73 2c 20 62 75 74  |e two fonts, but|
00001a00  20 74 68 65 20 72 65 73  75 6c 74 73 20 61 72 65  | the results are|
00001a10  20 6c 69 6b 65 6c 79 20  74 6f 20 62 65 20 75 67  | likely to be ug|
00001a20  6c 79 20 69 66 20 74 68  65 73 65 20 64 69 66 66  |ly if these diff|
00001a30  65 72 65 6e 63 65 73 0a  61 72 65 20 74 6f 6f 20  |erences.are too |
00001a40  6c 61 72 67 65 2e 0a 0a  54 68 65 20 66 69 6c 65  |large...The file|
00001a50  20 21 50 72 69 6e 74 65  72 50 53 2e 50 53 70 72  | !PrinterPS.PSpr|
00001a60  6f 6c 6f 67 20 61 6c 73  6f 20 63 6f 6e 74 61 69  |olog also contai|
00001a70  6e 73 20 74 77 6f 20 50  6f 73 74 53 63 72 69 70  |ns two PostScrip|
00001a80  74 20 65 6e 63 6f 64 69  6e 67 20 76 65 63 74 6f  |t encoding vecto|
00001a90  72 73 0a 28 77 68 69 63  68 20 73 61 79 20 77 68  |rs.(which say wh|
00001aa0  61 74 20 61 63 74 75 61  6c 20 63 68 61 72 61 63  |at actual charac|
00001ab0  74 65 72 20 63 6f 72 72  65 73 70 6f 6e 64 73 20  |ter corresponds |
00001ac0  74 6f 20 65 61 63 68 20  63 68 61 72 61 63 74 65  |to each characte|
00001ad0  72 20 63 6f 64 65 29 2e  20 4f 6e 65 0a 68 61 73  |r code). One.has|
00001ae0  20 62 65 65 6e 20 63 68  6f 73 65 6e 20 74 6f 20  | been chosen to |
00001af0  63 6f 6e 66 6f 72 6d 20  77 69 74 68 20 74 68 65  |conform with the|
00001b00  20 49 53 4f 20 38 38 35  39 2d 31 20 4c 61 74 69  | ISO 8859-1 Lati|
00001b10  6e 20 31 20 61 6c 70 68  61 62 65 74 20 61 73 20  |n 1 alphabet as |
00001b20  66 61 72 20 61 73 0a 70  6f 73 73 69 62 6c 65 2c  |far as.possible,|
00001b30  20 74 68 6f 75 67 68 20  74 68 65 72 65 20 61 72  | though there ar|
00001b40  65 20 73 6f 6d 65 20 61  6d 62 69 67 75 69 74 69  |e some ambiguiti|
00001b50  65 73 20 28 65 2e 67 2e  20 63 68 61 72 61 63 74  |es (e.g. charact|
00001b60  65 72 20 63 6f 64 65 20  26 32 44 20 69 73 0a 64  |er code &2D is.d|
00001b70  65 66 69 6e 65 64 20 69  6e 20 74 68 65 20 49 53  |efined in the IS|
00001b80  4f 20 73 74 61 6e 64 61  72 64 20 74 6f 20 62 65  |O standard to be|
00001b90  20 68 79 70 68 65 6e 20  6f 72 20 6d 69 6e 75 73  | hyphen or minus|
00001ba0  2c 20 77 68 69 63 68 20  61 72 65 20 75 73 75 61  |, which are usua|
00001bb0  6c 6c 79 20 74 77 6f 0a  64 69 66 66 65 72 65 6e  |lly two.differen|
00001bc0  74 20 63 68 61 72 61 63  74 65 72 73 20 69 6e 20  |t characters in |
00001bd0  50 6f 73 74 53 63 72 69  70 74 20 66 6f 6e 74 73  |PostScript fonts|
00001be0  29 2e 20 54 68 65 20 6f  74 68 65 72 20 69 73 20  |). The other is |
00001bf0  61 20 73 70 65 63 69 61  6c 20 63 68 61 72 61 63  |a special charac|
00001c00  74 65 72 0a 65 6e 63 6f  64 69 6e 67 20 66 6f 72  |ter.encoding for|
00001c10  20 74 68 65 20 53 65 6c  77 79 6e 20 66 6f 6e 74  | the Selwyn font|
00001c20  2e 20 42 6f 74 68 20 65  6e 63 6f 64 69 6e 67 20  |. Both encoding |
00001c30  76 65 63 74 6f 72 73 20  63 61 6e 20 62 65 20 65  |vectors can be e|
00001c40  64 69 74 65 64 20 69 66  0a 6e 65 63 65 73 73 61  |dited if.necessa|
00001c50  72 79 20 2d 20 62 75 74  20 6d 61 6b 65 20 73 75  |ry - but make su|
00001c60  72 65 20 79 6f 75 20 6b  6e 6f 77 20 77 68 61 74  |re you know what|
00001c70  20 79 6f 75 20 61 72 65  20 64 6f 69 6e 67 2e 0a  | you are doing..|
00001c80  0a 4e 6f 74 20 61 6c 6c  20 50 6f 73 74 53 63 72  |.Not all PostScr|
00001c90  69 70 74 20 66 6f 6e 74  73 20 63 6f 6e 74 61 69  |ipt fonts contai|
00001ca0  6e 20 61 6c 6c 20 74 68  65 20 63 68 61 72 61 63  |n all the charac|
00001cb0  74 65 72 73 20 69 6e 20  74 68 65 20 65 6e 63 6f  |ters in the enco|
00001cc0  64 69 6e 67 20 76 65 63  74 6f 72 73 2e 0a 54 68  |ding vectors..Th|
00001cd0  65 20 50 6f 73 74 53 63  72 69 70 74 20 63 6f 64  |e PostScript cod|
00001ce0  65 20 69 6e 20 21 50 72  69 6e 74 65 72 50 53 2e  |e in !PrinterPS.|
00001cf0  50 53 70 72 6f 6c 6f 67  20 69 73 20 73 65 74 20  |PSprolog is set |
00001d00  75 70 20 74 6f 20 69 67  6e 6f 72 65 20 61 6e 79  |up to ignore any|
00001d10  20 63 68 61 72 61 63 74  65 72 0a 74 68 61 74 20  | character.that |
00001d20  79 6f 75 20 74 72 79 20  74 6f 20 70 72 69 6e 74  |you try to print|
00001d30  20 69 66 20 69 74 20 64  6f 65 73 6e 27 74 20 61  | if it doesn't a|
00001d40  70 70 65 61 72 20 69 6e  20 74 68 65 20 50 6f 73  |ppear in the Pos|
00001d50  74 53 63 72 69 70 74 20  66 6f 6e 74 20 62 65 69  |tScript font bei|
00001d60  6e 67 0a 75 73 65 64 2e  20 49 66 20 79 6f 75 20  |ng.used. If you |
00001d70  77 6f 75 6c 64 20 70 72  65 66 65 72 20 61 20 50  |would prefer a P|
00001d80  6f 73 74 53 63 72 69 70  74 20 65 72 72 6f 72 20  |ostScript error |
00001d90  74 6f 20 62 65 20 67 65  6e 65 72 61 74 65 64 20  |to be generated |
00001da0  69 6e 73 74 65 61 64 2c  20 74 68 65 72 65 0a 69  |instead, there.i|
00001db0  73 20 61 20 63 6f 6d 6d  65 6e 74 65 64 20 73 69  |s a commented si|
00001dc0  6e 67 6c 65 20 6c 69 6e  65 20 63 68 61 6e 67 65  |ngle line change|
00001dd0  20 79 6f 75 20 63 61 6e  20 6d 61 6b 65 20 74 6f  | you can make to|
00001de0  20 21 50 72 69 6e 74 65  72 50 53 2e 50 53 70 72  | !PrinterPS.PSpr|
00001df0  6f 6c 6f 67 20 74 6f 0a  61 63 68 69 65 76 65 20  |olog to.achieve |
00001e00  74 68 69 73 20 65 66 66  65 63 74 2e 0a 0a 50 72  |this effect...Pr|
00001e10  69 6e 74 69 6e 67 20 52  49 53 43 20 4f 53 20 73  |inting RISC OS s|
00001e20  70 72 69 74 65 73 20 74  6f 20 50 6f 73 74 53 63  |prites to PostSc|
00001e30  72 69 70 74 20 69 73 20  61 20 72 61 74 68 65 72  |ript is a rather|
00001e40  20 63 6f 6d 70 6c 69 63  61 74 65 64 20 62 75 73  | complicated bus|
00001e50  69 6e 65 73 73 20 61 6e  64 0a 61 6c 77 61 79 73  |iness and.always|
00001e60  20 67 65 6e 65 72 61 74  65 73 20 71 75 69 74 65  | generates quite|
00001e70  20 61 20 6c 6f 74 20 6f  66 20 50 6f 73 74 53 63  | a lot of PostSc|
00001e80  72 69 70 74 20 6f 75 74  70 75 74 2e 20 49 74 20  |ript output. It |
00001e90  6d 61 79 20 61 6c 73 6f  20 74 61 6b 65 20 71 75  |may also take qu|
00001ea0  69 74 65 20 61 0a 6c 6f  6e 67 20 74 69 6d 65 20  |ite a.long time |
00001eb0  74 6f 20 70 72 69 6e 74  2e 20 55 6e 64 65 72 20  |to print. Under |
00001ec0  73 6f 6d 65 20 63 69 72  63 75 6d 73 74 61 6e 63  |some circumstanc|
00001ed0  65 73 20 28 70 61 72 74  69 63 75 6c 61 72 6c 79  |es (particularly|
00001ee0  20 69 66 20 74 68 65 72  65 20 61 72 65 20 61 0a  | if there are a.|
00001ef0  6c 6f 74 20 6f 66 20 63  6f 6c 6f 75 72 73 20 69  |lot of colours i|
00001f00  6e 20 74 68 65 20 73 70  72 69 74 65 20 61 6e 64  |n the sprite and|
00001f10  2f 6f 72 20 69 66 20 74  68 65 20 73 70 72 69 74  |/or if the sprit|
00001f20  65 20 69 73 20 74 6f 20  6f 63 63 75 70 79 20 61  |e is to occupy a|
00001f30  20 6c 61 72 67 65 0a 61  6d 6f 75 6e 74 20 6f 66  | large.amount of|
00001f40  20 73 70 61 63 65 20 6f  6e 20 74 68 65 20 70 72  | space on the pr|
00001f50  69 6e 74 65 64 20 70 61  67 65 29 2c 20 74 68 65  |inted page), the|
00001f60  20 74 69 6d 65 20 74 61  6b 65 6e 20 62 79 20 74  | time taken by t|
00001f70  68 65 20 70 72 69 6e 74  65 72 20 61 6e 64 2f 6f  |he printer and/o|
00001f80  72 0a 74 68 65 20 61 70  70 6c 69 63 61 74 69 6f  |r.the applicatio|
00001f90  6e 20 74 6f 20 70 72 69  6e 74 20 74 68 65 20 73  |n to print the s|
00001fa0  70 72 69 74 65 20 6d 61  79 20 62 65 63 6f 6d 65  |prite may become|
00001fb0  20 71 75 69 74 65 20 6c  61 72 67 65 20 28 6f 66  | quite large (of|
00001fc0  20 74 68 65 20 6f 72 64  65 72 20 6f 66 0a 73 65  | the order of.se|
00001fd0  76 65 72 61 6c 20 6d 69  6e 75 74 65 73 20 6f 72  |veral minutes or|
00001fe0  20 65 76 65 6e 20 6d 6f  72 65 29 2e 20 44 6f 20  | even more). Do |
00001ff0  6e 6f 74 20 77 6f 72 72  79 20 75 6e 64 75 6c 79  |not worry unduly|
00002000  20 61 62 6f 75 74 20 74  68 69 73 2e 0a           | about this..|
0000200d