# Readme for SLPR.PDR

This document is best viewed with your browser (ex. netscape c:\tmp\readme.htm)

Overview:

Streaming Line PRinter (SLPR.PDR) is a streaming port driver used to connect your computer to a printer or print server via a TCP/IP connection. The driver uses Line Printer Daemon (LPD) Protocol as specified in RFC 1179. This protocol is an almost universal way to send print data to printers and servers. It is meant to be used as a alternative to the \PIPE\LPD0 (henceforth LPD0) port driver which is shipped with OS/2.
Some advantages of SLPR.PDR:

- Faster Thruput:
  Data can be sent to the printer almost as soon as it is generated as compared to the LPD0 driver which needs to wait until all the printer job is generated before it is sent.
- Simpler Setup:
  The LPD0 driver requires a separate program (LPD.EXE) be up and running before it will work. Since the LPD program is communicating with the printer directly it has the status - not the spooler.
- Better Error Handling:
  With LPD0 any problems are reported via LPD program and not the spooler. With SLPR there is a direct interaction with the spooler so error recovery is more intelligent.
- User Specified Time-outs:
  With LPD the default is to wait indefinitely so out of paper or printer jams are not noticed for a long time. With SLPR any waits longer than the user specified time-out generates an easy to see pop-up notification.
- More Ports:
  Currently lpd is limited to only one (1) port instance. SLPR can have up to 16.

Requirements:

Due to an incompatibly with older levels of the spooler you must be at or above the specified level as shown in the table below:

> OS/2 Version | Minimum FixPak Level
> Warp 3 | 44
> Warp 4 | 16
> Warp server for E Business | 3
> ACP1 | 2
> MCP1 | 2

You can find the upgrade at: http://service5.boulder.ibm.com/pspfixpk.nsf

If you do not want the entire FixPak then you will need to find and replace the file PMSPL.DLL which resides in \OS2\DLL of the boot drive with the new version from the proper FixPak. Since the file is normally locked you will need to do the following:

1. Shutdown and reboot the system
2. When you see a white rectangle at the upper left corner of screen press the Alt and F1 keys at the same time. You will have to be quick about this.
3. At the Recovery Choices screen select F2 if you are using Warp 4 or later to go to the command line. If you are using Warp3 then select C.
4. When the system finishes booting change directory to \OS2\DLL and replace the old PMSPL.DLL with the new one.

Warning: IBM recommends only upgrading to the right FixPak. If you choose to only upgrade PMSPL.DLL you do so at your own risk.

Installation:

The SLPR port driver package SLPR.EXE is a self extracting zip file consisting of:

1. SLPR.PDR - the port driver itself
2. SLPR.HLP - the port driver help file
3. SLPR.SYM - symbol file provided for customer support (hopefully not needed)
4. README.HTM - information formatted for a browser
5. README - information in plain text

If you are reading this you have successfully done the first few steps which is to download SLPR.EXE and extract it to a scratch directory.

To Install SLPR:

1. If you need to first install a printer see Installing a New Printer
2. Open the Properties of the Print Object you are interested in.
3. Select the Output Port tab of the Print Object Properties.
4. Click on the Install new port button.
5. Select the New port drivers radio button.
6. In the Directory entry field fill in the location of where you extracted SLPR.PDR.
7. Click on the Refresh button.
8. Double click on the SLPR icon. If you get an error message at this step you will need to upgrade your system (or at least PMSPL.DLL). See Requirements for further information. Note: You may see two error pop ups - one informing you of the incompatibility with the Spooler and second warning you of a incorrect environment. The upgrade process will take care of both.

Installing a New Printer

1. Select Printers folder in the Warp Center.
2. Click on Printer to Create a printer.
3. If you need assistance in filling in the panel click on the provided help button

Filling in the SLPR Properties Dialog:

Printer Destination is where you want the printer job or data to go to. This can be either an actual printer with a network card or a print server running LPD protocol. If your print server is an OS/2 machine you might want to attach using the network printer - it can provide more feedback from the server as well as allowing transmission of metafiles which are smaller and faster to send. If your server is not OS/2 or Windows, or you are going direct to a printer SLPR is the way to go.

> LPD Server is the actual host name URL or IP address of the destination printer or print server. This can be either URL format \\myprinter.mycompany.com or actual IP address 9.67.96.17

> LPD printer is the actual printer on the printer or queue if you going to a print server. If you are going direct to a printer and there is only one queue defined (typically the default) you can use RAW in this field. If there is more than one queue defined on the printer see your system Administrator for what to put in.

Port Name - this is actual name of of the port. It is in the format of SLPRx where x starts at one (1)and increments with each port you add.

High Performance - This controls whether port driver can send the print data as soon as it gets it from the application. Older printer network cards or some LPD programs can not handle streaming data. They need to know the actual size of all the print data for the job. Since the application or spooler does not know the size of the data until it all the job is generated the entire print job must be stored on the computer before it can be sent. With newer network cards you can send the data as it generated then tell the card when you are done. This way the overhead of storing the entire job is eliminated. This feature is very good for print servers since they are getting and sending a lot of jobs constantly. The default is off since sending steaming data to a destination that can not accept will result in a missing print job.
One way to find out whether your destination can accept streaming data is to leave the option off, and send a job to the target. This is to make sure you destination is filled out and everything else is in working order. Once that works turn on High Performance and try again. If it works you are set. If it doesn't work do not give up yet. Many printer network cards can be upgraded to the latest levels which might support streaming. Check your printer manufacturers web site to see if a downloadable upgrade is available.

Print Timeout - When the port driver expects a response from the destination it will wait this many seconds before alerting the user with a pop-up. If for some reason you are getting to many pop-ups increase this number. Remember if you are out of paper or there is a paper jam you will have to wait the time-out amount.

Other Notes

In order to get the best performance Printer-specific format on Queue options in the Print Object Properties dialog should not be checked on. Of course if you had reason to turn on by all means leave it on. If you destination supports streaming you can turn on Print while spooling on Queue options in the Print Object Properties dialog. This allows the spooler to start sending data before the whole job has spooled. If you turn off High Performance then SLPR will turn off Print while spooling since it must wait for the whole job anyway.

You can change the values of the port connection once installed by double clicking on the port icon of interest.

The following terms are trademarks of International Business Machines
Corporation in the United States and/or other countries:
IBM
OS/2
Other company, product, and service names may be trademarks or service
marks of others.
THE INFORMATION PROVIDED IN THIS README IS PROVIDED "AS IS" WITHOUT
WARRANTY OF ANY KIND. IBM DISCLAIMS ALL WARRANTIES, WHETHER
EXPRESSED OR IMPLIED, INCLUDING WITHOUT LIMITATION, THE IMPLIED
WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE AND MERCHANTABILITY
WITH RESPECT TO THE INFORMATION IN THIS DOCUMENT. BY FURNISHING
THIS DOCUMENT, IBM GRANTS NO LICENSES TO ANY PATENTS OR COPYRIGHTS.
(C) Copyright IBM Corporation, 2001. All rights reserved.
U.S. Government Users Restricted Rights -- Use, duplication or
disclosure restricted by GSA ADP Schedule Contract with IBM Corp.