Contents of the PS.DOC file
PHAST SPOOL V1.1
Copyright (c) 1991 by Len Wilson
Netmail c/o 1:104/425
*** SHAREWARE ***
A print spooler and printer control program
AT compatible 386 or 486 (some 286's)
DESQview Version 2.xx
Buffered parallel printer, LPT1-3
Traditional, DOS-only, print spoolers like PRINT.COM must create
their own background process. They do this by becoming a TSR and
using the timer and/or printer interrupts to synchronize output to
the printer. They also have to perform some "unsupported" gymnas-
tics to read data from the disk. In their day, they could be con-
sidered examples of pretty slick programming - multitasking on PC's.
The introduction of 386's and multitaskers, like DESQview, has
made all such software obsolete!
PS is specifically designed to run in a DV window. It doesn't
use any hardware interrupts and uses less than 11k of your memory.
PS requires approx. 50% less processing time than PRINT.COM! It
achieves some of its efficiency by writing directly to the printer
ports*. PS can run in a very small timeslice, if necessary, with
DV's foreground/background ticks ratio set to 15 or 20 to 1.
In addition to being a very efficient spooler, PS is a power-
ful printer control program with user-defined "EZ" commands. Con-
sider the following PS entry.
MYFILE.TXT #5 EL DR CO
This would cause 5 copies (#5) of MYFILE.TXT to be printed in
elite/draft/condensed mode. This example assumes the use of one
of the included Command Definition Files (CDF's). CDF's are used
to customize the program for ANY printer. They are created using
any text editor and information from your printer manual. More on
* Because it writes directly to printer ports, its output can't be
redirected to a serial printer or a file.
Spacebar: Tap the spacebar to get the cursor.
Escape : The escape key is always available to quit input mode
or to exit the program.
UP/DN : Used to position the triangular pointer.
Menu items may be selected by pressing the associated function
key or clicking on the item with the mouse.
If the printer is turned on, PS will find it when you open the
window and LPTn will be displayed ( n = printer number ). If the
printer is off, turn it on and press F1. If you have more than 1
printer turned on, press F1 to switch printers. See the note on
multiple printers. ~~~~~~~~~~~~~~~
Stop is intended for use in the following disastrous situations.
1) Paper jam or misalignment.
2) You change your mind or see that a file you
didn't intend to print is being printed
(because of wildcards or printer batch file).
Pressing F2 causes a hard reset to the printer and PS is put
in "hold" mode. To restart after pressing F2, position the pointer
to the filename you wish to start with and press F3 (Start).
After entering one or more filenames, press F3 to start printing.
If printing has been stopped using F2 or is in "hold" mode (#h com-
mand), you must position the pointer to the next file to be printed
before starting. (cont.)
If using F3 to restart after stopping (F2), you will be promp-
ted, "Start with page:" and be allowed to indicate which page print-
ing is to start with (1 is default). Press RET or click on F3 to
accept the default. The program counts formfeeds to determine page
number. This feature won't work if the document has no formfeed
codes. If no FF's are found, printing will start with page 1.
To delete an entry, position the pointer to it and press F4.
Deleting the filename being printed or entries preceeding it is
The mouse can be used for this - click on the entry then click
on the menu.
Pressing F5 will allow you to change the default directory (and
Pressing F6 will put Phast Spool into background. Use DV's
"Switch Windows" to get it back.
ENTERING FILENAMES AND COMMANDS
When you open the Phast Spool window, you will see a bright tri-
angular pointer at the upper left corner of the display just under the
menu. Tap the spacebar to get the cursor and enter a filename.
Follow the normal DOS rules for specifying files. The default
directory is shown at the bottom of the window. You can set the default
directory for the program by entering it on page 1 of DV's "Change a
Program" (Directory...:). You may change this in the program by press-
ing F5 (Chdir). Or, you can enter the full path and filename.
Wildcards are OK, but only for files in the current directory.
EZ commands can be entered following the filename or on a line
by themselves. If a line has commands only, it should begin with the
d:\letters\report.txt pi lq #4
PROGRAM.LST EL DR FF
COMMAND DEFINITION FILES
CDF's can be created using any text editor. Just use the included
files - IBMPRO.CDF, IBMGRPH.CDF and LQ1000.CDF - as examples. There can
be up to 40 commands in a file. Some comments are advisible, however, the
size of a CDF is limited to 1536 bytes and verbose comments can easily
cause this limit to be exceeded. Control strings may be entered in hex if
you wish. Hex entries must start with "\". The various control strings
that can be used with a particular printer can usually be found in its
Your EZ command The control string
CO 27 15 ; Semicolons preceed comments.
; Use single spaces as separators.
CO \1B 0F ; Example of hex.
EZ commands must be the first 2 characters (letters or numbers) on
a line. The maximum length of a control string is 12 characters. Phast
Spool doesn't distinguish between upper and lower case.
Contents of an actual CDF
; This CDF is for Epson LQ1000 or equiv.
LQ 27 120 1 ; letter quality
EL 27 77 ; elite
CO \1B 0F ; condensed
EX 27 87 1 ; expanded
PI 27 80 ; pica
DR 27 120 0 ; draft
BO 27 71 ; bold
IT 27 33 64 ; italics
S4 27 104 2 ; quadruple
S2 27 104 1 ; double
S1 27 104 0 ; normal
LF 10 ; linefeed
FF 12 ; formfeed
BL 27 10 ; backline
BF 27 12 ; backform
L8 27 48 ; 8 LPI
RE 27 64 ; reset
Refer to the "DESQVIEW INSTALLATION" section to see how a CDF
MIXING PRINTER FEATURES
Some printer features can't be combined. Obviously, letter quality
and draft can't be. Some other illegal combinations are not so obvious.
Some depend on printer design. If your printer is capable of emulating
more than one kind of printer, it will have the same limitations as the
one it is emulating.
Printer manuals will show one control string to turn a feature ON
and another to turn it OFF. Don't bother with commands to turn off
individual features. Just use a "reset" command to clear out the prev-
ious setup. Then, install another one.
There are two of these. They will work regardless of whether a
CDF is loaded.
1. #H will cause PS not to terminate itself when it has
completed printing (hold mode).
2. #nn tells PS how many copies of a file to print.
( #6 = "print 6 copies" )
PRINTER BATCH FILES
Phast Spool will print the files listed in a "printer batch file".
To enter the name of a batch file, preceed the filename with "@".
This would cause all the files listed in MYFILES.DAT to be printed.
MYFILES.DAT might contain something like the following.
stuff.txt el dr #2
letter.dat re lq
friday.log dr co #h
Batch files cannot be "nested". In other words, you may not use "@"
in a batch file.
If you have more than 1 printer connected to your computer, it is
a good idea to create a separate "Add a Program" entry for PS for
each printer. Just name them something like "PRINTER1", "PRINTER2"
etc. Then, you can dedicate a copy of PS to each printer.
The "/2" would dedicate this entry to LPT2. You could do the
same thing for LPT1 and LPT3. This will insure that one copy of
PS running in one window will never interfere with printing being
done by another copy of PS in another window. This also facilitates
the use of separate CDF's for each printer.
There is no hard, fast rule for control codes used with PC printers.
There is, however, a sort of quasi-standard adhered to by most manu-
facturers. If you compare the included EPSON and IBM CDF's, you will
see that they are almost identical. The control strings used in the
included CDF's were chosen by the author, in part, because they are
recognized by many printer models. Chances are, one of these files will
work well with your printer. If not, use your word processor to create
DESQview(TM) is a trademark of Quarterdeck Office Systems.
IBM(R) is a registered trademark of International Business Machines Corp.
EPSON(R) and LQ1000(TM) are trademarks of Epson America Inc.
The author shall not be liable in any event for incidental or
consequential damages in connection with, or arising from, the
use of Phast Spool.
Phast Spool is a shareware program. This means that you only pay for
it if you decide to continue using it. If you don't think that it is
worth the asking price, delete the program. If, however, you decide
to continue using it after a 2-week trial period, please send $15
along with the registration form to:
1342 Quivera Dr.
Denver, CO 80229
The shareware fee pays for unlimited use of PS on a single computer.
You are encouraged to give away unregistered copies of PS with the
understanding that each person receiving a copy is under the same
obligation as you are to send in the shareware fee if they decide to
keep it. You can upload PS (unregistered version) to other computer
systems as long as this archive remains intact.
Len Wilson Name: ___________________________________
1342 Quivira Dr.
Denver, CO 80229 Company: ___________________________________
Phast Spool Price Schedule
(One copy per computer)
1-5 copies - $15 each
5-20 copies - $10 each
20+ copies - One time fee of $200
I would like to register _______ copies of Phast Spool.
I understand that I will receive the latest revision of Phast Spool
along with registration verification by mail within 2 weeks.
A .DVP file is included for your convenience. Its use is optional.
Shown below is the complete DV installation. Some options are more
important than others. They are marked.
** Important options marked with an asterisk **
Add a Program
Program Name............: ANYTHING
Keys to Use on Open Menu: ANY KEYS *Memory Size (in K):11
Parameters: C:\your_dir\IBMPRO.CDF <-------* Shows how to load a CDF *
Directory.: The directory you want as default.
Writes text directly to screen.......: [N] *
Displays graphics information........: [N] *
Virtualize text/graphics (Y,N,T).....: [T] *
Uses serial ports (Y,N,1,2)..........: [N]
Requires floppy diskette.............: [N]
Program Information Advanced Options
System Memory (in K)......: 0 Maximum Program Memory Size (in K)..:
Script Buffer Size....: 1000 Maximum Expanded Memory Size (in K).:
Text Pages: 1 Graphics Pages: 0 Initial Mode: Interrupts: 00 to FF
*Maximum Height: 18 *Starting Height: 18 *Starting Row...: 3
*Maximum Width.: 80 *Starting Width.: 40 *Starting Column: 20
*Close on exit (Y,N,blank)......: [Y] *Uses its own colors............: [Y]
*Allow Close Window command.....: [Y] *Runs in background (Y,N,blank).: [Y]
Uses math coprocessor..........: [N] Keyboard conflict (0-F)........: 
*Share CPU when foreground....: [Y] *Share EGA when foreground/zoomed.: [Y]
*Can be swapped out (Y,N,blank).: [N] Protection level (0-3).........: