Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

480 lines
18 KiB

*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: "1.0"
*LanguageVersion: English
*PCFileName: "IB4029A1.PPD"
*Product: "(IBM LaserPrinter 4029)"
*PSVersion: "(52.3) 1"
*ModelName: "IBM 4029 with 17 Fonts"
*NickName: "IBM 4029 with 17 Fonts v52.3"
*% === Options and Constraints ============
*UIConstraints: *Resolution 600dpi *Smoothing True
*UIConstraints: *Smoothing True *Resolution 600dpi
*% General Information and Defaults ===============
*LanguageLevel: "1"
*Extensions: FileSystem
*Protocols: BCP
*FreeVM: "675000"
*ColorDevice: False
*DefaultColorSpace: Gray
*VariablePaperSize: False
*Throughput: "10"
*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
*OpenUI *Resolution: PickOne
*DefaultResolution: 300dpi
*Resolution 300dpi: "300 statusdict /setresolution get exec"
*Resolution 600dpi: "600 statusdict /setresolution get exec"
*?Resolution: "
save
initgraphics
matrix defaultmatrix dup
0 get dup mul exch 1 get dup mul add sqrt
72 mul round cvi
( ) cvs print (dpi) = flush
restore
"
*End
*CloseUI: *Resolution
*OpenUI *Smoothing: Boolean
*DefaultSmoothing: True
*Smoothing False: "0 statusdict /setdoret get exec"
*Smoothing True: "3 statusdict /setdoret get exec"
*?Smoothing: "
save
[(False)(True)(True)(True)(Unknown)] statusdict /doret get exec
dup 3 gt{pop 4}if get = flush
restore
"
*End
*CloseUI: *Smoothing
*% 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 Null: "{ }"
*Transfer Null.Inverse: "{ 1 exch sub }"
*% Paper Handling ===================
*% Code in this section selects a tray and sets up a frame buffer.
*OpenUI *PageSize: PickOne
*OrderDependency: 30 AnySetup *PageSize
*DefaultPageSize: Letter
*PageSize Letter: "statusdict /lettertray get exec"
*PageSize Legal: "statusdict /legaltray get exec"
*PageSize Executive: "statusdict /executivetray get exec"
*PageSize A4: "statusdict /a4tray get exec"
*PageSize A5: "statusdict /a5tray get exec"
*PageSize B5: "statusdict /b5tray get exec"
*PageSize Monarch/Monarch Envelope: "statusdict /3.875x7.5envelopetray get exec"
*PageSize Comm10/Comm #10 Envelope: "statusdict /4.125x9.5envelopetray get exec"
*PageSize DL/DL Envelope: "statusdict /110x220envelopetray get exec"
*PageSize C5/C5 Envelope: "statusdict /162x229envelopetray get exec"
*PageSize C9/C9 Envelope: "statusdict /3.875x8.875envelopetray get exec"
*PageSize Envelope.499.709/B5 Envelope: "statusdict /176x250envelopetray get exec"
*PageSize Envelope.612.1008/Other Envelope: "statusdict /otherenvelopetray get exec"
*?PageSize: "
save
13 dict
dup /letter (Letter) put
dup /legal (Legal) put
dup /a4 (A4) put
dup /a5 (A5) put
dup /b5 (B5) put
dup /3.875x7.5envelope (Monarch) put
dup /4.125x9.5envelope (Comm10) put
dup /110x220envelope (DL) put
dup /162x229envelope (C5) put
dup /executivepage (Executive) put
dup /3.875x8.875envelope (C9) put
dup /176x250envelope (Envelope.499.709) put
dup /otherenvelope (Envelope.612.1008) put
statusdict /papersize get exec
3 1 roll {get} stopped {(Unknown)}if
exch not { print (.Transverse) }if
= flush
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: Letter
*PageRegion Letter: "letter"
*PageRegion Legal: "legal"
*PageRegion A4: "a4"
*PageRegion A5: "a5"
*PageRegion B5: "b5"
*PageRegion Monarch/Monarch Envelope: "3.875x7.5envelope"
*PageRegion Comm10/Comm #10 Envelope: "4.125x9.5envelope"
*PageRegion DL/DL Envelope: "110x220envelope"
*PageRegion C5/C5 Envelope: "162x229envelope"
*PageRegion Executive: "executivepage"
*PageRegion C9/C9 Envelope: "3.875x8.875envelope"
*PageRegion Envelope.499.709/B5 Envelope: "176x250envelope"
*PageRegion Envelope.612.1008/Other Envelope: "otherenvelope"
*CloseUI: *PageRegion
*% The following entries provide information about specific paper keywords.
*DefaultImageableArea: Letter
*ImageableArea Letter: "18.0 16.56 597.12 776.64 "
*ImageableArea Legal: "18.0 17.52 597.12 992.64 "
*ImageableArea A4: "9.6 18.9601 588.72 827.04 "
*ImageableArea A5: "18.0 12.48 405.6 580.56 "
*ImageableArea B5: "18.0 17.04 505.44 711.84 "
*ImageableArea Monarch/Monarch Envelope: "18.0 12.7201 278.88 527.04 "
*ImageableArea Comm10/Comm #10 Envelope: "18.0 14.16 294.24 668.64 "
*ImageableArea DL/DL Envelope: "18.0 13.2001 309.6 608.16 "
*ImageableArea C5/C5 Envelope: "18.0 12.24 455.52 634.08 "
*ImageableArea Executive: "18.0 17.04 505.44 740.64 "
*ImageableArea C9/C9 Envelope: "18.0 13.2001 278.88 623.52 "
*ImageableArea Envelope.499.709/B5 Envelope: "18.0 12.24 497.76 693.6 "
*ImageableArea Envelope.612.1008/Other Envelope: "18.0 17.52 597.12 992.64 "
*?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 A4: "595 842"
*PaperDimension A5: "420 595"
*PaperDimension B5: "516 729"
*PaperDimension Monarch/Monarch Envelope: "279 540"
*PaperDimension Comm10/Comm #10 Envelope: "297 684"
*PaperDimension DL/DL Envelope: "312 624"
*PaperDimension C5/C5 Envelope: "459 649"
*PaperDimension Executive: "540 720"
*PaperDimension C9/C9 Envelope: "279 639"
*PaperDimension Envelope.499.709/B5 Envelope: "499 709"
*PaperDimension Envelope.612.1008/Other Envelope: "612 1008"
*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
*OpenUI *InputSlot: PickOne
*OrderDependency: 20 AnySetup *InputSlot
*DefaultInputSlot: Upper
*InputSlot Upper: "0 statusdict /setpapertray get exec"
*InputSlot Lower: "1 statusdict /setpapertray get exec"
*InputSlot Envelope: "2 statusdict /setpapertray get exec"
*InputSlot Manual: "3 statusdict /setpapertray get exec"
*InputSlot ManualEnvelope: "4 statusdict /setpapertray get exec"
*?InputSlot: "
save
[ (Upper) (Lower) (Envelope) (Manual) (ManualEnvelope) ] statusdict /papertray get exec
{get exec} stopped { pop pop (Unknown) } if = flush
restore
"
*End
*CloseUI: *InputSlot
*DefaultOutputBin: Upper
*DefaultOutputOrder: Normal
*PageStackOrder Upper: Normal
*PageStackOrder Front: Reverse
*OpenUI *TraySwitch: Boolean
*OrderDependency: 50 AnySetup *TraySwitch
*DefaultTraySwitch: False
*TraySwitch True: "statusdict /trayswitch true put"
*TraySwitch False: "statusdict /trayswitch false put"
*?TraySwitch: "
save
statusdict /trayswitch get {(True)}{(False)}ifelse = flush
restore
"
*End
*CloseUI: *TraySwitch
*% Font Information =====================
*DefaultFont: Courier
*Font Courier: Standard "(002.002)" 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.002)" Standard ROM
*Font Helvetica-Bold: Standard "(001.002)" Standard ROM
*Font Helvetica-BoldOblique: Standard "(001.002)" Standard ROM
*Font Helvetica-Narrow: Standard "(001.002)" Standard ROM
*Font Helvetica-Narrow-Bold: Standard "(001.002)" Standard ROM
*Font Helvetica-Narrow-BoldOblique: Standard "(001.002)" Standard ROM
*Font Helvetica-Narrow-Oblique: Standard "(001.002)" Standard ROM
*Font Helvetica-Oblique: Standard "(001.002)" Standard ROM
*Font Symbol: Special "(001.003)" Special ROM
*Font Times-Bold: Standard "(001.002)" Standard ROM
*Font Times-BoldItalic: Standard "(001.004)" Standard ROM
*Font Times-Italic: Standard "(001.002)" Standard ROM
*Font Times-Roman: Standard "(001.002)" 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: "Printer Busy"
*Status: "Warming Up"
*Status: "PrinterError: Printer Offline"
*Status: "PrinterError: Paper Out or Feed Failure - Tray 1"
*Status: "PrinterError: Paper Out or Feed Failure - Tray 2"
*Status: "PrinterError: Paper Out or Feed Failure - Envelope Feeder"
*Status: "PrinterError: Load Paper Requested"
*Status: "PrinterError: Load Envelope Requested"
*Status: "PrinterError: Invalid Manual Insertion"
*Status: "PrinterError: Wrong Paper Length"
*Status: "PrinterError: Paper Jam"
*Status: "PrinterError: Cover Open/Cartridge Not Installed"
*Status: "PrinterError: Output Bin Full"
*Status: "PrinterError: Default Storage Error"
*Status: "PrinterError: Battery Low - Slot 1"
*Status: "PrinterError: Battery Low - Slot 2"
*Status: "PrinterError: Non-Download Font Card Installed - Slot 1"
*Status: "PrinterError: Non-Download Font Card Installed - Slot 2"
*Status: "PrinterError: Write-Protect Switch in Protect Position - Slot 1"
*Status: "PrinterError: Write-Protect Switch in Protect Position - Slot 2"
*Status: "PrinterError: Defective or Unprogrammed Card Installed - Slot 1"
*Status: "PrinterError: Defective or Unprogrammed Card Installed - Slot 2"
*Status: "PrinterError: Defective Font Card Installed - Slot 1"
*Status: "PrinterError: Defective Font Card Installed - Slot 2"
*Status: "PrinterError: Unsupported Card Installed - Slot 1"
*Status: "PrinterError: Unsupported Card Installed - Slot 2"
*Status: "PrinterError: Printer Busy"
*Status: "PrinterError: Printer Error"
*Status: "PrinterError: Printer Warming Up"
*Status: "PrinterError: Service Error"
*Status: "PrinterError: ioerror"
*Status: "PrinterError: Wrong Paper Size Installed"
*% 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: "Printer Offline"
*PrinterError: "Paper Out or Feed Failure - Tray 1"
*PrinterError: "Paper Out or Feed Failure - Tray 2"
*PrinterError: "Paper Out or Feed Failure - Envelope Feeder"
*PrinterError: "Load Paper Requested"
*PrinterError: "Load Envelope Requested"
*PrinterError: "Invalid Manual Insertion"
*PrinterError: "Wrong Paper Length"
*PrinterError: "Paper Jam"
*PrinterError: "Cover Open/Cartridge Not Installed"
*PrinterError: "Output Bin Full"
*PrinterError: "Default Storage Error"
*PrinterError: "Battery Low - Slot 1"
*PrinterError: "Battery Low - Slot 2"
*PrinterError: "Non-Download Font Card Installed - Slot 1"
*PrinterError: "Non-Download Font Card Installed - Slot 2"
*PrinterError: "Write-Protect Switch in Protect Position - Slot 1"
*PrinterError: "Write-Protect Switch in Protect Position - Slot 2"
*PrinterError: "Defective or Unprogrammed Card Installed - Slot 1"
*PrinterError: "Defective or Unprogrammed Card Installed - Slot 2"
*PrinterError: "Defective Font Card Installed - Slot 1"
*PrinterError: "Defective Font Card Installed - Slot 2"
*PrinterError: "Unsupported Card Installed - Slot 1"
*PrinterError: "Unsupported Card Installed - Slot 2"
*PrinterError: "Printer Busy"
*PrinterError: "Printer Error"
*PrinterError: "Printer Warming Up"
*PrinterError: "Service Error"
*PrinterError: "ioerror"
*PrinterError: "Wrong Paper Size Installed"
*%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 ================================
*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"
*% Produced by "BuildPPD4.0L1.ps" version 4.0 edit 6
*% Last Edit Date: 21 Apr 1992
*% The byte count of this file should be exactly 017883 or 018363
*% depending on the filesystem it resides in.
*% end of PPD file for IBM LaserPrinter 4029