*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.2"
*PCFileName: "APLWIIf1.PPD"
*LanguageVersion: English
*Product: "(LaserWriter IIf)"
*PSVersion: "(2010.113) 1"
*ModelName: "Apple LaserWriter IIf"
*NickName: "Apple LaserWriter IIf v2010.113"

*% ==== Options and Constraints =====
*OpenGroup: InstallableOptions/Options Installed

*OpenUI *Option1/Memory Configuration: PickOne
*DefaultOption1: None
*Option1 None/Minimum 2 MB: ""
*Option1 4Meg/Upgrade to 4 MB: ""
*Option1 5Meg/Upgrade to 5 MB: ""
*Option1 8Meg/Upgrade to 8 MB: ""
*CloseUI: *Option1

*CloseGroup: InstallableOptions

*UIConstraints: *Option1 None *BitsPerPixel 4
*UIConstraints: *Option1 4Meg *BitsPerPixel 4

*% === Basic Capabilities ===============
*FreeVM: "296304"
*LanguageLevel: "2"
*Protocols: BCP
*ColorDevice: False
*DefaultColorSpace: Gray
*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
*Emulators: hplj
*StartEmulator_hplj: "currentfile /hpcl statusdict /emulate get exec "
*StopEmulator_hplj: "<1B7F>0"
*Throughput: "8"
*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: 300dpi
*?Resolution: "
   save
   currentpagedevice /HWResolution get
   0 get
   (          ) cvs print (dpi) = flush
   restore"
*End

*% === PhotoGrade (bits per pixel) =============
*OpenUI *BitsPerPixel/PhotoGrade(TM): Boolean
*OrderDependency: 50 AnySetup *BitsPerPixel
*DefaultBitsPerPixel: 4
*BitsPerPixel 4/On: "1 dict dup /PreRenderingEnhance true put setpagedevice"
*BitsPerPixel None/Off: "1 dict dup /PreRenderingEnhance false put setpagedevice"
*?BitsPerPixel: "
   save currentpagedevice /PreRenderingEnhance get
   {(4)}{(None)} ifelse = flush restore"
*End
*CloseUI: *BitsPerPixel

*% === FinePrint (smoothing) =============
*OpenUI *Smoothing/FinePrint(TM): Boolean
*OrderDependency: 50 AnySetup *Smoothing
*DefaultSmoothing: True
*Smoothing True/On: "1 dict dup /PostRenderingEnhance true put setpagedevice"
*Smoothing False/Off: "1 dict dup /PostRenderingEnhance false put setpagedevice"
*?Smoothing: "
   save currentpagedevice /PostRenderingEnhance get
   {(True)}{(False)} ifelse = flush restore"
*End
*CloseUI: *Smoothing

*% === Halftone Information ===============
*AccurateScreensSupport: True
*ScreenFreq: "60.0"
*ScreenAngle: "45"
*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 ===================
*% 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: Unknown
*PageSize Letter/US Letter: "2 dict dup /PageSize [612 792] put dup /ImagingBBox null put setpagedevice"
*PageSize Legal/US Legal: "2 dict dup /PageSize [612 1008] put dup /ImagingBBox null put setpagedevice"
*PageSize A4: "2 dict dup /PageSize [595 842] put dup /ImagingBBox null put setpagedevice"
*PageSize B5: "2 dict dup /PageSize [516 729] put dup /ImagingBBox null put setpagedevice"
*PageSize LetterSmall/US Letter Small: "userdict /lettersmall get exec"
*PageSize Monarch/Monarch Envelope Center Fed: "
  2 dict dup /PageSize [612 792] put dup /ImagingBBox null put setpagedevice"
*End
*PageSize Com10/Com10 Envelope Center Fed: "
  2 dict dup /PageSize [612 792] put dup /ImagingBBox null put setpagedevice"
*End
*?PageSize: "
   save currentpagedevice /PageSize get aload pop
   2 copy gt {exch} if (Unknown) 
   4 dict
   dup [612 792] (Letter) put
   dup [612 1008] (Legal) put
   dup [595 842] (A4) put
   dup [516 729] (B5) 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

*% These entries will set up the frame buffer. Usually used with manual feed.
*OpenUI *PageRegion: PickOne
*OrderDependency: 40 AnySetup *PageRegion
*DefaultPageRegion: Unknown
*PageRegion Letter/US Letter: "2 dict dup /PageSize [612 792] put dup /ImagingBBox null put setpagedevice"
*PageRegion Legal/US Legal: "2 dict dup /PageSize [612 1008] put dup /ImagingBBox null put setpagedevice"
*PageRegion A4: "2 dict dup /PageSize [595 842] put dup /ImagingBBox null put setpagedevice"
*PageRegion B5: "2 dict dup /PageSize [516 729] put dup /ImagingBBox null put setpagedevice"
*PageRegion LetterSmall/US Letter Small: "userdict /lettersmall get exec"
*PageRegion Monarch/Monarch Envelope Center Fed: "
  2 dict dup /PageSize [612 792] put dup /ImagingBBox null put setpagedevice"
