*PPD-Adobe: "4.0"
*% Adobe Systems PostScript(R) Printer Description File
*% Copyright 1987-1992 Adobe Systems Incorporated. 
*% All Rights Reserved. 
*% Permission is granted for redistribution of this file as
*% long as this copyright notice is intact and the contents
*% of the file is not altered in any way from its original form.
*% End of Copyright statement
*FormatVersion: "4.0"
*FileVersion: "2.1"
*PCFileName: "NCCPS401.PPD"
*LanguageVersion: English
*Product: "(Colormate PS40)"
*PSVersion: "(51.9) 2.1"
*ModelName: "NEC Colormate PS/40"
*NickName: "NEC Colormate PS/40 v51.9"

*% General Information and Defaults ===============
*FreeVM: "263890"
*LanguageLevel: "1"
*Extensions: CMYK FileSystem
*ColorDevice: True
*DefaultColorSpace: CMYK
*VariablePaperSize: False
*FileSystem: True
*?FileSystem: "
save
  statusdict /diskstatus known
  {statusdict /diskstatus get exec exch pop 0 ne
   {(True)} {(False)} ifelse
  }
  {(Unknown)} ifelse
  = flush
restore
"
*End
*Throughput: "1"
*Password: "0"
*ExitServer: "
  count 0 eq {  % is the password on the stack?
    true 
  }{
    dup	% potential password
    statusdict /checkpassword get exec not
  } ifelse 
  {  %  if no password or not valid 
    (WARNING : Cannot perform the exitserver command.) = 
    (Password supplied is not valid.) = 
    (Please contact the author of this software.) = flush
    quit 
  } if 
  serverdict /exitserver get exec
"
*End

*Reset: "
  count 0 eq {  % is the password on the stack?
    true 
  }{
    dup	% potential password
    statusdict /checkpassword get exec not 
  } ifelse 
  {  %  if no password or not valid 
    (WARNING : Cannot reset printer.) = 
    (Password supplied is not valid.) = 
    (Please contact the author of this software.) = flush
    quit 
  } if 
  serverdict /exitserver get exec
  systemdict /quit get exec
  (WARNING : Printer Reset Failed.) = flush
"
*End

*DefaultResolution: 300dpi 
*?Resolution: "
save
  initgraphics
  0 0 moveto currentpoint matrix defaultmatrix transform
  0 72 lineto currentpoint matrix defaultmatrix transform
  3 -1 roll sub dup mul
  3 1 roll exch sub dup mul
  add sqrt round cvi
  (          ) cvs print (dpi) = flush
restore
"
*End

*% Halftone Information ===============
*ScreenFreq: "53.0"
*ScreenAngle: "45.0"
*DefaultScreenProc: Dot
*ScreenProc Dot: "
{1.76 1.4 {2 {3 1 roll add dup 1.0 gt {2.0 sub }if }repeat abs exch abs 
2 copy add 1 gt {1 sub dup mul exch 1 sub dup mul add 1 sub }{dup mul 
exch dup mul add 1 exch sub }ifelse }exec }
"
*End
*ScreenProc Line: "{ pop }"
*ScreenProc Ellipse: "{ dup 5 mul 8 div mul exch dup mul exch add sqrt 1 exch sub }"


*% Paper Handling ===================
*% Use these entries to set paper size most of the time, unless there is
*% specific reason to use PageRegion.
*OpenUI *PageSize: PickOne
*OrderDependency: 30 AnySetup *PageSize
*DefaultPageSize: Letter
*PageSize Letter: "letter"
*PageSize A4: "a4"
*?PageSize: "
save 
2 dict 
  dup /letter (Letter) put
  dup /a4 (A4) put
  statusdict /papersize get exec
  3 1 roll  {get} stopped {(Unknown)}if
  exch  not { print (.Transverse) }if
  = flush
restore 
"
*End
*CloseUI: *PageSize

*% These entries will set up the frame buffer. Usually used with manual feed.
*OpenUI *PageRegion: PickOne
*OrderDependency: 40 AnySetup *PageRegion
*DefaultPageRegion: Letter
*PageRegion Letter: "letter"
*PageRegion A4: "a4"
*CloseUI: *PageRegion

*% The following entries provide information about specific paper keywords.
*DefaultImageableArea: Letter
*ImageableArea Letter: "15 72 597 718 "
*ImageableArea A4: "6 96 589 768 "
*?ImageableArea: "
save
  /cvp { (                ) cvs print ( ) print } bind def
  /upperright {10000 mul floor 10000 div} bind def
  /lowerleft {10000 mul ceiling 10000 div} bind def
  newpath clippath pathbbox
  4 -2 roll exch 2 {lowerleft cvp} repeat
  exch 2 {upperright cvp} repeat flush
 restore
