Installation/User's Guide: DECprint[TM] Utility for PostScript[R] to Sixel Printing for VMS Order Number: AA-NH56A-TE This manual describes how to install and use the DECprint Utility for POSTSCRIPT to Sixel Printing for VMS software on a VAX/VMS computer system. Revision/Update Information: This is a new manual. Operating System and Version: VAX/VMS, Versions 5.1, 5.2, and 5.3 Software Version DECprint Utility for POSTSCRIPT to Sixel Printing for VMS, Version 1.0 Digital Equipment Corporation ________________________ January 1990 __________ The information in this document is subject to change without notice and should not be construed as a commitment by Digital Equipment Corporation. Digital Equipment Corporation assumes no responsibility for any errors that may appear in this document. Any software described in this document is furnished under a license and may be used or copied only in accordance with the terms of such license. No responsibility is assumed for the use or reliability of software or equipment that is not supplied by Digital Equipment Corporation or its affiliated companies. Restricted Rights: Use, duplication, or disclosure by the U.S. Government is subject to restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at DFARS 252.227-7013. __________ © Digital Equipment Corporation 1990. All rights reserved. Printed in U.S.A. __________ The postpaid Reader's Comments forms at the end of this document request the user's critical evaluation to assist in preparing future documentation. The following are trademarks of Digital Equipment Corporation: DEC DIBOL UNIBUS DEC/CMS EduSystem VAX DEC/MMS IAS VAXcluster DECnet MASSBUS VMS DECsystem-10 PDP VT DECSYSTEM-20 PDT DECUS RSTS DECwriter RSX DIGITAL POSTSCRIPT is a registered trademark of Adobe Systems, Incorporated. MLO-S1325 Contents ________________________________________________________________ __________________________________________________________ PREFACE xi ________________________________________________________________ I INSTALLATION GUIDE ________________________________________________________________ CHAPTER 1 BEFORE INSTALLATION 1-1 1.1 OVERVIEW 1-1 1.1.1 PostScript Page Description Language 1-2 1.1.2 Sixel Graphics 1-2 1.2 PRINTER SUPPORT 1-3 1.3 HOST HARDWARE REQUIREMENTS 1-3 1.4 HOST SOFTWARE REQUIREMENTS 1-4 1.5 SOFTWARE DISTRIBUTION KIT 1-4 1.6 SOFTWARE LICENSE 1-4 1.7 REQUIRED DISK SPACE 1-5 1.8 INSTALLATION TIME 1-5 iii 1.9 INSTALLATION VERIFICATION PROCEDURE (IVP) REQUIREMENTS 1-5 1.10 INSTALLING THE DECPRINT UTILITY WITH THE LN03 IMAGE SOFTWARE 1-5 ________________________________________________________________ CHAPTER 2 INSTALLING THE SOFTWARE 2-1 2.1 INSTALLATION CHECKLIST 2-1 2.2 VMSINSTAL CONVENTIONS 2-1 2.3 VMSINSTAL RELEASE NOTES 2-2 2.4 INSTALLATION PROCEDURE 2-3 2.5 RUNNING THE IVP AFTER INSTALLATION 2-9 2.6 SAMPLE INSTALLATION SESSION 2-10 2.7 IVP SAMPLE OUTPUT 2-12 ________________________________________________________________ CHAPTER 3 POSTINSTALLATION REQUIREMENTS 3-1 3.1 CREATING LOGICAL NAMES FOR QUEUED PRINTING 3-1 3.2 ENABLING OTHER NODES ON VAXCLUSTER SYSTEMS 3-4 3.3 HOST AND PRINTER CHARACTERISTICS 3-5 iv ________________________________________________________________ II USER'S GUIDE ________________________________________________________________ CHAPTER 4 USING THE DECPRINT UTILITY COMMAND 4-1 4.1 THE COMMAND LINE 4-2 4.1.1 The DECprint Utility Command and Queued Printers 4-3 4.1.2 The DECprint Utility Command and Attached Printers 4-4 4.2 DEVICE SUPPORT 4-6 4.3 DECPRINT UTILITY COMMAND QUALIFIERS 4-7 4.3.1 /ATTACHED Qualifier 4-8 4.3.2 /LAYUP Qualifier 4-9 4.3.3 /MEDIUM Qualifier 4-10 4.3.4 /MESSAGES Qualifier 4-11 4.3.5 /ORIENTATION Qualifier 4-13 4.3.5.1 Page Orientation and /LAYUP 4-13 4.4 PRINT QUALIFIERS THAT WORK DIFFERENTLY 4-14 4.4.1 /AFTER Qualifier 4-14 4.4.2 /PARAMETERS Qualifier 4-15 4.5 UNSUPPORTED PRINT QUALIFIERS 4-15 4.5.1 Formating Qualifiers 4-15 4.5.2 File Selection Qualifiers 4-16 4.5.3 /FORM and /SETUP Qualifiers 4-16 4.5.4 Miscellaneous Qualifiers 4-17 4.6 SUBMITTING DECPRINT UTILITY COMMANDS FOR BATCH PROCESSING 4-17 v 4.7 COLOR PRINTING WITH DECPRINT UTILITY 4-21 4.8 MISCELLANEOUS HELPFUL HINTS 4-21 4.8.1 Using Transparencies with the LJ250 Companion Color Printer 4-22 4.8.2 Printing PostScript Documents From MAIL 4-22 4.8.3 Running the DECprint Utility in the Background 4-22 4.8.4 Printer Margin Information 4-23 4.9 SUMMARY OF DECPRINT UTILITY QUALIFIERS 4-24 ________________________________________________________________ INDEX Index-1 ________________________________________________________________ CHAPTER 5 SYSTEM MESSAGES 5-1 5.1 MESSAGE FORMAT 5-1 5.2 SEVERITY LEVEL 5-2 5.3 MESSAGE DESCRIPTIONS 5-2 ________________________________________________________________ APPENDIX A CREATING A PRINT QUEUE FOR THE DECPRINT UTILITY A-1 A.1 RENAMING AND EDITING THE PRINTER STARTUP COMMAND FILE A-2 A.1.1 Renaming the Startup File A-2 A.1.2 Editing the Startup File A-2 vi A.2 UPDATING THE SYSTEM STARTUP FILE A-5 A.3 PSPRINT$STARTUP QUEUE SETUP TOPICS A-5 A.3.1 Device Control Library A-5 A.3.2 Terminal Device Type A-6 A.3.3 Separation Pages A-6 A.3.4 /PROCESSOR Qualifier A-6 ________________________________________________________________ APPENDIX B POSTSCRIPT LANGUAGE EXTENSIONS B-1 B.1 USING POSTSCRIPT EXTENSIONS B-3 B.2 PERSISTENT AND VOLATILE PARAMETERS B-4 B.3 IDENTIFICATION EXTENSIONS B-5 B.3.1 Product B-6 B.3.2 Device Components B-6 B.3.3 Version B-7 B.3.4 Revision B-7 B.3.5 Job Name B-7 B.4 PAGECOUNT AND SHEETCOUNT OPERATORS B-7 ________________________________________________________________ APPENDIX C COLOR EXTENSIONS FOR THE POSTSCRIPT LANGUAGE C-1 C.1 ABOUT THE POSTSCRIPT LANGUAGE COLOR EXTENSIONS C-1 C.2 ABOUT THIS APPENDIX C-2 vii C.3 INTRODUCTION C-2 C.4 NEW FEATURES C-4 C.4.1 CMYK Color Specification C-4 C.4.2 Black Generation and Undercolor Removal C-5 C.4.3 Direct CMYK Color Specification C-8 C.4.4 Color Screens, Transfer Functions, and Images C-9 C.4.4.1 colorimage C-9 C.4.4.1.1 Data formats for colorimage operator C-10 C.4.4.1.2 Examples for colorimage operator C-12 C.4.5 Color Implementations C-16 C.5 OPERATORS C-17 COLORIMAGE C-18 CURRENTBLACKGENERATION C-21 CURRENTCMYKCOLOR C-22 CURRENTCOLORSCREEN C-23 CURRENTCOLORTRANSFER C-25 CURRENTUNDERCOLORREMOVAL C-26 SETBLACKGENERATION C-27 SETCMYKCOLOR C-29 SETCOLORSCREEN C-31 SETCOLORTRANSFER C-34 SETUNDERCOLORREMOVAL C-37 ________________________________________________________________ APPENDIX D TROUBLESHOOTING PROCEDURES D-1 D.1 YOUR DECPRINT UTILITY JOB DOES NOT PRINT D-1 D.2 YOUR JOB REPORTS UNDEF ERROR MESSAGES D-1 D.2.1 Unsupported File Extensions D-2 D.2.2 Unsupported PostScript Operators D-2 D.2.3 Problems With Files Containing CTRL/D D-3 viii D.3 TROUBLESHOOTING COLOR PRINTING PROBLEMS D-3 D.3.1 Your Color Output is Black D-4 D.3.2 Thin Lines Don't Print D-4 D.3.3 Incorrect Colors D-4 D.4 YOUR SETUP MODULES DO NOT WORK D-5 D.5 /PARAMETERS=(NUMBER_UP=2) DOES NOT WORK D-5 D.6 UNEXPECTED PAGE ORIENTATION D-5 D.7 DECPRINT UTILITY JOBS OCCUPY YOUR TERMINAL FOR TOO LONG D-6 D.8 FAINT DIAGONAL LINES WITH A WRITE-WHITE ENGINE D-6 D.9 THE POSITION OF THE IMAGE IS WRONG D-6 ________________________________________________________________ GLOSSARY Glossary-1 ________________________________________________________________ INDEX Index-1 ix ________________________________________________________________ EXAMPLES 2-1 Sample Installation Session 2-10 3-1 Defining Device Type Logical Names 3-3 4-1 Example with /ATTACHED 4-9 4-2 Examples with /LAYUP 4-10 4-3 Example with /MEDIUM 4-11 4-4 Examples with /MESSAGES 4-13 4-5 Examples Using the Batch-PSPRINT.com File 4-19 4-6 The Batch-PSPRINT Command File 4-20 A-1 Sample Execution Queue A-3 B-1 Determining Whether a Name Is Defined B-3 B-2 Accessing Extensions Located in statusdict B-4 ________________________________________________________________ TABLES 3-1 Supported Devices 3-3 4-1 Attached Printers and Control Characters 4-5 4-2 Media Keywords 4-10 4-3 Printer Margins in Inches 4-23 4-4 DECprint Utility Qualifiers 4-24 4-5 Qualifiers Supported for Attached Printers 4-26 B-1 Persistent Parameters B-5 B-2 Volatile Parameters B-5 x Preface ________________________________________________________________ __________________________________________________________ Intended Audience The Installation/User's Guide: DECprint[TM] Utility for POSTSCRIPT[R] to Sixel Printing for VMS is intended for the following users: o System managers who will install the DECprint Utility for POSTSCRIPT to Sixel Printing for VMS software o Users who want to print POSTSCRIPT files on sixel printers __________________________________________________________ Document Structure This manual contains the following parts, chapters, and appendixes: Part I - Installation Guide o Chapter 1 provides an overview and describes preinstalla- tion requirements for the DECprint Utility software. o Chapter 2 explains how to install the software. o Chapter 3 describes postinstallation requirements. xi Part II-User's Guide o Chapter 4 explains how to use the DECprint Utility command to print POSTSCRIPT files on your ANSI/sixel printer. o Chapter 5 describes the DECprint Utility system messages and, if necessary, recovery procedures. o Appendix A explains how to create a print queue to use with the DECprint Utility command. o Appendix B describes POSTSCRIPT operators specific to the DECprint Utility software. o Appendix C describes POSTSCRIPT color operators. o Appendix D describes troubleshooting steps. __________________________________________________________ Conventions This document uses the following conventions: _____________________________________________________________ ConventionMeaning____________________________________________ UPPERCASE In command format, type the word or letter exactly notation as shown. lowercase In command format, substitute a word or value of notation your choice. Boldface Boldface words and letters used in formats, exam- ples, and text specify POSTSCRIPT keywords. In page descriptions, you should type the keyword exactly as shown. xii _____________________________________________________________ ConventionMeaning____________________________________________ Italics When italic words and letters appear in command formats, substitute an appropriate word or value for the word or letter. [ ] Square brackets in command formats indicate that the enclosed item is optional. { } Braces in command formats enclose lists from which you must choose one alternative. The choices are listed vertically or separated by the vertical bar symbol (|). ... A horizontal ellipsis in command formats indicates that the preceding item(s) can be repeated one or more times. A vertical ellipsis in examples indicates that code . has been omitted. . . This symbol indicates that you should press the key labeled Ctrl while you simultaneously press another key, for example, Ctrl/Z, Ctrl/C, Ctrl/O. This symbol indicates that you should press the __________Return_key.________________________________________ __________________________________________________________ Associated Documents The installation procedures are based on the VMSINSTAL com- mand procedure of VAX/VMS. Additional information on this xiii procedure can be found in the Guide to VAX/VMS Software Installation. Other documents that may be helpful for users of the DECprint Utility include: o Programmer's Supplement: POSTSCRIPT Printers (AA-HL84C-TE) o VMS System Messages and Recovery Procedures Reference Manual: Part I A-L (AA-LA17A-TE) o VMS System Messages and Recovery Procedures Reference Manual: Part II M-Z (AA-LA18A-TE) o POSTSCRIPT Language Reference Manual (AA-HL86A-TE) o POSTSCRIPT Language Tutorial and Cookbook (AA-HL87A-TE) o VMS DCL Dictionary (AA-LA12A-TE) o VMS License Management Utility Manual (AA-LA33A-TE) xiv ________________________________________________________________ I Installation Guide This section describes how to install the DECprint Utility for POSTSCRIPT to Sixel Printing for VMS software on a VAX/VMS system, and details preinstallation and postinstalla- tion requirements. Chapter 1 Before Installation ________________________________________________________________ You can install the DECprint Utility for POSTSCRIPT to Sixel Printing for VMS software on any VAX/VMS computer system. This chapter provides an overview of the DECprint Utility product and lists the preinstallation requirements for the DECprint Utility software. __________________________________________________________ 1.1 Overview DECprint Utility for POSTSCRIPT to Sixel Printing for VMS software lets you print POSTSCRIPT files on Digital sixel printers. The software uses a host-based Adobe POSTSCRIPT interpreter to translate your POSTSCRIPT input files. The DECprint Utility prints to a printer attached to your termi- nal (see Figure 1-1) or submits to a queue for printing (see Figure_1-2)._________________________________________________ Before Installation 1-1 _____________________________________________________________ The DECprint Utility software provides a single command line that accepts qualifiers similar to the DCL PRINT command. You invoke the software with the DECprint Utility command, PSPRINT: $ PSPRINT/qualifier filename.PS[,...] Most DCL PRINT qualifiers give the same results when used with the DECprint Utility command. For information on the DECprint Utility command see Chapter 4. __________________________________________________________ 1.1.1 PostScript Page Description Language Digital uses the POSTSCRIPT page description language by Adobe as a standard for its POSTSCRIPT printers, such as the LN03R ScriptPrinter and the PrintServer family of network printers. This language describes the appearance of text, images, and graphics on the printed page. POSTSCRIPT provides high-quality printing that fully integrates text and graphics. __________________________________________________________ 1.1.2 Sixel Graphics The sixel protocol is compatible with Digital printers that use the ANSI text protocol. The sixel protocol defines and transmits encoded bitmap data over a stream-oriented communications line. Sixels allow devices to receive and print black and white (or color) bitmap data at various sizes to create a graphic image. Six bits (a sixel) of each 7-bit or 8-bit character code represent the bitmap data. Remaining values control the context of the communications line and fit the sixels to the ANSI text syntax. 1-2 Before Installation __________________________________________________________ 1.2 Printer Support DECprint Utility software supports printing on queued printers and printers attached to your terminal. You can use the utility to print to the following sixel printers: o LA75 Companion Printer o LA210 Letterprinter o LA324 MultiPrinter o LJ250 Companion Color Printer o LN03 PLUS Desktop Laser Printer In addition, the DECprint Utility software supports the above printers attached to the following terminals: o VT100, VT102, and VT131 with printer ports o VT200 Series o VT300 Series __________________________________________________________ 1.3 Host Hardware Requirements The host system must have an input device that corresponds to the DECprint Utility for POSTSCRIPT to Sixel Printing for VMS Software Distribution Kit. The distribution kit is available on the following media: o Magnetic tape (1600 BPI) o TK50 COMPACTape cartridge DECprint Utility software runs on any VAX/VMS computer system and requires no specific serial line communications hardware. The DECprint Utility software uses the VMS job controller to communicate with queued printers and the terminal driver for attached printers. Before Installation 1-3 __________________________________________________________ 1.4 Host Software Requirements The host must be running VMS, Version 5.1 or 5.2. The installation procedure uses the VMSINSTAL utility. __________________________________________________________ 1.5 Software Distribution Kit Check the contents of the DECprint Utility for POSTSCRIPT to Sixel Printing for VMS Software Distribution Kit against the bill of materials. You should have the following: o Software labeled DECprint Utility for POSTSCRIPT to Sixel Printing for VMS, Version 1.0, in one of the listed media forms o Installation/User's Guide: DECprint[TM] Utility for POSTSCRIPT[R] to Sixel Printing for VMS __________________________________________________________ 1.6 Software License DECprint Utility for POSTSCRIPT to Sixel Printing for VMS uses the VMS License Management Facility (LMF) software and requires a Product Authorization Key (PAK). The DECprint Utility product name for its PAK is PS-PRINT. The DECprint Utility software has an activity license that allows the execution of one DECprint Utility job at a time. For two users to access the DECprint Utility at the same time, you need two licenses. See Section 4.6 for a command file that submits a DECprint Utility job for batch processing, checks for the DECprint Utility activity on the system, and enters the DECprint Utility command for processing when the software is available. 1-4 Before Installation __________________________________________________________ 1.7 Required Disk Space The installation of the DECprint Utility software requires 3,400 disk blocks. After installation, this software requires approximately 3,000 disk blocks for operation. __________________________________________________________ 1.8 Installation Time DECprint Utility installation on the host system can take up to 15 minutes, depending on the type of distribution media, and on the activity on the host system. __________________________________________________________ 1.9 Installation Verification Procedure (IVP) Requirements To print the file created by the Installation Verification Procedure, requires the following: o A supported printer on a queue o A product authorization key (PAK) for PS-PRINT __________________________________________________________ 1.10 Installing the DECprint Utility with the LN03 Image Software If you are installing the DECprint Utility, Version 1.0, software and the LN03 Image Support Software, Version 1.0, on your system, you must do the following: 1.Install the following kits for the LN03 Image printer: VAX LN03 Image Support Software, Version 1.0 VAX ScriptPrinter Software, Version 2.1 2.Install the DECprint Utility software Before Installation 1-5 3.Execute the following command after completing the installation procedures: $ @SYS$UPDATE:PSPRINT$UPDATE_LN03Q.COM Your screen displays the following message when the command procedure completes: Your VAX LN03 Image Support Software and VAX ScriptPrinter Software have been successfully updated. If you reinstall these products, you must rerun this command file. Reinstalling DECprint Utility software does not require rerunning the command file. NOTE Following these steps, which includes executing this command file, is only necessary if you use the LN03 Image printer and the DECprint Utility software on the same system. Do not run the command file to use Vax ScriptPrinter software and the DECprint Utility software on the same system. 1-6 Before Installation Chapter 2 Installing the Software ________________________________________________________________ This chapter describes how to install the DECprint Utility software on a VAX/VMS system, using the VMSINSTAL procedure. If you are not familiar with the VMSINSTAL utility, see the Guide to VAX/VMS Software Installation. __________________________________________________________ 2.1 Installation Checklist Make sure you have the following prerequisites before beginning the installation procedure: o A backup copy of the software distribution media o Distribution media on an appropriate input device o Adequate system disk space (see Section 1.7) o Access to a privileged account on the host system __________________________________________________________ 2.2 VMSINSTAL Conventions The VMSINSTAL procedure is interactive. The system prompts and responds with statements, queries, and messages. Installing the Software 2-1 Instructions guide you through the procedure or provide you with information relevant to subsequent queries. Statements inform you of the status or progress of the installation procedure. Queries are preceded by an asterisk (*) and can be followed by default responses enclosed in brackets ([]). Enter your response, followed by . Just press to enter the default response. If you are not sure of the response, enter a question mark (?). The VMSINSTAL procedure displays explanatory text and repeats the prompt. Messages specific to VMSINSTAL are documented in the Guide to VAX/VMS Software Installation. Messages specific to the installation of the DECprint Utility interpreter are found in Chapter 5. __________________________________________________________ 2.3 VMSINSTAL Release Notes A machine-readable copy of the DECprint Utility Release Notes is included on the software distribution media. If you wish to display or print the release notes, specify OPTIONS N on the VMSINSTAL command line: $ @SYS$UPDATE:VMSINSTAL PSPRINT010 device-id OPTIONS N PSPRINTnnn is the name of the software saveset for the DECprint Utility for POSTSCRIPT to Sixel Printing for VMS. The variable nnn represents the version number of the product. For example, 010 represents Version 1.0. If you did not specify OPTIONS N on the command line, the release notes are automatically copied to SYS$HELP. To print the release notes after installation of the product, enter the following command: $ PRINT/QUEUE=queue-name SYS$HELP:PSPRINT010.RELEASE_NOTES See Section 2.4 for more information. 2-2 Installing the Software __________________________________________________________ 2.4 Installation Procedure This section contains excerpts from the installation procedure and provides explanatory text. For a sample installation session, see Section 2.6. Before invoking VMSINSTAL, log in to the system manager's account and set your default device and directory to SYS$UPDATE. Username: SYSTEM Password: $ SET DEFAULT SYS$UPDATE Invoke the VMSINSTAL procedure as follows: $ @SYS$UPDATE:VMSINSTAL PSPRINT010 device-id OPTIONS N where: PSPRINT010 is the name of the DECprint Utility for POSTSCRIPT to Sixel Printing for VMS software saveset. The 010 indicates this is Version 1.0. device-id is the device on which the distribution media is mounted. OPTIONS N is the release notes option, which allows you to display and/or print a copy of the release notes. The VMSINSTAL utility displays its banner line, the date and time, the statement that you can enter a question mark (?) at any time for help, and one or more warning messages if appropriate. You can continue the installation or exit to modify the conditions causing the warning messages. If the DECnet network is up and running, you always get the following messages: Installing the Software 2-3 %VMSINSTAL-W-DECNET, Your DECnet network is up and running. * Do you want to continue anyway [NO]? Answer YES to continue. The DECnet network has no impact on the installation of this product. You are then asked: * Are you satisfied with the backup of your system disk [YES]? Answer YES to continue or NO to exit. If you answered NO, make a backup and begin VMSINSTAL again. If you did not provide the device_id (location of the distribution media) on the VMSINSTAL command line, the VMSINSTAL procedure then asks: * Where will the distribution volumes be mounted: Provide the name of the device on which the distribution media is to be mounted. If the distribution media is mountable, VMSINSTAL then asks for confirmation that the distribution media has been mounted. Please mount the first volume of the set on device-id: * Are you ready? Answer YES when ready. The procedure displays the name and version of the product being installed, the start time of the installation, and confirmation of the restoration of each saveset on the distribution media. The following products will be processed: PSPRINT V1.0 Beginning installation of PSPRINT V1.0 at hh:mm %VMS-I-RESTORE, Restoring product saveset A ... 2-4 Installing the Software Choosing release notes options If you specified OPTIONS N in the command, the following release notes options are displayed: Release Notes Options: (1) Display release notes (2) Print release notes (3) Both 1 and 2 (4) Copy release notes to SYS$HELP (5) Do not display, print or copy release notes If you select 1, the release notes are displayed on your terminal and copied to PSPRINT010.RELEASE_NOTES in SYS$HELP. If you select 2, the release notes are queued to the printer and copied to PSPRINT010.RELEASE_NOTES in SYS$HELP. If you select 3, the release notes are displayed on your terminal, queued to the printer, and copied to PSPRINT010.RELEASE_NOTES in SYS$HELP. If you select 4, the release notes are copied to PSPRINT010.RELEASE_NOTES in SYS$HELP. If you select 5, the release notes are deleted without being printed, displayed, or copied to SYS$HELP. If you did not specify OPTIONS N, the release notes are automatically copied to SYS$HELP. When the release notes are copied to SYS$HELP, VSMINSTALL displays this message: %VMSINSTAL-I-RELMOVED, The product's release notes have been successfully moved to SYS$HELP. VMSINSTAL then displays a copyright message and information on the product you are installing. Installing the Software 2-5 Installing DECprint Utility for PostScript to Sixel Printing, V1.0 © Digital Equipment Corporation 1989. All Rights Reserved. Product: PS-PRINT Producer: DEC Version: 1.0 Release Date: 15-DEC-1989 VMSINSTAL asks if you have registered and loaded the authorization key for the DECprint Utility product. * Does this product have an authorization key registered and loaded? If you answer no to this question, you cannot run the Installation Verification Procedure (IVP) as part of the installation procedure. The VMSINSTAL procedure displays the following message and suggestions: %PSPRINT-E-NOLICENSE, DECprint Utility execution requires a valid license. %PSPRINT-E-NOIVP, The IVP will not be run as part of the installation. %PSPRINT-E-NOIVP, It is recommended that the IVP be run after a valid license is loaded. Running the IVP If you have registered and loaded the product authorization key (PAK) and answer yes to the last question, the VMSINSTAL procedure asks if you wish to run the installation verification procedure (IVP): * Do you want to run the IVP after the installation [YES]? NOTE You cannot run the IVP on a printer attached to the printer port of your terminal. 2-6 Installing the Software If you answered yes to running an IVP, the procedure asks you for the name of the execution queue where the IVP will print and for the device type of the printer on the queue. * Enter an execution queue name for the IVP: queue-name_ansi * Enter the device type for QUEUE-NAME_ANSI: lj250 NOTE The queue entered for the IVP must be an execution queue, otherwise, you receive an error message stating that the DECprint Utility could not determine the device type. For valid device types, see Table 3-1. For a sample IVP printout, see Section 2.7. See Section 2.5, for instructions on how to run the IVP after installing the software. VMSINSTALL asks if you wish to purge files replaced by the installation: * Do you want to purge files replaced by this installation [YES]? At this point, VMSINSTAL displays a message telling you that no more questions will be asked: PSPRINT-I-NOMOREQUEST, No more questions will be asked %VMSINSTAL-I-RESTORE, Restoring product saveset B ... The VMSINSTAL procedure now creates a directory for the installation verification procedure (IVP) test files, installs the host-based POSTSCRIPT interpreter, and displays the following messages: %VMSINSTAL-I-SYSDIR, This product creates system disk directory VMI$ROOT:[SYSTEST.PSPRINT]. %CREATE-I-EXISTS, VMI$ROOT:[SYSTEST.PSPRINT] already exists Installing the Software 2-7 %VMSINSTAL-I-SYSDIR, This product creates system disk directory VMI$ROOT:[SYSHLP.EXAMPLES.PSPRINT]. %PSPRINT-PSINSTAL, Installing version V1.1 of the HostPS interpreter The installation procedure checks to see if a version of the HostPS interpreter already exists on your system. If the version of the HostPS interpreter in the installation kit is the same or later than the version already installed on your system, the procedure installs the HostPS version in the kit. If the version of the HostPS interpreter already installed is a later version than the interpreter in the installation kit, the procedure does not install the HostPS interpreter and displays a message: %PSPRINT-I-PSEXISTS, Version V1.2 of the HostPS interpreter already exists VMSINSTAL then moves files from their temporary locations used during installation to their permanent directories. %VMSINSTAL-I-MOVEFILES, Files will now be moved to their target directories... If you answered yes to running the installation verification procedure (IVP), it runs now. Verifying DECprint Utility for PostScript to Sixel Printing, V1.0. Job PSPRINT$IVP (queue QUEUE-NAME_ANSI, entry 920) started on QUEUE-NAME VMSINSTAL displays this message to indicate that the IVP was successful: Verification succeeded. 2-8 Installing the Software VMSINSTAL issues its terminating messages: Installation of PSPRINT V1.0 completed at hh:mm VMSINSTAL procedure done at hh:mm $ DECprint Utility for POSTSCRIPT to Sixel Printing for VMS software is now installed and can be invoked with the PSPRINT command. The installation procedure modifies the DCL command table so that the PSPRINT command is recognized and processed. However, the old command table is still in effect for those users who are currently logged in. Users who are already logged in and who want to use the PSPRINT command must log out of the system and log in again. __________________________________________________________ 2.5 Running the IVP After Installation To run the Installation Verification Procedure after installing the software, enter the following command at the prompt: $ @SYS$TEST:PSPRINT$IVP PSPRINT$IVP.COM displays a beginning message, asks you to enter a queue name and device type, submits the IVP to the queue, and displays a message saying that the procedure was successful: Verifying DECprint Utility for PostScript to Sixel Printing, V1.0. Enter a queue name: my_lj250 Enter the device type for MY_LJ250: lj250 Verification succeeded. Installing the Software 2-9 __________________________________________________________ 2.6 Sample Installation Session Example 2-1 shows a sample installation session of the DECprint Utility software on a VAX/VMS host: Example 2-1: Sample Installation Session _____________________________________________________________ $ @sys$update:vmsinstal psprint sys$update VAX/VMS Software Product Installation Procedure V5.1 It is 23-AUG-1989 at 09:15. Enter a question mark (?) at any time for help. %VMSINSTAL-W-DECNET, Your DECnet network is up and running. %VMSINSTAL-W-ACTIVE, The following processes are still active: COYOTE EAGLE COBRA_1 GAZELLE * Do you want to continue anyway [NO]? yes * Are you satisfied with the backup of your system disk [YES]? yes The following products will be processed: PSPRINT V1.0 Beginning installation of PSPRINT V1.0 at 09:16 %VMSINSTAL-I-RESTORE, Restoring product saveset A ... %VMSINSTAL-I-RELMOVED , The product's release notes have been successfully moved to SYS$HELP. _____________________________________________________________ Example 2-1 Cont'd on next page 2-10 Installing the Software Example 2-1 (Cont.): Sample Installation Session _____________________________________________________________ Installing DECprint Utility for PostScript to Sixel Printing, V1.0 © Digital Equipment Corporation 1989. All Rights Reserved. Product: PS-PRINT Producer: DEC Version: 1.0 Release Date: 15-DEC-1989 * Does this product have an authorization key registered and loaded? yes * Do you want to run the IVP after the installation [YES]? yes * Enter an execution queue name for the IVP: lj250_b * Enter the device type for LJ250_B: LJ250 * Do you want to purge files replaced by this installation [YES]? yes %PSPRINT-I-NOMOREQUEST, No more questions will be asked %VMSINSTAL-I-RESTORE, Restoring product saveset B ... %VMSINSTAL-I-SYSDIR, This product creates system disk directory VMI$ROOT:[SYSTEST.PSPRINT]. %VMSINSTAL-I-SYSDIR, This product creates system disk directory VMI$ROOT:[SYSHLP.EXAMPLES.PSPRINT]. %PSPRINT-I-PSINSTAL, Installing version V1.1 of the HostPS interpreter %VMSINSTAL-I-MOVEFILES, Files will now be moved to their target directories... _____________________________________________________________ Example 2-1 Cont'd on next page Installing the Software 2-11 Example 2-1 (Cont.): Sample Installation Session _____________________________________________________________ Verifying DECprint Utility for PostScript to Sixel Printing, V1.0. Job PSPRINT$IVP (queue LJ250_B, entry 920) started on LJ250 Verification succeded. Installation of PSPRINT V1.0 completed at 09:26 VMSINSTAL procedure done at 09:26 $ _____________________________________________________________ __________________________________________________________ 2.7 IVP Sample Output Figure 2-1 shows the black-and-white IVP output of the sample POSTSCRIPT program that the DECprint Utility software submitted to a print queue for printing on a sixel printer. If you enter the execution queue name for a printer with color for your IVP, the color output is as follows: o DECprint Utility prints with red letters o Successfully prints in green o Installed prints in blue 2-12 Installing the Software _____________________________________________________________ Installing the Software 2-13 Chapter 3 Postinstallation Requirements ________________________________________________________________ This chapter explains the operations to be performed after the installation of the DECprint Utility software. These operations should be performed by a system or cluster manager. __________________________________________________________ 3.1 Creating Logical Names for Queued Printing DECprint Utility software needs to know the device type of the printer. For queued printers, which you indicate in the DECprint Utility command with the /QUEUE qualifier, the software gets the device type from a logical name. Logical names must be defined by the system manager. Define a logical name for each execution queue to which system users will direct DECprint Utility jobs. To define device type logical names, add the following command to the system startup file SYS$MANAGER:SYSTARTUP_V5.COM for each DECprint Utility execution queue: $ DEFINE/SYSTEM/EXEC/NOLOG PSPRINT$queue_DEVICE_TYPE - device_type Postinstallation Requirements 3-1 where: queue is the name of the execution queue for the printer. device-types the device type of the printer (see Table 3-1 for supported device types). DECprint Utility software resolves queue logical names and looks for the device type of the execution queue. If the device type is not defined you receive the following error message: PSPRINT-E-NODEVTYPE, could not determine device type for queue-name Make sure that generic queue names used with the /QUEUE qualifier for the DECprint Utility command point to execution queues that serve only one type of printer; otherwise you receive this error message: PSPRINT-E-NOMIXDEV, all execution queues must have the same device type Example: Example 3-1 shows sample commands to add to the system startup file to define the device type logical names for DECprint Utility printing. For example, you have the following printers that you plan to use to print the output from the DECprint Utility command: _____________________________________________________________ Execution Printer_________________Queue_Name__Device_Type_Keyword______ LJ250 Companion Color LJ250_COLOR LJ250 Printer 3-2 Postinstallation Requirements _____________________________________________________________ Execution Printer_________________Queue_Name__Device_Type_Keyword______ LJ250 Companion Color NEDS_LJ250 LJ250 Printer LN03 PLUS Desktop LN03_A LN03S Laser Printer LN03 PLUS Desktop LN03_B LN03S Laser_Printer________________________________________________ Example 3-1: Defining Device Type Logical Names _____________________________________________________________ $ DEFINE/SYSTEM/EXEC/NOLOG PSPRINT$lj250_color_DEVICE_TYPE lj250 $ DEFINE/SYSTEM/EXEC/NOLOG PSPRINT$neds_lj250_DEVICE_TYPE lj250 $ DEFINE/SYSTEM/EXEC/NOLOG PSPRINT$ln03_a_DEVICE_TYPE ln03s $ DEFINE/SYSTEM/EXEC/NOLOG PSPRINT$ln03_b_DEVICE_TYPE ln03s _____________________________________________________________ Table 3-1 lists the printers supported by the DECprint Utility software that includes valid values for the device-type keyword: Table_3-1:__Supported_Devices________________________________ Device Type Resolution (dpi) Device_Name_____________Keyword_____horiz_x_vert_____________ LA75 Companion Printer LA75 144 x 144 LA210 Letterprinter LA210 132 x 72 Postinstallation Requirements 3-3 Table_3-1_(Cont.):__Supported_Devices________________________ Device Type Resolution (dpi) Device_Name_____________Keyword_____horiz_x_vert_____________ LA324 MultiPrinter LA324 180 x 180 LA324 MultiPrinter LA324COLOR 180 x 180 (color ribbon) LJ250 Companion Color LJ250 180 x 180 Printer LN03 PLUS Desktop LN03S 300 x 300 Laser_Printer________________________________________________ NOTE PSPRINT$queue_DEVICE_TYPE logicals must be created and maintained by the system manager. They are not created during the installation of the software. Future products may not support this mechanism. __________________________________________________________ 3.2 Enabling Other Nodes on VAXcluster Systems The installation procedure modifies the DCL command table on the node where you installed the DECprint Utility software. To enable the DECprint Utility command on other nodes of the VAXcluster Systems environment, you must install the new DCL command table on the other nodes. Complete this procedure to install the DCL command table on the other nodes in the cluster: 3-4 Postinstallation Requirements $ INSTALL :== $SYS$SYSTEM:INSTALL/COMMAND_MODE $ INSTALL INSTALL> REPLACE SYS$LIBRARY:DCLTABLES INSTALL> EXIT $ The old DCL command table is in effect for those users who are logged in. Logged-in users who want to use the DECprint Utility command must log out of the system and log in again. __________________________________________________________ 3.3 Host and Printer Characteristics Make sure the following characteristics are the same on the printer and the host computer: o Baud rate o Data bits o Parity o Protocol Postinstallation Requirements 3-5 ________________________________________________________________ II User's Guide This part includes sections that describe how to use the DECprint Utility command to print your POSTSCRIPT files on ANSI/sixel printers, explain system messages and recovery procedures, and describe the printer environment. Chapter 4 Using the DECprint Utility Command ________________________________________________________________ You invoke the DECprint Utility for POSTSCRIPT to Sixel Printing for VMS software with the single command, PSPRINT. Using the DECprint Utility command is similar to using the DCL PRINT command. The DECprint Utility command accepts qualifiers specific to DECprint Utility as well as many DCL PRINT qualifiers. In addition, the DECprint Utility software processes some PRINT qualifiers differently and does not support others. This chapter discusses the following topics concerning the use of the DECprint Utility command: o The command line syntax o Using the command line for queued printing o Using the command line with printers attached to a terminal o Defining the printer type for queued and attached device printing o PRINT qualifiers supported by the DECprint Utility software o Command qualifiers specific to the DECprint Utility software o PRINT qualifiers that work differently Using the DECprint Utility Command 4-1 o Unsupported DCL PRINT qualifiers o Submitting DECprint Utility commands for batch processing o Color printing with the DECprint Utility software o Miscellaneous helpful hints to use with the DECprint Utility software __________________________________________________________ 4.1 The Command Line To translate your POSTSCRIPT files for printing on a sixel printer, enter the DECprint Utility command as follows: $ PSPRINT/qualifier filename.PS[,...] You can print the converted sixels on either a printer attached to your terminal or a printer on a queue, by selecting the /ATTACHED or /QUEUE qualifier with the DECprint Utility command line. Sections 4.3 and 4.1.1 discuss other qualifiers supported by the DECprint Utility software. To print to an LJ250 Companion Color Printer on a queue, use the /QUEUE qualifier with the DECprint Utility command: $ PSPRINT/QUEUE=LJ250_queue-name fileA.ps For more information on using the DECprint Utility command with printers on queues, see Section 4.1.1. To print to an LJ250 Companion Color Printer attached to your terminal, use the /ATTACHED qualifier with the DECprint Utility command: $ PSPRINT/ATTACHED=LJ250 fileA.ps For more information on using the DECprint Utility command with printers attached to your terminal, see Section 4.1.2. The default file type for input files to the DECprint Utility command is .PS not .LIS as for the DCL PRINT command. 4-2 Using the DECprint Utility Command The software resets the POSTSCRIPT interpreter after each print job. __________________________________________________________ 4.1.1 The DECprint Utility Command and Queued Printers DECprint Utility software submits print jobs for printing on queued printers when you include the /QUEUE qualifer on the command line. Without the /QUEUE or /ATTACHED qualifier, the default is /QUEUE=SYS$PRINT. NOTE If you include both /QUEUE and /ATTACHED on the command line, the DCL software generates an error message. Section 4.3 discusses qualifiers that are specific to the DECprint Utility software. DECprint Utility software also supports several DCL PRINT qualifiers for queued printers by passing them through unaffected to the VMS print job controller. The following qualifiers take effect when the DECprint Utility software queues the sixel file for printing: /AFTER /HOLD /OPERATOR /BURST /IDENTIFY /PRIORITY /CHARACTERISTICS /JOB_COUNT /RESTART /COPIES /NAME /TRAILER /FLAG /NOTE /USER /NOTIFY Using the DECprint Utility Command 4-3 In addition to passing qualifiers from the command line that take effect at queue time, the DECprint Utility software always submits the sixel file for printing with the following qualifiers: o /PASSALL and /NOFEED - ensures that the symbiont does not change the sixel file format. o /NAME - provides a recognizable filename. You can specify this name on the command line by using the /NAME qualifier. Otherwise, the DECprint Utility software uses the filename of the first POSTSCRIPT file in the print job. This behavior mimics that of DCL PRINT. o /DELETE - deletes the sixel file after the file has been printed. For information on the DCL PRINT command qualifiers, refer to the VMS DCL Dictionary. __________________________________________________________ 4.1.2 The DECprint Utility Command and Attached Printers Attached printers are printers that connect directly to the printer port on your video terminal through an interface cable. If you have not already attached your printer to the printer port of your terminal, Digital recommends that you use a queue system for printing. To create a queue for your printer, refer to Appendix A. With the /ATTACHED qualifier on the command line, the DECprint Utility software sets the terminal to printer controller mode and then sends the sixels to the terminal. Printer controller mode causes the sixels to be printed on the printer attached to the terminal printer port rather than displayed on the terminal screen. No output goes to the terminal while the terminal is in printer controller mode. After printing of the sixels is complete, the DECprint Utility software resets output to the screen. 4-4 Using the DECprint Utility Command To ensure that no other output goes to the screen during printing of the sixels, the DECprint Utility software temporarily sets the /NOBROADCAST terminal characteristic. In addition, if necessary, the software sets other terminal characteristics during the printing process and resets them to their original state on successful completion of the printing. NOTE Because /NOBROADCAST is set, the terminal does not print broadcast messages when you use PSPRINT/ATTACHED. These messages are lost. While the terminal is in printer controller mode, the terminal sends characters typed at the keyboard to the host. For most characters, the host stores the data in a type-ahead buffer. DCL then interprets the data when the DECprint Utility command activity terminates. This is not true for the control characters listed in Table 4-1. Table_4-1:__Attached_Printers_and_Control_Characters_________ Control Character___Action___________________________________________ Ctrl/O Stops and starts the flow of sixels to the printer. No announcement displays on the terminal screen. (VMS normally displays "Output On" and "Output Off" messages in reverse video.) Ctrl/Y Terminates the DECprint Utility command and returns the DCL prompt. (DECprint Utility software disables normal DCL handling of Ctrl/Y.) Ctrl/C Terminates the DECprint Utility command and returns the DCL prompt. Using the DECprint Utility Command 4-5 Table_4-1_(Cont.):__Attached_Printers_and_Control_Characters_ Control Character___Action___________________________________________ Ctrl/S and Effect flow control. Do not use these control Ctrl/Q characters as the printer or the terminal may be ____________handling_its_own_flow_control.___________________ Section 4.3 discusses qualifiers that the DECprint Utility command supports for printing to a printer attached to the terminal's printer port. DCL PRINT qualifiers supported for attached printers are listed in Section 4.9, Table 4-5. __________________________________________________________ 4.2 Device Support To print with DECprint Utility software requires defining the type of printer. The method depends on whether the software is queuing the print job or printing to an attached printer. Queued printing For queued jobs, the DECprint Utility software translates the systemwide logical PSPRINT$queue_DEVICE_TYPE. The value of this logical must be a device type keyword from Table 3-1. You can send DECprint Utility jobs to the execution queue for the supported printer or to generic queues or to a queue with a logical name pointing to a generic queue. DECprint Utility software translates any valid queue name into execution queue names before reading the device type logical name. However, you cannot send DECprint Utility jobs to generic queues that point to execution queues for more than one type of printer; otherwise, the DECprint Utility ends the program and generates an error message. If an execution queue is not defined, the DECprint Utility also ends the program and generates an error message. 4-6 Using the DECprint Utility Command NOTE The PSPRINT$queue_DEVICE_TYPE logical must be created and maintained by the system manager. Future products may not support this logical. For more information on defining the device type logical, see Section 3.1. Attached Device Printing When printing to an attached printer you include the device type keyword as the value of the /ATTACHED qualifier on the DECprint Utility command line: $ PSPRINT/ATTACHED=device-type filename.ps If you use the /ATTACHED qualifier, you must include a device-type. See Table 3-1 for the accepted values for the device type keyword. For more information on the /ATTACHED qualifier, see Section 4.3.1. __________________________________________________________ 4.3 DECprint Utility Command Qualifiers This section describes the command qualifiers specific to DECprint Utility: o /ATTACHED=device-type o /[NO]LAYUP o /MEDIUM=keyword o /[NO]MESSAGES o /ORIENTATION=logical-orientation Using the DECprint Utility Command 4-7 __________________________________________________________ 4.3.1 /ATTACHED Qualifier Format: /ATTACHED=device-type /ATTACHED indicates that the printer attached to the terminal's printer port receives the converted sixels for printing. DECprint Utility software automatically directs the sixels to the printer rather than to the screen. When the printer finishes printing the sixels, the software resets the output to the screen. You cannot send output to the terminal during the printing process. You must associate a device type keyword with the /ATTACHED qualifier to indicate the type of printer attached to your terminal. Table 3-1 lists the valid device type keywords. Only certain DCL PRINT qualifiers are valid when using the DECprint Utility command to print to the printer attached to your terminal. For a list of qualifiers you can use with /ATTACHED, refer to Section 4.9, Table 4-5. Default: /NOATTACHED Example: Example 4-1 shows a command that converts the files in fileA*.ps from POSTSCRIPT to sixels, and sends the resulting sixels to an LJ250 Companion Color printer attached to your terminal. 4-8 Using the DECprint Utility Command Example 4-1: Example with /ATTACHED _____________________________________________________________ $ PSPRINT/ATTACHED=LJ250 fileA*.ps _____________________________________________________________ __________________________________________________________ 4.3.2 /LAYUP Qualifier Format: /LAYUP=integer /LAYUP is a qualifier that specifies the number of logical pages to be printed per physical sheet of paper. The value integer is a number from 1 to 100. If you use this qualifier on the command line, you must supply a number. You should not apply /LAYUP to one file and not to other files on the DECprint Utility command line. Therefore, position the /LAYUP qualifier after the DECprint Utility command verb and before any file names. /LAYUP controls the use of the layup feature in POSTSCRIPT to sixel interpretation. It is equivalent to the Number_Up parameter in the existing POSTSCRIPT printers with the following exception: o Number_Up allows a value of zero; DECprint Utility does not. /PARAMETERS=(Number_Up=0) is the same as PSPRINT/NOLAYUP. Default: /NOLAYUP Example: The command in Example 4-2 sends fileX.ps and fileZ.ps to a queued printer, queue-name, and uses the /LAYUP feature to print both files four pages to a sheet on A-size paper (8.5 x 11 in.) in landscape orientation. Using the DECprint Utility Command 4-9 Example 4-2: Examples with /LAYUP _____________________________________________________________ $ PSPRINT/QUEUE=queue-name/LAYUP=4/ORIENTATION=landscape/MEDIUM=A - fileX.ps,fileZ.ps _____________________________________________________________ __________________________________________________________ 4.3.3 /MEDIUM Qualifier Format: /MEDIUM=keyword /MEDIUM specifies the medium used in the printer. For keyword values, see Table 4-2. DECprint Utility software uses this value to determine the size of medium required for the sixel image. If you provide the /MEDIUM qualifier on the command line, you must supply a keyword value. Table_4-2:__Media_Keywords___________________________________ Keyword_____Medium___________________________________________ LETTER or 8.5 x 11 in. (216 x 279 mm) A A4__________210_x_297_mm_(8.3_x_11.7_in.)____________________ You cannot mix media sizes when you use the DECprint Utility command as you cannot select media on the supported printers. Therefore, you must position the /MEDIUM qualifier after the DECprint Utility command verb and before any file names. Using mixed media generates an error message. Default: /MEDIUM=A 4-10 Using the DECprint Utility Command Example: Example 4-3 translates fileB.ps and fileC.ps for A4-size paper and queues the resulting sixels for printing. The position of the /MEDIUM qualifier in this example guarentees that the qualifier applies to both files. Example 4-3: Example with /MEDIUM _____________________________________________________________ $ PSPRINT/QUEUE=queue_name/MEDIUM=A4 fileB.ps,fileC.ps _____________________________________________________________ __________________________________________________________ 4.3.4 /MESSAGES Qualifier Format: /MESSAGES=keyword /MESSAGES specifies the destination for messages and data returned by the POSTSCRIPT interpreter. If you use this qualifier you must supply one of the following values for keyword: o TERMINAL o FILE /MESSAGES=TERMINAL sends the messages and data from the POSTSCRIPT interpreter to the user's terminal. When you use this qualifier with /ATTACHED, the DECprint Utility software manages the terminal so that the messages and data appear on the terminal and not on the printed page. /MESSAGES=FILE=file-name takes an additional option, the name of the file to create. If you do not provide the file name, the default for /MESSAGES=file-name is SYS$LOGIN:name.LOG, where name is the name of the print job provided in either of the following: o /NAME qualifier on the DECprint Utility command Using the DECprint Utility Command 4-11 o Filename of the first POSTSCRIPT file translated Do not specify /MESSAGES=FILE=TT:; instead use /MESSAGES=TERMINAL. /NOMESSAGES specifies that the DECprint Utility create no log file and discard any messages from the interpreter. Default: /NOMESSAGES Examples: The first example in Example 4-4 shows a command that translates fileX.ps, queues the resulting sixel file to queue-name, and enters any data or messages from the POSTSCRIPT interpreter in a log file named fileX.log in your login directory. The second example in Example 4-4 shows a command that translates fileZ.ps, sends the resulting sixels to an LN03 PLUS attached to the terminal, and creates the log file named messages.log in you login directory. 4-12 Using the DECprint Utility Command Example 4-4: Examples with /MESSAGES _____________________________________________________________ $ PSPRINT/QUEUE=queue-name/MESSAGES=FILE fileX.ps $ PSPRINT/ATTACHED=LN03/MESSAGES=FILE=messages fileZ.ps _____________________________________________________________ __________________________________________________________ 4.3.5 /ORIENTATION Qualifier Format: /ORIENTATION=logical-orientation /ORIENTATION is a positional qualifier that declares the orientation of the page images in the document. DECprint Utility software only uses /ORIENTATION when you invoke LAYUP; otherwise, the utility ignores the qualifier. The /ORIENTATION qualifier should match the orientaion of pages in the input POSTSCRIPT file. If you provide this qualifier on the command line, logical-orientation must be one of the following values: o PORTRAIT o LANDSCAPE Default: /ORIENTATION=PORTRAIT Example: For an example using the /ORIENTATION qualifier, see Example 4-2. __________________________________________________________ 4.3.5.1 Page Orientation and /LAYUP When you print using /LAYUP, the aspect ratio of the page is preserved. This means, for example, a portrait-shaped page retains its portrait shape. However, because LAYUP scales pages to make the best use of the available space, the page and sheet may have different orientations. Using the DECprint Utility Command 4-13 Figures 4-1 and 4-2 show the four different cases of page and sheet orientation with /LAYUP. Text in the first page spot is represented by the parallel lines. The POSTSCRIPT origin of the sheet and first page are represented by the quarter circles. Figure 4-1 shows how your portrait file prints with /LAYUP=2 and /LAYUP=4. With /LAYUP=2, the pages remain portrait-shaped, but you hold the sheet in landscape orientation to read them. Figure 4-2 shows how your landscape file prints with /LAYUP=2 and /LAYUP=4. With /LAYUP=2/ORIENTATION=LANDSCAPE, the pages have a landscape shape, but you hold the sheet in portrait orientation_to_read_them.____________________________________ _____________________________________________________________ __________________________________________________________ 4.4 PRINT Qualifiers That Work Differently This section describes PRINT command qualifiers that do not work the same with the DECprint Utility command as they do with the DCL PRINT command. __________________________________________________________ 4.4.1 /AFTER Qualifier In DCL PRINT, /AFTER specifies when the printing of the file begins. The DECprint Utility software passes /AFTER to $SNDJBC. Therefore, /AFTER specifies when the printing of the sixels begins. Conversion from POSTSCRIPT to sixels by the DECprint Utility software begins immediately. See Section 4.6 for information on how to submit a command file to run DECprint Utility jobs in batch or at a later time. 4-14 Using the DECprint Utility Command __________________________________________________________ 4.4.2 /PARAMETERS Qualifier /PARAMETERS extends the PRINT line command for existing POSTSCRIPT printers. DECprint Utility software uses new command qualifiers to provide the features of the /PARAMETERS qualifier (see Section 4.3). DECprint Utility software does not parse or interpret values specified by /PARAMETERS, but passes them to the VMS job controller ($SNDJBC), in case your symbiont reads the /PARAMETERS qualifier. __________________________________________________________ 4.5 Unsupported PRINT Qualifiers Several DCL PRINT command qualifiers do not work with the DECprint Utility command. If you supply these qualifiers on the DECprint Utility command line, you receive an error indicating that the qualifier is not valid when using the DECprint Utility command. This section describes and lists these qualifiers. __________________________________________________________ 4.5.1 Formating Qualifiers As the DECprint Utility software only converts and prints POSTSCRIPT files, it does not support the following ASCII text formating print qualifiers: /FEED /PASSALL /HEADER /SPACE Using the DECprint Utility Command 4-15 __________________________________________________________ 4.5.2 File Selection Qualifiers DECprint Utility software does not support the following file selection print qualifiers: /BACKUP /CONFIRM /EXPIRED /BEFORE /CREATED /MODIFIED /BY_OWNER /EXCLUDE /SINCE __________________________________________________________ 4.5.3 /FORM and /SETUP Qualifiers The DECprint Utility does not support the following qualifiers that are associated with forms and setup modules. /FORM Qualifier DECprint Utility software ignores much of the form functionality as it submits jobs for printing with the /PASSALL qualifier. In addition, DECprint Utility does not support setup modules. For these reasons, /FORM is not supported. /SETUP Qualifier DECprint Utility software does not support /SETUP for the same reasons that it does not support /FORM. DECprint Utility submits jobs for printing with the /PASSALL qualifier that ignores much of the form functionality and does not support setup modules. If your POSTSCRIPT file requires setup modules to work properly, you can do either of the following: o Rewrite your files to be independent of setup modules, which increases their portability. 4-16 Using the DECprint Utility Command o Extract the required modules into a file and include the name of the file on the command line. $ PSPRINT/QUEUE=queue-name setup_filename.PS,myfile.PS __________________________________________________________ 4.5.4 Miscellaneous Qualifiers Miscellaneous print qualifiers that DECprint Utility software does not support include: /DELETE /LOWERCASE /DEVICE /REMOTE /DELETE Qualifier When using the DCL PRINT command, /DELETE refers to the file that was named in the PRINT command line. Since the DECprint Utility software does not know when printing completes, it cannot delete the original POSTSCRIPT file. You can delete the original POSTSCRIPT file. /DEVICE Qualifier DCL allows /DEVICE as a synonym for /QUEUE. The DECprint Utility does not support /DEVICE; use /QUEUE instead. __________________________________________________________ 4.6 Submitting DECprint Utility Commands for Batch Processing This section contains an example of a command file and the DCL command that you can use if you want to submit a DECprint Utility command for processing in batch or at a later time. The command file, Batch-PSPRINT.com, is supplied during the installation process in the directory SYS$COMMON:[SYSHLP.EXAMPLES.PSPRINT]. To use the command file to submit your DECprint Utility job to a batch queue, enter the following DCL command: Using the DECprint Utility Command 4-17 $ SUBMIT /PARAMETERS=(parameter[,...]) Batch-PSPRINT You can include up to eight parameters with the SUBMIT command. These parameter values equate to the symbols named p1 through p8 in Batch-PSPRINT.com (see Example 4-6). Specify all DECprint Utility qualifiers and parameters, including the the POSTSCRIPT file name, in one of these parameters. If a parameter contains spaces, special characters, or lowercase letters, enclose the parameter in quotation marks. A parameter can have from 1 to 255 characters. NOTE The batch process receives your disk and directory defaults and the same resource quotas and privileges that were given to your interactive process when you logged in. Examples: The first command in Example 4-5 shows the DECprint Utility job submitted to the default batch queue SYS$BATCH for immediate processing. In batch, the DECprint Utility software converts fileA.ps and prints to a queue named lj250b. /queue=lj250b/notify fileA.ps can be included in a single parameter, as in this example, or in separate parameters, as in the other two examples. The next command in Example 4-5 shows a command that sends the DECprint Utility job to a selected batch queue to be processed after 6:30 pm today. In this case, /AFTER is the DCL SUBMIT/AFTER qualifier not the DECprint Utility /AFTER qualifier. The third command in Example 4-5 shows a DECprint Utility job involving LAYUP that is submitted to a selected batch queue for processing immediately. 4-18 Using the DECprint Utility Command Example 4-5: Examples Using the Batch-PSPRINT.com File _____________________________________________________________ $ SUBMIT /PARAMETERS=("/queue=lj250b/notify fileA.ps") Batch-PSPRINT $ SUBMIT /PARAMETERS=("/queue=lj250b","/notify","fileB.ps")- /AFTER=18:30 /QUEUE=psprint_batch Batch-PSPRINT $ SUBMIT /PARAMETERS=("/queue=ln03s_A","/layup=4",- "/orientation=landscape","/medium=A","/messages=file=fileX",- "fileX.ps") /QUEUE=psprint_batch /NOTIFY Batch-PSPRINT _____________________________________________________________ Example 4-6 shows the command procedure Batch-PSPRINT.com that you can use to submit your DECprint Utility job to a batch queue for processing. This procedure checks for the following: o A valid software license o DECprint Utility activity (units) on the system If another DECprint Utility job is active on the system, the command procedure waits one minute and submits your DECprint Utility job again. Batch-PSPRINT.com continues to check and process your job when the software is available. Using the DECprint Utility Command 4-19 Example 4-6: The Batch-PSPRINT Command File ________________________________________________________________ $! $! Batch-PSPRINT.com $! $! $ $ outfile := sys$scratch:batch-psprint-'f$getjpi("","pid").log $ $ try_psprint: $ $ on error then continue $ define/user sys$output 'outfile $ psprint 'p1 'p2 'p3 'p4 'p5 'p6 'p7 'p8 $ $ ! $ ! Check the result status. $ ! If it isn't LICENSE-F-NOAUTH, then we exit with it. $ ! $ $ ppstatus = $status $ if ppstatus .ne. %x1A948AF4 then goto clean_up $ $ ! $ ! If we did exit because PSPRINT wasn't authorized, then we check to $ ! see if it was because there weren't enough units. $ ! $ $ open/read out 'outfile $ read out line $ read out line $ close out $ if f$extract(0, 19, line) .nes. "-LICENSE-F-EXCEEDED" then goto clean_up ________________________________________________________________ Example 4-6 Cont'd on next page 4-20 Using the DECprint Utility Command Example 4-6 (Cont.): The Batch-PSPRINT Command File ________________________________________________________________ $ $ ! $ ! If we exited because there weren't enough units, then we will wait for $ ! one minute and try again. By then, the license may have been released. $ $ wait 00:01 $ goto try_psprint $ $ ! $ ! To clean up we just have to delete the file we used to capture $ ! the messages. $ ! $ $ clean_up: $ delete 'outfile';* $ exit ppstatus ________________________________________________________________ __________________________________________________________ 4.7 Color Printing with DECprint Utility DECprint Utility software converts POSTSCRIPT files with color information for printing on the LJ250 Companion Color Printer and the LA324 MultiPrinter. DECprint Utility software converts colors to shades of gray for printing on sixel printers that do not have color capability. __________________________________________________________ 4.8 Miscellaneous Helpful Hints This following sections contain helpful hints for use with the DECprint Utility. Using the DECprint Utility Command 4-21 __________________________________________________________ 4.8.1 Using Transparencies with the LJ250 Companion Color Printer To print transparencies with the LJ250 printer, you must first put the printer in transparency mode, as follows: 1.Turn off power to the printer 2.Press and hold the DEC/PCL switch on the front panel while pressing the power switch. The printer is now in transparency mode and you can submit your POSTSCRIPT file to the DECprint Utility software for printing on the LJ250 printer. __________________________________________________________ 4.8.2 Printing PostScript Documents From MAIL You can use the DECprint Utility to print POSTSCRIPT files received from electronic MAIL on a sixel printer. First, copy the POSTSCRIPT file to a file in your directory using the EXTRACT/NOHEAD command. Then submit the file for processing with the DECprint Utility command. MAIL> EXTRACT/NOHEAD mailfile.PS MAIL> EXIT $ PSPRINT/QUEUE=queue-name mailfile.PS __________________________________________________________ 4.8.3 Running the DECprint Utility in the Background You can free your terminal for other applications, by doing either of the following: o Run the DECprint Utility in a second session on your terminal o Submit the DECprint Utility job to a batch queue 4-22 Using the DECprint Utility Command Before running the DECprint Utility in a second session, make sure your terminal is set up properly. Dual sessions on the VT330/VT340 video terminals require two communications cables or one communications cable and the Session Support Utility (SSU) software. The terminal server also provides dual sessions for your terminal. Refer to the user documentation for your video terminal for information on setting up dual sessions. Section 4.6 provides information on how to submit your DECprint Utility job to a batch queue for processing. __________________________________________________________ 4.8.4 Printer Margin Information Table 4-3 lists the top, bottom, left, and right margins, in inches, for the printers supported by the DECprint Utility software. These margins cannot be changed. Table_4-3:__Printer_Margins_in_Inches________________________ Printer_Name__________Top____Bottom_Left___Right_____________ LA75 Companion .125 .125 .17 .32 Printer LA210 Letterprinter .125 .125 .125 .125 LA324 MultiPrinter .04 .04 .16 .16 LJ250 Companion .04 .04 .26 .16 Color Printer LN03 Plus Desktop .25 .29 .25 .25 Laser Printer (A-Size) Using the DECprint Utility Command 4-23 Table_4-3_(Cont.):__Printer_Margins_in_Inches________________ Printer_Name__________Top____Bottom_Left___Right_____________ LN03 Plus Desktop .45 .79 .25 .25 Laser Printer (A4-Size)____________________________________________________ __________________________________________________________ 4.9 Summary of DECprint Utility Qualifiers This section lists the qualifiers supported by the DECprint Utility and provides the following information about them: o Type of value associated with the qualifier: integer, keyword, string o Default value of the qualifier o If the qualifier can be negated or not, for example /NOLAYUP o Whether the qualifier can be applied to files in a job (positional) or only to the job (global) o If the qualifier is new with the DECprint Utility command or is a DCL PRINT command qualifier Table 4-4 lists qualifiers that the DECprint Utility command supports for queued printing. Table_4-4:__DECprint_Utility_Qualifiers_________________________ Global(G)/ Qualifier___________Value_______Default_____Negatable___Positional(P) Source AFTER date - Yes G PRINT 4-24 Using the DECprint Utility Command Table_4-4_(Cont.):__DECprint_Utility_Qualifiers_________________ Global(G)/ Qualifier___________Value_______Default_____Negatable___Positional(P) Source ATTACHED device - Yes G NEW type BURST - - Yes P PRINT CHARACTERISTICS list - Yes G PRINT COPIES integer 1 Yes P PRINT FLAG keyword[1] ALL Yes P PRINT HOLD - No Yes G PRINT IDENTIFY - Yes Yes G PRINT JOB_COUNT integer 1 Yes G PRINT LAYUP integer NOLAYUP Yes P NEW MEDIUM keyword[2] LETTER No P NEW MESSAGES keyword[2] NOMESSAGES Yes G NEW NAME string - Yes G PRINT NOTE string - Yes G PRINT NOTIFY - NONOTIFY Yes G PRINT ________________________________________________________________ [1]See the VMS DCL Dictionary for supported keywords for this qualifier. [2]See Section 4.3 for supported keywords for this qualifier. Using the DECprint Utility Command 4-25 Table_4-4_(Cont.):__DECprint_Utility_Qualifiers_________________ Global(G)/ Qualifier___________Value_______Default_____Negatable___Positional(P) Source OPERATOR string - Yes G PRINT ORIENTATION keyword[2] PORTRAIT No P NEW PAGES integers - Yes P PRINT PARAMETERS list - Yes G PRINT PRIORITY integer - Yes G PRINT QUEUE queue SYS$PRINT Yes G PRINT name RESTART - - Yes G PRINT TRAILER keyword[2] - Yes P PRINT USER username - Yes G PRINT ________________________________________________________________ [2]See Section 4.3 for supported keywords for this qualifier. ________________________________________________________________ Table 4-5 lists those qualifiers that the DECprint Utility command supports for printers attached to your terminal (/ATTACHED). Table_4-5:__Qualifiers_Supported_for_Attached_Printers__________ Global(G)/ Qualifier___________Value_______Default_____Negatable___Positional(PSource LAYUP integer - Yes P NEW 4-26 Using the DECprint Utility Command Table_4-5_(Cont.):__Qualifiers_Supported_for_Attached_Printers__ Global(G)/ Qualifier___________Value_______Default_____Negatable___Positional(PSource MEDIUM keyword[2] - No P NEW MESSAGES keyword[2] - Yes G NEW NAME string - Yes G PRINT ORIENTATION keyword[2] - No P NEW PAGES numlist - Yes P PRINT ________________________________________________________________ [2]See Section 4.3 for supported keywords for this qualifier. ________________________________________________________________ Using the DECprint Utility Command 4-27 Index __________________________________________________________ ___________________________ A Color extensions (Cont.) ___________________________ setcmykcolor operator, /AFTER qualifier, 4-14 C-29 Attached printers, 4-4, 4-7 setcolorscreen operator, effect of control C-31 character during setcolortransfer operator printing, 4-5 , C-34 /ATTACHED qualifier, 4-8 setundercolorremoval ___________________________ B operator, C-37 ___________________________ colorimage operator, C-9, Black generation, C-5 C-18 ___________________________ examples for, C-12 C Color images, C-9 ___________________________ Color screens, C-9 CMYK color, C-8 Color transfer functions, Color extensions C-9 colorimage operator, C-18 Command syntax, 4-2 currentblackgeneration componentids extension, operator, C-21 B-5, B-6 currentcmykcolor operator Control characters , C-22 effect with attached currentcolorscreen printers, 4-5 operator, C-23 currentblackgeneration currentcolortransfer operator, C-21 operator, C-25 currentcmykcolor operator, currentundercolorremoval C-22 operator, C-26 currentcolorscreen operator format, C-17 , C-23 setblackgeneration currentcolortransfer operator, C-27 operator, C-25 Index-1 currentundercolorremoval Installation Verification operator, C-26 Procedure (IVP) (Cont.) CYMK color, C-4 output, 2-12 ___________________________ ___________________________ D J ___________________________ ___________________________ DECprint Utility jobname operator, B-4, B-7 system messages, 5-1 ___________________________ DECprint Utility command L line, 4-2 ___________________________ attached printers, 4-4 LA210 Letterprinter, 1-3, queued printers, 4-3 3-3 /DELETE qualifier, 4-17 LA324 MultiPrinter, 1-3, Device control library, 3-3 A-4, A-5 LA75 Companion printer, /DEVICE qualifier, 4-17 1-3, 3-3 Device support, 4-6 /LAYUP qualifier, 4-9 ___________________________ LJ250 Companion Color F printer, 1-3, 3-3 ___________________________ using transparencies /FORM qualifier, 4-16 ___________________________ with, 4-22 H LN03 Image software ___________________________ installation order with Hardware requirements, 1-3 DECprint Utility, 1-5 ___________________________ LN03 PLUS Desktop Laser I printer, 1-3, 3-3 ___________________________ Logical name Installation for queued printing, 3-1, hardware requirements, 1-3 4-6 order with LN03 Image ___________________________ software, 1-5 M procedure messages, 5-1 ___________________________ required disk space, 1-5 /MEDIUM qualifier, 4-10 sample session, 2-10 Messages software requirements, descriptions, 5-2 to 1-4 5-14 time required, 1-5 format, 5-1 Installation procedure severity level, 5-2 questions, 2-3 to 2-9 /MESSAGES qualifier, 4-11 Installation Verification Procedure (IVP) 2-Index ___________________________ O Print qualifiers (Cont.) ___________________________ effective at queue time, /ORIENTATION qualifier, 4-3 4-13 not supported by DECprint ___________________________ Utility command, 4-15 P specific to DECprint ___________________________ pagecount operator, B-4, Utility command, 4-7 B-7 Print queues, creating, A-1 pagesize operator, B-4 /PROCESSOR qualifer, A-6 /PARAMETERS qualifier, 4-15 product operator, B-5, B-6 Persistent parameters, B-4 PSPRINT$queue_DEVICE_TYPE, Postinstallation 3-1, 4-6 requirements, 3-1 PSPRINT$STARTUP for queued printing, 3-1 editing of, A-2 to A-4 for VAXcluster systems, queue setup topics, A-5 3-4 to A-7 POSTSCRIPT extensions, B-1 renaming, A-2 to B-7 ___________________________ componentids, B-6 Q portability, B-1 ___________________________ sheetcount, B-7 Qualifiers POSTSCRIPT operators different from PRINT begin, B-4 command, 4-14 end, B-4 effective at queue time, jobname, B-7 4-3 pagecount, B-7 not supported by DECprint pagesize, B-4 Utility command, 4-15 product, B-6 specific to DECprint revision, B-7 Utility command, 4-7 version, B-7 Queued printing, 4-6 where, B-2 Queues, creating, A-1 Printed output ___________________________ IVP, 2-12 R Printer startup file ___________________________ setting up print queues, Release Notes, 2-2 A-2 revision operator, B-5, B-7 Printer support, 1-3 ___________________________ Print qualifiers S different from PRINT ___________________________ command, 4-14 Separation pages, A-6 setblackgeneration operator , C-27 Index-3 ___________________________ setcmykcolor operator, C-29 V setcolorscreen operator, ___________________________ C-31 version operator, B-7 setcolortransfer operator, VMSINSTAL procedure C-34 conventions, 2-1 setundercolorremoval installation questions, operator, C-37 2-3 to 2-9 Setup modules release notes, 2-2 with DECprint Utility Volatile parameters, B-4 jobs, 4-16 /SETUP qualifier, 4-16 sheetcount operator, B-4, B-7 Software requirements, 1-4 statusdict, B-3 Supported devices device type keywords for, 3-3 resolution of, 3-3 System messages, 5-1 to 5-14 System parameters, B-4 System startup file, A-5 ___________________________ T ___________________________ Terminal device type, A-6 Terminals supported by DECprint Utility software, 1-3 Tranparency mode LJ250 printer, 4-22 Troubleshooting procedures, D-1 to D-6 ___________________________ U ___________________________ UNDEF error message, B-1 Undefined name statusdict, B-3 using where operator, B-2 Undercolor removal, C-5 4-Index Chapter 5 System Messages ________________________________________________________________ This chapter contains the system messages issued by the DECprint Utility software and the POSTSCRIPT interpreter. Refer to the Guide to VAX/VMS Software Installation for explanations of messages issued by VMSINSTAL during product installation. Refer to the VMS System Messages and Recovery Procedures for explanations of messages issued by the DCL software. Refer to VMS License Management Utility Manual for an explanation of the the Licence Management Facility (LMF) messages. __________________________________________________________ 5.1 Message Format System messages issued by the DECprint Utility software have the following format: %PSPRINT-s-ident, text -PSPRINT-s-ident, text where: % is the prefix to all primary messages. - is the prefix to all continuation messages. System Messages 5-1 s is the severity level of the message. ident is an abbreviation of the message text. text is the expanded text of the message. __________________________________________________________ 5.2 Severity Level The severity levels of DECprint Utility system messages are as follows: _____________________________________________________________ Code_Meaning_________________________________________________ S Success-successful completion of the request. I Informational-may or may not require user action. W Warning-request may not have completed and may require user action. E Error-system encountered an error that may be recoverable. F Fatal-system encountered a fatal error and cannot _____continue_processing_the_request.________________________ __________________________________________________________ 5.3 Message Descriptions The following message descriptions are alphabetized by the ident portion of the messages code. The message prefix, source designation, and severity code are not shown. 5-2 System Messages BADPS, couldn't use PostScript interpreter Explanation: DECprint Utility software cannot access the host-based POSTSCRIPT interpreter. Another message follows indicating the problem. User Action: Correct the problem indicated by the accompanying message. CREJOB, error creating job Explanation: The print job could not be submitted to the queue. Another message accompanies this message to explain the problem. User Action: Correct the problem indicated by the accompanying message. DICTFULL, dictfull: No more room in dictionary - offending command is string Explanation: The POSTSCRIPT interpreter sensed an error while trying to execute the POSTSCRIPT command represented by string. User Action: Either the POSTSCRIPT file or the application that generated the POSTSCRIPT file is in error. If the application is supplied by Digital, submit a Software Performance Report (SPR). DICTSTKOV, dictstackoverflow: Too many begins Explanation: The POSTSCRIPT interpreter sensed too many begins without corresponding ends. User Action: Either the POSTSCRIPT file or the application that generated the POSTSCRIPT file is in error. If the application is supplied by Digital, submit a Software Performance Report (SPR). System Messages 5-3 DICTSTKUF, dictstackunderflow: Too many ends Explanation: The POSTSCRIPT interpreter sensed too many ends without corresponding begins. User Action: Either the POSTSCRIPT file or the application that generated the POSTSCRIPT file is in error. If the application is supplied by Digital, submit a Software Performance Report (SPR). EXECSTKOV, execstackoverflow: Exec nesting is too deep - offending command is string Explanation: The POSTSCRIPT interpreter sensed an error while trying to execute the POSTSCRIPT command represented by string. User Action: Either the POSTSCRIPT file or the application that generated the POSTSCRIPT file is in error. If the application is supplied by Digital, submit a Software Performance Report (SPR). FLUSHING, rest of job will be ignored Explanation: An error or some other event has occurred that is causing POSTSCRIPT to ignore the rest of the job. One or more messages preceding this one should provide information on why the job is being flushed. User Action: Check the other messages that accompanied this one. 5-4 System Messages INTERNERR, internal error code; submit an SPR Explanation: A fatal error has occurred. The code pinpoints the location of the problem. User Action: Submit a Software Performance Report (SPR) that includes details of the situation under which the message occurred. INCQUETYUP, inconsistent queue type Explanation: The queue specified with /QUEUE is not suitable for printing. (Specifying a batch queue will give this message.) User Action: Provide a valid name for the /QUEUE qualifier and re-enter your DECprint Utility command. INTERUPT, interrupt: The job has been interrupted Explanation: The POSTSCRIPT interpreter sensed an external request to interrupt the POSTSCRIPT program. This message also appears as part of the Abort process. User Action: None. This message is a confirmation of a requested action. INVACC, invalidaccess: Attempt to access restricted object or capability - offending command is string Explanation: The POSTSCRIPT interpreter sensed an error while trying to execute the POSTSCRIPT command represented by string. User Action: Either the POSTSCRIPT file or the application that generated the POSTSCRIPT file is in error. If the application is supplied by Digital, submit a Software Performance Report (SPR). System Messages 5-5 INVEXIT, invalidexit: Exit not in loop - offending command is string Explanation: The POSTSCRIPT interpreter sensed an error while trying to execute the POSTSCRIPT command represented by string. User Action: Either the POSTSCRIPT file or the application that generated the POSTSCRIPT file is in error. If the application is supplied by Digital, submit a Software Performance Report (SPR). INVFILACC, invalidfileaccess: Bad file access string - offending command is string Explanation: The POSTSCRIPT interpreter sensed an error while trying to execute the POSTSCRIPT command represented by string. User Action: Either the POSTSCRIPT file or the application that generated the POSTSCRIPT file is in error. If the application is supplied by Digital, submit a Software Performance Report (SPR). INVFONT, invalidfont: Bad font name or dictionary - offending command is string Explanation: The POSTSCRIPT interpreter sensed an error while trying to execute the POSTSCRIPT command represented by string. User Action: Either the POSTSCRIPT file or the application that generated the POSTSCRIPT file is in error. If the application is supplied by Digital, submit a Software Performance Report (SPR). 5-6 System Messages INVLOGFIL, invalid log file specification Explanation: The file name you gave for /MESSAGES=file is not a valid log file specification. An additional message provides an explanation of the problem. User Action: Perform the action suggested by the message indicating the problem, which could be correcting the spelling of a disk name, for example. INVREST, invalidrestore: Improper restore - offending command is string Explanation: The POSTSCRIPT interpreter sensed an error while trying to execute the POSTSCRIPT command represented by string. User Action: Either the POSTSCRIPT file or the application that generated the POSTSCRIPT file is in error. If the application is supplied by Digital, submit a Software Performance Report (SPR). IOERROR, ioerror: System I/O error occurred - offending command is string Explanation: The POSTSCRIPT interpreter sensed an error while trying to execute the POSTSCRIPT command represented by string. User Action: Either the POSTSCRIPT file or the application that generated the POSTSCRIPT file is in error. If the application is supplied by Digital, submit a Software Performance Report (SPR). System Messages 5-7 LIMCHK, limitcheck: Implementation limit exceeded - offending command is string Explanation: The POSTSCRIPT interpreter sensed an execute the POSTSCRIPT command represented by string. User Action: Either the POSTSCRIPT file or the application that generated the POSTSCRIPT file is in error. If the application is supplied by Digital, submit a Software Performance Report (SPR). NODEVTYPE, couldn't determine device type for queue Explanation: DECprint Utility software could not determine the device type. The device type logical is not defined. User Action: Define the PSPRINT$queue_DEVICE_TYPE logical for queued printing jobs. See Section 3.1 for information on how to define this logical. NOCURPT, nocurrentpoint: Path is empty - offending command is string Explanation: The POSTSCRIPT interpreter sensed an error while trying to execute the POSTSCRIPT command represented by string. User Action: Either the POSTSCRIPT file or the application that generated the POSTSCRIPT file is in error. If the application is supplied by Digital, submit a Software Performance Report (SPR). 5-8 System Messages NOLOCMED, /MEDIUM must be used globally Explanation: /MEDIUM should only be used globally, that is, after the DECprint Utility command verb and before any files. User Action: Place /MEDIUM after the command verb and before the file names. Then enter your command again. NOMIXDEV, all execution queues must have the same device type Explanation: You specified a generic queue that points to execution queues with different device types. User Action: Specify an execution queue or a generic queue that points to execution queues that have the same device type. Enter your command again. NOPRINTER, /ATTACHED requires the terminal characteristic Printer Port Explanation: Set terminal characterics do not indicate that the terminal has an attached printer. The DECprint Utility software requires this. User Action: Perform the SET TERMINAL/PRINTER_PORT command and resubmit your print job. NOTATTY, device TT: is not an available terminal Explanation: The TT device is not a terminal or is not available. PSPRINT/ATTACHED only sends output to a terminal device. User Action: Use the DECprint Utility /ATTACHED qualifier only from a normal DCL session. System Messages 5-9 OPENIN, error opening filename for reading Explanation: For some reason, one of the POSTSCRIPT files could not be opened. Other messages accompany this error message to explain the problem. User Action: Make corrections suggested by the accompanying messages. RANGECHK, rangecheck: Argument out of bounds - offending command is string Explanation: The POSTSCRIPT interpreter sensed an error while trying to execute the POSTSCRIPT command represented by string. User Action: Either the POSTSCRIPT file or the application that generated the POSTSCRIPT file is in error. If the application is supplied by Digital, submit a Software Performance Report (SPR). STKOFLO, stackoverflow: Operand stack overflow - offending command is string Explanation: The POSTSCRIPT interpreter sensed an error while trying to execute the POSTSCRIPT command represented by string. User Action: Either the POSTSCRIPT file or the application that generated the POSTSCRIPT file is in error. If the application is supplied by Digital, submit a Software Performance Report (SPR). 5-10 System Messages STKUFLO, stackunderflow: Operand stack underflow - offending command is string Explanation: The POSTSCRIPT interpreter sensed an error while trying to execute the POSTSCRIPT command represented by string. User Action: Either the POSTSCRIPT file or the application that generated the POSTSCRIPT file is in error. If the application is supplied by Digital, submit a Software Performance Report (SPR). SYNERR, syntaxerror: Input ended in string or procedure body - offending command is string Explanation: The POSTSCRIPT interpreter sensed an error while trying to execute the POSTSCRIPT command represented by string. User Action: Either the POSTSCRIPT file or the application that generated the POSTSCRIPT file is in error. If the application is supplied by Digital, submit a Software Performance Report (SPR). TOOCOMPLEX, print job too complex Explanation: You have exceeded the number of qualifiers (or values for qualifiers) allowed on the DECprint Utility command line. User Action: Simplify your print job. Submit it again with fewer qualifiers (or values for qualifiers) on the command line. System Messages 5-11 TYPCHK, typecheck: Argument of wrong type - offending command is string Explanation: The POSTSCRIPT interpreter sensed an error while trying to execute the POSTSCRIPT command represented by string. User Action: Either the POSTSCRIPT file or the application that generated the POSTSCRIPT file is in error. If the application is supplied by Digital, submit a Software Performance Report (SPR). UNDEF, undefined: Name not known - offending command is string Explanation: The POSTSCRIPT interpreter sensed an error while trying to execute the POSTSCRIPT command represented by string. User Action: Either the POSTSCRIPT file or the application that generated the POSTSCRIPT file is in error). If the application is supplied by Digital, submit a Software Performance Report (SPR). UNDEFRES, undefinedresult: Number overflow or underflow - offending command is string Explanation: The POSTSCRIPT interpreter sensed an error while trying to execute the POSTSCRIPT command represented by string. User Action: Either the POSTSCRIPT file or the application that generated the POSTSCRIPT file is in error. If the application is supplied by Digital, submit a Software Performance Report (SPR). 5-12 System Messages UNDFILNAM, undefinedfilename: File not found - offending command is string Explanation: The POSTSCRIPT interpreter sensed an error while trying to execute the POSTSCRIPT command represented by string. User Action: Either the POSTSCRIPT file or the application that generated the POSTSCRIPT file is in error. If the application is supplied by Digital, submit a Software Performance Report (SPR). UNMATCH, unmatchedmark: Expected mark not on stack - offending command is string Explanation: The POSTSCRIPT interpreter sensed an error while trying to execute the POSTSCRIPT command represented by string. User Action: Either the POSTSCRIPT file or the application that generated the POSTSCRIPT file is in error. If the application is supplied by Digital, submit a Software Performance Report (SPR). UNRECDEV, unrecognized device type: device Explanation: You selected a device type for the printer that is not recognized by the DECprint Utility. Either the device type with the /ATTACHED qualifier is not valid or the device type value in the logical PSPRINT$queue_DEVICE_TYPE is not correct. User Action: Check the /ATTACHED=device-type qualifier to make sure it is valid for the DECprint Utility command. Check that the PS$PRINTqueue_DEVICE_TYPE logical is defined correctly. Refer to Table 3-1. Then resubmit your file with the DECprint Utility command. System Messages 5-13 UNREGIST, unregistered: PostScript has encountered a system error - offending command is string Explanation: The POSTSCRIPT interpreter sensed an error while trying to execute the POSTSCRIPT command represented by string. User Action: Either the POSTSCRIPT file or the application that generated the POSTSCRIPT file is in error. If the application is supplied by Digital, submit a Software Performance Report (SPR). VMERROR, vmerror: PostScript virtual memory exhausted - offending command is string Explanation: The POSTSCRIPT interpreter sensed an error while trying to execute the POSTSCRIPT command represented by string. User Action: Either the POSTSCRIPT file or the application that generated the POSTSCRIPT file is in error. If the application is supplied by Digital, submit a Software Performance Report (SPR). 5-14 System Messages Appendix A Creating a Print Queue for the DECprint Utility ________________________________________________________________ This appendix discusses how to set up print queues using the four optional files that are included with the DECprint Utility installation kit. These files include a startup command file, PSPRINT$STARTUP.TEMPLATE, and three command files that are invoked by this startup file. Together they set up and start your print queues. If you already have print queues set up, you only need to define the device type logical (see Section 3.1). DECprint Utility software does not require that you use these command file to set up your print queue. These command files are provided for those system managers who would like help setting up print queues. Therefore, if you do not have print queues, you may want to use the command file SYS$STARTUP:PSPRINT$STARTUP.TEMPLATE. NOTE Running the PSPRINT$STARTUP command file on queues not created with this command file may not produce the desired result. The following operations affect system files and should be performed by a system manager or cluster manager. These procedures include renaming and editing the SYS$STARTUP:PSPRINT$STARTUP.TEMPLATE and updating the system Creating a Print Queue for the DECprint Utility A-1 startup file. This appendix also discusses behaviors specific to use of PSPRINT$STARTUP.COM to start your print queues. __________________________________________________________ A.1 Renaming and Editing the Printer Startup Command File The DECprint Utility, Version 1.0 provides an optional template for a printer startup file, SYS$STARTUP:PSPRINT$STARTUP.TEMPLATE. If you wish to use this command file to set up your print queues, you must rename the file, edit the file to reflect your own queue structure, and add a command to execute the command file in the system startup file. __________________________________________________________ A.1.1 Renaming the Startup File Rename the printer startup template file using the COPY command as follows: $ SET DEFAULT SYS$COMMON:[SYS$STARTUP] $ COPY PSPRINT$STARTUP.TEMPLATE PSPRINT$STARTUP.COM __________________________________________________________ A.1.2 Editing the Startup File This section includes portions of text from the printer startup command file. Text after an exclamation mark (!) to the end of the line denotes a comment that the startup procedure does not execute. Following this example and the instructions provided in PSPRINT$STARTUP.COM, use an editor of your choice and edit the file to meet your printing requirements. A-2 Creating a Print Queue for the DECprint Utility Sample Queue Structure PSPRINT$STARTUP provides a sample queue structure that includes commands to setup an execution queue on device TXA%%. Modify these commands or add commands to meet your requirements. Example A-1 shows the command that provides parameters to set up an execution queue: Example A-1: Sample Execution Queue _____________________________________________________________ $ $!+---------- $! Enter your queue structure below this line $!---------- $ $! Here is a sample queue structure for one execution queue on device $! TXA0: Modify these commands and add additional ones to reflect $! your desired queue structure. $ $ on error then continue $ @sys$startup:PSPRINT$execution_queue - 1 PSPRINT - ! P1 - Execution queue name 2 txa%% - ! P2 - Device name 3 "" - ! P3 - Device control library 4 LJ250 - ! P4 - Printer device type 5 "" - ! P5 - Default queue qualifiers 6 "" - ! P6 - Communication speed 7 "" ! P7 - Device characteristics $ $ exit _____________________________________________________________ @SYS$STARTUP:PSPRINT$EXECUTION_QUEUE executes the file PSPRINT$execution_queue.com. This file uses the following parameters from Example A-1 to set up your execution queue: 1 Parameter p1 PSPRINT is the queue name. Substitute the name of your execution queue. Creating a Print Queue for the DECprint Utility A-3 2 Parameter p2 txa%% is name of the device that drives the execution queue. This parameter is used with the /ON qualifier of the INITIALIZE/QUEUE command. Substitute the name of the device that drives your execution queue. TXA%% is not a valid name. For example: o txa0 - for an LJ250 on a serial line o lta1 - for an LJ250 on a DECserver port o foo::txa4 - for an LJ250 on TXA4 on node FOO in a cluster 3 Parameter p3 "" indicates that no device control library is associated with the queue. The DECprint Utility does not require a device control library. However, you may want to associate a device control library with the queue, if you plan to use a DECprint Utility queue for other ANSI printing tasks. 4 Parameter p4 LJ250 is the printer device type for the queue. Edit to include the device type for your printer. 5 Parameter p5 "" selects no default qualifiers for the queue. Use this parameter to override or specify other qualifiers to the INITIALIZE/QUEUE command. 6 Parameter p6 "" selects the default communications speed of 9600 BAUD. This parameter has no effect for LAT devices. 7 Parameter p7 "" selects no additional device characteristics for the queue. If you want the device spooled, replace the "" in p7 with "/SPOOL=(PSPRINT,disk-name)". A-4 Creating a Print Queue for the DECprint Utility __________________________________________________________ A.2 Updating the System Startup File To update the system startup file: Edit the SYS$COMMON:[SYSMGR]SYSTARTUP_V5.COM file and check for the following command procedure call: $ @SYS$STARTUP:PSPRINT$STARTUP If this line is not present, insert it. NOTE If your printer is configured on a DECserver in a local area Ethernet, execute PSPRINT$STARTUP.COM after LTLOAD.COM. __________________________________________________________ A.3 PSPRINT$STARTUP Queue Setup Topics This section discusses how using the PSPRINT$STARTUP command file differs from standard queue initialization procedures. __________________________________________________________ A.3.1 Device Control Library PSPRINT$STARTUP.COM does not associate a device control library with the DECprint Utility queue. DECprint Utility printing does not require a device control library. However, if you plan to use the DECprint Utility queue for other ANSI printing tasks, you may want to associate a device control library with the queue. To do this, add the device control library name to p3 in the execution queue definition in PSPRINT$STARTUP.COM. Creating a Print Queue for the DECprint Utility A-5 __________________________________________________________ A.3.2 Terminal Device Type PSPRINT$STARTUP.COM sets the terminal device type to unknown. This ensures that the command file is more robust and printer independent. Some of the printer device types supported by the DECprint Utility software are unknown to the VMS terminal driver. __________________________________________________________ A.3.3 Separation Pages PSPRINT$STARTUP.COM initializes the queues with only the job flag page, instead of burst and trailer pages. If you want to print transparencies on an LJ250 printer or if your printer uses cut sheet media, you may want to disable all job and file separation pages. Do not use file separation pages. __________________________________________________________ A.3.4 /PROCESSOR Qualifier The PSPRINT$EXECUTION_QUEUE.COM, invoked by PSPRINT$STARTUP.COM, selects the setting of the /PROCESSOR qualifier as follows: o PRTSMB - if the device is a serial line communications card o LATSYM - if the device is a local area transport (LAT) port PSPRINT$EXECUTION_QUEUE.COM can only determine this on the CPU where the symbiont is running. In a cluster, a processor is only initialized on a node that is running the symbiont. A-6 Creating a Print Queue for the DECprint Utility For queue characteristics to be correct, that is, for the right processor to be selected: o The node that runs the symbiont must boot and run the startup file. PSPRINT$EXECUTION_QUEUE.COM does not select the processor in the following instances: o The device does not exist. PSPRINT$EXECUTION_QUEUE.COM assumes that no information exists to determine which symbiont to use. o The device is already allocated. PSPRINT$EXECUTION_QUEUE.COM assumes that the queue is started and the processor already selected. Creating a Print Queue for the DECprint Utility A-7 Appendix B PostScript Language Extensions ________________________________________________________________ Every POSTSCRIPT device has features that do not apply, or apply differently, to other POSTSCRIPT devices. For example, not all devices can select different media sizes. In addition, system parameters, such as a system password and timeout values, may not apply or may apply differently to various devices. Extensions to the POSTSCRIPT language allow you to take advantage of the unique features of your device. This appendix describes the POSTSCRIPT extension operators used with DECprint Utility software. For information on the standard POSTSCRIPT operators, refer to the POSTSCRIPT Language Reference Manual. The DECprint Utility software does not support all extension operators described for Digital POSTSCRIPT devices. If you try to use an extension that the DECprint Utility software does not have, POSTSCRIPT returns an UNDEF error. If the undefined name is an extension operator, and if ignoring the extension operator does no harm, then you can do the following to successfully convert and print your file: 1.Create a POSTSCRIPT file that defines the unknown extension operator. PostScript Language Extensions B-1 In some cases, the undefined extension operators have operands. The procedure must remove (pop) the operands from the stack. Examine the file causing the problem to determine the correct number of pops. For example, letter does not take an operand. For letter, create a POSTSCRIPT file that contains the following line: /letter {} def For example, operator setjobtimeout takes one operand. To define setjobtimeout, create a POSTSCRIPT file with the following line: /setjobtimeout {pop} def For example, operator setdefaulttimeouts takes three operands. To define setdefaulttimeouts, create a POSTSCRIPT file that contains the following line: /setdefaulttimeout {pop pop pop} def 2.Name this file on the DECprint Utility command line before the POSTSCRIPT file causing the UNDEF error. For example, if you named the file letter.ps and the file causing the error is named fileE.ps, then enter the following command: $ PSPRINT/QUEUE=lj250_b letter.ps, fileE.ps As shown in Example B-1, you can use the where operator to determine if a name is defined. (See the POSTSCRIPT Language Reference Manual for information about where.) B-2 PostScript Language Extensions Example B-1: Determining Whether a Name Is Defined _____________________________________________________________ % Check whether the name 'setduplexmode' is defined. statusdict begin /setduplexmode where { % yes, it's defined pop % discard the dictionary returned by where. % ...use setduplexmode... } { % no, it's not defined % ...do something else... } ifelse end _____________________________________________________________ This describes the Digital POSTSCRIPT extensions required to specify the POSTSCRIPT model used by the DECprint Utility software. For more information on Digital POSTSCRIPT language extensions, refer to the Programmer's Supplement: POSTSCRIPT Printers. __________________________________________________________ B.1 Using PostScript Extensions POSTSCRIPT stores all system-specific extensions in a dictionary named statusdict. This dictionary contains objects that constitute the POSTSCRIPT extensions for each Digital POSTSCRIPT device. By comparison, the systemdict and userdict dictionaries contain only the standard POSTSCRIPT operator and procedure definitions. PostScript Language Extensions B-3 To use a POSTSCRIPT extension, you must explicitly access statusdict. As shown in Example B-2, you execute statusdict begin to push statusdict on the dictionary stack. Until POSTSCRIPT consumes the matching end operator, you can directly execute the objects defined in statusdict. Example B-2: Accessing Extensions Located in statusdict _____________________________________________________________ statusdict begin a3tray % Digital-specific operator . . . end _____________________________________________________________ Like standard POSTSCRIPT operators, some extension operators take an operand. Others return a result. Some extensions neither take an operand nor return a result. (For information on the syntax of extension operators see the Programmer's Supplement: POSTSCRIPT Printers.) __________________________________________________________ B.2 Persistent and Volatile Parameters There are two kinds of system parameters: persistent and volatile. Persistent parameter values persist even after the host-based POSTSCRIPT interpreter has been reset. Persistent values for the DECprint Utility software are constants; they cannot be modified. Table B-1 lists persistent parameters specific to the DECprint Utility software and shows the Digital-specific operators and values used to access them. B-4 PostScript Language Extensions Table_B-1:__Persistent_Parameters____________________________ Parameter____________Operator_or_Value_______________________ Identification componentids, revision Name_of_product______product_(string)________________________ Volatile parameters, on the other hand, remain in effect only during the execution of a single job. When a job completes, volatile parameters revert to the values in effect before the job began. Table B-2 lists the volatile parameters for the DECprint Utility software and the Digital-specific operators used to access them. Table_B-2:__Volatile_Parameters______________________________ Parameter____________Operator_or_Value_______________________ Page count pagecount, sheetcount Paper size and load papersize direction Name_of_current_job__jobname_________________________________ __________________________________________________________ B.3 Identification Extensions Some POSTSCRIPT extensions identify the type of device you are using. These extenions are used for information only. You should not use them as a basis for decision-making in POSTSCRIPT code, as the code is then device-dependent. PostScript Language Extensions B-5 __________________________________________________________ B.3.1 Product The name product is defined in statusdict. The product name identifies the product as a whole, not its specific capabilities. The value returned by product depends on the type of printer you use. The value is the string PSprint/printer, where printer is one of the following keywords: o LA75 o LA210 o LA324 o LA324 Color o LJ250 o LN03 For example, when you print to an LJ250 Companion Color printer, the value of product is PSprint/LJ250. You should not change the value of product from the name Digital provides with the device. __________________________________________________________ B.3.2 Device Components The componentids extension returns a list of the components of the device. For the DECprint Utility software, componentids returns a single item, other than the mark - a string that indicates the version number of the host-based POSTSCRIPT interpreter. B-6 PostScript Language Extensions __________________________________________________________ B.3.3 Version The version operator identifies the version of the base portion of the POSTSCRIPT interpreter in your device. This is a standard POSTSCRIPT operator. __________________________________________________________ B.3.4 Revision The name revision is defined in statusdict. It identifies the revision of the device-dependent portion of the POSTSCRIPT interpreter in your device. __________________________________________________________ B.3.5 Job Name The current job name is a string that appears as part of all status responses generated during a print job. By default, the value is a null string. Your POSTSCRIPT program can set the job name by associating it with jobname in statusdict. __________________________________________________________ B.4 Pagecount and Sheetcount Operators The origin for the value of the pagecount operator is the first page imaged by the current invocation of the DECprint Utility command. This operator counts each imaged side of a sheet as one page. So when you image multiple pages on one side of a sheet, the value returned by pagecount increases by 1. The pagecount counter is reset at the end of every DECprint Utility job. The sheetcount operator also starts its count at the first sheet imaged and returns the number of sheets imaged by the current DECprint Utility command. PostScript Language Extensions B-7 Appendix C Color Extensions for the PostScript Language ________________________________________________________________ Appendix C contains the information presented by Abode in POSTSCRIPT Language Color Extensions, October 1988. The text has been reformatted for processing with VAX DOCUMENT, Version 1.2. For information on the standard POSTSCRIPT operators, refer to the POSTSCRIPT Language Reference Manual. See Appendix B for POSTSCRIPT language extensions that apply to the DECprint Utility. __________________________________________________________ C.1 About the PostScript Language Color Extensions The POSTSCRIPT language has been extended to provide more complete color functionality. This includes cyan-magenta-yellow-black (CMYK) color specification, black generation and undercolor removal functions, screen and transfer functions for four separate color components, and extension of the image concept to a colorimage operator that accepts multiple color components. Color Extensions for the PostScript Language C-1 __________________________________________________________ C.2 About this Appendix This appendix describes the extensions to the POSTSCRIPT language that support new color functionality, and it provides detailed information on the associated color operators. The third section is a general introduction to color functionality in the POSTSCRIPT language. The fourth section discusses the extended color capabilities of the POSTSCRIPT language. The fifth section is an alphabetical listing of descriptions for all color operators that have been added to the POSTSCRIPT language. __________________________________________________________ C.3 Introduction The earlier versions of the POSTSCRIPT language support color using the setrgbcolor and sethsbcolor operators, which enable the POSTSCRIPT interpreter to paint filled regions, strokes, image masks, and characters in color. On black-and-white machines, these operators generate an equivalent gray shade, which is printed or displayed. To support color more fully, the POSTSCRIPT language has been extended to provide the following functions: o Most significantly, multiple color images: the colorimage operator renders a multiple color image; it functions analogously to the image operator, but uses red-green-blue (RGB) or cyan-magenta-yellow-black (CMYK) color input and generates full-color output. o Halftone screen definitions: the setcolorscreen operator specifies halftone screen definitions for red, green, blue, and gray, or cyan, magenta, yellow, and black concurrently; it is the logical expansion of setscreen as it takes the same three arguments to define each screen for each printing ink. C-2 Color Extensions for the PostScript Language o Color correction: the setcolortransfer operator sets the transfer function parameters for red, green, blue, and gray; it is an expansion of settransfer to four color components. The setblackgeneration operator provides a black generation function that establishes a black component from a cyan, magenta, and yellow specification. The setundercolorremoval operator provides undercolor removal from the cyan, magenta, and yellow components to compensate for the addition of black by the black generation function. o CMYK color specification: the setcmykcolor operator allows the user to set the current color in the graphics state to a cyan-magenta-yellow-black color directly, bypassing the color correction operators. The POSTSCRIPT language supports one-color, three-color, and four-color output devices. The color devices can be binary (one-bit-per-pixel per color component) or gray-scale (multiple-bits-per-pixel per color component, representing a range of intensities of each color component). A binary device uses halftoning to produce intermediate shades of its color components. If a device has eight-bits-per-pixel per component, it is called a full gray-scale device, and uses no halftoning. Devices with more than one and fewer than eight bits per pixel use a combination of built-in intensities and halftoning to produce the full range of desired shades of their color components. Three-color devices may be either red-green-blue (RGB), typically for displays and film recorders, or cyan-magenta-yellow (CMY) for printers. Four-color devices are cyan-magenta-yellow-black (CMYK) for color printers and color separation making devices. The color operators described in this document are available in two forms. New versions of the POSTSCRIPT interpreter have these operators built in. For older versions of the POSTSCRIPT interpreter, a package of POSTSCRIPT language programs that emulate these operators will be available. Color Extensions for the PostScript Language C-3 __________________________________________________________ C.4 New Features The color extensions to the POSTSCRIPT language include CMYK color specification, black generation, and undercolor removal for tunable conversion from RGB to CMYK color specification, and operators that expand the scope of screens, transfer functions, and images to full color input and output. These new color features are described conceptually in the sections below. __________________________________________________________ C.4.1 CMYK Color Specification Colors are formed either by adding light to black or by subtracting light from white. Computer displays and film recorders typically add colors, while printing inks typically subtract colors. These two methods for forming colors give rise to the two major complementary color specifications, the additive RGB specification and the subtractive CMYK specification. Accordingly, a color component in these specifications either indicates the amount of light it reflects or the amount of light it absorbs. Each one of three standard printing process colors, cyan, magenta, and yellow, absorb one of the standard light components, red, green, and blue, respectively. Black, a fourth standard printing process color, absorbs all components of light. In the red-green-blue (RGB) color specification, each of its red, green, and blue components is associated with a real number between 0.0 and 1.0, inclusive, where 0.0 represents dark (no light) and 1.0 represents full light. In the cyan-magenta-yellow-black (CMYK) color specification, each of the four components are associated with real numbers between 0.0 and 1.0 inclusive, where 0.0 represents full light (no ink), and 1.0 represents dark (full ink). C-4 Color Extensions for the PostScript Language The following equations demonstrate the relationship between the RGB and CMYK color specifications. Since cyan is the absence of red light, cyan =1.0-red. Similarly, magenta =1.0-green and yellow =1.0-blue, so that a color that is 0.2 red, 0.7 green, and 0.4 blue can also be expressed as 1.0 - 0.2= 0.8 cyan, 1.0 - 0.7 = 0.3 magenta, and 1.0 - 0.4 = 0.6 yellow. To improve the fidelity of blacks and grays, a fourth process color, black, is often available on color printers. Just as red in the RGB specification is the opposite of cyan in the CMYK specification, a black value is the opposite to a PostScript language gray value; that is, black =1.0-gray. __________________________________________________________ C.4.2 Black Generation and Undercolor Removal Logically, cyan, magenta, and yellow are all that are needed to generate a printing color completely. Thus an equal percentage of cyan, magenta, and yellow should create the equivalent percentage of black. In reality, colored printing inks do not mix perfectly, and such combinations often form dark brown shades instead. Thus, it is often desirable to substitute real black ink for the mixed-black portion of a color to obtain a truer color rendition on a printer. Color Extensions for the PostScript Language C-5 Black generation is the process of calculating the amount of black to be used when trying to print a particular color. Undercolor removal is the process of reducing the amount of cyan, magenta, and yellow components to compensate for the amount of black that was added by the black generation. Flexibility in performing these functions is important for achieving good results under different printing conditions. The setblackgeneration operator provides the functionality to generate extra black, no black, or a black value equal to all or a fraction of the minimum values of cyan, magenta, and yellow (see Section C.5). Its argument is a procedure that takes one numeric argument, the minimum value of user cyan, magenta, and yellow color components, and returns a single numeric result, the user black value (where a user color component value is that specified in the POSTSCRIPT language program before application of the corresponding transfer function). This procedure is automatically applied whenever setrgbcolor, the three-color case of colorimage (see Section C.3), or sethsbcolor specify a color. This user black value is then mapped to a device black value by applying the gray transfer function to its difference from 1.0 and subtracting the result from 1.0 (see setcolortransfer in Section C.5). The black generation function is not applied when setgray, setcmykcolor (see Section C.5), or the one- or four-color cases of colorimage specify colors. This computed black value is used only when outputting on four-color output devices. The setundercolorremoval operator (see Section C.5) provides functionality to remove some amount of color from each of the cyan, magenta, and yellow components. This amount could be exactly the same amount as was generated to make the black component, zero (so no color is removed from the cyan, magenta and yellow components), some fraction of the black amount, or even a negative amount. Like setblackgeneration, this operator permits considerable flexibility in color correction. C-6 Color Extensions for the PostScript Language The argument to setundercolorremoval is a procedure that takes one numeric argument, the minimum value of user cyan, magenta, and yellow color components, and returns a single numeric result that is subtracted from each of these original user color components. This procedure is applied whenever setrgbcolor, the three-color case of colorimage (see Section C.5), or sethsbcolor specify a color. After subtracting the value generated in the above mapping from the color components and resetting negative values to 0.0 and values greater than 1.0 to 1.0, each component is subtracted from 1.0 to yield red, green, and blue components. Each of these components is mapped into a device color component using its respective transfer function (see setcolortransfer in Section C.5). Undercolor removal is not applied when setgray, setcmykcolor, or the one- or four-color cases of colorimage specify a color. Undercolor removal is used only when outputting on four-color devices. The following equations define the complete color transformation process from RGB to CMYK. The values red(u), grn(u), blu(u), gry(u), cyn(u), mag(u), yel(u), and blk(u) are the (input) values of user red, green, blue, gray, cyan, magenta, yellow, and black, respectively. UCR() is the undercolor removal function. BG() is the black generation function. RedT, GrnT, BluT, and GryT are the red, green, blue and gray transfer functions (see setcolortransfer in Section C.5), respectively. The values red(d), grn(d), blu(d), gry(d), cyn(d), mag(d), yel(d), and blk(d) are the (output) values of device red, green, blue, gray, cyan, magenta, yellow, and black, respectively. cynu =1.0-red u magu =1.0-grn u yelu =1.0-blu u gryu =1.0 blku =0.0 k =Min(cynu,mag u,yelu) u =UCR(k) redd =RedT(1.0-Min(1.0,Max(0.0,cyn u -u))) Color Extensions for the PostScript Language C-7 grnd =GrnT(1.0-Min(1.0,Max(0.0,mag u -u))) blud =BluT(1.0-Min(1.0,Max(0.0,yel u -u))) gryd =GryT(1.0-BG(k)) cynd =1.0-red d magd =1.0-grn d yeld =1.0-blu d blkd =1.0-gry d __________________________________________________________ C.4.3 Direct CMYK Color Specification For the most demanding cases, color matching can require more complicated methods than those described above. The setcmykcolor operator and the four-color case of the colorimage operator bypass the black generation and undercolor removal operations, allowing the knowledgable user to specify the cyan, magenta, yellow, and black color components for a particular device. This operator provides no correction other than the transfer functions setcolortransfer specifies (see Section C.5); the results are device dependent. The following equations define the complete color transformation process for the setcmykcolor operator and the four-color case of the colorimage operator. The values are as defined in Black Generation and Undercolor Removal Section C.4.2. These equations are equivalent to those given above except for the omission of the black generation and undercolor removal steps. redu =1.0-cyn u grnu =1.0-mag u bluu =1.0-yel u gryu =1.0-blk u redd =RedT(redu ) rnd =GrnT(grnu ) blud =BluT(bluu ) gryd =GryT(gryu ) cynd =1.0-red d C-8 Color Extensions for the PostScript Language magd =1.0-grn d yeld =1.0-blu d blkd =1.0-gry d __________________________________________________________ C.4.4 Color Screens, Transfer Functions, and Images The operators setcolorscreen, currentcolorscreen, setcolortransfer, and currentcolortransfer provide an expansion of the operators setscreen, currentscreen, settransfer, and currenttransfer, respectively, by setting up a screen and a transfer function for each color component. The colorimage operator provides an expansion of the image operator to allow samples of one, three, or four color components. (See Section C.5 for more details.) __________________________________________________________ C.4.4.1 colorimage colorimage is the logical expansion of image to handle sampled images whose samples are composed of more than one color component. The initial arguments to colorimage are the same as those for image. The final arguments differ according to the number of color components per sample and according to the encoding method. The arguments to colorimage are as follows: width height bits/component matrix proc(0) [...proc(ncolors-1)] multiproc ncolors (See Section C.5 for precise definitions of these arguments.) ncolors describes the number of color components in each sample. Legal values for ncolors are 1 (gray-level samples only), 3 (RGB samples), or 4 (CMYK samples). multiproc distinguishes between encoding methods. The possibilities for multiproc are false (single procedure, color components are bunched together) or true (multiple procedures, one per color, components are separated into strings of like colors). Color Extensions for the PostScript Language C-9 The legal variations of ncolors and multiproc allow the following possibilities (where proc subscripts have been changed to words to indicate the purpose of each proc): w h b/c matrix proc(gray) false 1 w h b/c matrix proc(gray) true 1 w h b/c matrix proc(rgb) false 3 w h b/c matrix proc(red) proc(green)proc(blue) true 3 w h b/c matrix proc(cmyk) false 4 w h b/c matrix proc(cyan) proc(magenta)proc(yellow) proc(black) true 4 The first two variations here are both equivalent to w h b/s matrix proc(gray) image __________________________________________________________ C.4.4.1.1 Data formats for colorimage operator As indicated above, the colorimage operator has two forms, distinguished by its multiproc argument. The single-procedure form is most useful if sample input is taken from a source that has already merged the color components. This form provides samples for which each RGB triple or CMYK quadruple is packed together in the string result of the procedure, using one of the following bit formats (where the high-order bit is shown on the left): _____________________________________________________________ Bits/comp.____RGB_Format_____________________________________ 1 RGBRGBRG BRGBRGBR GBRGBRGB RGBRGBRG .... 2 RRGGBBRR GGBBRRGG BBRRGGBB RRGGBBRR .... 4 RRRRGGGG BBBBRRRR GGGGBBBB RRRRGGGG .... 8____RRRRRRRR__GGGGGGGG__BBBBBBBB__RRRRRRRR___....___________ or C-10 Color Extensions for the PostScript Language _____________________________________________________________ Bits/comp._____CMYK_Format___________________________________ 1 CMYKCMYK CMYKCMYK CMYKCMYK CMYKCMYK .... 2 CCMMYYKK CCMMYYKK CCMMYYKK CCMMYYKK .... 4 CCCCMMMM YYYYKKKK CCCCMMMM YYYYKKKK .... 8____CCCCCCCC__MMMMMMMM____YYYYYYYY__KKKKKKKK___...._________ The multiple-procedure form expects each procedure to return a string of values for only one color component per sample, using the same format as strings returned by the proc argument of the image operator. For a three-color image, proc(0) returns red values, proc(1) returns green values, and proc(2) returns blue values. For a four-color image, proc(0) returns cyan values, proc(1) returns magenta values, proc(2) returns yellow values, and proc(3) returns black values. The colorimage operator calls each of these procedures in turn, starting with proc(0) and continuing with proc(1), proc(2), and, if available, proc(3). When the colorimage operator needs more samples, it calls these procedures again in the same order. The color procedures must use separate strings for the three or four results of the three or four procedures, i.e., reusing the red string for the green values can result in some of the red values being lost. Also, the three or four procedures must return strings of identical lengths within each cycle of three or four calls. The multiple-procedure form is most useful when color sample data are taken from separate color scanner passes. The colorimage operator requires the color data to be interleaved, as it must have all three or four components of any sample at the same time to do its work. The single-procedure form interleaves the data at the sample level; this may be convenient only if the data are already in that form when preparing the POSTSCRIPT language page description. The multiple-procedure form allows interleaving at a much coarser level. Typically, each procedure of the Color Extensions for the PostScript Language C-11 multiple-procedure form returns components for some number of scan lines of samples, where the number of components returned at each call is limited by the string storage available in the POSTSCRIPT interpreter. __________________________________________________________ C.4.4.1.2 Examples for colorimage operator The following examples illustrate the use of the colorimage operator: EXAMPLE 1: /rgbstr 192 string def % string to hold 256 two-bit samples % each of red, green, and blue data 45 140 translate % locate lower left corner of image 132 132 scale % map image to 132 point square 256 256 2 % dimensions of source image [256 0 0 -256 0 256] % map unit square to source {currentfile % read image date from program file rgbstr readhexstring pop} false 3 % single proc, 3 colors, bit format: % rrggbbrr ggbbrrgg bbrrggbb ... colorimage 94a1bec8c0b371a3a5c4d281 ... (98304 hex digits of image data) The above is a one-procedure 2-bit RGB image. The base-4 representation of the hex data is 2110 2201 2332 ... which is composed of the following color samples: r=2 g=1 b=1 r=0 g=2 b=2 r=0 g=1 b=2 r=3 g=3 b=2 ... C-12 Color Extensions for the PostScript Language EXAMPLE 2: /rstr 256 string def % string to hold 256 8-bit red samples /gstr 256 string def % string to hold 256 8-bit green samples % (distinct from rstr) /bstr 256 string def % string to hold 256 8-bit blue samples % (distinct from rstr and bstr) 45 140 translate % locate lower left corner of image 132 132 scale % map image to 132 point square 256 256 8 % dimensions of source image [256 0 0 -256 0 256] % map unit square to source {currentfile rstr readhexstring pop} % read red data from program file {currentfile gstr readhexstring pop} % read green data from program file {currentfile bstr readhexstring pop} % read blue data from program file true 3 % multiple proc, 3 colors colorimage 7b5e606969615365556a6a66 ... (512 hex digits of red data) 88868d848a92878578787a82 ... (512 hex digits of green data) 62717c7b736e707d7b6a7c79 ... (512 hex digits of blue data) 7dd8b8d8c837d8b8e9284878e ... (512 hex digits of red data) 2788b838b8e8e86868988908 ... (512 hex digits of green data) 81817d857f85858290949487 ... (512 hex digits of blue data) ... (390144 more hex digits of RGB data, cycling as above) The above is a three-procedure 8-bit RGB image. The initial samples for each color, in hex, are: red: 7b 5e 60 69 ... green: 88 86 8d 84 ... blue: 62 71 7c 7b ... Color Extensions for the PostScript Language C-13 EXAMPLE 3: /cstr 128 string def % string to hold 256 4-bit cyan samples /mstr 128 string def % string to hold 256 4-bit magenta samples % (distinct from cstr) /ystr 128 string def % string to hold 256 4-bit yellow samples % (distinct from cstr and mstr) /kstr 128 string def % string to hold 256 4-bit black samples % (distinct from cstr, mstr, and ystr) 45 140 translate % locate lower left corner of image 132 132 scale % map image to 132 point square 256 256 4 % dimensions of source image [256 0 0 -256 0 256] % map unit square to source {currentfile cstr readhexstring pop} % read cyan data from program file {currentfile mstr readhexstring pop} % read magenta data from program file {currentfile ystr readhexstring pop} % read yellow data from program file {currentfile kstr readhexstring pop} % read black data from program file true 4 % multiple proc, 4 colors colorimage e1d8caa57b655b6779606b72 ... (256 hex digits of cyan data) 6bdbb867b9fb6a4859569989 ... (256 hex digits of magenta data) 996796e639cc0b29f94736c7 ... (256 hex digits of yellow data) c9c0cad0d3cad2b7c9e2d7d8 ... (256 hex digits of black data) 5d2d6d7d4d3d1d4d6c9d4d9d ... (256 hex digits of cyan data) 4cdcfd4d6d1d8d7d5d4d2d2d ... (256 hex digits of magenta data) d2b7c9e2d7d8d8cbbac2d9d8 ... (256 hex digits of yellow data) 88ae96632a70f6f4d8d9d9d8 ... (256 hex digits of black data) ... (260096 more hex digits of CMYK data, cycling as above) The above is a four-procedure four-bit CMYK image. The initial sample for each color, in hex, are cyan: e 1 d 8 c a a 5 ... C-14 Color Extensions for the PostScript Language magenta:6 b d b b 8 6 7 ... yellow: 9 9 6 7 9 6 e 6 ... black: c 9 c 0 c a d 0 ... EXAMPLE 4: /cstr 1024 string def % string to hold 1024 8-bit cyan samples /mstr 1024 string def % string to hold 1024 8-bit magenta samples % (distinct from cstr) /ystr 1024 string def % string to hold 1024 8-bit yellow samples % (distinct from cstr and mstr) /kstr 1024 string def % string to hold 1024 8-bit black samples % (distinct from cstr, mstr, and ystr) /cfile (img/smp.c) (r) file def % binary file containing 1048576 8-bit % cyan samples /mfile (img/smp.m) (r) file def % binary file containing 1048576 8-bit % magenta samples /yfile (img/smp.y) (r) file def % binary file containing 1048576 8-bit % yellow samples /kfile (img/smp.k) (r) file def % binary file containing 1048576 8-bit % black samples 36 126 translate % locate lower left corner of image 540 540 scale % map image to 540 point square 1024 1024 8 % dimensions of source image [1024 0 0 -1024 0 1024] % map unit square to source {cfile cstr readstring pop} % read cyan data from imp/smp.c {mfile mstr readstring pop} % read magenta data from imp/smp.m {yfile ystr readstring pop} % read yellow data from imp/smp.y {kfile kstr readstring pop} % read black data from imp/smp.k true 4 % multiple proc, 4 colors colorimage Color Extensions for the PostScript Language C-15 The above is a four-procedure 8-bit CMYK image, with cyan, magenta, yellow, and black samples taken from the files img/smp.c, img/smp.m, img/smp.y, and img/smp.k, respectively. This example only applies to a POSTSCRIPT interpreter that has a file system. __________________________________________________________ C.4.5 Color Implementations Each POSTSCRIPT interpreter contains default color output methods that correspond to the printer to which it is attached. If the attached printer is a direct-color binary device, the standard output method produces three- or four-color output. If the attached printer is a gray-scale color device, then the POSTSCRIPT interpreter uses a gray-scale three- or four-color output method. If the attached printer is a black-and-white device, then the default output method produces a single black-and-white rendition of each page described. Black-and-white printers also have the capability of producing color separations. These are three or four black-and-white pages for each page described. Each output page corresponds to the output for one color component. These separations are only useful if they are used in another printing process in which they are combined with color to form the intended full-color output. The method by which a POSTSCRIPT language program informs the POSTSCRIPT interpreter that color separations are desired is still to be determined. This color separation capability will not be provided in the backward compatibility packages, as it requires considerable internal changes in the POSTSCRIPT interpreter. C-16 Color Extensions for the PostScript Language __________________________________________________________ C.5 Operators Each color extension operator description shows syntax in the following format: operand(1)...operand(n) operator (result(1)...result(m)) The operands precede and are input to the operator, with operand(n) being the top element on the operand stack. The operator pops these objects from the operand stack and consumes them. After executing, the operator leaves result(1) through result(m) on the operand stack, with result(m) being the top element. A dash in an operand position indicates that the operator expects no operands. Likewise, a dash in a result position indicates that the operator returns no results, as follows: - operator - Color Extensions for the PostScript Language C-17 colorimage ________________________________________________________________ colorimage Renders a sampled image, whose samples contain one, three, or four color components on the current page. Use of the colorimage operator after a setcachedevice within the context of a BuildChar procedure is not permitted (an undefined error results). ________________________________________________________________ FORMAT width height bits/component matrix proc(0) [...proc(ncolors-1)] multiproc ncolors colorimage - width The width of the image, in samples. This argument has the same meaning as in the image operator. height The height of the image, in samples. This argument has the same meaning as in the image operator. bits/component The number of bits per each component of each sample. This value applies equally to all color components, and has the same meaning as in the image operator. matrix Transforms the samples into a unit square. This argument has the same meaning as in the image operator. C-18 Color Extensions for the PostScript Language colorimage proc(0) [... proc(ncolors-1)] Procedures that return strings of samples to be imaged. colorimage permits its proc(i) arguments to return RGB or CMYK sample values rather than the single-color (gray) values as are returned by the proc argument of the image operator. For a detailed description of the data formats and how the proc(i) procedures are called, see Section C.4.4.1.1. Use of setcolorscreen, setcolortransfer, setscreen, or settransfer by any of the proc(i) procedures causes unpredictable results. multiproc A boolean that distinguishes between two forms of the colorimage operator: false indicates the single-procedure form, argument (proc(0)), and true indicates the multiple-procedure form, which requires one procedure argument per sample color (proc(0) ... proc(ncolors-1)), i.e., three procedure arguments for RGB samples or four procedure arguments for CMYK samples. If the ncolors argument is 1, then there is only one procedure argument, proc(0), regardless of the value of the multiproc argument. ncolors The number of color components represented in the samples, either 1, 3, or 4. If ncolors is 1, the samples have only one component, a gray component, and the operation of colorimage is equivalent to that of image with the same five initial arguments. If the ncolors argument is 3, the colorimage operator takes RGB (light-high) samples. If the ncolors argument is 4, the colorimage operator takes CMYK (dark-high) samples. On a four-color (CMYK) machine, the POSTSCRIPT interpreter converts a three-color (RGB) image to CMYK using the black generation and undercolor removal functions, whereas a four-color (CMYK) image bypasses these operations. Color Extensions for the PostScript Language C-19 colorimage __________________________________________________________ Errors limitcheck A POSTSCRIPT implementation limit has been exceeded. rangecheck An operand value is not in the allowed range of values. stackunderflow The operand stack is empty when the operator expects a value. typecheck An operand value is not the type that the operator expects. undefined Attempted to use the colorimage operator after a setcachedevice in the context of a BuildChar procedure. undefinedresult A numeric computation produced a meaningless result. C-20 Color Extensions for the PostScript Language currentblackgeneration ________________________________________________________________ currentblackgeneration Returns the current black generation function in the graphics state (see setblackgeneration). ________________________________________________________________ FORMAT - currentblackgeneration proc proc The current black generation function. __________________________________________________________ Error stackoverflow The operand stack is full, preventing the operator from adding the returned values to the stack. Color Extensions for the PostScript Language C-21 currentcmykcolor ________________________________________________________________ currentcmykcolor Returns the four components of the current color in the graphics state according to the cyan-magenta-yellow-black color specification (see setcmykcolor). The currentgray operator returns a weighted average of all four color components. Applying it is the equivalent of the following use of currentcmykcolor: 1.0 currentcmykcolor 4 1 roll 0.11 mul 3 1 roll 0.59 mul exch 0.30 mul add add add sub dup 0.0 lt {pop 0.0} if ________________________________________________________________ FORMAT - currentcmykcolor cyan magenta yellow black cyan The cyan component of the current color. magenta The magenta component of the current color. yellow The yellow component of the current color. black The black component of the current color. __________________________________________________________ Error stackoverflow The operand stack is full, preventing the operator from adding the returned values to the stack. C-22 Color Extensions for the PostScript Language currentcolorscreen ________________________________________________________________ currentcolorscreen Returns all 12 current halftone screen parameters in the graphics state (see setcolorscreen). The currentcolorscreen operator is the logical expansion of currentscreen to four color components. Applying the currentscreen operator returns the three paramters describing the gray/black screen. It is the equivalent of the following use of currentcolorscreen: currentcolorscreen 12 3 roll 9 {pop} repeat ________________________________________________________________ FORMAT - currentcolorscreen r/c-freq r/c-angle r/c-proc g/m-freq g/m-angle g/m-proc b/y-freq b/y-angle b/y-proc g/b-freq g/b-angle g/b-proc r/c-freq r/c-angle r/c-proc The frequency, angle, and procedure for the red/cyan screen. g/m-freq g/m-angle g/m-proc The frequency, angle, and procedure for the green/magenta screen. b/y-freq b/y-angle b/y-proc The frequency, angle, and procedure for the blue/yellow screen. g/b-freq g/b-angle g/b-proc The frequency, angle, and procedure for the gray/black screen. Color Extensions for the PostScript Language C-23 currentcolorscreen __________________________________________________________ Error stackoverflow The operand stack is full, preventing the operator from adding the returned values to the stack. C-24 Color Extensions for the PostScript Language currentcolortransfer ________________________________________________________________ currentcolortransfer Returns the current transfer functions in the graphics state for each of the four color components (see setcolortransfer). The currentcolortransfer operator is the logical expansion of currenttransfer to four color components. Applying the currenttransfer operator returns the gray transfer function. It is the equivalent of the following use of currentcolortransfer: currentcolortransfer 4 1 roll pop pop pop ________________________________________________________________ FORMAT - currentcolortransfer redproc greenproc blueproc grayproc redproc The transfer function for the red component. greenproc The transfer function for the green component. blueproc The transfer function for the blue component. grayproc The transfer function for the gray component. __________________________________________________________ Error stackoverflow The operand stack is full, preventing the operator from adding the returned values to the stack. Color Extensions for the PostScript Language C-25 currentundercolorremoval ________________________________________________________________ currentundercolorremoval Returns the current undercolor removal function in the graphics state (see setundercolorremoval). ________________________________________________________________ FORMAT - currentundercolorremoval proc proc The current undercolor removal function. __________________________________________________________ Error stackoverflow The operand stack is full, preventing the operator from adding the returned values to the stack. C-26 Color Extensions for the PostScript Language setblackgeneration ________________________________________________________________ setblackgeneration Sets the current black generation function parameter in the graphics state. The use of setblackgeneration after a setcachedevice operation within the scope of a BuildChar procedure is not permitted (an undefined error results). ________________________________________________________________ FORMAT proc setblackgeneration - proc A POSTSCRIPT language procedure that can be called with a number in the range 0.0 to 1.0 (inclusive) on the operand stack and which returns a number in the same range. This procedure maps the minimum of the user cyan, magenta, and yellow color components to user black values. For additional information, see Section C.4. __________________________________________________________ Example This sets the black component to zero when the minimum of cyan, magenta, and yellow is less than or equal to 0.75, while minima greater than 0.75 produce a black component that increases linearly from 0.0 (at a minimum of 0.75) to 1.0 (when user cyan, magenta, and yellow all have values of 1.0). {dup 0.75 le {pop 0.0}{0.75 sub 4.0 mul} ifelse} setblackgeneration Color Extensions for the PostScript Language C-27 setblackgeneration __________________________________________________________ Errors stackunderflow The operand stack is empty when the operator expects a value. typecheck An operand value is not the type that the operator expects. C-28 Color Extensions for the PostScript Language setcmykcolor ________________________________________________________________ setcmykcolor Sets the current color parameter in the graphics state to a color described in the cyan-magenta-yellow-black color specification. The use of setcmykcolor after a setcachedevice operation within the scope of a BuildChar procedure is not permitted (an undefined error results). ________________________________________________________________ FORMAT cyan magenta yellow black setcmykcolor - cyan The value of the cyan color component. Must be in the range 0.0 to 1.0. magenta The value of the magenta color component. Must be in the range 0.0 to 1.0. yellow The value of the yellow color component. Must be in the range 0.0 to 1.0. black The value of the black color component. Must be in the range 0.0 to 1.0. Color Extensions for the PostScript Language C-29 setcmykcolor __________________________________________________________ Description setcmykcolor establishes the color used subsequently to paint shapes such as lines, areas, and characters on the current page. This operator bypasses the black generation and undercolor removal operations. For additional information, see Section C.4. Note that applying the setgray operator sets the gray color component to its single argument and the red, green, and blue color components to 1.0. It is the equivalent of the following use of setcmykcolor: 0.0 0.0 0.0 1.0 5 -1 roll sub setcmykcolor __________________________________________________________ Errors rangecheck An operand value is not in the allowed range of values. stackunderflow The operand stack is empty when the operator expects a value. typecheck An operand value is not the type that the operator expects. C-30 Color Extensions for the PostScript Language setcolorscreen ________________________________________________________________ setcolorscreen Sets the current halftone screen definitions for red/cyan (r/c), green/magenta (g/m), blue/yellow (b/y), and gray/black (g/b) output color components in the graphics state. ________________________________________________________________ FORMAT r/c-freq r/c-angle r/c-proc g/m-freq g/m-angle g/m-proc b/y-freq b/y-angle b/y-proc g/b-freq g/b-angle g/b-proc setcolorscreen - r/c-freq r/c-angle r/c-proc The frequency, angle, and procedure for the red/cyan screen. g/m-freq g/m-angle g/m-proc The frequency, angle, and procedure for the green/magenta screen. b/y-freq b/y-angle b/y-proc The frequency, angle, and procedure for the blue/yellow screen. g/b-freq g/b-angle g/b-proc The frequency, angle, and procedure for the gray/black screen. Color Extensions for the PostScript Language C-31 setcolorscreen __________________________________________________________ Description Each of the r/c-freq, g/m-freq, b/y-freq, and g/b-freq operands is a number that specifies the screen frequency for one output color component, measured in halftone cells per inch in device space. The r/c-angle, g/m-angle, b/y-angle, and g/b-angle operands specify the number of degrees by which their respective halftone screens are rotated with respect to the device coordinate system. The r/c-proc, g/m-proc, b/y-proc, and g/b-proc operands are each a POSTSCRIPT language procedure (as for setscreen). They define one color component's spot function to determine the order in which pixels within a halftone cell of that color component are assigned a light value to produce any desired shade of that color component. As with setscreen, the pixels with the highest values returned by this function become dark soonest at the lightest shades of that color, and the pixels with the lowest values become dark latest at the darkest shades of that color. The red/cyan, green/magenta, and blue/yellow screens have no effect on a black-and-white device, the gray/black screen has no effect on an RGB or CMY device, and no screens have any effect on a full (8-bits-per-pixel) gray-scale device. Many binary color printers (those that print each dot at full intensity or not at all) require different angles for each color-component halftone to have attractive output. Each color printer containing a POSTSCRIPT interpreter has a default color screen chosen to look good on that printer. The setcolorscreen operator is the logical expansion of setscreen to the four color components. It takes the same three types of arguments as setscreen, but repeated four times. Applying the setscreen operator sets all four screens equally. It is the equivalent of the following use of setcolorscreen: 3 copy 6 copy setcolorscreen C-32 Color Extensions for the PostScript Language setcolorscreen __________________________________________________________ Example This sets the halftone screen definitions for red/cyan (r/c), green/magenta (g/m), blue/yellow (b/y), and gray/black (g/b) output color components for standard color printing. % 50 line dot screen with 75 degree cyan, % 15 degree magenta, % 0 degree yellow, % and 45 degree black angled screens, % which are standard for color printing /sfreq 50 def % 50 halftone cells per inch /sproc { dup mul exch dup mul add 1 exch sub} def % dot-screen spot function sfreq 75 /sproc load % 75 degree red (cyan) screen sfreq 15 /sproc load % 15 degree green (magenta) screen sfreq 0 /sproc load % 0 degree blue (yellow) screen sfreq 45 /sproc load % 45 degree gray (black) screen setcolorscreen __________________________________________________________ Errors limitcheck A POSTSCRIPT implementation limit has been exceeded. rangecheck An operand value is not in the allowed range of values. stackunderflow The operand stack is empty when the operator expects a value. typecheck An operand value is not the type that the operator expects. Color Extensions for the PostScript Language C-33 setcolortransfer ________________________________________________________________ setcolortransfer Sets the current transfer function parameters for red, green, blue, and gray in the graphics state. ________________________________________________________________ FORMAT redproc greenproc blueproc grayproc setcolortransfer - redproc The transfer function for the red component. greenproc The transfer function for the green component. blueproc The transfer function for the blue component. grayproc The transfer function for the gray component. __________________________________________________________ Description Each operand must be a POSTSCRIPT language procedure that may be called with a number in the range 0.0 to 1.0 (inclusive) on the operand stack and which will return a number in the same range. These procedures map user values of the color components (e.g., those specified by setrgbcolor and adjusted by setblackgeneration and setundercolorremoval, or 1.0 minus those specified by setcmykcolor) to device color components (for halftones, a weighted average of the lightness of pixels in the halftone cell). Only those transfer functions corresponding to color components supported by a device will have an effect on that device's output. For example, redproc, greenproc, and blueproc will have no effect on a C-34 Color Extensions for the PostScript Language setcolortransfer black-and-white device, while grayproc will have no effect on an RGB device. The single-color settransfer operator takes a single procedure argument whose purpose is to provide gamma correction for a printer's halftoning response. That operator is useful for a variety of effects beyond its original intention as a gray response correction function, but it is useful only in the context of a single output color, as on black-and-white printers. The setcolortransfer operator is the logical expansion of settransfer to four color components; it takes four function arguments, each similar in purpose to the function argument of settransfer, but each function separately controls the response for each of the red (1.0 minus cyan), green (1.0 minus magenta), blue (1.0 minus yellow), and gray (1.0 minus black) components, respectively. Applying the settransfer operator sets all four transfer functions equally. It is the equivalent of the following use of setcolortransfer: dup dup dup setcolortransfer The use of setcolortransfer after a setcachedevice operation within the scope of a BuildChar procedure is not permitted (an undefined error results). __________________________________________________________ Example This sets device blue as the square of user blue and leaves the other color components unchanged. {} {} {dup mul} {} setcolortransfer Color Extensions for the PostScript Language C-35 setcolortransfer __________________________________________________________ Errors stackunderflow The operand stack is empty when the operator expects a value. typecheck An operand value is not the type that the operator expects. C-36 Color Extensions for the PostScript Language setundercolorremoval ________________________________________________________________ setundercolorremoval Sets the current undercolor removal function parameter in the graphics state. The use of setundercolorremoval after a setcachedevice operation within the scope of a BuildChar procedure is not permitted (an undefined error results). ________________________________________________________________ FORMAT proc setundercolorremoval - proc A POSTSCRIPT language procedure that may be called with a number in the range 0.0 to 1.0 (inclusive) on the operand stack and which will return a number in the range -1.0 (to increase the color components) to +1.0 (to decrease the color components). This procedure maps the minimum of the user cyan, magenta, and yellow components to a value to be subtracted from each of these same components. For additional information, see Section C.4. __________________________________________________________ Example This sets the undercolor removal to be half of the black component from black generation. {currentblackgeneration exec 0.5 mul} setundercolorremoval Color Extensions for the PostScript Language C-37 setundercolorremoval __________________________________________________________ Errors stackunderflow The operand stack is empty when the operator expects a value. typecheck An operand value is not the type that the operator expects. C-38 Color Extensions for the PostScript Language Appendix D Troubleshooting Procedures ________________________________________________________________ The following troubleshooting procedures are provided to diagnose error conditions encountered when using the DECprint Utility software. __________________________________________________________ D.1 Your DECprint Utility Job Does Not Print If your DECprint Utility job completes successfully and does not print, check to ensure that the POSTSCRIPT file contains a showpage command. Some applications that generate figures for inclusion into other documents do not include a showpage command at the end of the POSTSCRIPT code. __________________________________________________________ D.2 Your Job Reports UNDEF Error Messages If your DECprint Utility job reports an UNDEF error, your file may not contain the right data type, may contain nonstandard undefined operators, or may contain control characters. The following sections describe what you can do to print your file successfully. Troubleshooting Procedures D-1 __________________________________________________________ D.2.1 Unsupported File Extensions If you receive the following error message, check to see if the file you submitted with the DECprint Utility command is a POSTSCRIPT file. %PSPRINT-W-UNDEF, undefined: Name not known - offending command is string __________________________________________________________ D.2.2 Unsupported PostScript Operators The DECprint Utility does not define device-specific POSTSCRIPT operators that it does not use. If your file contains a nonstandard operator, setjobtimeout, for example, then your job does not print and you receive the following messages: %PSPRINT-W-UNDEF, undefined: Name not known - offending command is setjobtimeout %PSPRINT-E-FLUSING, rest of job will be ignored To print your file containing the undefined operator, do the following: 1.Create a file (fix.PS) containing this line: /setjobtimeout {pop} def 2.Name this file on the DECprint Utility command line before your file: $PSPRINT/QUEUE=queue-name fix.PS,myfile.ps Other nonstandard operators that are not defined by the DECprint Utility can cause the same problem. Follow the same procedure, substituting the name of the operator named in the UNDEF error message in place of the setjobtimeout operator. D-2 Troubleshooting Procedures __________________________________________________________ D.2.3 Problems With Files Containing CTRL/D If processing a file with the DECprint Utility results in an UNDEF error message reporting that the offending command is a standard operator, such as showpage, or is left blank, then your file may contain a control character. When receiving this type of error message, convert your file with /MESSAGES=FILE and look at the .LOG file, which captures control characters. is the most likely control character you may encounter. To successfully print files containing with the DECprint Utility, do one of the following: o Edit the file (or change the application) and remove the control character. o Create a POSTSCRIPT file (fix2.PS) containing the line: (/004) cvn cvlit {} def Name this file on the DECprint Utility command line before your file: $ PSPRINT/QUEUE=queue-name fix2.PS,myfile.PS The DECprint Utility software then ignores in your file. __________________________________________________________ D.3 Troubleshooting Color Printing Problems The following sections describe problems you may encounter when printing a file that has color information. Troubleshooting Procedures D-3 __________________________________________________________ D.3.1 Your Color Output is Black If the DECprint Utility prints your color file in black-and-white, check to see that your file requests color conversion. The file may actually request black and white. For more information, check the documentation for your color application. __________________________________________________________ D.3.2 Thin Lines Don't Print Depending on the color selection, very thin lines appear not to print. You can either choose a darker color or increase the width of the line. __________________________________________________________ D.3.3 Incorrect Colors The color of your file printed on the LJ250 printer is dramatically wrong, such as, green looks like light blue. This may be your first warning that one color of ink is out or simply that a nozzle is clogged. For information on how to unclog the nozzle or replace an ink cartridge, refer to the documentation for your printer. Colors appear faint when the LA324 MultiPrinter color ribbon requires replacement. See the printer documentation for information on how to replace the ribbon. To check for true colors, you can print the IVP: o DECprint Utility prints with red letters o Successfully prints in green o Installed prints in blue Section 2.5 explains how to run the IVP after installation. D-4 Troubleshooting Procedures __________________________________________________________ D.4 Your Setup Modules Do Not Work DECprint Utility software does not support /FORM and /SETUP. If your POSTSCRIPT file requires setup modules to work properly, you can do either of the following: o Rewrite your files to be independent of setup modules, which increases their portability. o Extract the required modules into a file and include the name of the file on the command line. $ PSPRINT/QUEUE=queue-name setupfile.PS,myfile.PS __________________________________________________________ D.5 /PARAMETERS=(NUMBER_UP=2) Does Not Work The DECprint Utility does not support the /PARAMETERS qualifier. Instead, use the DECprint Utility /LAYUP qualifier for printing multilple pages on a sheet of paper. For information on the /LAYUP qualifier, see Section 4.3.2. __________________________________________________________ D.6 Unexpected Page Orientation If you submitted your /LAYUP job to the DECprint Utility with /ORIENTATION=landscape and your pages print in portrait mode, then the file is a portrait file. Resubmit the job with /LAYUP=n/ORIENTATION=portrait. Conversely, if you request a portrait orientation and your pages print in landscape mode, submit your job again with /ORIENTATION=landscape. DECprint Utility software supports the use of the /ORIENTATION qualifier only with the /LAYUP qualifier to determine the order in which the page spots print. This order differs according to the option you select, LANDSCAPE or PORTRAIT. Troubleshooting Procedures D-5 Page orientation for the POSTSCRIPT file that you want to print using /LAYUP on your sixel printer is already determined. Use the /ORIENTATION qualifier to declare this orientation. See Sections 4.3.2 and 4.3.5 for more information. __________________________________________________________ D.7 DECprint Utility Jobs Occupy Your Terminal for Too Long To keep your terminal free while using the DECprint Utility, you can do one of the following: o Submit your DECprint Utility job to a batch queue using the command file Batch-PSPRINT.com provided in SYS$COMMON:[SYSHLP.EXAMPLES.PSPRINT]. For more information, see Section 4.6. o Run dual sessions on your VT330/VT340 terminal. See the documentation for your video terminal for information. __________________________________________________________ D.8 Faint Diagonal Lines With a Write-White Engine Printed output of diagonal lines one pixel wide from a write-white engine, such as the LN03 printer, is faint. The only solution is to increase the width of the line. __________________________________________________________ D.9 The Position of the Image is Wrong If the image is not in the right place on the sheet of paper, check to make sure that the paper is properly aligned in the printer. To get the proper top of form, refer to the documentation for your printer. D-6 Troubleshooting Procedures Glossary ________________________________________________________________ activity license An LMF license type that defines the number of concurrent uses allowed for a product at any one time. An activity can be defined as an interactive user, a running process, or a job. For example, when you register four activity licenses for the DECprint Utility software, LMF authorizes four users to access the DECprint Utility software at the same time. A media size The United States media size of 8.5 x 11.0 in. (or 216 x 279 mm). Also known as letter size. A4 media size The European media size of 210 x 297 mm (or 8.26 x 11.69 in.) baud rate The speed (bits/second) at which the computer and the printer communicate. bitmap A digitized image that can be stored, transmitted, and reproduced. block The smallest logically-addressable unit of data that a specified device can transfer in an I/O operation (512 contiguous bytes for most disk devices). Glossary-1 document In the context of a DECprint Utility command, a document is an entity that signals the resetting of the POSTSCRIPT interpreter. In the command line, plus signs concatenate files into documents and commas separate documents. dot In the context of the sixel protocol, the smallest displayable unit - an ink dot on paper. Dots can be round, oval, square, rectangular, and small or large. driver The set of code in the operating system that handles the physical I/O to a device. execution queue The queue with which the symbiont is associated. font The representation of a typeface that describes some set of characters rendered in a particular point size, weight, and style. global qualifier A qualifier that applies to all files in a job. host A network node that performs services and enables start up and management of peripheral devices, such as printers. image area The printable part of a page. On most printers, you cannot print to the physical edge of the page. interpreter A program in the printer or on the host that converts data for a particular imaging data syntax into a bitmap. landscape printing A method of printing characters parallel to the long edge of the paper. name A descriptive identifier (ASCII string) that is associated with a subject or object in the system. 2-Glossary network A group of computers that are connected to each other by communication lines to share information and resources. node A network-addressable component having a unique address. number_up The term for printing multiple logical pages on one physical sheet of paper. For example, printing 4-up means that you are printing four pages on a single sheet. page In the context of a printer, a page is the image you are printing; you usually print one page per sheet. persistent parameters System parameters that remain unchanged across POSTSCRIPT jobs. Therefore, these parameters persist after the host-based POSTSCRIPT interpreter is reset. pixel In the context of the sixel protocol, the logical rectangular image area (smallest piece of an image) defined by each bit of sixel data, as intended by the creator software. An aspect ratio defines the size of a pixel. The printer prints pixels as dots. pixel aspect ratio Shape of the pixel represented as a ratio of the vertical side to the horizontal side. portrait printing A method of printing characters parallel to the short edge of the paper. This is normal page orientation for printing. For example, this page is printed in a portrait orientation. positional qualifier A print qualifier that affects the command differently depending on its position in the command line. POSTSCRIPT interpreter A stored program that converts POSTSCRIPT commands into page images. Glossary-3 POSTSCRIPT language A programming language designed to convey a description of virtually any desired page to the printer. It can describe a page containing any combination of text, graphical shapes, and digitized images. print symbiont In the context of the DECprint Utility, the software that transfers the queued DECprint Utility jobs to the sixel printer. printer controller mode Terminal control sequences direct output written to the terminal to the printer port (attached printer) rather than to the terminal screen. privilege The level of system access allowed to a user. protocol The conventions or rules for the format and timing of messages sent and received. resolution The number of dots in a defined area. resource An identifiable entity, physical or conceptual, that can perform a service and can be named and accessed on a network. The sharable entity can be either hardware or software. sheet A sheet is the piece of paper that is printed. sixel A group of six vertical pixels represented by 6 bits in a character code of 7 or 8 bits. system parameters Values maintained within the POSTSCRIPT interpreter and used by the interpreter to control various system-specific features. See also persistent parameters and volatile parameters. timeout The expiration of the time limit in which a device is to complete an I/O transfer. 4-Glossary translator A stored program that changes the user's data syntax into a form that can be used by the printer. user The person who initiates requests for service. These requests are handled by the host, which forwards them to the appropriate service. volatile parameters System parameters that stay in effect for one POSTSCRIPT print job. At the end of the DECprint Utility job, volatile parameters revert to their default values. Glossary-5 Index __________________________________________________________ ___________________________ A Color extensions (Cont.) ___________________________ setcmykcolor operator, /AFTER qualifier, 4-14 C-29 Attached printers, 4-4, 4-7 setcolorscreen operator, effect of control C-31 character during setcolortransfer operator printing, 4-5 , C-34 /ATTACHED qualifier, 4-8 setundercolorremoval ___________________________ B operator, C-37 ___________________________ colorimage operator, C-9, Black generation, C-5 C-18 ___________________________ examples for, C-12 C Color images, C-9 ___________________________ Color screens, C-9 CMYK color, C-8 Color transfer functions, Color extensions C-9 colorimage operator, C-18 Command syntax, 4-2 currentblackgeneration componentids extension, operator, C-21 B-5, B-6 currentcmykcolor operator Control characters , C-22 effect with attached currentcolorscreen printers, 4-5 operator, C-23 currentblackgeneration currentcolortransfer operator, C-21 operator, C-25 currentcmykcolor operator, currentundercolorremoval C-22 operator, C-26 currentcolorscreen operator format, C-17 , C-23 setblackgeneration currentcolortransfer operator, C-27 operator, C-25 Index-1 currentundercolorremoval Installation Verification operator, C-26 Procedure (IVP) (Cont.) CYMK color, C-4 output, 2-12 ___________________________ ___________________________ D J ___________________________ ___________________________ DECprint Utility jobname operator, B-4, B-7 system messages, 5-1 ___________________________ DECprint Utility command L line, 4-2 ___________________________ attached printers, 4-4 LA210 Letterprinter, 1-3, queued printers, 4-3 3-3 /DELETE qualifier, 4-17 LA324 MultiPrinter, 1-3, Device control library, 3-3 A-4, A-5 LA75 Companion printer, /DEVICE qualifier, 4-17 1-3, 3-3 Device support, 4-6 /LAYUP qualifier, 4-9 ___________________________ LJ250 Companion Color F printer, 1-3, 3-3 ___________________________ using transparencies /FORM qualifier, 4-16 ___________________________ with, 4-22 H LN03 Image software ___________________________ installation order with Hardware requirements, 1-3 DECprint Utility, 1-5 ___________________________ LN03 PLUS Desktop Laser I printer, 1-3, 3-3 ___________________________ Logical name Installation for queued printing, 3-1, hardware requirements, 1-3 4-6 order with LN03 Image ___________________________ software, 1-5 M procedure messages, 5-1 ___________________________ required disk space, 1-5 /MEDIUM qualifier, 4-10 sample session, 2-10 Messages software requirements, descriptions, 5-2 to 1-4 5-14 time required, 1-5 format, 5-1 Installation procedure severity level, 5-2 questions, 2-3 to 2-9 /MESSAGES qualifier, 4-11 Installation Verification Procedure (IVP) 2-Index ___________________________ O Print qualifiers (Cont.) ___________________________ effective at queue time, /ORIENTATION qualifier, 4-3 4-13 not supported by DECprint ___________________________ Utility command, 4-15 P specific to DECprint ___________________________ pagecount operator, B-4, Utility command, 4-7 B-7 Print queues, creating, A-1 pagesize operator, B-4 /PROCESSOR qualifer, A-6 /PARAMETERS qualifier, 4-15 product operator, B-5, B-6 Persistent parameters, B-4 PSPRINT$queue_DEVICE_TYPE, Postinstallation 3-1, 4-6 requirements, 3-1 PSPRINT$STARTUP for queued printing, 3-1 editing of, A-2 to A-4 for VAXcluster systems, queue setup topics, A-5 3-4 to A-7 POSTSCRIPT extensions, B-1 renaming, A-2 to B-7 ___________________________ componentids, B-6 Q portability, B-1 ___________________________ sheetcount, B-7 Qualifiers POSTSCRIPT operators different from PRINT begin, B-4 command, 4-14 end, B-4 effective at queue time, jobname, B-7 4-3 pagecount, B-7 not supported by DECprint pagesize, B-4 Utility command, 4-15 product, B-6 specific to DECprint revision, B-7 Utility command, 4-7 version, B-7 Queued printing, 4-6 where, B-2 Queues, creating, A-1 Printed output ___________________________ IVP, 2-12 R Printer startup file ___________________________ setting up print queues, Release Notes, 2-2 A-2 revision operator, B-5, B-7 Printer support, 1-3 ___________________________ Print qualifiers S different from PRINT ___________________________ command, 4-14 Separation pages, A-6 setblackgeneration operator , C-27 Index-3 ___________________________ setcmykcolor operator, C-29 V setcolorscreen operator, ___________________________ C-31 version operator, B-7 setcolortransfer operator, VMSINSTAL procedure C-34 conventions, 2-1 setundercolorremoval installation questions, operator, C-37 2-3 to 2-9 Setup modules release notes, 2-2 with DECprint Utility Volatile parameters, B-4 jobs, 4-16 /SETUP qualifier, 4-16 sheetcount operator, B-4, B-7 Software requirements, 1-4 statusdict, B-3 Supported devices device type keywords for, 3-3 resolution of, 3-3 System messages, 5-1 to 5-14 System parameters, B-4 System startup file, A-5 ___________________________ T ___________________________ Terminal device type, A-6 Terminals supported by DECprint Utility software, 1-3 Tranparency mode LJ250 printer, 4-22 Troubleshooting procedures, D-1 to D-6 ___________________________ U ___________________________ UNDEF error message, B-1 Undefined name statusdict, B-3 using where operator, B-2 Undercolor removal, C-5 4-Index