			Instructions for Unix FORTRAN
				Aviation Research

	The modifications made to the Bell Labs version of Unix FORTRAN were
to enable the use of that system on Aviation Research's PDP11/40. The 
FPTRAP package provided by Bell ran so slowly that it was of no use and the
FORTRAN had some strange non-fortran conventions.

	The major changes were in the runtime library (filib.a) and the
arithmetic package library (libf.a).  There were some changes made in the
compiler itself but the number of coding changes involved in that were
small.

	The changes in the runtime apply to the 11/40 only since
most 11/45's have a whole truck load of floating point hardware. Here is
a summary:

	1) All single and double precision integer operations including I/O
conversions are supported.

	2) All single precision floating point operations including I/O
are supported with the exception of complex arithmetic (that is expected
to change however).

	3) All the standard arithmetic routines supplied by Bell are supported.

	The above changes required extensive modifications to the packages
so that it is advisable to rebuild your entire FORTRAN runtime from the
source to ensure that all the changes are employed.

WARNING: 	It was never intended that double precision floating
		arithmetic be supported for the 11/40 in any fashion
		and there are no plans now nor will there be any plans
		to change that (at least not from this lab).  So, if
		you use any double precision floating arithmetic, you can
		probably expect a lot of trouble.

	The compiler changes apply to the 11/40 and 11/45 and are
summarized as follows:

	1) The standard column 7 convention along with column 6
continuation is implemented.

	2) All text is mapped to lower case (this is not hard to change
if you don't like it).

	3) DATA statements will initialize arrays without the pain of
specifying each subscript; e.g. if you have DIMENSION I(7),
DATA I/2,5,7,3,5,6,8/ now works.

	Future plans for the compiler include:

	1) Addition of "TYPE" and "ACCEPT" statements.

	2) Expanding the "PAUSE" statement to accept character strings
in addition to a wait time in seconds.


	Nothing in the major structure such as parameter passing conventions,
etc. has been changed.

	The modules in the FORTRAN compiler which should be changed
are f47, fxo, and fx8. There are shell files in each f? directory which
rebuild that directory's library and the ld shell file rebuilds the entire
fc1 module that resides in /usr/fort.

	All modules in io and rt should be assembled and inserted into
/lib/filib.a.

	All modules in rt1 (execept *.f ) should replace their counterparts in
/lib/libf.a.
	There is a file called run which has most of the commands needed
to do the above to steps.

	AINT, ALOG, ATAN, ECVT, EXP, SIN, and SQRT in directory S3 need
to replace their counterparts in "/lib/liba.a" and IRRI needs to be
inserted into that archive file.

	Just for your convenience, filib.a, libf.a, the compiler libraries,
and the compiler are already built and included on the tape so that the
only thing you really have to do is replace the modules in "liba.a" in
your system library.


DISCLAIMER:

	There is no claim, implied or explicitly stated that this software
is really hot stuff.  It works reasonably well but has not yet been tested fully.
Only the interested users can remedy that situation and the proponents of
the system are friendly and are willing to do what they can to give aid
and comfort to the suffering.


	If there are problems (no doubt there will be) or questions, contact:

			Paul Jones
			Aviation Research Laboratory
			Q-5, Willard Airport
			Savoy, IL  61874
			(312) 333-3162

