*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: "MOIM1201.PPD"
*LanguageVersion: English
*Product: "(Monotype Imagesetter)"
*PSVersion: "(52.3) 2.11"
*ModelName: "Monotype ImageMaster 1200"
*NickName: "Monotype ImageMaster 1200 v52.3"

*% ======== Constraints ==========
*UIConstraints: *InputSlot Lower *PageSize Letter
*UIConstraints: *InputSlot Lower *PageSize Legal
*UIConstraints: *InputSlot Lower *PageSize Ledger
*UIConstraints: *InputSlot Lower *PageRegion Letter
*UIConstraints: *InputSlot Lower *PageRegion Legal
*UIConstraints: *InputSlot Lower *PageRegion Ledger
*UIConstraints: *InputSlot Upper *PageSize Letter
*UIConstraints: *InputSlot Upper *PageSize Legal
*UIConstraints: *InputSlot Upper *PageSize Ledger
*UIConstraints: *InputSlot Upper *PageRegion Letter
*UIConstraints: *InputSlot Upper *PageRegion Legal
*UIConstraints: *InputSlot Upper *PageRegion Ledger

*% General Information and Defaults ===============
*FreeVM: "2353786"
*LanguageLevel: "1"
*Extensions: CMYK FileSystem
*ColorDevice: False
*DefaultColorSpace: Gray
*VariablePaperSize: True
*FileSystem: True
*?FileSystem: "
save
  statusdict /diskonline get exec {(True)}{(False)} ifelse = flush
restore
"
*End

