merge the formfield patch from ooo-build
[ooovba.git] / psprint_config / configuration / ppds / APPL_230.PS
blobb44008ce2e0c881ff5ef7b42cabb4d0e3fef122d
1 *PPD-Adobe: "4.0"\r
2 *% Adobe Systems PostScript(R) Printer Description File\r
3 *% Copyright 1987-1993 Adobe Systems Incorporated. \r
4 *% All Rights Reserved. \r
5 *% Permission is granted for redistribution of this file as\r
6 *% long as this copyright notice is intact and the contents\r
7 *% of the file is not altered in any way from its original form.\r
8 *% End of Copyright statement\r
9 *FormatVersion: "4.0"\r
10 *FileVersion: "3.3"\r
11 *PCFileName: "APPLE230.PPD"\r
12 *LanguageVersion: English\r
13 *Product: "(LaserWriter)"\r
14 *PSVersion: "(23.0) 0"\r
15 *ModelName: "Apple LaserWriter"\r
16 *NickName: "Apple LaserWriter v23.0"\r
18 *% General Information and Defaults ===============\r
19 *ColorDevice: False\r
20 *DefaultColorSpace: Gray\r
21 *FreeVM: "173936"\r
22 *LanguageLevel: "1"\r
23 *VariablePaperSize: False\r
24 *FileSystem: False\r
25 *Throughput: "8"\r
26 *Password: "0"\r
27 *ExitServer: "\r
28   count 0 eq {  % is the password on the stack?\r
29     true\r
30   }{\r
31     dup    % potential password\r
32     statusdict /checkpassword get exec not\r
33   } ifelse\r
34   {  %  if no password or not valid\r
35     (WARNING : Cannot perform the exitserver command.) =\r
36     (Password supplied is not valid.) =\r
37     (Please contact the author of this software.) = flush\r
38     quit\r
39   } if\r
40   serverdict /exitserver get exec\r
41 "\r
42 *End\r
44 *Reset: "\r
45   count 0 eq {  % is the password on the stack?\r
46     true\r
47   }{\r
48     dup    % potential password\r
49     statusdict /checkpassword get exec not\r
50   } ifelse\r
51   {  %  if no password or not valid\r
52     (WARNING : Cannot reset printer.) =\r
53     (Password supplied is not valid.) =\r
54     (Please contact the author of this software.) = flush\r
55     quit\r
56   } if\r
57   serverdict /exitserver get exec\r
58   systemdict /quit get exec\r
59   (WARNING : Printer Reset Failed.) = flush\r
60 "\r
61 *End\r
63 *DefaultResolution: 300dpi\r
64 *?Resolution: "\r
65 save\r
66   initgraphics\r
67   0 0 moveto currentpoint matrix defaultmatrix transform\r
68   0 72 lineto currentpoint matrix defaultmatrix transform\r
69   3 -1 roll sub dup mul\r
70   3 1 roll exch sub dup mul\r
71   add sqrt round cvi\r
72   (          ) cvs print (dpi) = flush\r
73 restore\r
74 "\r
75 *End\r
77 *% Halftone Information ===============\r
78 *ScreenFreq: "60.0"\r
79 *ScreenAngle: "45.0"\r
80 *DefaultScreenProc: Dot\r
81 *ScreenProc Dot: "\r
82 {dup mul exch dup mul add 1.0 exch sub }\r
83 "\r
84 *End\r
85 *ScreenProc Line: "{ pop }"\r
86 *ScreenProc Ellipse: "{ dup 5 mul 8 div mul exch dup mul exch add sqrt 1 exch sub }"\r
88 *DefaultTransfer: Null\r
89 *Transfer Null: "{ }"\r
90 *Transfer Null.Inverse: "{ 1 exch sub }"\r
92 *% Paper Handling ===================\r
93 *% Use these entries to set paper size most of the time, unless there is\r
94 *% specific reason to use PageRegion.\r
95 *OpenUI *PageSize: PickOne\r
96 *OrderDependency: 30 AnySetup *PageSize\r
97 *DefaultPageSize: Letter\r
98 *PageSize Letter/US Letter: "letter"\r
99 *PageSize Legal/US Legal: "legal"\r
100 *PageSize LetterSmall/US Letter Small: "lettersmall"\r
101 *PageSize LegalSmall/US Legal Small: "legal"\r
102 *PageSize A4: "a4"\r
103 *PageSize Monarch/Monarch Envelope Edge Fed: "letter"\r
104 *PageSize Com10/Com10 Envelope Edge Fed: "letter"\r
105 *?PageSize: "\r
106 save\r
107   [(Letter)(Legal)] statusdict /pagetype get exec\r
108   {get} stopped { pop pop (Unknown)} if = flush\r
109 restore\r
111 *End\r
112 *CloseUI: *PageSize\r
114 *% These entries will set up the frame buffer. Usually used with manual feed.\r
115 *OpenUI *PageRegion: PickOne\r
116 *OrderDependency: 40 AnySetup *PageRegion\r
117 *DefaultPageRegion: Letter\r
118 *PageRegion Letter/US Letter: "letter"\r
119 *PageRegion Legal/US Legal: "legal"\r
120 *PageRegion LetterSmall/US Letter Small: "lettersmall"\r
121 *PageRegion LegalSmall/US Legal Small: "legal"\r
122 *PageRegion A4: "a4"\r
123 *PageRegion Monarch/Monarch Envelope Edge Fed: "letter"\r
124 *PageRegion Com10/Com10 Envelope Edge Fed: "letter"\r
125 *CloseUI: *PageRegion\r
127 *% The following entries provide information about specific paper keywords.\r
128 *DefaultImageableArea: Letter\r
129 *ImageableArea Letter/US Letter: "18 8 593 784 "\r
130 *ImageableArea Legal/US Legal: "65 37 547 972 "\r
131 *ImageableArea LetterSmall/US Letter Small: "31 31 583 761 "\r
132 *ImageableArea LegalSmall/US Legal Small: "64 54 548 954 "\r
133 *ImageableArea A4:"17 22 578 820 "\r
134 *ImageableArea Monarch/Monarch Envelope Edge Fed: "19 269 274 773 "\r
135 *ImageableArea Com10/Com10 Envelope Edge Fed: "19 125 292 773 "\r
136 *?ImageableArea: "\r
137 save\r
138   /cvp {(                ) cvs print ( ) print } bind def\r
139   /upperright {10000 mul floor 10000 div} bind def\r
140   /lowerleft {10000 mul ceiling 10000 div} bind def\r
141   newpath clippath pathbbox\r
142   4 -2 roll exch 2 {lowerleft cvp} repeat\r
143   exch 2 {upperright cvp} repeat flush\r
144  restore\r
146 *End\r
148 *% These provide the physical dimensions of the paper (by keyword)\r
149 *DefaultPaperDimension: Letter\r
150 *PaperDimension Letter/US Letter: "612 792"\r
151 *PaperDimension Legal/US Legal: "612 1008"\r
152 *PaperDimension LetterSmall/US Letter Small: "612 792"\r
153 *PaperDimension LegalSmall/US Legal Small: "612 1008"\r
154 *PaperDimension A4: "595 842"\r
155 *PaperDimension Monarch/Monarch Envelope Edge Fed: "611 792"\r
156 *PaperDimension Com10/Com10 Envelope Edge Fed: "610 792"\r
158 *RequiresPageRegion All: True\r
159 *OpenUI *InputSlot: PickOne\r
160 *OrderDependency: 20 AnySetup *InputSlot\r
161 *DefaultInputSlot: Cassette\r
162 *InputSlot Cassette: ""\r
163 *CloseUI: *InputSlot\r
165 *OpenUI *ManualFeed/Manual Feed: Boolean\r
166 *OrderDependency: 20 AnySetup *ManualFeed\r
167 *DefaultManualFeed: False\r
168 *ManualFeed True: "statusdict /manualfeed true put"\r
169 *ManualFeed False: "statusdict /manualfeed false put"\r
170 *?ManualFeed: "\r
171 save\r
172  statusdict /manualfeed get {(True)}{(False)}ifelse = flush\r
173 restore\r
175 *End\r
176 *CloseUI: *ManualFeed\r
178 *DefaultOutputOrder: Reverse\r
180 *% Font Information =====================\r
181 *DefaultFont: Courier\r
182 *Font Courier-Bold: Standard "(001.000)" Standard ROM\r
183 *Font Courier-BoldOblique: Standard "(001.000)" Standard ROM\r
184 *Font Courier-Oblique: Standard "(001.000)" Standard ROM\r
185 *Font Helvetica: Standard "(001.001)" Standard ROM\r
186 *Font Helvetica-Bold: Standard "(001.001)" Standard ROM\r
187 *Font Helvetica-BoldOblique: Standard "(001.000)" Standard ROM\r
188 *Font Helvetica-Oblique: Standard "(001.000)" Standard ROM\r
189 *Font Symbol: Special "(001.001)" Special ROM\r
190 *Font Times-Bold: Standard "(001.001)" Standard ROM\r
191 *Font Times-BoldItalic: Standard "(001.001)" Standard ROM\r
192 *Font Times-Italic: Standard "(001.001)" Standard ROM\r
193 *Font Times-Roman: Standard "(001.000)" Standard ROM\r
194 *?FontQuery: "\r
195 save\r
196  /str 100 string dup 0 (fonts/) putinterval def\r
197  {\r
198    count 1 gt\r
199    {\r
200      exch dup str 6 94 getinterval cvs\r
201      (/) print print (:) print\r
202      FontDirectory exch known\r
203      {(Yes)}{(No)} ifelse =\r
204    }\r
205    {exit} ifelse\r
206  }bind loop\r
207  (*) = flush\r
208 restore\r
210 *End\r
212 *?FontList: "\r
213 save\r
214   FontDirectory { pop == } bind flush forall (*) = flush\r
215 restore\r
217 *End\r
219 *% Printer Messages (verbatim from printer):\r
220 *Message: "%%[ exitserver: permanent state may be changed ]%%"\r
221 *Message: "%%[ Flushing: rest of job (to end-of-file) will be ignored ]%%"\r
222 *Message: "\FontName\ not found, using Courier"\r
224 *% Status (format: %%[ status: <one of these> ]%% )\r
225 *Status: "idle"\r
226 *Status: "busy"\r
227 *Status: "waiting"\r
228 *Status: "printing"\r
229 *Status: "PrinterError: timeout, clearing printer"\r
230 *Status: "PrinterError: timeout"\r
231 *Status: "PrinterError: paper entry misfeed"\r
232 *Status: "PrinterError: no toner cartridge"\r
233 *Status: "PrinterError: service call"\r
234 *Status: "PrinterError: paper entry misfeed"\r
235 *Status: "PrinterError: no paper tray"\r
236 *Status: "PrinterError: out of paper"\r
237 *Status: "PrinterError: cover open"\r
238 *Status: "PrinterError: resetting printer"\r
239 *Status: "PrinterError: manual feed timeout"\r
240 *Status: "PrinterError: warming up"\r
242 *% Input Sources (format: %%[ status: <stat>; source: <one of these> ]%% )\r
243 *Source: "serial9"\r
244 *Source: "serial25"\r
245 *Source: "AppleTalk"\r
247 *% Printer Error (format: %%[ PrinterError: <one of these> ]%%)\r
248 *PrinterError: "timeout, clearing printer"\r
249 *PrinterError: "timeout"\r
250 *PrinterError: "paper entry misfeed"\r
251 *PrinterError: "no toner cartridge"\r
252 *PrinterError: "service call"\r
253 *PrinterError: "paper entry misfeed"\r
254 *PrinterError: "no paper tray"\r
255 *PrinterError: "out of paper"\r
256 *PrinterError: "cover open"\r
257 *PrinterError: "resetting printer"\r
258 *PrinterError: "manual feed timeout"\r
259 *PrinterError: "warming up"\r
261 *%DeviceAdjustMatrix: "[1 0 0 1 0 0]"\r
263 *% Color Separation Information =====================\r
265 *DefaultColorSep: ProcessBlack.60lpi.300dpi/60 lpi / 300 dpi\r
267 *InkName: ProcessBlack/Process Black\r
268 *InkName: CustomColor/Custom Color\r
269 *InkName: ProcessCyan/Process Cyan\r
270 *InkName: ProcessMagenta/Process Magenta\r
271 *InkName: ProcessYellow/Process Yellow\r
273 *% For 60 lpi / 300 dpi =====================================================\r
275 *ColorSepScreenAngle ProcessBlack.60lpi.300dpi/60 lpi / 300 dpi: "45"\r
276 *ColorSepScreenAngle CustomColor.60lpi.300dpi/60 lpi / 300 dpi: "45"\r
277 *ColorSepScreenAngle ProcessCyan.60lpi.300dpi/60 lpi / 300 dpi: "15"\r
278 *ColorSepScreenAngle ProcessMagenta.60lpi.300dpi/60 lpi / 300 dpi: "75"\r
279 *ColorSepScreenAngle ProcessYellow.60lpi.300dpi/60 lpi / 300 dpi: "0"\r
281 *ColorSepScreenFreq ProcessBlack.60lpi.300dpi/60 lpi / 300 dpi: "60"\r
282 *ColorSepScreenFreq CustomColor.60lpi.300dpi/60 lpi / 300 dpi: "60"\r
283 *ColorSepScreenFreq ProcessCyan.60lpi.300dpi/60 lpi / 300 dpi: "60"\r
284 *ColorSepScreenFreq ProcessMagenta.60lpi.300dpi/60 lpi / 300 dpi: "60"\r
285 *ColorSepScreenFreq ProcessYellow.60lpi.300dpi/60 lpi / 300 dpi: "60"\r
287 *% For 53 lpi / 300 dpi =====================================================\r
289 *ColorSepScreenAngle ProcessBlack.53lpi.300dpi/53 lpi / 300 dpi: "45.0"\r
290 *ColorSepScreenAngle CustomColor.53lpi.300dpi/53 lpi / 300 dpi: "45.0"\r
291 *ColorSepScreenAngle ProcessCyan.53lpi.300dpi/53 lpi / 300 dpi: "71.5651"\r
292 *ColorSepScreenAngle ProcessMagenta.53lpi.300dpi/53 lpi / 300 dpi: "18.4349"\r
293 *ColorSepScreenAngle ProcessYellow.53lpi.300dpi/53 lpi / 300 dpi: "0.0"\r
295 *ColorSepScreenFreq ProcessBlack.53lpi.300dpi/53 lpi / 300 dpi: "53.033"\r
296 *ColorSepScreenFreq CustomColor.53lpi.300dpi/53 lpi / 300 dpi: "53.033"\r
297 *ColorSepScreenFreq ProcessCyan.53lpi.300dpi/53 lpi / 300 dpi: "47.4342"\r
298 *ColorSepScreenFreq ProcessMagenta.53lpi.300dpi/53 lpi / 300 dpi: "47.4342"\r
299 *ColorSepScreenFreq ProcessYellow.53lpi.300dpi/53 lpi / 300 dpi: "50.0"\r
301 *% This patch file inserts a delay before manualfeed to fix a bug\r
302 *% in the version 23 LaserWriter.\r
303 *JobPatchFile 1/ManualFeedDelay: "\r
304 save \r
305 /version23-manualfeedpatch where { pop false } { true }ifelse\r
306  % we don't do an explicit 'get' since product and version MAY\r
307  % be in systemdict or statusdict - this technique gets the lookup\r
308  % without failure\r
309 statusdict begin\r
310   product (LaserWriter) eq        % true if LaserWriter\r
311   version cvr 23.0 eq             % true if version 23\r
312 end\r
314 and  % only install this patch if both are true\r
315 and  % true only if patch is not installed and is for this printer\r
316      % save object and boolean on stack\r
317 dup { exch restore }if\r
318 % either true OR saveobject false\r
319 dup\r
321   /version23-manualfeedpatch true def\r
322   /oldversion23-showpage /showpage load def\r
323   /showpage       % this showpage will wait extra time if manualfeed is true\r
324   {%\r
325      statusdict /manualfeed known\r
326      {% manualfeed known in statusdict\r
327         statusdict /manualfeed get\r
328         {% if true then we loop for 5 seconds\r
329            usertime 5000 add       % target usertime\r
330            { % loop\r
331              dup usertime sub 0 lt\r
332              { exit }if\r
333            }loop\r
334            pop             % pop the usertime off the stac\r
335         }if\r
336      }if\r
337      oldversion23-showpage\r
338   }bind def\r
339 }if\r
340 not{ restore }if\r
342 *End\r
344 *% For "LaserWriter" version 23.0\r
345 *% Produced by "GETapd.ps" version 2.0 edit 45\r
346 *% Converted to meet 4.0 specification\r
347 *% Last Edit Date: Aug 11 1993\r
348 *% The byte count of this file should be exactly 011416 or 011766\r
349 *% depending on the filesystem it resides in.\r
350 *% end of PPD file for LaserWriter\r