blob: 42d31eb9d608fa8180b173bd6ef3de315b54066b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
|
%!PS-Adobe-2.0
%%DocumentFonts: (atend)
%%Title: F:\\LPT\\VMS\\EX01_B.DOC
%%Creator: Lotus Manuscript
%%For: EWvA, MRK
%%CreationDate: September 29, 1993
%%Pages: (atend)
%%BoundingBox: 0 0 595 841
%%EndComments
% PostScript Prologue (initialization) for Manuscript
% Copyright (c) 1985,1986,1987,1988 Lotus Development Corporation
% There is no user servicable code in this file.
% set timeouts to infinite
statusdict begin
0 setjobtimeout
/manualfeedtimeout 3600 def
/waittimeout 0 def
end
% correct bug correction in rev 41.0
/idiv{div cvi}bind def
% define User Dictionary
/msdict 300 dict def msdict begin
/bd{bind def}bind def
% Define commonly used things
/delay{usertime 5000 add{dup usertime lt{pop exit}if}loop}bd
/mfeed{statusdict begin /manualfeed true def end}bd
/afeed{statusdict begin /manualfeed false def end}bd
/bfeed{ afeed statusdict begin /setpapertray where
{pop setpapertray}{pop} ifelse end}bd
/dpi{0.24 dup scale}bd
% These two are called for each page
/inpage false def
/begpage{save dpi /inpage true def}bd
/endpage{inpage {restore showpage}if }bd
% for possible banner
/fileinfo {pop pop pop}bd
/enddocument {end} bd
% these are also used by eqn & gmf
/ld{load def}bd
/x/exch ld
/cu{300 mul 72 div}bd
/m/moveto ld
/t/translate ld
/rm/rmoveto ld
/cp/currentpoint ld
/st/stroke ld
/ln/lineto ld
/rlt/rlineto ld
/slw/setlinewidth ld
/ff/findfont ld
/scf/scalefont ld
/sf/setfont ld
/fs{x /pt x def ff pt cu scf sf}bd
% linedraw
/li{4 2 roll setlinewidth 3 1 roll moveto 0.0 rlineto st}bd
% outline factor
/olwid 40.0 def
% stroke width for outline
/uoslw {pt cu x div slw}bd
% relative horizontal move
/xm{x currentpoint pop sub 0.0 rmoveto}bd
% The basic show
/s/show ld
% move horizontal and show
/ms{xm s}bd
% variations
% outline show - first printer attribute
/ppss{dup cp 3 -1 roll false charpath st
x 3 -1 roll stringwidth pop add x moveto}bd
/pss{olwid uoslw { ( ) dup 0 4 -1 roll put ppss}forall}bd
/ps{pss}bd
/mps{xm ps}bd
% graybox show - second printer attribute
/gb{cp 3 -1 roll pt cu dup 4 div neg 0 x rm dup 0 x rlt x 0 rlt
neg 0 x rlt closepath currentgray .9 setgray fill setgray m}bd
/usi{dup stringwidth pop gb}bd
/us{usi s}bd
/xum{x cp pop sub dup gb 0 rmoveto}bd
% combinations of PD1 and PD2
/ups{usi pss}bd
/mups{xm ups}bd
/mus{xm us}bd
% define a new encoding vector (code page 850 based)
/PC 256 array def
StandardEncoding PC copy pop
/dotaccent/bullet
/quotesingle/quotedblleft/quotedblright/quotesinglbase
/quotedblbase/guilsinglleft/guilsinglright/.notdef
/ellipsis/perthousand/.notdef/.notdef/paragraph/section/dagger/daggerdbl
/OE/oe/fi/fl/endash/emdash/fraction/Ydieresis
PC 6 26 getinterval astore pop
/Ccedilla/udieresis/eacute/acircumflex/adieresis/agrave/aring/ccedilla
/ecircumflex/edieresis/egrave/idieresis/icircumflex/igrave/Adieresis/Aring
/Eacute/ae/AE/ocircumflex/odieresis/ograve/ucircumflex/ugrave
/ydieresis/Odieresis/Udieresis/oslash/sterling/Oslash/.notdef/florin
/aacute/iacute/oacute/uacute/ntilde/Ntilde/ordfeminine/ordmasculine
/questiondown/.notdef/.notdef/onehalf/onequarter/exclamdown/guillemotleft/guillemotright
/.notdef/.notdef/.notdef/.notdef/.notdef/Aacute/Acircumflex/Agrave
/.notdef/.notdef/.notdef/.notdef/.notdef/cent/yen/.notdef
/.notdef/grave/.notdef/circumflex/tilde/.notdef/atilde/Atilde
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/currency
/eth/Eth/Ecircumflex/Edieresis/Egrave/dotlessi/Iacute/Icircumflex
/Idieresis/.notdef/.notdef/.notdef/.notdef/brokenbar/Igrave/.notdef
/Oacute/germandbls/Ocircumflex/Ograve/otilde/Otilde/.notdef/thorn
/Thorn/Uacute/Ucircumflex/Ugrave/yacute/Yacute/.notdef/acute
/.notdef/.notdef/.notdef/threequarters/paragraph/section/.notdef/cedilla
/ring/dieresis/periodcentered/onesuperior/threesuperior/twosuperior/.notdef/.notdef
PC 128 128 getinterval astore pop
% duplicate fonts with a new encoding vector
/recd 5 dict def
/pcft
{recd begin
/ncs PC def /nfn x def
/bfn x def /bfd bfn findfont def
/nf bfd maxlength dict def
bfd{x dup dup /FID ne x /Encoding ne and
{x nf 3 1 roll put}{pop pop}ifelse
}forall
nf/FontName nfn put
nf/Encoding ncs put
nfn nf definefont pop
end}bd
/fs{x /pt x def ff pt cu scf sf}bd
% used by eqn
/Times-Roman/TR pcft /Times-Bold/TRB pcft
/Times-Italic/TRI pcft /Times-BoldItalic/TRBI pcft
/Helvetica/HV pcft /Helvetica-Bold/HVB pcft
/Helvetica-Oblique/HVO pcft /Helvetica-BoldOblique/HVBO pcft
/Courier/CR pcft /Courier-Bold/CRB pcft
/Sym{/Symbol fs}bd
% Bit map image data decompression code
/xx 0 def /yy 0 def
/xbytes 0 def
/lbuf 1200 string def /obuf 600 string def
/bval <FFFEFCF8F0E0C080000103070F1F3F7F> def
/blacks 96 string def /whites 96 string def
0 1 95 {whites x 255 put} for
/dispatch [
{
dup 47 le {32 sub 4 bitshift x pop 1}{
dup 63 le {x pop 48 sub bval x get
3 copy put x 1 add x 0} {
dup 79 le {62 sub} {
80 sub { 3 copy put x 1 add x } repeat 0
}ifelse }ifelse }ifelse
}bind
{
32 sub add
3 copy put
x 1 add x 0
} bind
{
32 sub x pop add 255 0
}bind
{
32 sub x pop
3 copy getinterval
whites 0 3 index getinterval
x copy pop add 255 0
}bind
{
32 sub x pop
3 copy getinterval
blacks 0 3 index getinterval
x copy pop add 0 0
}bind
]def
% read a raster line and unpack
/readx{
obuf 0 255 0
currentfile lbuf readline pop
{x dispatch x get exec} forall
pop pop pop 0 xbytes getinterval}bd
/mspic{
/yy x def/xx x def
/xbytes xx 8 idiv def
xx yy 1 [xx 0 0 0 yy sub 0 yy]{readx}image}bd
/Helvetica/fA pcft/FA{/fA fs}bd
/Helvetica-Oblique/fAI pcft/FAI{/fAI fs}bd
/Helvetica-Bold/fAB pcft/FAB{/fAB fs}bd
/Helvetica-BoldOblique/fAIB pcft/FAIB{/fAIB fs}bd
/Times-Roman/fB pcft/FB{/fB fs}bd
/Times-Italic/fBI pcft/FBI{/fBI fs}bd
/Times-Bold/fBB pcft/FBB{/fBB fs}bd
/Times-BoldItalic/fBIB pcft/FBIB{/fBIB fs}bd
/Courier/fH pcft/FH{/fH fs}bd
/Courier-Oblique/fHI pcft/FHI{/fHI fs}bd
/Courier-Bold/fHB pcft/FHB{/fHB fs}bd
/Courier-BoldOblique/fHIB pcft/FHIB{/fHIB fs}bd
/ZapfChancery-MediumItalic/fL pcft/FL{/fL fs}bd
/ZapfChancery-MediumItalic/fLI pcft/FLI{/fLI fs}bd
/ZapfChancery-MediumItalic/fLB pcft/FLB{/fLB fs}bd
/ZapfChancery-MediumItalic/fLIB pcft/FLIB{/fLIB fs}bd
/AvantGarde-Book/fM pcft/FM{/fM fs}bd
/AvantGarde-BookOblique/fMI pcft/FMI{/fMI fs}bd
/AvantGarde-Demi/fMB pcft/FMB{/fMB fs}bd
/AvantGarde-DemiOblique/fMIB pcft/FMIB{/fMIB fs}bd
(F:\\LPT\\VMS\\EX01_B.DOC)(EWvA, MRK)(September 29, 1993)fileinfo
%%EndProlog
%%Page: 0 1
begpage
12 FAB
977 2996 m
(Example 01: Testcode)s
12 FB
295 2669 m
(This)s
393(section)ms
544(contains)ms
721(some)ms
836(test)ms
915(code)ms
1019(that)ms
1103(can)ms
1183(be)ms
1239(inserted)ms
1407(to)ms
1456(debug)ms
1588(the)ms
1658(palindrome)ms
1896(filter)ms
2003(program.)ms
12 FAB
295 2486 m
(B.1. Print the contents of IN_LINE and LETTERS)s
12 FB
295 2399 m
(Correct)s
462(reading)ms
629(of)ms
688(the)ms
767(input)ms
887(is)ms
938(crucial.)ms
1104(For)ms
1191(debugging)ms
1419(purposes)ms
1614(we)ms
1690(may)ms
1794(want)ms
1908(to)ms
1964(inspect)ms
2123(the)ms
295 2339 m
(contents)s
474(of)ms
11 FH
528(IN_LINE)ms
12 FB
733(and)ms
11 FH
818(LETTERS)ms
12 FB
(.)s
1035(We)ms
1117(need)ms
1224(a)ms
1259(local)ms
1368(counter)ms
10 FH
370 2258 m
(\(******* Palindrome variables #quick *******\))s
370 2216 m
( T : INTEGER;)s
12 FB
295 2124 m
(We)s
376(want)ms
486(the)ms
560(debugging)ms
783(information)ms
1032(to)ms
1083(be)ms
1143(clearly)ms
1292(flagged)ms
1454(as)ms
1508(such.)ms
10 FH
370 2043 m
(\(***************** Palindrome \(test\) ******************\))s
370 2001 m
(\(** Check contents of IN_LINE and LETTERS. **\))s
370 1960 m
(WRITELN;)s
370 1918 m
(WRITELN \('============ DEBUGGING INFORMATION ==============='\);)s
370 1876 m
(WRITELN \('Contents of buffer IN_LINE: '\);)s
370 1835 m
(WRITE \('>>>>'\);)s
370 1793 m
(WITH IN_LINE DO)s
370 1751 m
(FOR T := 1 TO LENGTH DO WRITE \(OUTPUT, CHARS[T]\);)s
370 1710 m
(WRITE \('<<<<'\);)s
370 1668 m
(WRITELN;)s
370 1626 m
(WRITELN \('Contents of buffer LETTERS: '\);)s
370 1585 m
(WRITE \('>>>>'\);)s
370 1543 m
(WITH LETTERS DO)s
370 1501 m
(FOR T := 1 TO LENGTH DO WRITE \(OUTPUT, CHARS[T]\);)s
370 1460 m
(WRITE \('<<<<'\);)s
370 1418 m
(WRITELN;)s
370 1376 m
(WRITELN \('========== END OF DEBUGGING INFORMATION =========='\);)s
370 1335 m
(WRITELN;)s
370 1293 m
(\(************* End of Palindrome \(test\) ***************\))s
8 FB
295 204 m
(The)s
355(CLiP)ms
433(Style)ms
510(of)ms
546(Literate)ms
658(Programming)ms
850(\(3.047,)ms
953(29-sep-93\))ms
12 FB
2075 204 m
( 1 )s
50 2 2130 216 li
50 2 2020 216 li
endpage
%%Trailer
enddocument
%%Pages: 1
%%DocumentFonts:
%%+ Helvetica-Bold
%%+ Times-Roman
%%+ Courier
%%EOF
|