home *** CD-ROM | disk | FTP | other *** search
- PSD.EXE --
-
- PSD is a simple utility that wraps a PostScript envelope around
- an ASCII file so that it can be printed on a PostScript printer,
- such as the Apple LaserWriter. It is not intended to provide
- elegant formatting. Rather, it serves as a simple method to
- print ASCII files, such as program listings.
-
- The .EXE file included here is a bound application. It will run
- in either DOS 3.x or OS/2. The .CMD file contains the compile,
- link, and bind commands for my system. Of course, the source
- can be compiled and linked under either DOS or OS/2, if you prefer.
-
- A predecessor program, LWP, included async I/O support and
- XON/XOFF flow control, required by early LaserWriters. (The
- PRINT spooler in DOS cannot handle XON/XOFF control.) Under
- OS/2 the MODE command can invoke the XON/XOFF flow control (most
- new LaserWriters don't need this, they use DTR flow control) and
- output directed to a parallel printer port (LPTn) can be
- redirected to a COM port through SPOOL.
-
- I use this program when I need to print a group of files, either
- in the DOS box or in OS/2. By starting PSD in OS/2 mode and
- then switching screen groups the formatting and printing proceed
- without intervention, while I go on with my work. In my system
- I have SPOOL set up on LPT2, redirected to COM1. The PSD
- program looks for an environment variable, PSD=, to tell it
- where to send its output. Although the variable can define a
- filename (it's simply inserted in an fopen() statement), I have
- it defined as PSD=LPT2. Thus, the output, in either OS/2 or DOS
- mode, is handed to the SPOOL.
-
- The usage for PSD is reasonably straightforward for simple
- printing: the program name is followed by a list of files to
- print. The filename(s) may include wildcards. Options are
- provided for limited format control. To get a list of the
- options, run PSD without a filename parameter.
-
- One little glitch: PSD inserts an EOD at the end of the print
- data stream. The OS/2 SPOOL does not seem to pass this along to
- the printer. Thus, the LaserWriter keeps looking for additional
- input (the yellow "busy" light flashes) until it times out. If
- the LaserWriter gets confused, then it may discard all incoming
- data looking for an EOD signal. The result will be that the
- print data will be lost. Presuming that you haven't erased it
- yet (!!!), you can reprint it. Also, because SPOOL was designed
- to support devices that don't talk back, such as parallel
- printers, error messages from the LaserWriter are ignored. You
- won't know when it's out of paper unless you look at it.
-
- Compiled in MSC 5.1. Tested under IBM OS/2 1.0.
-
- I hope that you find this little utility as useful as I do. If
- you encounter any difficulties, please let me know.
-
- May 23, 1988
-
- Roger Loeb, MarTech, 3457 Iris Court, Boulder, CO 80302 (303) 447-0832
-
- Compuserv: 74666,355
- BIX: rogloeb