"
*End

*% These provide the physical dimensions of the paper (by keyword)
*DefaultPaperDimension: Letter
*PaperDimension Letter: "612 792"
*PaperDimension A4: "595 842"

*DefaultOutputBin: Upper
*DefaultOutputOrder: Reverse
*PageStackOrder Upper: Reverse
*RequiresPageRegion All: True

*OpenUI *InputSlot: PickOne
*OrderDependency: 20 AnySetup *InputSlot
*DefaultInputSlot: Cassette
*InputSlot Cassette: ""
*CloseUI: *InputSlot

*% Font Information =====================
*DefaultFont: Courier
*Font Courier: Standard "(001.004)" Standard ROM
*Font Courier-Bold: Standard "(001.004)" Standard ROM
*Font Courier-BoldOblique: Standard "(001.004)" Standard ROM
*Font Courier-Oblique: Standard "(001.004)" Standard ROM
*Font Helvetica: Standard "(001.002)" Standard ROM
*Font Helvetica-Bold: Standard "(001.002)" Standard ROM
*Font Helvetica-BoldOblique: Standard "(001.002)" Standard ROM
*Font Helvetica-Narrow: Standard "(001.002)" Standard ROM
*Font Helvetica-Narrow-Bold: Standard "(001.002)" Standard ROM
*Font Helvetica-Narrow-BoldOblique: Standard "(001.002)" Standard ROM
*Font Helvetica-Narrow-Oblique: Standard "(001.002)" Standard ROM
*Font Helvetica-Oblique: Standard "(001.002)" Standard ROM
*Font Symbol: Special "(001.003)" Special ROM
*Font Times-Bold: Standard "(001.002)" Standard ROM
*Font Times-BoldItalic: Standard "(001.004)" Standard ROM
*Font Times-Italic: Standard "(001.002)" Standard ROM
*Font Times-Roman: Standard "(001.002)" Standard ROM
*?FontQuery: "
save
{
  count 1 gt {
  exch dup 128 string cvs (/) print print (:) print
  dup FontDirectory exch known {pop (Yes)}
  {
    (fonts/                              )
      dup 3 -1 roll 128 string cvs dup length /len exch def
      6 exch putinterval
      0 len 6 add getinterval mark exch
      { } 128 string filenameforall counttomark 0 gt {
      cleartomark (Yes)}{cleartomark (No)}ifelse
      }ifelse =
      }{ exit } ifelse
  } bind loop
  (*) = flush
restore
"
*End

