matthews@TCGOULD.TN.CORNELL.EDU.UUCP (02/11/87)
Wordperfect and the Laserwriter WordPerfect Corporation's announcement that WordPerfect 4.2 would support the Apple LaserWriter made me rush right out and get an update. When it arrived, I was disappointed to find that the 4.2 update pages contained only about two paragraphs regarding the LaserWriter support. Since then, setting up the PC half of a small Appletalk network with one Mac Plus, one LaserWriter+ and one IBM/PC has been interesting. Having recently completed (?) this task, I offer the following notes. The system under discussion was set up in the Department of Plant Pathology at Cornell University. I have no affiliation with WordPerfect Corporation or Centram Systems West (makers of TOPS and TOPS PRINT) except as a satisfied customer. First a word about interfaces. WordPerfect Corporation presently supports only the serial interface. The telephone support people at WP Corp. seem to know little or nothing about the alternative: TOPS. If you are using your Laserwriter with MS/DOS machines only, the serial interface is simpler to deal with and has official support. If the LaserWriter is shared with one or more Macs, the situation becomes more complicated. Since the Mac can only use the Appletalk interface, a serial interface to the PC would mean switching the printer between serial and Appletalk input. This is even more undesirable than it sounds since the switching involves software as well as hardware. The file INITLWRT.PS, part of the WP 4.2 package, when sent from the PC to the LaserWriter, enables hardware handshaking between the two devices. This change is made in the persistent memory of the LaserWriter and lasts until it is reversed by other software or until the printer ROM is replaced. Turning the printer off and on won't do it. Before you send INITLWRT.PS to your printer, be sure you have its alter ego, XONXOFF.PS. This file returns the Laserwriter to its original mode of communication. This is essential if you are ever again to address the printer from a Mac. Either of these files may be sent to the LaserWriter with the DOS copy command (e.g.: copy a:initlwrt.ps com1). The alternative to all of this is to use TOPS and TOPS PRINT. TOPS is a network adapter board (and software) for the PC which enables the PC to be connected as a node of an Appletalk network. In addition, it will translate output designed for an Epson FX-80 into Postscript before sending it on to an Appletalk connected LaserWriter. (This translation is not needed with WP.) The TOPS PRINT program adds the further refinement of intercepting output to LPT1 from any application and rerouting it to the LaserWriter through Appletalk. When Wordperfect 4.2 is used with this system, no switching of the printer is needed, and INITLWRT.PS is not used. There is a change which must be made to one WordPerfect file. Releases of WP 4.2 prior to 12-18-86 include a file called LASERWRT.PS; in more recent releases, it's called PSCRIPT.PS. These are both versions of a Postscript program called "PtrEmulate". As distributed, these files have a <ctrl>D character at the beginning and/or end of the file. These <ctrl>D characters must be deleted if present in order for jobs to pass through the TOPS/Appletalk system. This is the only modification needed for the Appletalk interface. WordPerfect should be set up to use one of the LaserWriter printer definitions and route print output to LPT1. The PtrEmulate program enables the LaserWriter to recognize and respond to low ascii control characters just like any other printer. Regardless of interface, this file is sent as a prolog to each job printed from WordPerfect using one of the LaserWriter printer definitions. When any of the LaserWriter printer definitions is installed from the Printer 1 diskette to a program diskette, the file containing PtrEmulate is automatically copied also. (In some copies released after the PtrEmulate file was renamed from LASERWRT.PS to PSCRIPT.PS, the printer selection routine was not changed accordingly. Hence, a file not found error occurs when the program tries to copy LASERWRT.PS to the program disk. To get around this, rename PSCRIPT.PS to LASERWRT.PS on the Printer 1 diskette before you begin installing printer definitions. After the installation has completed successfully, go to the working diskette and re-rename LASERWRT.PS to PSCRIPT.PS.) With PtrEmulate resident in the LaserWriter, you can use the "Insert Printer Command" option of the WP Print Format menu to insert control codes for the usual motion controls, set number of copies, change orientation, or change font. By this means, you have access to all of the resident fonts of the LaserWriter. If you have a LaserWriter+, you will need the more recent version of PtrEmulate distrubuted as PSCRIPT.PS in order to access all of its fonts. Documentation for PtrEmulate is contained in the file PSCRIPT.DOC. Unfortunately, this file has not been distributed with all copies of WP 4.2. The most reliable way of obtaining it is from WordPerfect Corp.'s bulletin board (801-225-4414, <= 2400 baud, N parity). You'll have to answer a questionaire the first time you call which includes your WP license number. About three working days after that you will have access to the file area where PSCRIPT.DOC resides and be able to download it. This bulletin board also has a lot of other up-to-the-minute information, including XONXOFF.PS should you be without it. Now a word about fonts. WordPerfect uses character tables (contained in WPFONT.FIL) to look up the width of each character of any proportionally spaced font. WP 4.2 has character tables for Times and Helvetica font families only. Thus, although you can access the other fonts, things like underlining and right justification won't work right. You can make your own printer definitions and character tables for these additional fonts by using WordPerfect's own Printer program (PRINTER.EXE, usually on the Printer 2 diskette). This program allows you to create a definition by using an existing one as a model and tinkering from there. You must change the control sequences to begin each of the eight fonts, and create character tables containing the correct widths, again by copying and modifying an existing table. The Adobe Font Manual, published as Appendix C of Apple's "Inside LaserWriter" gives character widths of 1 point type, i.e. width as a proportion of height. These must be converted to widths in dots at the desired type size. (72 points = 1 inch = 300 dots). I have access only to the October 1984 revision of the Adobe Font Manual, hence the only other font I have widths for is Courier; not very thrilling since Courier is not a proportional font. Since I'm not even conversant with the Macintosh, I'm not well acquainted with the variety of fonts which are available on disk for downloading to the LaserWriter. It seems like it would be very easy to download a font from a Mac to the printer, then access it while printing a WordPerfect document from the PC. It looks like another font would mean a slight addition to PSCRIPT.PS to associate a font identifier (part of the change font control sequence) with the font in memory and size the font for use. The process of developing a printer definition for a downloaded font would be the same. Actually, I assume those nice people at WordPerfect Corp. are working on much of this at present and that we may see very substantial improvements in version 5.0. In summary, the combination of WordPerfect, TOPSPRINT, and the LaserWriter seems like a very viable combination. The one disadvantage I must point out is speed. On an unaccelerated IBM/PC with floppies only, WordPerfect's PRINTER.TST document takes over two minutes from <shift>F7 to emergence from the LaserWriter as a printed page. On the other hand, the LaserWriter's Postscript orientation gives it more power and flexability than other non-Postscript laser printers. Where each of the fonts of an HP LaserJet has a fixed size, the LaserWriter can resize any of its fonts to meet the need. Centram Systems West recommend that their product be used with a hard disk, and it is awkward with only floppies. Nonetheless, it will work; you'll just have to ignore the error reading drive C when you boot up. Please respond to: TL6J@CORNELLC (Barr Ticknor, Cornell University Department of Plant Pathology).