#!/bin/sh
# FORTRAN IV compiler wrapper for simh h316
+if [ "$FRTN_ORIGINAL" ]; then
+ LOGNAME="FORTRAN IV COMPILER (Original):"
+else
+ LOGNAME="FORTRAN IV COMPILER:"
+fi
+
if [ ! $1 ] ; then
- echo "Argument missing!"
+ echo "$LOGNAME Input file missing!"
exit 2
fi
name=`basename $1 .f`
+if [ ! -f "$1" ]; then
+ echo "$LOGNAME Input file \"$name\" not found!"
+ exit 2
+fi
+
+
listfile=$name.lst
cat $1 | tab | paron > $name.par
rm -f $name.lst
rm -f $name.obj
+echo -n "$LOGNAME Compiling \"$1\":"
+
+if [ "$FRTN_ORIGINAL" ]; then
+
+cat > $name.go <<EOF
+at ptr $H316/honeywell/slst/frtn_8k.slst
+boot ptr
+r
+at ptr $name.par
+at ptp $name.obj
+at tty3 $listfile
+set tty3 uascii
+set tty3 start
+d a 311
+;d a 310
+d p 1000
+d ss1 0
+d ss2 1
+d ss3 0
+d ss4 0
+go
+quit
+EOF
+
+
+else
+
cat > $name.go <<EOF
rest $H316/sys/frtn.sys
r
set tty3 uascii
set tty3 start
d a 311
+;d a 310
d p 1000
d ss1 0
d ss2 1
quit
EOF
+fi
+
h316 $name.go > /dev/null
-rm -f $name.par
-rm -f $name.go
if cat $name.lst | egrep "[*]{36,40}">/dev/null 2>&1; then
cat $name.lst
- echo -e "\n\nFORTRAN IV compilation FAILED!"
+ echo -e " FAILED!"
rm -f $name.obj
exit 77
fi
if [ ! $2 ]; then
rm $name.lst
+ rm -f $name.go
+ rm -f $name.par
+
fi
-echo "FORTRAN IV compilation successfull."
+echo " Success."
exit 0