*?FontList: "
save
  FontDirectory { pop == } bind forall flush
  /filenameforall where {
    pop (fonts/*) {
    dup length 6 sub 6 exch getinterval cvn ==
    } bind
    128 string filenameforall flush
  } if
  (*) = flush
restore
"
*End

*% Printer Messages (verbatim from printer):
*Message: "%%[ exitserver: permanent state may be changed ]%%"
*Message: "%%[ Flushing: rest of job (to end-of-file) will be ignored ]%%"
*Message: "\FontName\ not found, using Courier"

*% Status (format: %%[ status: <one of these> ]%% )
*Status: "idle"
*Status: "busy"
*Status: "waiting"
*Status: "printing"
*Status: "warming up"
*Status: "PrinterError: PAPER LENGTH ERR"
*Status: "PrinterError: DMA TIMEOUT"
*Status: "PrinterError:    COVER OPEN"
*Status: "PrinterError:   TEST PRINT"
*Status: "PrinterError:  HEAD SENS ERR"
*Status: "PrinterError:    PAPER JAM"
*Status: "PrinterError:  LC SENS ERROR"
*Status: "PrinterError: PAPER TIMEOUT"
*Status: "PrinterError:    VIDEO ERR"
*Status: "PrinterError:   COMMAND ERR"
*Status: "PrinterError:     ROM ERR"
*Status: "PrinterError:   COMMAND ERR"
*Status: "PrinterError: PAPER LENGTH ERR"
*Status: "PrinterError:  RIBBON ERROR"
*Status: "PrinterError:     I/O ERR"
*Status: "PrinterError:   STRANGE ERR"
*Status: "PrinterError:   COMMAND ERR"
*Status: "PrinterError:   PAPER EMPTY"
*Status: "PrinterError:   POWER TEMP"
*Status: "PrinterError: RIBBON SENS ERR"
*Status: "PrinterError:    RAM ERR"
*Status: "PrinterError:    RIBBON END"
*Status: "PrinterError: PAPER FEED ERROR"
*Status: "PrinterError:    HEAD TEMP"

*% Input Sources (format: %%[ status: <stat>; source: <one of these> ]%% )
*Source: "serial25"
*Source: "AppleTalk"
*Source: "Centronics"

*% Printer Error (format: %%[ PrinterError: <one of these> ]%%)
*PrinterError: "PAPER LENGTH ERR"
*PrinterError: "DMA TIMEOUT"
*PrinterError: "   COVER OPEN"
*PrinterError: "  TEST PRINT"
*PrinterError: " HEAD SENS ERR"
*PrinterError: "   PAPER JAM"
*PrinterError: " LC SENS ERROR"
*PrinterError: "PAPER TIMEOUT"
*PrinterError: "   VIDEO ERR"
*PrinterError: "  COMMAND ERR"
*PrinterError: "    ROM ERR"
*PrinterError: "  COMMAND ERR"
*PrinterError: "PAPER LENGTH ERR"
*PrinterError: " RIBBON ERROR"
*PrinterError: "    I/O ERR"
*PrinterError: "  STRANGE ERR"
*PrinterError: "  COMMAND ERR"
*PrinterError: "  PAPER EMPTY"
*PrinterError: "  POWER TEMP"
*PrinterError: "RIBBON SENS ERR"
*PrinterError: "   RAM ERR"
*PrinterError: "   RIBBON END"
*PrinterError: "PAPER FEED ERROR"
*PrinterError: "   HEAD TEMP"

*%DeviceAdjustMatrix: "[1 0 0 1 0 0]"

*% Color Separation Information =====================

*DefaultColorSep: ProcessBlack.53lpi.300dpi/53 lpi / 300 dpi

*InkName: ProcessBlack/Process Black
*InkName: CustomColor/Custom Color
*InkName: ProcessCyan/Process Cyan
*InkName: ProcessMagenta/Process Magenta
*InkName: ProcessYellow/Process Yellow

*%  For 60 lpi / 300 dpi  ===============================

*ColorSepScreenAngle ProcessBlack.60lpi.300dpi/60 lpi / 300 dpi: "45"
*ColorSepScreenAngle CustomColor.60lpi.300dpi/60 lpi / 300 dpi: "45"
*ColorSepScreenAngle ProcessCyan.60lpi.300dpi/60 lpi / 300 dpi: "15"
*ColorSepScreenAngle ProcessMagenta.60lpi.300dpi/60 lpi / 300 dpi: "75"
*ColorSepScreenAngle ProcessYellow.60lpi.300dpi/60 lpi / 300 dpi: "0"

*ColorSepScreenFreq ProcessBlack.60lpi.300dpi/60 lpi / 300 dpi: "60"
*ColorSepScreenFreq CustomColor.60lpi.300dpi/60 lpi / 300 dpi: "60"
*ColorSepScreenFreq ProcessCyan.60lpi.300dpi/60 lpi / 300 dpi: "60"
*ColorSepScreenFreq ProcessMagenta.60lpi.300dpi/60 lpi / 300 dpi: "60"
*ColorSepScreenFreq ProcessYellow.60lpi.300dpi/60 lpi / 300 dpi: "60"

*%  For 53 lpi / 300 dpi  ===============================

*ColorSepScreenAngle ProcessBlack.53lpi.300dpi/53 lpi / 300 dpi: "45.0"
*ColorSepScreenAngle CustomColor.53lpi.300dpi/53 lpi / 300 dpi: "45.0"
*ColorSepScreenAngle ProcessCyan.53lpi.300dpi/53 lpi / 300 dpi: "71.5651"
*ColorSepScreenAngle ProcessMagenta.53lpi.300dpi/53 lpi / 300 dpi: "18.4349"
*ColorSepScreenAngle ProcessYellow.53lpi.300dpi/53 lpi / 300 dpi: "0.0"

*ColorSepScreenFreq ProcessBlack.53lpi.300dpi/53 lpi / 300 dpi: "53.033"
*ColorSepScreenFreq CustomColor.53lpi.300dpi/53 lpi / 300 dpi: "53.033"
*ColorSepScreenFreq ProcessCyan.53lpi.300dpi/53 lpi / 300 dpi: "47.4342"
*ColorSepScreenFreq ProcessMagenta.53lpi.300dpi/53 lpi / 300 dpi: "47.4342"
*ColorSepScreenFreq ProcessYellow.53lpi.300dpi/53 lpi / 300 dpi: "50.0"

*% For "Colormate PS40" version 51.9
*% Produced by "BuildPPD.ps" version 3.0 edit 58
*% Converted to meet 4.0 specification
*% Last Edit Date: Sep 15 1992
*% The byte count of this file should be exactly 010542 or 010874
*% depending on the filesystem it resides in.
*% end of PPD file for Colormate PS40
