*PPD-Adobe: "4.0"
*% Adobe Systems Printer Description File
*% For "QMS 420 Print System hubie" version 2011.22
*% Produced by QMS Inc.
*% Date: 8 February 1993
*% Modified:  05/18/93

*FormatVersion: "4.0"
*FileVersion: "2.0"
*LanguageVersion: English

*Product: "(QMS 420 Print System)"
*PSVersion: "(2011.22) 94"
*NickName: "QMS 420 Print System"

*% General Information and Defaults ===============
*FreeVM: "336596"
*ColorDevice: False
*VariablePaperSize: False
*FileSystem: False
*?FileSystem: "/initializedisk where{pop(True)}{(False)} ifelse = flush"
*Throughput: "4"
*Password: "0"
*ExitServer: "
 count 0 eq {  % is the password on the stack?
   true
 }{
   dup % potential password
   statusdict begin checkpassword end 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 begin exitserver
"
*End
*Reset: "
 count 0 eq {  % is the password on the stack?
   true
 }{
   dup % potential password
   statusdict begin checkpassword end 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 begin exitserver
 systemdict /quit get exec
 (WARNING : Printer Reset Failed.) = flush
"
*End

*% Halftone Information ===============
*ScreenFreq: "60.0"
*ScreenAngle: "45.0"
*DefaultScreenProc: Dot
*ScreenProc Dot: "
{ dup mul exch dup mul add 1 exch sub }
"
*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 ===================

*OpenGroup: PaperHandling
*OpenUI *Resolution: PickOne
*OrderDependency: 5 AnySetup *Resolution
*DefaultResolution: 600dpi
*Resolution 300dpi: "statusdict begin 300 setresolution end"
*Resolution 600dpi: "statusdict begin 600 setresolution end"
*?Resolution: "
save
 statusdict begin resolution end
 128 string cvs dup print (x) print print (dpi) = flush
restore
"
*End
*CloseUI: *Resolution

*% Use these entries to set paper size most of the time, unless there is
*% specific reason to use PageRegion or PaperTray.
*OpenUI *PageSize: PickOne
*OrderDependency: 15 AnySetup *PageSize
*DefaultPageSize: Letter
*PageSize Letter: "statusdict begin lettertray end"
*PageSize Legal: "statusdict begin /defaultmultipurposetraysize {legal} def legal end"
*PageSize Executive: "statusdict begin executivetray end"
*PageSize A4: "statusdict begin a4tray end"
*PageSize B5: "statusdict begin b5tray end"
*PageSize Envelope.279.540/Monarch Envelope: "statusdict begin envelopetray monarcenvelope end"
*PageSize Envelope.297.684/Common #10 Envelope: "statusdict begin envelopetray com10envelope end"
*PageSize Envelope.312.624/DL Envelope: "statusdict begin envelopetray dlenvelope end"
*PageSize Envelope.459.649/C5 Envelope: "statusdict begin envelopetray c5envelope end"
*PageSize Envelope.279.639/Com9 Envelope: "statusdict begin envelopetray com9envelope end"
*?PageSize: "
save statusdict begin
 6 dict begin
  /letter (Letter) def
  /legal (Legal) def
  /a4 (A4) def
  /b5 (B5) def
  /executivepage (Executive) def
  /envelope (Envelope) def
  papersize {
    {load exec} stopped not{= flush}if
  }{
    {load exec} stopped not{print (.Transverse) = flush}{(Unknown) = flush}ifelse
  }ifelse
 end
end restore
"
*End
*CloseUI: *PageSize


*% These entries will set up the frame buffer. Usually used with manual feed.
*% Used with windows
*DefaultPageRegion: Letter
*PageRegion Letter: "statusdict begin letter /QMSpaper {letter} def end"
*PageRegion Legal: "statusdict begin legal /QMSpaper {legal} def /defaultmultipurposetraysize {legal} def end"
*PageRegion Executive: "statusdict begin executivepage  /QMSpaper {executivepage} def end"
*PageRegion A4: "statusdict begin a4 /QMSpaper {a4} def end"
*PageRegion B5: "statusdict begin b5 /QMSpaper {b5} def end"
*PageRegion Envelope.279.540/Monarch Envelope: "statusdict begin monarcenvelope /QMSpaper {monarcenvelope} def end"
*PageRegion Envelope.297.684/Common #10 Envelope: "statusdict begin com10envelope /QMSpaper {com10envelope} def end"
*PageRegion Envelope.312.624/DL Envelope: "statusdict begin dlenvelope /QMSpaper {dlenvelope} def end"
*PageRegion Envelope.459.649/C5 Envelope: "statusdict begin c5envelope /QMSpaper {c5envelope} def end"
*PageRegion Envelope.279.639/Com9 Envelope: "statusdict begin com9envelope /QMSpaper {com9envelope} def end"

*% These entries will invoke a particular tray--error may occur if tray is not inserted.
*% These errors should be trapped by software and a message displayed
*OpenUI *PaperTray: PickOne
*OrderDependency: 20 AnySetup *PaperTray
*DefaultPaperTray: Letter
*PaperTray Letter: "statusdict begin letter end"
*PaperTray Legal: "statusdict begin legal /defaultmultipurposetraysize {legal} def end"
*PaperTray Executive: "statusdict begin executivepage end"
*PaperTray A4: "statusdict begin a4 end"
*PaperTray B5: "statusdict begin b5 end"
*PaperTray Envelope.279.540/Monarch Envelope: "statusdict begin monarcenvelope end"
*PaperTray Envelope.297.684/Common #10 Envelope: "statusdict begin com10envelope end"
*PaperTray Envelope.312.624/DL Envelope: "statusdict begin dlenvelope  end"
*PaperTray Envelope.459.649/C5 Envelope: "statusdict begin c5envelope  end"
*PaperTray Envelope.279.639/Com9 Envelope:  "statusdict begin com9envelope end"
*?PaperTray: "
save statusdict begin
 6 dict begin
  /letter (Letter) def
  /legal (Legal) def
  /a4 (A4) def
  /b5 (B5) def
  /executivepage (Executive) def
  /envelope (Envelope) def
  papersize {
    {load exec} stopped not{= flush}if
  }{
    {load exec} stopped not{print (.Transverse) = flush}{(Unknown) = flush}ifelse
  }ifelse
 end
end restore
"
*End
*CloseUI: *PaperTray

*% The following entries provide information about specific paper keywords.
*DefaultImageableArea: Letter
*ImageableArea Letter: "15 13 597 780 "
*ImageableArea Legal: "15 14 589 995 "
*ImageableArea Executive: "18 18 503 738"
*ImageableArea A4: "16 11 579 831 "
*ImageableArea B5: "18 12 497 717 "
*ImageableArea Envelope.279.540/Monarch Envelope: "1 1 279 540"
*ImageableArea Envelope.297.684/Common #10 Envelope: "1 1 297 684"
*ImageableArea Envelope.312.624/DL Envelope: "1 1 312 623"
*ImageableArea Envelope.459.649/C5 Envelope: "1 1 459 649"
*ImageableArea Envelope.279.639/Com9 Envelope: "1 1 279 639"
*?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: "540 756"
*PaperDimension A4: "596 842"
*PaperDimension B5: "516 729"
*PaperDimension Envelope.279.540/Monarch Envelope: "279 540"
*PaperDimension Envelope.297.684/Common #10 Envelope: "297 684"
*PaperDimension Envelope.312.624/DL Envelope: "312 624"
*PaperDimension Envelope.459.649/C5 Envelope: "459 649"
*PaperDimension Envelope.279.639/Com9 Envelope: "279 639"

*DefaultOutputBin: Upper

*OpenUI *InputSlot: PickOne
*OrderDependency: 5 AnySetup *InputSlot
*DefaultInputSlot: Upper
*InputSlot Lower: "statusdict begin
  2 setpapertray
     statusdict /QMSpaper known
       { QMSpaper } if
   end"
*End
*InputSlot Upper: "statusdict begin
  1 setpapertray
     statusdict /QMSpaper known
       { QMSpaper } if
   end"
*End
*?InputSlot: "
save statusdict begin
 2 dict begin
  /2 (Lower) def
  /1 (Upper) def
  papertray
    {( ) cvs cvn load exec} stopped not{= flush}if
 end
end restore
"
*End
*CloseUI: *InputSlot
*CloseGroup: PaperHandling

*DefaultManualFeed: False
*?ManualFeed: "
 statusdict /manualfeed get
 {(True)}{(False)}ifelse = flush"
*End
*ManualFeed True: "statusdict begin /manualfeed true store end"
*ManualFeed False: "statusdict begin /manualfeed false store end"

*DefaultOutputOrder: Normal

*DefaultCollator: None
*DefaultSorter: None
*DefaultDuplex: None

*% 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 "(002.003)"
*Font Courier-Bold: Standard "(002.003)"
*Font Courier-BoldOblique: Standard "(002.003)"
*Font Courier-Oblique: Standard "(002.003)"
*Font Helvetica: Standard "(001.006)"
*Font Helvetica-Bold: Standard "(001.007)"
*Font Helvetica-BoldOblique: Standard "(001.007)"
*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.006)"
*Font Helvetica-Narrow-Bold: Standard "(001.007)"
*Font Helvetica-Narrow-BoldOblique: Standard "(001.007)"
*Font Helvetica-Narrow-Oblique: Standard "(001.006)"
*Font Helvetica-Oblique: Standard "(001.006)"
*Font NewCenturySchlbk-Bold: Standard "(001.006)"
*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.007)"
*Font Times-Bold: Standard "(001.007)"
*Font Times-BoldItalic: Standard "(001.009)"
*Font Times-Italic: Standard "(001.007)"
*Font Times-Roman: Standard "(001.007)"
*Font ZapfChancery-MediumItalic: Standard "(001.003)"
*Font ZapfDingbats: Special "(001.002)"
*?FontQuery: "
save 2 dict begin /sv exch def
/st 128 string def
{
 count 0 gt {
   dup str cvs (/) print print (:) print
   FontDirectory exch known {(Yes)}{(No)}ifelse = flush
 }{ exit } ifelse
} bind loop
(*) = flush
sv end restore
"
*End

