30773ad6 |
1 | #!/bin/sh |
c08e22bb |
2 | # FORTRAN IV compiler wrapper for simh h316 |
3 | |
d6a1a234 |
4 | if [ "$FRTN_ORIGINAL" ]; then |
5 | LOGNAME="FORTRAN IV COMPILER (Original):" |
6 | else |
7 | LOGNAME="FORTRAN IV COMPILER:" |
8 | fi |
9 | |
c08e22bb |
10 | if [ ! $1 ] ; then |
d6a1a234 |
11 | echo "$LOGNAME Input file missing!" |
c08e22bb |
12 | exit 2 |
13 | fi |
14 | |
15 | name=`basename $1 .f` |
d6a1a234 |
16 | if [ ! -f "$1" ]; then |
17 | echo "$LOGNAME Input file \"$name\" not found!" |
18 | exit 2 |
19 | fi |
20 | |
21 | |
c08e22bb |
22 | listfile=$name.lst |
23 | |
24 | cat $1 | tab | paron > $name.par |
25 | rm -f $name.lst |
26 | rm -f $name.obj |
27 | |
d6a1a234 |
28 | echo -n "$LOGNAME Compiling \"$1\":" |
29 | |
30 | if [ "$FRTN_ORIGINAL" ]; then |
31 | |
32 | cat > $name.go <<EOF |
33 | at ptr $H316/honeywell/slst/frtn_8k.slst |
34 | boot ptr |
35 | r |
36 | at ptr $name.par |
37 | at ptp $name.obj |
38 | at tty3 $listfile |
39 | set tty3 uascii |
40 | set tty3 start |
41 | d a 311 |
42 | ;d a 310 |
43 | d p 1000 |
44 | d ss1 0 |
45 | d ss2 1 |
46 | d ss3 0 |
47 | d ss4 0 |
48 | go |
49 | quit |
50 | EOF |
51 | |
52 | |
53 | else |
54 | |
30773ad6 |
55 | cat > $name.go <<EOF |
e5cd2df3 |
56 | rest $H316/sys/frtn.sys |
30773ad6 |
57 | r |
58 | at ptr $name.par |
59 | at ptp $name.obj |
60 | at tty3 $listfile |
61 | set tty3 uascii |
62 | set tty3 start |
63 | d a 311 |
fa105a9b |
64 | ;d a 310 |
30773ad6 |
65 | d p 1000 |
66 | d ss1 0 |
67 | d ss2 1 |
68 | d ss3 0 |
69 | d ss4 0 |
70 | go |
4dafd752 |
71 | quit |
30773ad6 |
72 | EOF |
73 | |
d6a1a234 |
74 | fi |
75 | |
c08e22bb |
76 | h316 $name.go > /dev/null |
c08e22bb |
77 | |
78 | if cat $name.lst | egrep "[*]{36,40}">/dev/null 2>&1; then |
79 | cat $name.lst |
d6a1a234 |
80 | echo -e " FAILED!" |
c08e22bb |
81 | rm -f $name.obj |
82 | exit 77 |
83 | fi |
84 | |
85 | if [ ! $2 ]; then |
86 | rm $name.lst |
fa105a9b |
87 | rm -f $name.go |
88 | rm -f $name.par |
89 | |
c08e22bb |
90 | fi |
d6a1a234 |
91 | echo " Success." |
c08e22bb |
92 | exit 0 |
93 | |
94 | |
95 | |