era@ncar.ucar.edu (Ed Arnold) (04/05/89)
I posed a question in these newsgroups on March 23, asking how to get postscript files prepared on a Mac, to print properly on an Imagen 2308S running 4.0 software with Ultrascript. This posting provides the solutions that were suggested by Imagen software support, and several net readers. The problem is in the dictionary provided by Apple. The result of doing an option-K on your Mac, just after clicking on OK in the print dialogue box, is a postscript file which contains Apple's postscript dictionary, followed by the output of the application you created a drawing with. The dictionary, which is the header of the file, looks like: %! %%Title: "Laser Prep -- The Apple PostScript Dictionary (md)" %%Creator: Apple Software Engineering %%CreationDate: Thursday, March 19, 1987 %{appledict version #68 0 % (c) CopyRight Apple Computer, Inc. 1984,1985,1986,1987,1988 All Rights Reserved. %%EndComments %%BeginProcSet: "(AppleDict md)" 68 0 . . . %%EndProcSet %%EOF There are two ways of dealing with this problem. The first and definitely the simplest, is simply to use Imagen's Apple compatibility dictionary corresponding to the version of LaserPrep your Mac puts out. For LaserPrep 5.2, that means replacing the entire dictionary shown above with the two lines: %! (dictv52.ps)run "dictv5.ps", "dictv51.ps", and "dictv52.ps" are postscript dictionaries which Imagen provides on their hard disk; you can use your Imagen disk manager program to verify they're there. The second (and more involved) way of dealing with the problem, is to fixup Apple's dictionary. Two fixups are needed. The first fixup is at approximately line 9 of the dictionary, which reads: statusdict begin waittimeout 300 lt{0 60 300 setdefaulttimeouts}if end This line attempts to set "statusdict" operators that are normally protected, which results in an "invalidaccess" error on Imagen. (I presume the LaserWriter must be executing something behind our backs to get this to work as is.) To fix it, either (1) place a "serverdict begin <password> exitserver" command before the above line, or (2) comment out the above line by placing a '%' before it. The second needed fixup is at approximately lines 10 & 11 of the dictionary. To each of the strings "//setrealdevice" and "//execjob", prepend a '%' (so they're commented out) and append a '\n' (newline). (No, I don't know what "setrealdevice" and "execjob" do, they aren't in Adobe's ps ref manual, appendix D.6 - SYSTEM PARAMETERS. Must be Apple-specific stuff. If you know, please tell me too.) I should probably mention that several persons pointed me at host sumex-aim.stanford.edu, which contains contributed programs for the Mac. Specifically, they suggested that I look at "macps-prepfix.shar", which contains programs "macps" and "prepfix", one of whose functions is to prepend a standard Apple dictionary to a postscript program on a unix host, before sending it to a LaserWriter. These programs aren't very useful with an Imagen, as it's a lot easier just to add that "(dictv52.ps)run" command to your postscript files, before spooling them to Imagen. ****** I should probably also mention that one of the first problems we encountered with postscript on our Imagens, had to do with "invalidaccess" error messages not related to the above dictionary problems. Imagen already had a fix for this, which involves downloading two files to your hard disk, "2020.ps" and "startup.ps", which change some systemdict parameters ... related to memory allocation, I believe. If you have an Imagen, plan on doing much future postscript work, and haven't yet applied this fix, you can get it by calling Imagen or e-mailing me. -- -------- Ed Arnold * NCAR (Nat'l Center for Atmospheric Research) * Mesa Lab PO Box 3000 * Boulder, CO 80307-3000 * 303-497-1253(w) * 303-494-6949(h) era@ncar.ucar.edu (128.117.64.4) * {ames,gatech,noao,...}!ncar!era