*% Adobe Systems Printer Description File
*% For "IBM Personal Page Printer II" version 51.4
*% Produced by "BuildPPD.ps" version 3.0 edit 58
*% Date: 5/30/89
*FormatVersion: "3.0"
*FileVersion: "1.0"
*LanguageVersion: English
 
*Product: "(IBM Personal Page Printer II)"
*PSVersion: "(51.4) 0"
*NickName: "IBM Personal Page Printer II-31"
 
*% General Information and Defaults ===============
*ColorDevice: False
*VariablePaperSize: False
*FileSystem: False
*?FileSystem: "/initializedisk where{pop(True)}{(False)} ifelse = flush"
*%Throughput: "6"
*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
 
*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: "60.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 Normalized: "{ }"
*Transfer Null: "{ }"
*Transfer Null.Inverse: "{ 1 exch sub }"
 
*% Paper Handling ===================
 
*% Use these entries to set paper size most of the time, unless there is
*% specific reason to use PageRegion or PaperTray.
*DefaultPageSize: Letter
*PageSize Letter: "statusdict begin lettertray end"
*PageSize Legal: "statusdict begin legaltray end"
*PageSize Statement: "statusdict begin statementtray end"
*PageSize A4: "statusdict begin a4tray end"
*PageSize A5: "statusdict begin a5tray end"
*PageSize B5: "statusdict begin b5tray end"
 
 
*% These entries will set up the frame buffer. Usually used with manual feed.
*DefaultPageRegion: Letter
*PageRegion Letter: "letter"
*PageRegion Legal: "legal"
*PageRegion A4: "a4"
*PageRegion A5: "a5"
*PageRegion B5: "b5"
*PageRegion Statement: "statement"
 
*% 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
*DefaultPaperTray: None
*PaperTray Letter: "statusdict begin lettertray end"
*PaperTray Legal: "statusdict begin legaltray end"
*PaperTray Statement: "statusdict begin statementtray end"
*PaperTray A4: "statusdict begin a4tray end"
*PaperTray A5: "statusdict begin a5tray end"
*PaperTray B5: "statusdict begin b5tray end"
 
*% The following entries provide information about specific paper keywords.
*DefaultImageableArea: Letter
*ImageableArea Letter: "17 16 595 776 "
*ImageableArea Legal: "17 16 595 992 "
*ImageableArea A4: "14 15 581 827 "
*ImageableArea A5: "12 13 407 583 "
*ImageableArea B5: "13 13 503 716 "
*ImageableArea Statement: "12 15 384 597 "
*?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 A4: "595 842"
*PaperDimension A5: "420 595"
*PaperDimension B5: "516 729"
*PaperDimension Statement: "396 612"
 
*DefaultInputSlot: None
*DefaultOutputBin: OnlyOne
 
*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 "(001.004)"
*Font Courier-Bold: Standard "(001.004)"
*Font Courier-BoldOblique: Standard "(001.004)"
*Font Courier-Oblique: Standard "(001.004)"
*Font Emulatorfont: Special "(001.000)"
*Font Emulatorfont-Bold: Special "(001.000)"
*Font Garamond-Bold: Standard "(001.001)"
*Font Garamond-BoldItalic: Standard "(001.002)"
*Font Garamond-Light: Standard "(001.002)"
*Font Garamond-LightItalic: Standard "(001.002)"
*Font Helvetica: Standard "(001.002)"
*Font Helvetica-Black: Standard "(001.001)"
*Font Helvetica-BlackOblique: Standard "(001.001)"
*Font Helvetica-Bold: Standard "(001.002)"
*Font Helvetica-BoldOblique: Standard "(001.002)"
*Font Helvetica-Light: Standard "(001.002)"
*Font Helvetica-LightOblique: Standard "(001.002)"
*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 Korinna-Bold: Standard "(001.001)"
*Font Korinna-KursivBold: Standard "(001.003)"
*Font Korinna-KursivRegular: Standard "(001.003)"
*Font Korinna-Regular: Standard "(001.001)"
*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.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  4 dict begin /sv exch def
/str (fonts/                              ) def
/st2 128 string def
{
  count 0 gt {
    dup st2 cvs (/) print print (:) print
    dup FontDirectory exch known {pop (Yes)}{
     str exch st2 cvs dup length /len exch def
     6 exch putinterval str 0 len 6 add getinterval mark exch
     { } st2 filenameforall counttomark 0 gt {
      cleartomark (Yes)}{cleartomark (No)}ifelse
    }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
/filenameforall where {
 pop save (fonts/*) {
  dup length 6 sub 6 exch getinterval cvn ==
 } bind str filenameforall flush restore
} if
(*) = flush
sv end 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: "initializing"
*Status: "printing test page"
*Status: "PrinterError: CPU error"
*Status: "PrinterError: main motor error"
*Status: "PrinterError: replacement magazine required"
*Status: "PrinterError: paper size error"
*Status: "PrinterError: paper exit jam"
*Status: "PrinterError: error ID=4"
*Status: "PrinterError: cleaning magazine needs replacing"
*Status: "PrinterError: optical unit error"
*Status: "PrinterError: feeder motor error"
*Status: "PrinterError: paper transport jam"
*Status: "PrinterError: feeder cover open"
*Status: "PrinterError: error ID=13"
*Status: "PrinterError: fusing unit error"
*Status: "PrinterError: toner is low"
*Status: "PrinterError: out of paper"
*Status: "PrinterError: printer warming up"
*Status: "PrinterError: printing test page"
*Status: "PrinterError: feeder hardware error"
*Status: "PrinterError: paper feed error"
*Status: "PrinterError: timeout"
*Status: "PrinterError: cover open"
*Status: "PrinterError: offline"
*Status: "PrinterError: out of envelopes or feed error"
*Status: "PrinterError: lower tray out of paper"
*Status: "PrinterError: upper tray out of paper"
*Status: "PrinterError: both trays out of paper"
 
*% Input Sources (format: %%[ status: <stat>; source: <one of these> ]%% )
*Source: "serial9"
*Source: "serial25"
*Source: "AppleTalk"
*Source: "Centronics"
 
*% Printer Error (format: %%[ PrinterError: <one of these> ]%%)
*PrinterError: CPU error"
*PrinterError: main motor error"
*PrinterError: replacement magazine required"
*PrinterError: paper size error"
*PrinterError: paper exit jam"
*PrinterError: error ID=4"
*PrinterError: cleaning magazine needs replacing"
*PrinterError: optical unit error"
*PrinterError: feeder motor error"
*PrinterError: paper transport jam"
*PrinterError: feeder cover open"
*PrinterError: error ID=13"
*PrinterError: fusing unit error"
*PrinterError: toner is low"
*PrinterError: out of paper"
*PrinterError: printer warming up"
*PrinterError: printing test page"
*PrinterError: feeder hardware error"
*PrinterError: paper feed error"
*PrinterError: timeout"
*PrinterError: cover open"
*PrinterError: offline"
*PrinterError: out of envelopes or feed error"
*PrinterError: lower tray out of paper"
*PrinterError: upper tray out of paper"
*PrinterError: both trays 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"
 
*% end of PPD file for IBM Personal Page Printer II
 