*Throughput: "7"
*Password: "0"
*ExitServer: "
  count 0 eq {  % is the password on the stack?
    true 
  }{
    dup        % potential password
    statusdict /checkpassword get exec 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 /exitserver get exec
"
*End

*Reset: "
  count 0 eq {  % is the password on the stack?
    true 
  }{
    dup        % potential password
    statusdict /checkpassword get exec 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 /exitserver get exec
  systemdict /quit get exec
  (WARNING : Printer Reset Failed.) = flush
"
*End

*DefaultResolution: 600dpi 
*?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: "85.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 ===================
*% 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: "statusdict /lettertray get exec letter"
*PageSize Legal: "statusdict /legaltray get exec"
*PageSize Ledger: "statusdict /ledgertray get exec"
*PageSize A3: "statusdict /a3tray get exec a3"
*PageSize A4: "statusdict /a4tray get exec a4"
*PageSize A5: "statusdict /a5tray get exec a5"
*?PageSize: "
save
 mark
 statusdict /pageparams get exec
 pop pop
 (Unknown)
  3 dict
     dup [612 792] (Letter) put
     dup [612 1008] (Legal) put
     dup [1224 792] (Ledger) put
     dup [420 595] (A5) put
     dup [595 842] (A4) put
     dup [842 1191] (A3) put
  { exch aload pop
    4 index eq exch 5 index eq and
    { exch pop exit } { pop } ifelse
  } bind forall = flush
  cleartomark
restore
"
*End
*CloseUI: *PageSize

*% These entries will set up the frame buffer. Usually used with manual feed.
*% Extra sizes available through manual feed, not in trays.
*OpenUI *PageRegion: PickOne
*OrderDependency: 40 AnySetup *PageRegion
*DefaultPageRegion: Unknown
*PageRegion Letter: "letter"
*PageRegion Legal: "legal"
*PageRegion Ledger: "ledger"
*PageRegion A3: "a3"
*PageRegion A4: "a4"
*PageRegion A5: "a5"
*CloseUI: *PageRegion

*% The following entries provide information about specific paper keywords.
*DefaultImageableArea: Unknown
*ImageableArea Letter: "9 11 603 781 "
*ImageableArea Legal: "9 11 603 997 "
*ImageableArea Ledger: "9 11 1215 781 "
*ImageableArea A3: "9 11 833 1179 "
*ImageableArea A4: "9 11 586 831 "
*ImageableArea A5: "0 1 422 595 "
*?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: "612 792"
*PaperDimension Legal: "612 1008"
*PaperDimension Ledger: "1224 792"
*PaperDimension A3: "842 1191"
*PaperDimension A4: "595 842"
*PaperDimension A5: "420 595"

*DefaultOutputBin: OnlyOne
*DefaultOutputOrder: Normal

*RequiresPageRegion All: True

*OpenUI *InputSlot: PickOne
*OrderDependency: 20 AnySetup *InputSlot
*DefaultInputSlot: Lower
*InputSlot Upper: "0 statusdict /setpapertray get exec"
*InputSlot Lower: "1 statusdict /setpapertray get exec"
*?InputSlot: "
 save 
 [ (Upper) (Lower) ] statusdict /papertray get exec
  {get exec} stopped { pop pop (Unknown)} if = flush
  restore
"
*End
*CloseUI: *InputSlot

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

*% Font Information =====================
*DefaultFont: Courier
*Font Courier: Standard "(001.004)" Standard ROM
*Font Courier-Bold: Standard "(002.002)" Standard ROM
*Font Courier-BoldOblique: Standard "(002.002)" Standard ROM
*Font Courier-Oblique: Standard "(002.002)" Standard ROM
*Font Helvetica: Standard "(001.006)" Standard ROM
*Font Helvetica-Bold: Standard "(001.007)" Standard ROM
*Font Helvetica-BoldOblique: Standard "(001.007)" Standard ROM
*Font Helvetica-Narrow: Standard "(001.006)" Standard ROM
*Font Helvetica-Narrow-Bold: Standard "(001.007)" Standard ROM
*Font Helvetica-Narrow-BoldOblique: Standard "(001.007)" Standard ROM
*Font Helvetica-Narrow-Oblique: Standard "(001.006)" Standard ROM
*Font Helvetica-Oblique: Standard "(001.006)" Standard ROM
*Font Symbol: Special "(001.003)" Special ROM
*Font Times-Bold: Standard "(001.007)" Standard ROM
*Font Times-BoldItalic: Standard "(001.009)" Standard ROM
*Font Times-Italic: Standard "(001.007)" Standard ROM
*Font Times-Roman: Standard "(001.007)" Standard ROM
*?FontQuery: "
save
 /str 100 string dup 0 (fonts/) putinterval def
 {
   count 1 gt
   {
     exch dup str 6 94 getinterval cvs
     (/) print dup print (:) print exch
     FontDirectory exch known
     { pop (Yes) }
         {
           length 6 add str 0 3 -1 roll getinterval
           mark exch status
       {cleartomark (Yes)}{cleartomark (No)} ifelse
     } ifelse =
   }
   {exit} ifelse
 }bind loop
 (*) = flush
restore
"
*End

*?FontList: "
save
  FontDirectory { pop == } bind forall flush
  /filenameforall where
  {
    pop (fonts/*)
        { dup length 6 sub 6 exch getinterval cvn == } bind
    128 string filenameforall flush
  } if
  (*) = 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: "idle"
*Status: "busy"
*Status: "waiting"
*Status: "printing"
*Status: "warming up"
*Status: "PrinterError: Serious printer fault"
*Status: "PrinterError: Printer is out of paper"
*Status: "PrinterError: Paper is jammed in printer"
*Status: "PrinterError: Printer is out of toner"
*Status: "PrinterError: Used toner container is full"
*Status: "PrinterError: Printer cover is open"
*Status: "PrinterError: Material error"
*Status: "PrinterError: Laser error"
*Status: "PrinterError: Output unit is halted"
*Status: "PrinterError: Cassette not loaded"
*Status: "PrinterError: Knife error"
*Status: "PrinterError: On-line transport jammed"
*Status: "PrinterError: On-line transport fault"
*Status: "PrinterError: Automatic film loading error"
*Status: "PrinterError: Lazy loop error"
*Status: "PrinterError: Printer is warming up"
*Status: "PrinterError: Printer is running self test"
*Status: "PrinterError: Optimum cut occuring"
*Status: "PrinterError: Automatic film loading"
*Status: "PrinterError: Automatic film unloading"
*Status: "PrinterError: Printer offline"
*Status: "PrinterError: On-line Transport is busy"
*Status: "PrinterError: Printer is feeding film"
*Status: "PrinterError: Requested output resolution not supported"
*Status: "PrinterError: Requested feed factor not supported"
*Status: "PrinterError: Requested film advance not supported"
*Status: "PrinterError: Requested exposure value not supported"
*Status: "PrinterError: Requested negative printing not supported"
*Status: "PrinterError: Illegal Page Buffer mode"
*Status: "PrinterError: Output unit error"
*Status: "PrinterError: Output unit communications broken down"
*Status: "PrinterError: Laserplex communications broken down"
*Status: "PrinterError: Selected LaserBus not available"
*Status: "PrinterError: Selected LaserBus busy"
*Status: "PrinterError: Page Buffer communications broken down"
*Status: "PrinterError: Page Buffer busy"
*Status: "PrinterError: Page Buffer error"
*Status: "PrinterError: Offline or busy"
*Status: "PrinterError: Unspecified LaserBus/LaserPlex/PageBuffer error"
*Status: "PrinterError: Unspecified RipSwitch command"
*Status: "PrinterError: Unknown output unit status response"
*Status: "PrinterError: Interface card communications breakdown"
*Status: "PrinterError: Unknown printer error"
*Status: "PrinterError: Graphics Server not available, or parameter error"
*Status: "PrinterError: Graphics Server disk error"
*Status: "PrinterError: Graphics Server disk full"
*Status: "PrinterError: Graphics Server parameter error"

*% Input Sources (format: %%[ status: <stat>; source: <one of these> ]%% )
*Source: "serial 9"
*Source: "serial 25"
*Source: "AppleTalk"
*Source: "Centronics"

*% Printer Error (format: %%[ PrinterError: <one of these> ]%%)
*PrinterError: "Serious printer fault"
*PrinterError: "Printer is out of paper"
*PrinterError: "Paper is jammed in printer"
*PrinterError: "Printer is out of toner"
*PrinterError: "Used toner container is full"
*PrinterError: "Printer cover is open"
*PrinterError: "Material error"
*PrinterError: "Laser error"
*PrinterError: "Output unit is halted"
*PrinterError: "Cassette not loaded"
*PrinterError: "Knife error"
*PrinterError: "On-line transport jammed"
*PrinterError: "On-line transport fault"
*PrinterError: "Automatic film loading error"
*PrinterError: "Lazy loop error"
*PrinterError: "Printer is warming up"
*PrinterError: "Printer is running self test"
*PrinterError: "Optimum cut occuring"
*PrinterError: "Automatic film loading"
*PrinterError: "Automatic film unloading"
*PrinterError: "Printer offline"
*PrinterError: "On-line Transport is busy"
*PrinterError: "Printer is feeding film"
*PrinterError: "Requested output resolution not supported"
*PrinterError: "Requested feed factor not supported"
*PrinterError: "Requested film advance not supported"
*PrinterError: "Requested exposure value not supported"
*PrinterError: "Requested negative printing not supported"
*PrinterError: "Illegal Page Buffer mode"
*PrinterError: "Output unit error"
*PrinterError: "Output unit communications broken down"
*PrinterError: "Laserplex communications broken down"
*PrinterError: "Selected LaserBus not available"
*PrinterError: "Selected LaserBus busy"
*PrinterError: "Page Buffer communications broken down"
*PrinterError: "Page Buffer busy"
*PrinterError: "Page Buffer error"
*PrinterError: "Offline or busy"
*PrinterError: "Unspecified LaserBus/LaserPlex/PageBuffer error"
*PrinterError: "Unspecified RipSwitch command"
*PrinterError: "Unknown output unit status response"
*PrinterError: "Interface card communications breakdown"
*PrinterError: "Unknown printer error"
*PrinterError: "Graphics Server not available, or parameter error"
*PrinterError: "Graphics Server disk error"
*PrinterError: "Graphics Server disk full"
*PrinterError: "Graphics Server parameter error"

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

*% Color Separation Information =====================
*DefaultColorSep: ProcessBlack.85lpi.600dpi/85 lpi / 600 dpi

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

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

*% For "Monotype Imagesetter" version 52.3
*% Produced by "BuildPPD.ps" version 3.0 edit 58
*% Converted to meet 4.0 specification
*% Last Edit Date: Nov 30 1992
*% The byte count of this file should be exactly 015778 or 016224
*% depending on the filesystem it resides in.
*% end of PPD file for Monotype Imagesetter
