[comp.os.mach] printing cmu mach doc on NeXT

clement@opus.cs.mcgill.ca (Clement Pellerin) (02/09/90)

When I first tried to print the CMU Mach documentation I got from
wb1.cs.cmu.edu:/usr/mach/public/doc/*.ps on my NeXT computer,
some worked, some didn't.  Since I got no reply after my message
in comp.sys.next I decided to fix it myself.
I could have settled for the plain ASCII file but I think they look ugly.

the culprit files are machsys.ps and machuse.ps

basically, you must set a version number, describe the prologue and
set a trailer.

for some reason, dvips used at cmu will put code into the script that
really belong in the prolog.  The piece of code in question
is a set of font definitions before %%Page: 1 ??
which is close to the end of the file since the pages are in reversed order.
These should be moved to the front of the file, together with
the other font definitions.

here is diff script to modify machsys.ps into NeXTmachsys.ps
followed by another script to modify machuse.ps into NeXTmachuse.ps
the versions are dated:
machsys.ps  Dec 28, 1989
machuse.ps  Nov 7, 1989

# modify machsys.ps for the NeXT computer
cp machsys.ps NeXTmachsys.ps; ed - NeXTmachsys.ps <<'EOF'
1469,1470c
y fd(4)41 b(Mach)11 b(Envir)o(onment)1199 b(28)g eop
%%Trailer
.
1212,1307c
23 b(For)13 b(example,)i(server)e(that)g(handles)g(requests)g eop
.
206a
%%EndProlog
.
205c
0 22 22 0 22 0 0 0 0 ] /Courier 1000 655360 589824 pf
/fh [ 0 0 0 0 0 0 0 0 0 0 0 0 23 23 0 0 12 0 14 14 14 14 14
14 14 21 28 30 21 37 37 30 10 14 18 21 21 35 32 14 14 14 21 23 10 14 10 12 21
21 21 21 21 21 21 21 21 21 12 12 14 23 18 18 38 30 28 28 30 25 23 30 30 14 16
30 25 37 30 30 23 30 28 23 25 30 30 39 30 30 25 14 18 14 14 14 14 18 21 18 21
18 14 21 21 12 12 21 12 32 21 21 21 21 14 16 12 21 21 30 21 21 18 21 42 14 14
14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 14 21 21
7 21 21 21 21 7 18 21 14 14 23 23 0 21 21 21 10 0 19 15 14 18 18 21 42 42 0 18
0 14 14 14 14 14 14 14 14 0 14 14 0 14 14 14 42 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 37 0 11 0 0 0 0 25 30 37 13 0 0 0 0 0 28 0 0 0 12 0 0 12 21 30 21 0 0 0 0 ]
/Times-Roman 1000 655360 655360 pf /fi [ 0 0 0 0 0 0 0 0 0 0 0 0 21 21 0 0 10
0 12 12 12 12 12 12 12 21 27 27 19 37 37 29 9 12 19 19 19 37 31 12 12 12 19 21
9 12 9 10 19 19 19 19 19 19 19 19 19 19 12 12 12 21 19 19 35 27 25 27 27 25 23
29 29 15 19 29 25 35 27 29 23 29 27 21 25 27 27 37 27 27 25 12 19 12 12 12 12
19 21 17 21 17 12 19 21 10 12 21 10 31 21 19 21 21 17 15 12 21 19 27 19 19 17
19 37 12 12 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 12 19 19 6 19 19 19 19 10 19 19 12 12 21 21 0 19 19 19 9 0 20 13 12 19 19 19
37 37 0 19 0 12 12 12 12 12 12 12 12 0 12 12 0 12 12 12 37 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 37 0 11 0 0 0 0 25 29 37 12 0 0 0 0 0 27 0 0 0 10 0 0 10 19 27 21
0 0 0 0 ] /Times-Bold 1000 655360 589824 pf /fj [ 0 0 0 0 0 0 0 0 0 0 0 0 19
19 0 0 10 0 12 12 12 12 12 12 12 19 25 25 19 33 35 27 9 12 21 19 19 31 29 12
12 12 19 25 9 12 9 10 19 19 19 19 19 19 19 19 19 19 12 12 15 25 19 19 34 23 23
25 27 23 23 27 27 12 17 25 21 31 25 27 23 27 23 19 21 27 23 31 23 21 21 15 21
15 12 12 12 19 19 17 19 17 10 19 19 10 10 17 10 27 19 19 19 19 15 15 10 19 17
25 17 17 15 19 33 12 12 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 15 19 19 6 19 19 19 19 8 21 19 12 12 19 19 0 19 19 19 9 0 20 13
12 21 21 19 33 37 0 19 0 12 12 12 12 12 12 12 12 0 12 12 0 12 12 12 33 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 33 0 10 0 0 0 0 21 27 35 12 0 0 0 0 0 25 0 0 0 10 0 0
10 19 25 19 0 0 0 0 ] /Times-Italic 1000 655360 589824 pf /fk [ 0 0 0 0 0 0 0
0 0 0 0 0 21 21 0 0 10 0 12 12 12 12 12 12 12 19 25 27 19 33 33 27 9 12 17 19
19 31 29 12 12 12 19 21 9 12 9 10 19 19 19 19 19 19 19 19 19 19 10 10 12 21 17
17 34 27 25 25 27 23 21 27 27 12 15 27 23 33 27 27 21 27 25 21 23 27 27 35 27
27 23 12 17 12 12 12 12 17 19 17 19 17 12 19 19 10 10 19 10 29 19 19 19 19 12
15 10 19 19 27 19 19 17 19 37 12 12 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 12 19 19 6 19 19 19 19 7 17 19 12 12 21 21 0 19 19
19 9 0 17 13 12 17 17 19 37 37 0 17 0 12 12 12 12 12 12 12 12 0 12 12 0 12 12
12 37 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 33 0 10 0 0 0 0 23 27 33 12 0 0 0 0 0 25
0 0 0 10 0 0 10 19 27 19 0 0 0 0 ] /Times-Roman 1000 655360 589824 pf /fl [ 0
0 0 0 0 0 0 0 0 0 0 0 18 18 0 0 9 0 11 11 11 11 11 11 11 17 22 24 17 30 30 24
8 11 15 17 17 28 26 11 11 11 17 19 8 11 8 9 17 17 17 17 17 17 17 17 17 17 9 9
11 19 15 15 31 24 22 22 24 20 18 24 24 11 13 24 20 30 24 24 18 24 22 18 20 24
24 31 24 24 20 11 15 11 11 11 11 15 17 15 17 15 11 17 17 9 9 17 9 26 17 17 17
17 11 13 9 17 17 24 17 17 15 17 33 11 11 11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 11 17 17 6 17 17 17 17 6 15 17 11 11 18 18 0
17 17 17 8 0 15 12 11 15 15 17 33 33 0 15 0 11 11 11 11 11 11 11 11 0 11 11 0
11 11 11 33 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 30 0 9 0 0 0 0 20 24 30 10 0 0 0 0
0 22 0 0 0 9 0 0 9 17 24 17 0 0 0 0 ] /Times-Roman 1000 655360 524288 pf
end
.
98d
6d
1c
%!PS-Adobe-1.0
.
w
q
'EOF'


# modify machuse.ps for the NeXT computer
cp machuse.ps NeXTmachuse.ps; ed - NeXTmachuse.ps <<'EOF'
1080,1081c
(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)36 b fg(19)g eop
%%Trailer
.
819,913c
(but)g(multiple)e(calls)j(to)e(this)h(routine)f(are)i(harmless.)g eop
.
197a
%%EndProlog
.
196c
0 0 ] /Courier 1000 655360 589824 pf /fg
[ 0 0 0 0 0 0 0 0 0 0 0 0 23 23 0 0 12 0 14 14 14 14 14 14 14 21 28 30 21 37
37 30 10 14 18 21 21 35 32 14 14 14 21 23 10 14 10 12 21 21 21 21 21 21 21 21
21 21 12 12 14 23 18 18 38 30 28 28 30 25 23 30 30 14 16 30 25 37 30 30 23 30
28 23 25 30 30 39 30 30 25 14 18 14 14 14 14 18 21 18 21 18 14 21 21 12 12 21
12 32 21 21 21 21 14 16 12 21 21 30 21 21 18 21 42 14 14 14 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 14 21 21 7 21 21 21 21 7 18 21
14 14 23 23 0 21 21 21 10 0 19 15 14 18 18 21 42 42 0 18 0 14 14 14 14 14 14
14 14 0 14 14 0 14 14 14 42 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 37 0 11 0 0 0 0 25
30 37 13 0 0 0 0 0 28 0 0 0 12 0 0 12 21 30 21 0 0 0 0 ] /Times-Roman 1000
655360 655360 pf /fh [ 0 0 0 0 0 0 0 0 0 0 0 0 21 21 0 0 10 0 12 12 12 12 12
12 12 21 27 27 19 37 37 29 9 12 19 19 19 37 31 12 12 12 19 21 9 12 9 10 19 19
19 19 19 19 19 19 19 19 12 12 12 21 19 19 35 27 25 27 27 25 23 29 29 15 19 29
25 35 27 29 23 29 27 21 25 27 27 37 27 27 25 12 19 12 12 12 12 19 21 17 21 17
12 19 21 10 12 21 10 31 21 19 21 21 17 15 12 21 19 27 19 19 17 19 37 12 12 12
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 12 19 19 6
19 19 19 19 10 19 19 12 12 21 21 0 19 19 19 9 0 20 13 12 19 19 19 37 37 0 19 0
12 12 12 12 12 12 12 12 0 12 12 0 12 12 12 37 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
37 0 11 0 0 0 0 25 29 37 12 0 0 0 0 0 27 0 0 0 10 0 0 10 19 27 21 0 0 0 0 ]
/Times-Bold 1000 655360 589824 pf /fi [ 0 0 0 0 0 0 0 0 0 0 0 0 19 19 0 0 10 0
12 12 12 12 12 12 12 19 25 25 19 33 35 27 9 12 21 19 19 31 29 12 12 12 19 25 9
12 9 10 19 19 19 19 19 19 19 19 19 19 12 12 15 25 19 19 34 23 23 25 27 23 23
27 27 12 17 25 21 31 25 27 23 27 23 19 21 27 23 31 23 21 21 15 21 15 12 12 12
19 19 17 19 17 10 19 19 10 10 17 10 27 19 19 19 19 15 15 10 19 17 25 17 17 15
19 33 12 12 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 15 19 19 6 19 19 19 19 8 21 19 12 12 19 19 0 19 19 19 9 0 20 13 12 21 21 19
33 37 0 19 0 12 12 12 12 12 12 12 12 0 12 12 0 12 12 12 33 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 33 0 10 0 0 0 0 21 27 35 12 0 0 0 0 0 25 0 0 0 10 0 0 10 19 25 19
0 0 0 0 ] /Times-Italic 1000 655360 589824 pf /fj [ 0 0 0 0 0 0 0 0 0 0 0 0 21
21 0 0 10 0 12 12 12 12 12 12 12 19 25 27 19 33 33 27 9 12 17 19 19 31 29 12
12 12 19 21 9 12 9 10 19 19 19 19 19 19 19 19 19 19 10 10 12 21 17 17 34 27 25
25 27 23 21 27 27 12 15 27 23 33 27 27 21 27 25 21 23 27 27 35 27 27 23 12 17
12 12 12 12 17 19 17 19 17 12 19 19 10 10 19 10 29 19 19 19 19 12 15 10 19 19
27 19 19 17 19 37 12 12 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 12 19 19 6 19 19 19 19 7 17 19 12 12 21 21 0 19 19 19 9 0 17 13
12 17 17 19 37 37 0 17 0 12 12 12 12 12 12 12 12 0 12 12 0 12 12 12 37 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 33 0 10 0 0 0 0 23 27 33 12 0 0 0 0 0 25 0 0 0 10 0 0
10 19 27 19 0 0 0 0 ] /Times-Roman 1000 655360 589824 pf /fk [ 0 0 0 0 0 0 0 0
0 0 0 0 18 18 0 0 9 0 11 11 11 11 11 11 11 17 22 24 17 30 30 24 8 11 15 17 17
28 26 11 11 11 17 19 8 11 8 9 17 17 17 17 17 17 17 17 17 17 9 9 11 19 15 15 31
24 22 22 24 20 18 24 24 11 13 24 20 30 24 24 18 24 22 18 20 24 24 31 24 24 20
11 15 11 11 11 11 15 17 15 17 15 11 17 17 9 9 17 9 26 17 17 17 17 11 13 9 17
17 24 17 17 15 17 33 11 11 11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 11 17 17 6 17 17 17 17 6 15 17 11 11 18 18 0 17 17 17 8 0 15
12 11 15 15 17 33 33 0 15 0 11 11 11 11 11 11 11 11 0 11 11 0 11 11 11 33 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 30 0 9 0 0 0 0 20 24 30 10 0 0 0 0 0 22 0 0 0 9 0
0 9 17 24 17 0 0 0 0 ] /Times-Roman 1000 655360 524288 pf end
.
98d
6d
1c
%!PS-Adobe-1.0
.
w
q
'EOF'
-- 
news <clement
Clement Pellerin, McGill University, Montreal, Canada
clement@opus.cs.mcgill.ca