*PPD-Adobe: "4.0"
*% Adobe Systems PostScript(R) Printer Description File
*% Copyright 1987-1993 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: "1.1"
*LanguageVersion: English
*PCFileName: "XR_88121.PPD"
*Product: "(Xerox 8812)"
*PSVersion: "(2012.016) 1000001"
*ModelName: "Xerox 8812"
*NickName: "Xerox 8812 v2012.016"

*% === Options and Constraints =========
*OpenGroup: InstallableOptions/Options Installed
*OpenUI *Option1/Optional Middle Tray : Boolean
*DefaultOption1: False
*Option1 True/Installed: ""
*Option1 False/Not Installed: ""
*CloseUI: *Option1

*OpenUI *Option2/Optional Bottom Tray : Boolean
*DefaultOption2: False
*Option2 True/Installed: ""
*Option2 False/Not Installed: ""
*CloseUI: *Option2

*OpenUI *Option3/Optional Hard Disk : Boolean
*DefaultOption3: False
*Option3 True/Installed: ""
*Option3 False/Not Installed: ""
*CloseUI: *Option3
*CloseGroup: InstallableOptions

*UIConstraints: *Option1 False *InputSlot Middle
*UIConstraints: *Option2 False *InputSlot Lower

*% ==== Device Capabilities ===============
*LanguageLevel: "2"
*Protocols: BCP
*FreeVM: "1906104"
*ColorDevice: False
*DefaultColorSpace: Gray
*VariablePaperSize: False
*FileSystem: True
*?FileSystem: "
  save false
   (%disk?%) 
   { currentdevparams dup /Writeable known
      { /Writeable get {pop true} if }  { pop } ifelse 
    } 10 string /IODevice resourceforall
    {(True)}{(False)} ifelse = flush
 restore"
