Creating a PostScript Start-up File for QMS Crown Printers When a QMS Crown printer is powered on, the controller checks to see whether a file called Sys/Start exists on the printer's hard disk. If it does exist, the contents are executed in the PostScript emulation before any jobs are accepted by the printer. This provides an opportunity to create macros or forms that all users need at a given installation. There are four steps recommended for the creation of a Sys/Start file: 1. Create and test the macros, forms, or fonts to be included in the Sys/Start file. It is important to test the code in advance. Although most errors in the Sys/Start file are harmless, some may be unrecoverable and require reformatting the hard disk. 2. Send a job to the printer that creates a temporary file on the hard disk containing the code to be included in the Sys/Start file. This file should include the following PostScript code: %! %%IncludeFeature: emulation (postscript) %%EndComments /buildtemp (StartTemp) (w) file def /buffer 1024 string def /storethisstuff { {currentfile buffer readstring exch buildtemp exch writestring not {buildtemp closefile exit} if } loop } def storethisstuff [insert the text of the start-up job here] 3. Send a job to the printer which saves the existing Sys/Start file (if one exists) and renames the temporary file to Sys/Start. The code for this file is as follows: %! %%IncludeFeature: emulation (postscript) %%EndComments serverdict begin 0 exitserver statusdict begin (Sys/Start) status {clear (Sys/Start) (OldStart) renamefile} if (StartTemp) (Sys/Start) renamefile end stop 4. Turn off the printer, count to 10, and then turn on the printer again. The Sys/Start file does not take effect until the printer is restarted. Notes on the Sys/Start File 1. The Sys/Start file is executed outside the server loop when the printer is turned on. Therefore, it is never necessary to include the exitserver operator in the Sys/Start file. 2. It is recommended that you download the PostScript error handler to the printer before sending the job to create the temporary file or the Sys/Start file. This saves time and trouble if there are typographical errors in the jobs. 3. Steps 2 and 3 can be combined into a single job, creating Sys/Start directly. However, Sys/Start is a protected file and can be accessed only from outside the server loop. As a consequence, the PostScript job to create the file can use PostScript VM, which cannot be recovered until the printer is turned off and then back on again. It is safer to create the temporary file and then simply rename the file in a separate job, as documented here. 4. The Sys/Start file should never be used to set nonvolatile parameters, such as defaultemulation or sccbatch. These parameters are stored in EEPROM on the printer, which can be updated only a limited number of times before the component fails. In fact, since these items are stored in nonvolatile memory, there is no need to alter them every time the printer is turned on. QMSþ, QMS-PSþ, and ColorScriptþ are registered trademarks of QMS; PostScriptþ is a registered trademark of Adobe Systems.