*End
*PageRegion Com10/Com10 Envelope Center Fed: "
  2 dict dup /PageSize [612 792] put dup /ImagingBBox null put setpagedevice"
*End
*CloseUI: *PageRegion

*% The following entries provide information about specific paper keywords.
*DefaultImageableArea: Unknown
*ImageableArea Letter/US Letter: "31 31 583 761  "
*ImageableArea Legal/US Legal: "15 8 597 1000 "
*ImageableArea A4: "27 31 571 811 "
*ImageableArea B5: "21 10 504 715 "
*ImageableArea LetterSmall/US Letter Small: "31 31 583 761 "
*ImageableArea Monarch/Monarch Envelope Center Fed: "197.5 31 445.5 540 "
*ImageableArea Com10/Com10 Envelope Center Fed: "188.5 31 454.5 684 "
*?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: Unknown
*PaperDimension Letter/US Letter: "612 792"
*PaperDimension Legal/US Legal: "612 1008"
*PaperDimension A4: "595 842"
*PaperDimension B5: "516 729"
*PaperDimension LetterSmall/US Letter Small: "612 792"
*PaperDimension Monarch/Monarch Envelope Center Fed: "279 540"
*PaperDimension Com10/Com10 Envelope Center Fed: "297 684"

*OpenUI *ManualFeed/Manual Feed: 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 *InputSlot: PickOne
*OrderDependency: 20 AnySetup *InputSlot
*DefaultInputSlot: Cassette
*InputSlot Cassette: ""
*CloseUI: *InputSlot

*DefaultOutputBin: OnlyOne
*DefaultOutputOrder: Normal

*% === Font Information =====================
*DefaultFont: Courier
*Font AvantGarde-Book: Standard "(001.002)" Standard ROM
*Font AvantGarde-BookOblique: Standard "(001.002)" Standard ROM
*Font AvantGarde-Demi: Standard "(001.003)" Standard ROM
*Font AvantGarde-DemiOblique: Standard "(001.003)" 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.003)" Standard ROM
*Font Courier-Bold: Standard "(002.003)" Standard ROM
*Font Courier-BoldOblique: Standard "(002.003)" Standard ROM
*Font Courier-Oblique: Standard "(002.003)" Standard ROM
*Font Helvetica: Standard "(001.006S)" Standard ROM
*Font Helvetica-Bold: Standard "(001.007S)" Standard ROM
*Font Helvetica-BoldOblique: Standard "(001.007S)" 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 NewCenturySchlbk-Bold: Standard "(001.008S)" Standard ROM
*Font NewCenturySchlbk-BoldItalic: Standard "(001.006S)" Standard ROM
*Font NewCenturySchlbk-Italic: Standard "(001.005S)" Standard ROM
*Font NewCenturySchlbk-Roman: Standard "(001.006S)" 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.006)" Standard 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"

*% Status (format: %%[ status: <one of these> ]%% )
*Status: "initializing"
*Status: "idle"
*Status: "holding"
*Status: "busy"
*Status: "waiting"
*Status: "PrinterError: cover open"
*Status: "PrinterError: warming up"
*Status: "PrinterError: toner cartridge missing or incorrect"
*Status: "PrinterError: paper entry misfeed"
*Status: "PrinterError: paper exit misfeed"
*Status: "PrinterError: out of paper"
*Status: "PrinterError: no paper tray"
*Status: "PrinterError: fixing temperature malfunction"
*Status: "PrinterError: scanner motor malfunction"
*Status: "PrinterError: laser doide or scanning mirror malfunction"
*Status: "PrinterError: test printing stage"
*Status: "PrinterError: service call"

*% Input Sources (format: %%[ status: <stat>; source: <one of these> ]%% )
*Source: "Serial"
*Source: "SerialB"
*Source: "LocalTalk"

*% Printer Error (format: %%[ PrinterError: <one of these> ]%%)
*PrinterError: "cover open"
*PrinterError: "warming up"
*PrinterError: "toner cartridge missing or incorrect"
*PrinterError: "paper entry misfeed"
*PrinterError: "paper exit misfeed"
*PrinterError: "out of paper"
*PrinterError: "no paper tray"
*PrinterError: "fixing temperature malfunction"
*PrinterError: "scanner motor malfunction"
*PrinterError: "laser doide or scanning mirror malfunction"
*PrinterError: "test printing stage"
*PrinterError: "service call"

*% 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 "LaserWriter IIf" version 2010.113
*% Converted to meet 4.0 specification
*% Last Edit Date: Oct 26 1992
*% The byte count of this file should be exactly 013974 or 014333
*% depending on the filesystem it resides in.
*% end of PPD file for Apple LaserWriter IIf
