About LPR32
===========
LPR32 is a printer port driver for LPR (IP network) printing.  It provides up to
64 LPR ports for printing to network printers that run the LPD protocol.  It is
not a "streaming" driver like IBM's SLPR, but it works on a wider range of OS/2 
systems.  Originally written by Serge Sterck.

Note: A 32-bit TCP/IP stack is required (i.e. MPTS v5.3 or above).  (It may work
      with older versions if you don't install LPR32.EXE - see below - but this
      has not been tested.)


How to Use LPR32.PDR
====================
Install the port driver like normal: go to printer properties, output port, 
select "Install new port", and give the path where LPR32.PDR is located.  

Alternatively, copy LPR32.PDR directly to x:\os2\dll (where x is your boot 
drive) and run LPR32INST (see below).

Configuration of the port is performed via GUI (double click on the LPRx port
icon)... or by modifying the PM_LPRx key directly in os2sys.ini if you really
know what you're doing.  

The next step is optional, but recommended if your installed TCP/IP services
are at any level lower than UN_2205 (MCP2 level)* - however, this REQUIRES
that you have a 32-bit TCP/IP stack (MPTS v5.3 or above).  Copy the included 
LPR32.EXE to the x:\tcpip\bin directory (where x is your boot drive).  If 
this executable is not found, LPR32 will attempt to use the standard LPR.EXE 
instead.

* Run "lpr -?" from a prompt - if "-a<timeout>" is listed as one of the 
  accepted switches, then you have the preferred version of LPR.EXE installed
  already, and thus can skip this step.


Supporting Files
================
LPR32.EXE      LPR command line, used to send data to the printer.  Copy it to
               your \tcpip\bin directory (as above).  This file is actually the
               IBM LPR.EXE from CSD UN_2101.  (In TCP/IP 4.31 they forgot to 
               apply the fix so the ACK bug is still present in MCP1.)  If you
               have MCP2 or later, you can just copy your existing LPR.EXE to
               LPR32.EXE instead - or skip it entirely, as the port driver will
               fall back to trying LPR.EXE if LPR32.EXE can't be loaded.

LPR32INST.EXE  Install utility (optional)
               "lpr32inst x" will install x new ports on your pc by updating
               the system INI file (up to a maximum of 64 total ports).


Summary
=======
-  Install portdriver LPR32.PDR using the GUI method, or copy it to x:\os2\dll 
   (where x is the boot drive).
-  Copy LPR32.EXE to x:\tcpip\bin (where x is the boot drive), optional step.
-  Install new ports using the GUI, or with "lpr32inst x" where x is the number
   of new ports to be installed (from 1 to 64).
-  Configure the LPRx port (server, queue name, binary mode etc).


Limitations
===========
 * Once the job is sent to the server you can no longer monitor it in the local
   printer queue.  So there's no way to know if an error occurs while spooling 
   on the server (except by going to the server and checking).  However, the
   same is basically true when you print to any other kind of network port.
 * If LPR(32).EXE times out while trying to connect to the server, the job will 
   simply abort silently when the timeout expires.  (This may take a while.)
 * In the Properties dialog, you cannot specify a blank field for the printer 
   name.  (If you try, LPR32 will probably fail.)  Specify '*' if there is no
   printer queue name (e.g. when the "server" is the printer itself).


Changes
=======
2009-04-20 (Alex Taylor)
 - If LPR32.EXE is not found, falls back to LPR.EXE (from IBM TCP/IP).
 - Now brings up a message box if an error occurs running LPR32.EXE (this 
   does not include timeouts).
 - The "install new port" dialog (normally) no longer shows all 64 possible
   ports.
 - Port description now shows the server/printer name on the "output port" page
   (like SLPR).
 - Fixed minor bug causing initialization of default description to fail.
 - Fixed bug in parsing of the properties dialog fields.
 - Prettier icon.
 - Removed 'send as binary file' checkbox, since it didn't actually do anything
   (the code always sends as binary anyway).
 - Various other tweaks to properties dialog.
 - Added BLDLEVEL string.
 - LPR32INST now adds new ports after existing ones.
 - Fixed LPR32INST usage text output.
 - Various improvements to readme.os2 file.
