*PPD-Adobe: "4.2"
*% Adobe Systems PostScript(R) Printer Description File
*% For "QMS 1660" versions 2011.23
*% Date: 4/13/94
*% Modified: 7/24/95

*FormatVersion: "4.2"
*FileVersion: "3.2"
*LanguageEncoding: ISOLatin1
*LanguageVersion: English
*PCFileName: "QMS1660.PPD"

*Product: "(QMS 1660 Print System)"
*PSVersion: "(2011.23) 11"
*ModelName: "QMS 1660/1660E"
*NickName: "QMS 1660 Print System"

*% General Information and Defaults ===============
*LanguageLevel: "2"
*AcceptsTrueType: True

*% QMS Defaults =========
*EndOfDocument: True
*PrintPSErrors: True
*SuggestedJobTimeOut: 0
*SuggestedWaitTimeOut: 30
*Protocols: BCP
*MiserMode: True
*ColorDevice: False
*DefaultColorSpace: Gray
*VariablePaperSize: False
*FileSystem: True
*?FileSystem: "
save
  statusdict /diskonline get exec {(True)}{(False)} ifelse = flush
restore
"
*End
*Throughput: "16"
*Password: "0"
*ExitServer: "
 count 0 eq
 { false } { true exch startjob } ifelse
 not { 
     (WARNING : Cannot perform the exitserver command.) = 
     (Password supplied is not valid.) = 
     (Please contact the author of this software.) = flush quit
     } if
"
*End
*Reset: "
 count 0 eq
 { false } { true exch startjob } ifelse
 not {
    (WARNING: Cannot reset printer.) =
    (Missing or invalid password.) =
    (Please contact the author of this software.) = flush quit
    } if
 systemdict /quit get exec
 (WARNING : Printer Reset Failed.) = flush
"
*End

*% ====== Installable Options =====

*FreeVM: "1419085"
*VMOption 12MB: "1419085"
*VMOption 24MB: "1419085"
*VMOption 48MB: "1419085"
 
*OpenGroup: InstallableOptions/Options Installed
*OpenUI *Installedmemory: PickOne
*DefaultInstalledmemory: 12MB
*Installedmemory 12MB: ""
*Installedmemory 24MB: ""
*Installedmemory 48MB: ""
*CloseUI: *Installedmemory
*CloseGroup: InstallableOptions
  

*OpenUI *Resolution/Choose Resolution: PickOne
*OrderDependency: 10 AnySetup *Resolution
*DefaultResolution: 600dpi
*Resolution 300dpi: "<< /HWResolution [300 300] >> setpagedevice"
*Resolution 600dpi: "<< /HWResolution [600 600] >> setpagedevice"
*Resolution 1200dpi: "<< /HWResolution [1200 1200] >> setpagedevice"
*?Resolution: "
  save
    currentpagedevice /HWResolution get
    0 get
    (          ) cvs print
    (dpi)
    = flush
  restore
"
*End
*CloseUI: *Resolution