*End
*Throughput: "15"
*Password: "()" 
*ExitServer: "
 count 0 eq
 { false } { true exch startjob } ifelse
 not { 
     (WARNING: Cannot modify initial VM.) =
     (Missing or invalid password.) =
     (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

*DefaultResolution: 400dpi
*?Resolution: "
  save
    currentpagedevice /HWResolution get
    0 get
    (          ) cvs print
    (dpi)
    = flush
  restore
"
*End

*% Halftone Information ===============
*ScreenFreq: "70.0"
*ScreenAngle: "45.0"
*DefaultScreenProc: Dot
*ScreenProc Dot: "
{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
*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: "
    2 dict dup /PageSize [612 792] put dup /ImagingBBox null put setpagedevice"
*End
*PageSize Legal: "
    2 dict dup /PageSize [612 1008] put dup /ImagingBBox null put setpagedevice"
*End
*PageSize Tabloid: "
    2 dict dup /PageSize [792 1224] put dup /ImagingBBox null put setpagedevice"
*End
*PageSize A3: "
    2 dict dup /PageSize [842 1191] put dup /ImagingBBox null put setpagedevice"
*End
*PageSize A4: "
    2 dict dup /PageSize [595 842] put dup /ImagingBBox null put setpagedevice"
*End
*PageSize A5: "
    2 dict dup /PageSize [420 595] put dup /ImagingBBox null put setpagedevice"
*End
*PageSize B4: "
    2 dict dup /PageSize [728 1032] put dup /ImagingBBox null put setpagedevice"
*End
*PageSize B5: "
    2 dict dup /PageSize [516 728] put dup /ImagingBBox null put setpagedevice"
*End
*PageSize Executive: "
    2 dict dup /PageSize [522 756] put dup /ImagingBBox null put setpagedevice"
*End
*PageSize Folio: "
    2 dict dup /PageSize [595 935] put dup /ImagingBBox null put setpagedevice"
*End
*PageSize Envelope.297.684/Com #10 Envelope: "
    2 dict dup /PageSize [297 684] put dup /ImagingBBox null put setpagedevice"
*End
*?PageSize: "
 save
   currentpagedevice /PageSize get aload pop
   2 copy gt {exch} if 
   (Unknown) 
  11 dict
   dup [612 792] (Letter) put
   dup [612 1008] (Legal) put
   dup [792 1224] (Tabloid) put
   dup [842 1191] (A3) put
   dup [595 842] (A4) put
   dup [420 595] (A5) put
   dup [728 1032] (B4) put
   dup [516 728] (B5) put
   dup [522 756] (Executive) put
   dup [595 935] (Folio) put
   dup [297 684] (Envelope.297.684) 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: "
    2 dict dup /PageSize [612 792] put dup /ImagingBBox null put setpagedevice"
*End
*PageRegion Legal: "
    2 dict dup /PageSize [612 1008] put dup /ImagingBBox null put setpagedevice"
*End
*PageRegion Tabloid: "
    2 dict dup /PageSize [792 1224] put dup /ImagingBBox null put setpagedevice"
*End
*PageRegion A3: "
    2 dict dup /PageSize [842 1191] put dup /ImagingBBox null put setpagedevice"
*End
*PageRegion A4: "
    2 dict dup /PageSize [595 842] put dup /ImagingBBox null put setpagedevice"
*End
*PageRegion A5: "
    2 dict dup /PageSize [420 595] put dup /ImagingBBox null put setpagedevice"
*End
*PageRegion B4: "
    2 dict dup /PageSize [728 1032] put dup /ImagingBBox null put setpagedevice"
*End
*PageRegion B5: "
    2 dict dup /PageSize [516 728] put dup /ImagingBBox null put setpagedevice"
*End
*PageRegion Executive: "
    2 dict dup /PageSize [522 756] put dup /ImagingBBox null put setpagedevice"
*End
*PageRegion Folio: "
    2 dict dup /PageSize [595 935] put dup /ImagingBBox null put setpagedevice"
*End
*PageRegion Envelope.297.684/Com #10 Envelope: "
    2 dict dup /PageSize [297 684] put dup /ImagingBBox null put setpagedevice"
*End
*CloseUI: *PageRegion

*% The following entries provide information about specific paper keywords.
*DefaultImageableArea: Letter
*ImageableArea Letter: "10.8 10.8901 598.32 781.29 "
*ImageableArea Legal: "10.8 10.89 598.32 997.29 "
*ImageableArea Tabloid: "10.8001 10.8901 776.88 1213.29 "
*ImageableArea A3: "10.8 10.8901 828.72 1178.73 "
*ImageableArea A4: "10.8001 10.89 581.04 830.25 "
*ImageableArea A5: "10.8 10.8901 408.24 584.01 "
*ImageableArea B4: "10.8 10.89 713.52 1020.33 "
*ImageableArea B5: "10.8001 10.89 500.4 717.93 "
*ImageableArea Executive: "10.8001 10.8901 506.16 745.29 "
*ImageableArea Folio: "10.8001 10.8901 581.04 923.85 "
*ImageableArea Envelope.297.684/Com #10 Envelope: "11.5201 11.61 282.24 672.57 "
*?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 Legal: "612 1008"
*PaperDimension Tabloid: "792 1224"
*PaperDimension A3: "842 1191"
*PaperDimension A4: "595 842"
*PaperDimension A5: "420 595"
*PaperDimension B4: "728 1032"
*PaperDimension B5: "516 728"
*PaperDimension Executive: "522 756"
*PaperDimension Folio: "595 935"
*PaperDimension Envelope.297.684/Com #10 Envelope: "297 684"

*OpenUI *InputSlot: PickOne
*OrderDependency: 20 AnySetup *InputSlot
*DefaultInputSlot: Upper
*InputSlot Upper/Top: "
  currentpagedevice /InputAttributes get 0 get 
  dup null eq 
  { pop } 
  { dup length 1 add dict copy 
    dup /InputAttributes
    1 dict dup /Priority [0] put
    put setpagedevice
  } ifelse"
*End
*InputSlot Middle: "
  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/Bottom: "
  currentpagedevice /InputAttributes get
  { 2 get } stopped
  { pop pop /bottom 1 def } { pop /bottom 2 def } ifelse
  currentpagedevice /InputAttributes get bottom get 
  dup null eq
  { pop } 
  { dup length 1 add dict copy 
    dup /InputAttributes
    1 dict dup /Priority [bottom] put
    put setpagedevice
  } ifelse"
*End
*?InputSlot: "
save
  currentpagedevice /InputAttributes get
  { 2 get } stopped
  { pop pop false } { pop true } ifelse
  3 dict
  dup /0 (Upper) put
  dup /1 4 -1 roll {(Middle)} {(Lower)} ifelse put
  dup /2 (Lower) 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

*DefaultOutputBin: Upper/Top
*DefaultOutputOrder: Normal
*PageStackOrder Upper/Top: Normal
*PageStackOrder Lower/Bottom: Reverse

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

*OpenUI *TraySwitch:  Boolean
*OrderDependency: 50 AnySetup *TraySwitch
*DefaultTraySwitch: True
*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

*% Font Information =====================
*DefaultFont: Courier
*Font AvantGarde-Book: Standard "(001.006S)" Standard ROM
*Font AvantGarde-BookOblique: Standard "(001.006S)" Standard ROM
*Font AvantGarde-Demi: Standard "(001.007S)" Standard ROM
*Font AvantGarde-DemiOblique: Standard "(001.007S)" Standard ROM
*Font Bookman-Demi: Standard "(001.003S)" Standard ROM
*Font Bookman-DemiItalic: Standard "(001.003S)" Standard ROM
*Font Bookman-Light: Standard "(001.003S)" Standard ROM
*Font Bookman-LightItalic: Standard "(001.003S)" Standard ROM
*Font Courier: Standard "(002.004S)" Standard ROM
*Font Courier-Bold: Standard "(002.004S)" Standard ROM
*Font Courier-BoldOblique: Standard "(002.004S)" Standard ROM
*Font Courier-Oblique: Standard "(002.004S)" Standard ROM
*Font Garamond-Bold: Standard "(001.001)" Standard ROM
*Font Garamond-BoldItalic: Standard "(001.002)" Standard ROM
*Font Garamond-Light: Standard "(001.002)" Standard ROM
*Font Garamond-LightItalic: Standard "(001.002)" Standard ROM
*Font Helvetica: Standard "(001.006S)" Standard ROM
*Font Helvetica-Black: Standard "(001.001)" Standard ROM
*Font Helvetica-BlackOblique: Standard "(001.001)" Standard ROM
*Font Helvetica-Bold: Standard "(001.007S)" Standard ROM
*Font Helvetica-BoldOblique: Standard "(001.007S)" Standard ROM
*Font Helvetica-Condensed: Standard "(001.001)" Standard ROM
*Font Helvetica-Condensed-Bold: Standard "(001.002)" Standard ROM
*Font Helvetica-Condensed-BoldObl: Standard "(001.002)" Standard ROM
*Font Helvetica-Condensed-Oblique: Standard "(001.001)" Standard ROM
*Font Helvetica-Light: Standard "(001.002)" Standard ROM
*Font Helvetica-LightOblique: Standard "(001.002)" Standard ROM
*Font Helvetica-Narrow: Standard "(001.006S)" Standard ROM
*Font Helvetica-Narrow-Bold: Standard "(001.007S)" Standard ROM
*Font Helvetica-Narrow-BoldOblique: Standard "(001.007S)" Standard ROM
*Font Helvetica-Narrow-Oblique: Standard "(001.006S)" Standard ROM
*Font Helvetica-Oblique: Standard "(001.006S)" Standard ROM
*Font Korinna-Bold: Standard "(001.001)" Standard ROM
*Font Korinna-KursivBold: Standard "(001.003)" Standard ROM
*Font Korinna-KursivRegular: Standard "(001.003)" Standard ROM
*Font Korinna-Regular: Standard "(001.001)" Standard ROM
*Font NewCenturySchlbk-Bold: Standard "(001.009S)" Standard ROM
*Font NewCenturySchlbk-BoldItalic: Standard "(001.007S)" Standard ROM
*Font NewCenturySchlbk-Italic: Standard "(001.006S)" Standard ROM
*Font NewCenturySchlbk-Roman: Standard "(001.007S)" Standard ROM
*Font Palatino-Bold: Standard "(001.005S)" Standard ROM
*Font Palatino-BoldItalic: Standard "(001.005S)" Standard ROM
*Font Palatino-Italic: Standard "(001.005S)" Standard ROM
*Font Palatino-Roman: Standard "(001.005S)" Standard ROM
*Font Symbol: Special "(001.007S)" Special ROM
*Font Times-Bold: Standard "(001.007S)" Standard ROM
*Font Times-BoldItalic: Standard "(001.009S)" Standard ROM
*Font Times-Italic: Standard "(001.007S)" Standard ROM
*Font Times-Roman: Standard "(001.007S)" Standard ROM
*Font ZapfChancery-MediumItalic: Standard "(001.007S)" Standard ROM
*Font ZapfDingbats: Special "(001.004S)" Special ROM

*?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 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"
*Message: "%%[ Waiting for Ledger tray ]%%"
*Message: "%%[ Waiting for A3 tray ]%%"
*Message: "%%[ Waiting for Portrait A4 tray ]%%"
*Message: "%%[ Waiting for Landscape A4 tray ]%%"
*Message: "%%[ Waiting for Portrait A tray ]%%"
*Message: "%%[ Waiting for Landscape A tray ]%%"
*Message: "%%[ Waiting for Legal tray ]%%"
*Message: "%%[ Tray change timeout ]%%"
*Message: "%%[ Ledger tray installed ]%%"
*Message: "%%[ A3 tray installed ]%%"
*Message: "%%[ Portrait A4 tray installed ]%%"
*Message: "%%[ Landscape A4 tray installed ]%%"
*Message: "%%[ Portrait A tray installed ]%%"
*Message: "%%[ Landscape A tray installed ]%%"
*Message: "%%[ Legal tray installed ]%%"

*% Status (format: %%[ status: <one of these> ] %%)
*Status: "idle"
*Status: "busy"
*Status: "waiting"
*Status: "holding"
*Status: "initializing"

*% Input Sources (format: %%[ status: <stat>; source: <one of these> ]%% )
*Source: "Serial"
*Source: "LocalTalk"
*Source: "Parallel"
*Source: "VPI"
*Status: "PrinterError: Fuser Warming Up"
*Status: "PrinterError: E0 Media Tray Clear Misfeed"
*Status: "PrinterError: E1 Top Tray Clear Misfeed"
*Status: "PrinterError: E2 Middle Tray Clear Misfeed"
*Status: "PrinterError: E3 Bottom Tray Clear Misfeed"
*Status: "PrinterError: E4 Exit Path Clear Misfeed"
*Status: "PrinterError: E5 Media Path Clear Misfeed"
*Status: "PrinterError: C8 Registration? Check Plot"
*Status: "PrinterError: C0 Insert Tray"
*Status: "PrinterError: C1 Insert Top Tray"
*Status: "PrinterError: C2 Insert Middle Tray"
*Status: "PrinterError: C3 Insert Bottom Tray"
*Status: "PrinterError: C4 Tray Empty"
*Status: "PrinterError: C5 Top Tray Empty"
*Status: "PrinterError: C6 Middle Tray Empty"
*Status: "PrinterError: C7 Bottom Tray Empty"
*Status: "PrinterError: E7 Cover Open Close Cover"
*Status: "PrinterError: Replace EP Cartridge"
*Status: "PrinterError: J1 Replace EP Cartridge"
*Status: "PrinterError: U1 Motor Failure Call Service"
*Status: "PrinterError: U2 ROS Failure Call Service"
*Status: "PrinterError: U3 Fuser Failure Call Service"
*Status: "PrinterError: U0 Memory Error Call Service"
*Status: "PrinterError: C11 Wrong Tray"
*Status: "PrinterError: Waiting for manual feed"
*Status: "PrinterError: Waiting for MSF feed"

*% Printer Error (format: %%[ PrinterError: <one of these> ]%%)
*PrinterError: "Fuser Warming Up"
*PrinterError: "E0 Media Tray Clear Misfeed"
*PrinterError: "E1 Top Tray Clear Misfeed"
*PrinterError: "E2 Middle Tray Clear Misfeed"
*PrinterError: "E3 Bottom Tray Clear Misfeed"
*PrinterError: "E4 Exit Path Clear Misfeed"
*PrinterError: "E5 Media Path Clear Misfeed"
*PrinterError: "C8 Registration? Check Plot"
*PrinterError: "C0 Insert Tray"
*PrinterError: "C1 Insert Top Tray"
*PrinterError: "C2 Insert Middle Tray"
*PrinterError: "C3 Insert Bottom Tray"
*PrinterError: "C4 Tray Empty"
*PrinterError: "C5 Top Tray Empty"
*PrinterError: "C6 Middle Tray Empty"
*PrinterError: "C7 Bottom Tray Empty"
*PrinterError: "E7 Cover Open Close Cover"
*PrinterError: "Replace EP Cartridge"
*PrinterError: "J1 Replace EP Cartridge"
*PrinterError: "U1 Motor Failure Call Service"
*PrinterError: "U2 ROS Failure Call Service"
*PrinterError: "U3 Fuser Failure Call Service"
*PrinterError: "U0 Memory Error Call Service"
*PrinterError: "C11 Wrong Tray"
*PrinterError: "Waiting for manual feed"
*PrinterError: "Waiting for MSF feed"

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

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

*DefaultColorSep: ProcessBlack.70lpi.400dpi/70 lpi / 400 dpi

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

*%  For 70 lpi / 400 dpi  ===============================

*ColorSepScreenAngle ProcessBlack.70lpi.400dpi/70 lpi / 400 dpi: "45.0"
*ColorSepScreenAngle CustomColor.70lpi.400dpi/70 lpi / 400 dpi: "45.0"
*ColorSepScreenAngle ProcessCyan.70lpi.400dpi/70 lpi / 400 dpi: "45.0"
*ColorSepScreenAngle ProcessMagenta.70lpi.400dpi/70 lpi / 400 dpi: "45.0"
*ColorSepScreenAngle ProcessYellow.70lpi.400dpi/70 lpi / 400 dpi: "45.0"

*ColorSepScreenFreq ProcessBlack.70lpi.400dpi/70 lpi / 400 dpi: "45.0"
*ColorSepScreenFreq CustomColor.70lpi.400dpi/70 lpi / 400 dpi: "45.0"
*ColorSepScreenFreq ProcessCyan.70lpi.400dpi/70 lpi / 400 dpi: "45.0"
*ColorSepScreenFreq ProcessMagenta.70lpi.400dpi/70 lpi / 400 dpi: "45.0"
*ColorSepScreenFreq ProcessYellow.70lpi.400dpi/70 lpi / 400 dpi: "45.0"

*% Produced by "bldppd42.ps" version 4.0 edit 11
*% Last Edit Date: Apr 27 1993
*% The byte count of this file should be exactly 018364 or 018903
*% depending on the filesystem it resides in.
*% end of PPD file for Xerox 8812
