Directory of image this file is from
This file as a plain text file
FORTX Distribution Notes [ Version 1.2 ] 1-AUG-78
The FORTX 1.2 release consists of the following files,
usually supplied on a RX01 diskette:
Information:
README.DC This writeup file.
FORTX.DC Full FORTX user writeup.
FORTXU.DC The same, for terminals with underlining.
Binary files:
FORT.SV The FORTX compiler.
LIB8.RL FORTX run-time library.
DIAG.SV Error diagnosis utility program.
Sources:
CALEND.FT Demonstration program.
CALEND.8K Demonstration program (8K version)
MOD.FT Function for CALEND.
CALEND.DA Data file for CALEND.FT
DIAG.PA Error diagnoser source code.
ERRS.PA Error diagnoser messages.
Miscellaneous:
ERROR.RL Separate error routine (part of LIB8.RL)
SUBS.RL Subscripting routine (part of LIB8.RL)
INSTALLATION
If you are currently using a 'stock' FORTRAN II system, with
the DEC-supplied FORT.SV, LIB8.RL, then the installation task is
very simple. Just copy the compiler and library to your system
device, and list out FORTX.DC for your information. A typical
command sequence would be:
( Mount FORTX 1.2 Distribution floppy in RXA1 )
.COPY SYS:<RXA1:FORT.SV,LIB8.RL
.TYPE RXA1:FORTX.DC
FORTX 1.2 should now be ready to run. Go to the 'Checkout'
section of this writeup to actually try running a FORTX program.
Custom installations
If one has a customized LIB8, then there is a choice:
1. One can continue using the customized LIB8 with FORTX, but
with the following restrictions:
The /C option must be specified to the compiler as it
normally calls a routine in LIB8 named SUBS^ to check subscript
1
FORTX Distribution Notes [ Version 1.2 ] 1-AUG-78
bounds. The /C option forces FORTX to call the standard routine
SUBSC, which does no error checking.
No error traceback is possible as the standard ERROR routine
does not invoke DIAG.SV to provide the error traceback.
2. Use LIBSET to add the files ERROR.RL and SUBS.RL to the custom
LIB8. These two files contain routines similar to the ones used
in the FORTX LIB8 for subscript range checking and error
traceback.
Adding error messages to DIAG
If one has some SABR routines that call ERROR to print an
error message, it would be nice to inform DIAG of the error code
so it could print out a more informative error message. This can
be easily done as DIAG contains a list of all the standard
run-time error codes (the 4 character codes), and a list of
longer messages to be printed out in place of the cryptic error
code. For instance, if the I/O routines detect a non-digit when
expecting an integer, they call routine ERROR to print a 'FMT2'
error. If DIAG.SV is present, it translates the 'FMT2' message
into:
?INVALID CHARACTER IN INTEGER INPUT? AT LINE #####
The source file ERRS.PA can be edited to include
user-defined error messages. For example, lets say one has a SABR
routine which can error out with the error message 'FULL'. Since
DIAG does not recognize the code it would normally print:
?FULL? AT LINE #####
But by adding the lines:
TEXT 'FULL';FULLTX
FULLTX, TEXT 'DEVICE IS FULL--ABORTING'
And assembling DIAG:
.PAL DIAG,ERRS/L
.SAVE SYS:DIAG;3000
It will now print:
?DEVICE IS FULL--ABORTING? AT LINE #####
See DIAG.PA and ERRS.PA for further information.
Checkout
A FORTX checkout program is supplied to demonstrate if FORTX
will work on your system. Try it out by following these commands:
If > 8K memory available: If only 8K, substitute:
.R FORT
*CALEND<RXA1:CALEND *CALEND<RXA1:CALEND.8K
2
FORTX Distribution Notes [ Version 1.2 ] 1-AUG-78
.R FORT
*MOD<RXA1:MOD
.R LOADER
*CALEND,MOD$ *CALEND,MOD/I/H$
.SAVE SYS:CALEND
.COPY DSK:<RXA1:CALEND.DA
.R CALEND
(Type in a year)
( A calendar should print out )
If the program gives the desired results, you probably have
a working FORTX system. If something else happens, try the
installation again. If it still doesn't work right, please fully
report your problem to me. Send your reports to:
George Gonzalez
Hearing Research Lab
2630 University Avenue
Minneapolis, Minn. 55414
3