izumi@VIOLET.BERKELEY.EDU (09/04/87)
Hi! LaserWriter experts, I am having a little problem with LaserWriter which is used as a network printer. We have two programs which send output to LaserWriter via PC Network. (Specifically, Microsof Word, and DviLaser from Textset (now a different name? )) Both store permanent changes into Virtual Memory which stay until power-down or reset by; "systemdict begin quit" The VM of the original LaserWriter (v2.0, PS version 38.0) is too small for keeping the two simultaneously in memory without causing 'VMerror'. Because, during the reset cycle, LaserWriter loses characters coming in from the standard input, the print job queued immediately after reset gets flushed, causing a lot of confusion to network users. So, I am wondering if there is any way to flush VM so that LaserWriter can have the same state as that immediately after power-up, and to do this without the above procedure (i.e., without losing control of the RS232 serial port). Thank you in advance Izumi Ohzawa izumi@violet.berkeley.edu ...ucbvax!violet!izumi
patwood@unirot.UUCP.UUCP (09/13/87)
Here's how you can "manage" your permanent VM: First you put the following at the beginning of whatever it is you want to "pop" at a later time: serverdict begin 0 exitserver /$$SAVESERVER save def anything you want here... CTRL-D Now to "pop" what you've put into VM above, just do this: serverdict begin 0 exitserver $$SAVESERVER restore CTRL-D All the information loaded in after the previous save is tossed, recovering your VM. This is essentially what the job server does (perform a save and restore) around a user's job. Note that you should NOT do the $$SAVESERVER restore except after the exitserver operation, as the interpreter will get quite confused when the current job ends (and it can't find the save object it stored when the job started) and will restart itself, doing just what you don't want it to do. Pat Wood Editor, The PostScript Language Journal bellcore!phw5!phw flash.bellcore.com!phw5!phw