Contents of the SPOOL.DOC file
I have decided that most the print spoolers for the IBM PC
are just junk. They dont dont have enough flexibility in operation and few
if any can give you updated status of the buffer. Part of the problem lies
in the basic hardware flaws of the IBM PC. It is impossible to generate a
true interrupt driven spooler for the IBM parallel port. This is because the
ACK signal coming back from the printer is tied direct to the interrupt
controller. Unfortunately the timing of this signal,as defined for standard
centronics interface,is too fast to be acknowledge by the controller! It
is uncanny how one simple flip-flop inserted between the signal line and the
controller could have elimnated the problem! All the clones out there
never bothered to include it either,copying IBM line for line!
As a result,all spoolers have to tag themselves to either the
keyboard interrupt or timer. Some tag to both of them. However some control
of priority is needed,or conflicts may occur. This priont spooler alows
that control. THe spooler is divided into 2 parts.
SPOOL.DEV : This is the actual device driver for the spooler.
BUFFERP.COM : This is control program that sends and recieves
: information from the device driver. Allow priority
: or port changing,etc!
A detail of the operation is given below,and how to install the
program. Source is also included for hackers to use. Although I did not
write this program originally,it was given to me for modification. The company
I worked for on this project has since gone under, and I feel that since I
modified it and the company folded, I have full rights to it. I am giving it
away free in the true spirit of public domain. Sort of a thank you to many of
the other fine PD authors who given us programs like Qmodem,EBL,Util, etc! My
thanks go out to these fine authors!
The print spooler allows up to 64K of ram to preserved for use as a
print spooler. All output to printer device will be routed to the buffer and
printed to the destination during a 'background' operation. THis will allow
the user to continue using his computer for other functions. The printer
devices allowed for this spooler can be as follows:
LPT1,LPT2,LPT3 or COM1,COM2.
Also the device for spooling can be changed at anytime the device is
installed or after! THe user can set how much memory he wishes to reserve by
adding a 'switch' to the command line during installation. Install the device
by editing a file on the boot disk "Config.Sys". THis may be edited with any
editor such as edlin or Wordstar. Options for the driver are allowed and
installed as folows:
DEVICE=SPOOL.DEV /60 /L1
Placing this line in the Config.sys file is all that is needed. The first
parameter "/60" indicates how much memory is be reserved for the buffer. It is
in allocated in 1K increments. ANy number is allowed from "1" to "63". If no
number is entered,or an incorrect number, 63 will be the default. The second
parameter indicates the default port for the spooler. Allowable parameters are
/L1 : Route to LPT1
/L2 : Route to LPT2
/L3 : Route to LPT3
/C1 : FOr COM1
/C2 : For COM2
Any other parameters are not allowed. The default port,if none are
emtered is LPT1. Make sure that the file SPOOL.DEV is also installed on the
boot disk. Remember to restart the pc before spooler is activated!
The second file BUFFERP.COM is a utility program that allows the user
to change ports for spooling,clear the buffer and see how much is in the
buffer. It is menu driven and very self explanatory. It will only work if the
spooler is installed, otherwise will complain! Execute it by simply typing
"BUFFERP", making sure the file is on the default drive or in the DOS Path
I have found few problems with the spooler. THe priority feature of the
spooler also comes in handy for controlling output speed. It can changed on
the fly withg the BUFFERP command. Also this is the first spooler I have found
that works well with the DOS PRINT command! SHould work with any programs such
as Wordstar or PC-WRITE! Enjoy it!
Addemium for RBBS sysops or Multi-Link Users
There is a few things the RBBS sysop or Multi-Link user should know about
spool.dev Under RBBS if operator page is on and a user pages, my Epson printer
will cease to log the activity of the BBS, but continues to fill the buffer. I
have only found Re-boot as a solution to date.
If you are using multi-link It will work fine for either paration, howver
attempting to change the printer priority causes a crash. It will allow buffer
If any rbbs sysop figures out how to make page not conflict with spool, please
leave a comment to the sysop or Craig Derouen at Video Advisor ON-LINE at
Thank you Tim Houser sysop VA RBBS