*?FontList: "
save  2 dict begin /sv exch def
/str 128 string def
FontDirectory { pop == } bind forall flush
(*) = flush
sv end restore
"
*End

*% Printer Messages (verbatim from printer):
*Message: "%%[ exitserver: permanent state may be changed ]%%"
*Message: "%%[ Flushing until EOF seen ]%%"
*Message: "%%[WARNING: Font \FontName\ not found, substituting Courier.]%%"
*Message: "%%[ Initializing... ]%%"

*% Status (format: %%[ status: <one of these> ]%% )
*Status: "idle"
*Status: "busy"
*Status: "waiting"
*Status: "printing"
*Status: "warming up"
*Status: "Initializing"
*Status: "printing startup page"
*Status: "printing test page"
*Status: "PrinterError: no paper tray"
*Status: "PrinterError: service call"
*Status: "PrinterError: no toner cartridge"
*Status: "PrinterError: cover open"
*Status: "PrinterError: paper entry misfeed"
*Status: "PrinterError: manual feed"
*Status: "PrinterError: out of paper"

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

*% Printer Error (format: %%[ PrinterError: <one of these> ]%%)
*PrinterError: "no paper tray"
*PrinterError: "service call"
*PrinterError: "no toner cartridge"
*PrinterError: "cover open"
*PrinterError: "paper entry misfeed"
*PrinterError: "manual feed"
*PrinterError: "out of paper"

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

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

*DefaultColorSep: ProcessBlack.60lpi.300dpi/60 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 85 lpi / 600 dpi  (5,5,2,6,6,2,20/3,0) =====================

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

*ColorSepScreenFreq ProcessBlack.85lpi.600dpi/85 lpi / 600 dpi: "84.8528"
*ColorSepScreenFreq CustomColor.85lpi.600dpi/85 lpi / 600 dpi: "84.8528"
*ColorSepScreenFreq ProcessCyan.85lpi.600dpi/85 lpi / 600 dpi: "94.8683"
*ColorSepScreenFreq ProcessMagenta.85lpi.600dpi/85 lpi / 600 dpi: "94.8683"
*ColorSepScreenFreq ProcessYellow.85lpi.600dpi/85 lpi / 600 dpi: "30.0"

*ColorSepScreenProc ProcessYellow.85lpi.600dpi/85 lpi / 600 dpi: "
{1 add 2 div 3 mul dup floor sub 2 mul 1 sub exch
1 add 2 div 3 mul dup floor sub 2 mul 1 sub exch
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 }
"
*End

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

*% end of PPD file for QMS 420 Print System