I just acquired an Apple Personal LaserWriter 300. This is an
obsolete (but still working), completely proprietary laser printer.
It connects to a serial port, and does not understand PostScript. The
printer itself does not communicate over AppleTalk, but you can configure
the driver to share the printer over an AppleTalk network; each client
machine must have the driver installed. The driver, of course, is only
available for Mac OS (not Mac OS X). It apparently uses QuickDraw,
which if I remember correctly is the API to display graphics on the
screen (analogous to Quartz in Mac OS X).
So I wanted to be able to print to this thing through
CUPS across the network. I already
have a CUPS server running, sharing my USB inkjet printer (and Samba
uses CUPS, so Windows clients can print too). The trouble is, there
is no CUPS driver for this printer, and it's quite likely that there
never will be.
I started by installing System 7.6 on a Performa 6116CD (it had
previously been running an unofficial
PowerPC port of Slackware Linux
using a hacked-up kernel).
I then installed Adobe Acrobat Reader (version 3.0!). I created a
shared folder on my file server, and set the Performa to automatically
mount the folder over the network.
I then installed a plug-in for CUPS called
CUPS-PDF,
which lets you create a virtual printer in CUPS that actually generates
a PDF file and places it in the folder you choose. I set it to create the
PDFs in that shared folder I had created.
The next step was to write an AppleScript which continually checks
to see if any files are in the shared folder, and if so, launch Acrobat
Reader and print them. Just one catch: the print confirmation dialog box
that lets you enter the number of copies you'd like to print, etc.
I couldn't figure out how to bypass that dialog - at least not anything
that worked in the version of AppleScript that ships with System 7.6.
Finally I remembered an old shareware control panel called
Okey Dokey Pro, which will automatically click the OK button
for you after a time delay. I set it to only work in Acrobat Reader,
and to dismiss any dialog box after a one-second timeout. That did
the trick!
So now the CUPS test page works. Unfortunately, when I try to
actually print a document from my iBook, I wind up with a 321-byte
PDF file that Acrobat Reader won't open (of course, Okey Dokey Pro
happily dismisses the error message, and my AppleScript deletes the
file). I have no idea what's going on here. The crazy Mac hacking
part works perfectly, but something involving Ghostscript seems to
be monkeying up the works. Well, I'll mess with it later. It's
time for bed.
|