*% Halftone Information ===============
*ScreenFreq: "71.0"
*ScreenAngle: "45.0"
*DefaultScreenProc: Dot
*ScreenProc Dot: "
{ 1.4 0.24 
  { 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 }"

*DefaultTransfer: Null
*Transfer Null: "{ }"
*Transfer Null.Inverse: "{ 1 exch sub }"

*% Paper Handling ===================
*% Code in this section both selects a tray and sets up a frame buffer.
*OpenUI *PageSize: PickOne
*OrderDependency: 30 AnySetup *PageSize
*DefaultPageSize: Letter
*PageSize Letter: "<< /PageSize [612 792] >> setpagedevice"
*End
*PageSize Legal: "<< /PageSize [612 1008] >> setpagedevice"
*End
*PageSize Executive: "<< /PageSize [522 757] >> setpagedevice"
*End
*PageSize Universal: "<< /PageSize [842 1224] >> setpagedevice"
*End
*PageSize Tabloid: "<< /PageSize [792 1224] >> setpagedevice"
*End
*PageSize Full11x17: "<< /PageSize [843 1253] >> setpagedevice"
*End
*PageSize 12x19: "<< /PageSize [843 1404] >> setpagedevice"
*End
*PageSize A3: "<< /PageSize [842 1191] >> setpagedevice"
*End
*PageSize A4: "<< /PageSize [596 842] >> setpagedevice"
*End
*PageSize A5: "<< /PageSize [420 596] >> setpagedevice"
*End
*PageSize Postcard: "<< /PageSize [298 421] >> setpagedevice"
*End
*PageSize B4: "<< /PageSize [729 1032] >> setpagedevice"
*End
*PageSize B5: "<< /PageSize [516 729] >> setpagedevice"
*End
*PageSize B6: "<< /PageSize [364 516] >> setpagedevice"
*End
*?PageSize: "
 save
   currentpagedevice /PageSize get aload pop
   2 copy gt {exch} if 
   (Unknown) 
   15 dict
   dup [612 792] (Letter) put
   dup [612 1008] (Legal) put
   dup [522 757] (Executive) put
   dup [842 1224] (Universal) put
   dup [792 1224] (Tabloid) put
   dup [843 1253] (Full11x17) put
   dup [843 1404] (12x19) put
   dup [842 1191] (A3) put
   dup [596 842] (A4) put
   dup [420 596] (A5) put
   dup [298 421] (Postcard) put
   dup [729 1032] (B4) put
   dup [516 729] (B5) put
   dup [364 516] (B6) put
 { exch aload pop 4 index sub abs 5 le exch 
   5 index sub abs 5 le and 
      {exch pop exit} {pop} ifelse
   } bind forall
   = flush pop pop
restore 
"
*End
*CloseUI: *PageSize

*OpenUI *PageRegion: PickOne
*OrderDependency: 40 AnySetup *PageRegion
*DefaultPageRegion: Letter
*PageRegion Letter: "<< /PageSize [612 792] >> setpagedevice" 
*End
*PageRegion Legal: "<< /PageSize [612 1008] >> setpagedevice"
*End
*PageRegion Executive: "<< /PageSize [522 757] >> setpagedevice"
*End
*PageRegion Universal: "<< /PageSize [842 1224] >> setpagedevice"
*End
*PageRegion Tabloid: "<< /PageSize [792 1224] >> setpagedevice"
*End
*PageRegion Full11x17: "<< /PageSize [843 1253] >> setpagedevice"
*End
*PageRegion 12x19: "<< /PageSize [843 1404] >> setpagedevice"
*End
*PageRegion A3: "<< /PageSize [842 1191] >> setpagedevice"
*End
*PageRegion A4: "<< /PageSize [596 842] >> setpagedevice"
*End
*PageRegion A5: "<< /PageSize [420 596] >> setpagedevice"
*End
*PageRegion Postcard: "<< /PageSize [298 421] >> setpagedevice"
*End
*PageRegion B4: "<< /PageSize [729 1032] >> setpagedevice"
*End
*PageRegion B5: "<< /PageSize [516 729] >> setpagedevice"
*End
*PageRegion B6: "<< /PageSize [364 516] >> setpagedevice"
*End
*CloseUI: PageRegion

*% The following entries provide information about specific paper keywords.
*DefaultImageableArea: Letter
*ImageableArea Letter: "12 12 600 780 "
*ImageableArea Legal: "12 12 600 996 "
*ImageableArea Executive: "12 12 510 744 "
*ImageableArea Universal: "12 12 830 1212 "
*ImageableArea Tabloid: "12 12 780 1212 "
*ImageableArea Full11x17: "12 12 831 1241 "
*ImageableArea 12x19: "12 12 831 1392 "
*ImageableArea A3: "12 12 830 1179 "
*ImageableArea A4: "12 12 584 830 "
*ImageableArea A5: "12 12 408 584 "
*ImageableArea Postcard: "12 12 286 409 "
*ImageableArea B4: "12 12 717 1020 "
*ImageableArea B5: "12 12 504 717 "
*ImageableArea B6: "12 12 352 504 "
*?ImageableArea: "
 save /cvp { cvi (            ) cvs print ( ) print } bind def
  newpath clippath pathbbox
  4 -2 roll exch 2 {ceiling cvp} repeat
  exch 2 {floor cvp} repeat flush
 restore
"
*End

*% These provide the physical dimensions of the paper (by keyword)
*DefaultPaperDimension: Letter
*PaperDimension Letter: "612 792"
*PaperDimension Legal: "612 1008"
*PaperDimension Executive: "522 756"
*PaperDimension Universal: "842 1224"
*PaperDimension Tabloid: "792 1224"
*PaperDimension Full11x17: "843 1253"
*PaperDimension 12x19: "843 1404"
*PaperDimension A3: "842 1191"
*PaperDimension A4: "595 842"
*PaperDimension A5: "420 596"
*PaperDimension Postcard: "298 421"
*PaperDimension B4: "729 1031"
*PaperDimension B5: "516 729"
*PaperDimension B6: "364 516"

*DefaultOutputBin: OnlyOne

*OpenUI *InputSlot: PickOne
*OrderDependency: 20 AnySetup *InputSlot
*DefaultInputSlot: Multipurpose
*InputSlot Multipurpose: "
  currentpagedevice /InputAttributes get 1 get 
  dup null eq 
  { pop } 
  { dup length 1 add dict copy 
    dup /InputAttributes
    1 dict dup /Priority [1] put
    put setpagedevice
  } ifelse"
*End
 
*InputSlot Lower: "
  currentpagedevice /InputAttributes get 2 get 
  dup null eq 
  { pop } 
  { dup length 1 add dict copy 
    dup /InputAttributes
    1 dict dup /Priority [2] put
    put setpagedevice
  } ifelse"
*End

*InputSlot Optional: "
  currentpagedevice /InputAttributes get 3 get 
  dup null eq 
  { pop } 
  { dup length 1 add dict copy 
    dup /InputAttributes
    1 dict dup /Priority [3] put
    put setpagedevice
  } ifelse"
*End

*?InputSlot: "
save
  3 dict
  dup /1 (Multipurpose) put
  dup /2 (Lower) put
  dup /3 (Optional) put
  currentpagedevice /InputAttributes get
  dup /Priority known
  { /Priority get 0 get (      ) cvs cvn get }
  {
    dup length 1 eq
    { {pop} forall (       ) cvs cvn get }
    { pop pop (Unknown) } ifelse
  } ifelse
  = flush
restore
"
*End
*CloseUI: *InputSlot

*OpenUI *ManualFeed: Boolean
*OrderDependency: 20 AnySetup *ManualFeed
*DefaultManualFeed: False
*ManualFeed True: "<< /ManualFeed true >> setpagedevice"
*ManualFeed False: "<< /ManualFeed false >> setpagedevice"
*?ManualFeed: "
  save
    currentpagedevice /ManualFeed get
    {(True)}{(False)}ifelse = flush
  restore"
*End
*CloseUI: *ManualFeed

*DefaultOutputOrder: Normal

*OpenUI *Collate:  Boolean
*OrderDependency:  40 AnySetup *Collate
*DefaultCollate: True
*Collate True: "%%IncludeFeature: collate(on)"
*Collate False: "%%IncludeFeature: collate(off)"
*?Collate:"
save
  currentpagedevice /Collate get
  {(True)}{(False)}ifelse = flush restore"
*End
*CloseUI: *Collate

*OpenUI *TraySwitch: Boolean
*OrderDependency: 45 AnySetup *TraySwitch
*DefaultTraySwitch: False
*TraySwitch True: "1 dict dup /TraySwitch true put setpagedevice"
*TraySwitch False: "1 dict dup /TraySwitch false put setpagedevice"
*?TraySwitch: "
save
  currentpagedevice /TraySwitch get
  {(True)}{(False)}ifelse = flush
restore
"
*End
*CloseUI: *TraySwitch

*OpenUI *MiserMode/Conserve Toner: Boolean
*OrderDependency: 50 AnySetup *MiserMode
*DefaultMiserMode: True
*MiserMode False: "0 statusdict /setmisermode get exec"
*MiserMode True: "1 statusdict /setmisermode get exec"
*?MiserMode: "
 save statusdict begin
  2 dict begin
   /0 (False) def
   /1 (True) def
   misermode
     {( ) cvs cvn load exec} stopped not{= flush}if
  end
 end restore"
*End
*CloseUI: *MiserMode

*% 1200 dpi Mono Gamma correction =============================
*OpenUI *GammaCorrection_1200_M/Gamma Table: PickOne
*OrderDependency: 50 AnySetup *GammaCorrection_1200_M
*DefaultGammaCorrection_1200_M: 1
*GammaCorrection_1200_M 1/Off:"0 statusdict /setgammacorrection get exec"
*GammaCorrection_1200_M 2/On:"3 statusdict /setgammacorrection get exec"
*CloseUI: *GammaCorrection_1200_M

*% 600 dpi Mono Gamma correction =============================
*OpenUI *GammaCorrection_600_M/Gamma Table: PickOne
*OrderDependency: 50 AnySetup *GammaCorrection_600_M
*DefaultGammaCorrection_600_M: 1
*GammaCorrection_600_M 1/Off:"0 statusdict /setgammacorrection get exec"
*GammaCorrection_600_M 2/On:"2 statusdict /setgammacorrection get exec"
*CloseUI: *GammaCorrection_600_M

*% 300 dpi Mono Gamma correction =============================
*OpenUI *GammaCorrection_300_M/Gamma Table: PickOne
*OrderDependency: 50 AnySetup *GammaCorrection_300_M
*DefaultGammaCorrection_300_M: 1
*GammaCorrection_300_M 1/Off:"0 statusdict /setgammacorrection get exec"
*GammaCorrection_300_M 2/On:"1 statusdict /setgammacorrection get exec"
*CloseUI: *GammaCorrection_300_M

*% Font Information =====================

*DefaultFont: Courier
*Font AvantGarde-Book: Standard "(001.002)"
*Font AvantGarde-BookOblique: Standard "(001.002)"
*Font AvantGarde-Demi: Standard "(001.003)"
*Font AvantGarde-DemiOblique: Standard "(001.003)"
*Font Bookman-Demi: Standard "(001.001)"
*Font Bookman-DemiItalic: Standard "(001.001)"
*Font Bookman-Light: Standard "(001.001)"
*Font Bookman-LightItalic: Standard "(001.001)"
*Font Courier: Standard "(001.005)"
*Font Courier-Bold: Standard "(001.005)"
*Font Courier-BoldOblique: Standard "(001.005)"
*Font Courier-Oblique: Standard "(001.005)"
*Font Helvetica: Standard "(001.002)"
*Font Helvetica-Bold: Standard "(001.002)"
*Font Helvetica-BoldOblique: Standard "(001.002)"
*Font Helvetica-Condensed: Standard "(001.001)"
*Font Helvetica-Condensed-Bold: Standard "(001.002)"
*Font Helvetica-Condensed-BoldObl: Standard "(001.002)"
*Font Helvetica-Condensed-Oblique: Standard "(001.001)"
*Font Helvetica-Narrow: Standard "(001.002)"
*Font Helvetica-Narrow-Bold: Standard "(001.002)"
*Font Helvetica-Narrow-BoldOblique: Standard "(001.002)"
*Font Helvetica-Narrow-Oblique: Standard "(001.002)"
*Font Helvetica-Oblique: Standard "(001.002)"
*Font NewCenturySchlbk-Bold: Standard "(001.007)"
*Font NewCenturySchlbk-BoldItalic: Standard "(001.004)"
*Font NewCenturySchlbk-Italic: Standard "(001.003)"
*Font NewCenturySchlbk-Roman: Standard "(001.004)"
*Font Palatino-Bold: Standard "(001.002)"
*Font Palatino-BoldItalic: Standard "(001.002)"
*Font Palatino-Italic: Standard "(001.002)"
*Font Palatino-Roman: Standard "(001.001)"
*Font Symbol: Special "(001.003)"
*Font Times-Bold: Standard "(001.002)"
*Font Times-BoldItalic: Standard "(001.004)"
*Font Times-Italic: Standard "(001.002)"
*Font Times-Roman: Standard "(001.002)"
*Font ZapfChancery-MediumItalic: Standard "(001.003)"
*Font ZapfDingbats: Special "(001.002)"
*?FontQuery: "
 save
   { count 1 gt
      { exch dup 127 string cvs (/) print print (:) print
        /Font resourcestatus {pop pop (Yes)} {(No)} ifelse =
      } { exit } ifelse 
   } bind loop
   (*) = flush
 restore
"
*End

*?FontList: "
save
  (*) {cvn ==} 128 string /Font resourceforall
  (*) = flush
restore
"
*End

*% Printer End of Document Types.
*OpenUI *EndOfDocType: PickOne
*OrderDependancy: 45 AnySetup *EndOfDocType
*DefaultEndOfDocType: StandardEOD
*EndOfDocType StandardEOD:"^D"
*End
*EndOfDocType QMSEOD:"%%EndOfDocument\012"
*End
*EndOfDocType HPEOD:"\033%-12345X"
*End
*CloseUI: *EndOfDocType

*% 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"

*% Input Sources (format: %%[ status: <stat>; source: <one of these> ]%%)
*Source: "Serial RS-232C"
*Source: "Parallel"
*Source: "IF 2"

*% Printer Error (format: %%[ PrinterError: <one of these> ]%%)
*PrinterError: "out of paper"
*PrinterError: "Paper Jam"
*PrinterError: "Off line"
*PrinterError: "timeout, clearing printer"
*PrinterError: "warming up"
*PrinterError: "service call"
*PrinterError: "paper entry misfeed"
*PrinterError: "no toner cartridge"
*PrinterError: "low toner"
*PrinterError: "no paper tray"
*PrinterError: "resetting printer"
*PrinterError: "cover open"
*PrinterError: "manual feed timeout"

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

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

*DefaultColorSep: ProcessBlack.71lpi.600dpi/71 lpi / 600 dpi

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

*%  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 71 lpi / 600 dpi  ===============================

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

*ColorSepScreenFreq ProcessBlack.71lpi.600dpi/71 lpi / 600 dpi: "70.7107"
*ColorSepScreenFreq CustomColor.71lpi.600dpi/71 lpi / 600 dpi: "70.7107"
*ColorSepScreenFreq ProcessCyan.71lpi.600dpi/71 lpi / 600 dpi: "63.2456"
*ColorSepScreenFreq ProcessMagenta.71lpi.600dpi/71 lpi / 600 dpi: "63.2456"
*ColorSepScreenFreq ProcessYellow.71lpi.600dpi/71 lpi / 600 dpi: "66.6667"

*%  For 71 lpi / 1200 dpi  ===============================

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

*ColorSepScreenFreq ProcessBlack.71lpi.1200dpi/71 lpi / 1200 dpi: "70.7107"
*ColorSepScreenFreq CustomColor.71lpi.1200dpi/71 lpi / 1200 dpi: "70.7107"
*ColorSepScreenFreq ProcessCyan.71lpi.1200dpi/71 lpi / 1200 dpi: "63.2456"
*ColorSepScreenFreq ProcessMagenta.71lpi.1200dpi/71 lpi / 1200 dpi: "63.2456"
*ColorSepScreenFreq ProcessYellow.71lpi.1200dpi/71 lpi / 1200 dpi: "66.6667"

*% end of PPD file for QMS 1660 Print System

