Trailing-Edge
-
PDP-10 Archives
-
BB-D480C-SB_1981
-
fortra.ver
There are 6 other files named fortra.ver in the archive. Click here to see a list.
;THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY ONLY BE USED
; OR COPIED IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE.
;COPYRIGHT (C) 1981 BY DIGITAL EQUIPMENT CORPORATION
; VERSION 6 FORTRA.VER March 81
; Mini-test of Fortran using UETP
.R SETSRC
*CP [5,33,FORTRA]
*LIB:[5,33]
*SCAN
*^Z
.SET DEFAULT PROTECTION <000>
BEGIN::
; Files needed in the UTP: area:
; FORTRA.VER This file
; FORTRA.SFD Work area must be protected <777>
; ARRAYS.FOR
; ASCII.FOR
; BINARY.FOR
; DO.FOR
; GOTO.FOR
; IF.FOR
; IMAGE.FOR
; LIB.FOR
; RANDOM.FOR
; SUBFUN.FOR
; T4DDT.FOR
.RUN UTP:SENDER
*TYPE START
*BLABEL BEGIN:
*TEST FORTRA
*SEND Start of Fortran test.
*EXIT
; Clean up
.NOERROR
.DELETE ARRAYS.REL,ASCII.LST,ASCII.REL,BINARY.REL,DO.REL,GOTO.REL,IF.REL
.DELETE IMAGE.REL,LIB.REL,RANDOM.REL,SUBFUN.REL,T4DDT.REL
.DELETE FOR20.DAT,FOR21.DAT,FOR22.DAT,FOR23.DAT
.ERROR
; Check for all required FORTRAN components on this system.
.GET SYS:FORTRA
.IF (ERROR) .GOTO NOFOR
.VERSION
.GET SYS:FORTB.EXE
.IF (ERROR) .GOTO NOFOR
.VERSION
.GET SYS:FORTC.EXE
.IF (ERROR) .GOTO NOFOR
.VERSION
.GET SYS:FORTD.EXE
.IF (ERROR) .GOTO NOFOR
.VERSION
.GET SYS:FORTE.EXE
.IF (ERROR) .GOTO NOFOR
.VERSION
.GET SYS:FORTF.EXE
.IF (ERROR) .GOTO NOFOR
.VERSION
.GET SYS:FORTG.EXE
.IF (ERROR) .GOTO NOFOR
.VERSION
.GET SYS:FOROT6.EXE
.IF (ERROR) .GOTO NOFOR
.VERSION
.ERROR %
.DIRECT HLP:FORTRA.HLP
.IF (ERROR) .GOTO NOFOR
.DIRECT SYS:FORLIB.REL
.IF (ERROR) .GOTO NOFOR
.DIRECT HLP:FORDDT.HLP
.IF (ERROR) .GOTO NOFOR
.DIRECT SYS:FORDDT.REL
.IF (ERROR) .GOTO NOFOR
.ERROR
.GOTO FORT
NOFOR::
; Complete FORTRAN system not available.
.
.RUN UTP:SENDER
*BLABEL BEGIN:
*TEST FORTRA
*SEND FORTRAN system not available.
*EXIT
.GOTO END
FORT::
; Warnings are not permitted either.
.ERROR %
; Generate a binary (.REL) and listing (.LST) file
; and verify that they were produced.
; Also check the compiler HELP facility.
.R FORTRA
*ASCII,ASCII=ASCII.FOR
.IF (ERROR) .GOTO B1
*/HELP
.IF (ERROR) .GOTO B1
*^Z
.DIRECT ASCII.LST
.IF (ERROR) .GOTO B1
.DIRECT ASCII.REL
.IF (ERROR) .GOTO B1
.GOTO EX2
B1::
.R UTP:SENDER
*TYPE ERROR
*BLABEL FORT:
*TEST FORTRA
*SEND Errors generating binary or listing file, or getting help.
*EXIT
.GOTO END
EX2::
; Test to see that all intrinsic functions and Fortran supplied
; subroutines exist in FORLIB. If LINK produces an error such
; as "Undefined Globals", then some of the routines are missing.
; Progam is merely loaded, not executed.
.COMPILE LIB.FOR
.LOAD LIB.REL
.IF (ERROR) .GOTO B2
.GOTO EX3
B2::
.R UTP:SENDER
*TYPE ERROR
*BLABEL EX2:
*TEST FORTRA
*SEND Problems with or routines missing from FORLIB.REL.
*EXIT
; Continue the tests in this case.
EX3::
; Run FORDDT & make sure it works minimally.
; No errors of any type should appear.
.DEBUG T4DDT.FOR /DEBUG:ALL
*T4DDT
*HELP
*PAUSE 10
*START
*TYPE X
*MODE I
*TYPE I
*STOP
.IF (ERROR) .GOTO B3
.GOTO EX4
B3::
.R UTP:SENDER
*TYPE ERROR
*BLABEL EX3:
*TEST FORTRA
*SEND Error in FORDDT test.
*EXIT
; Continue the tests in this case.
EX4::
; Test for non-sharable FOROTS.
; ASCII previously compiled.
.R LINK
*ASCII.REL /OTS:NONSHAR /GO
.START
.IF (ERROR) .GOTO B4
.GOTO EX5
B4::
.R UTP:SENDER
*TYPE ERROR
*BLABEL EX4:
*TEST FORTRA
*SEND Error in Non-sharable FOROTS test.
*EXIT
; Continue the tests in this case.
EX5::
; Try FORDDT with the non-sharable FOROTS.
.COMPILE T4DDT.FOR /COMP /DEBUG:(DIM,BOU)
.R LINK
*T4DDT.REL /SEG:LOW /DEBUG:FORTRA /OTS:NONSHAR /GO
*T4DDT
*PAUSE 10
*START
*TYPE X
*CONTINUE
.IF (ERROR) .GOTO B5
.GOTO EX6
B5::
.R UTP:SENDER
*TYPE ERROR
*BLABEL EX5:
*TEST FORTRA
*SEND Error in FORDDT/Non-sharable FOROTS test.
*EXIT
; Continue the tests in this case.
EX6::
; Test arrays.
.COMPILE ARRAYS.FOR
.EXECUTE
.IF (ERROR) .GOTO B6
.GOTO EX7
B6::
.R UTP:SENDER
*TYPE ERROR
*BLABEL EX6:
*TEST FORTRA
*SEND Error in array test.
*EXIT
; Continue the tests in this case.
EX7::
; Same only optimized.
.COMPILE ARRAYS.FOR /COMP /OPT
.EXECUTE
.IF (ERROR) .GOTO B7
.GOTO EX8
B7::
.R UTP:SENDER
*TYPE ERROR
*BLABEL EX7:
*TEST FORTRA
*SEND Error in array test (/OPT).
*EXIT
; Continue the tests in this case.
EX8::
; Test ASCII I/O.
.COMPILE ASCII.FOR /COMP
.EXECUTE
.IF (ERROR) .GOTO B8
.GOTO EX9
B8::
.R UTP:SENDER
*TYPE ERROR
*BLABEL EX8:
*TEST FORTRA
*SEND Error in ASCII I/O test.
*EXIT
; Continue the tests in this case.
EX9::
; Same only optimized.
.COMPILE ASCII.FOR /COMP /OPT
.EXECUTE
.IF (ERROR) .GOTO B9
.GOTO EX10
B9::
.R UTP:SENDER
*TYPE ERROR
*BLABEL EX9:
*TEST FORTRA
*SEND Error in ASCII I/O test (/OPT).
*EXIT
; Continue the tests in this case.
EX10::
; Test BINARY I/O.
.COMPILE BINARY.FOR
.EXECUTE
.IF (ERROR) .GOTO B10
.GOTO EX11
B10::
.R UTP:SENDER
*TYPE ERROR
*BLABEL EX10:
*TEST FORTRA
*SEND Error in BINARY I/O test.
*EXIT
; Continue the tests in this case.
EX11::
; Same only optimized.
.COMPILE BINARY.FOR /COMP /OPT
.EXECUTE
.IF (ERROR) .GOTO B11
.GOTO EX12
B11::
.R UTP:SENDER
*TYPE ERROR
*BLABEL EX11:
*TEST FORTRA
*SEND Error in BINARY I/O test (/OPT).
*EXIT
; Continue the tests in this case.
EX12::
; Test DO loops.
.COMPILE DO.FOR
.EXECUTE
.IF (ERROR) .GOTO B12
.GOTO EX13
B12::
.R UTP:SENDER
*TYPE ERROR
*BLABEL EX12:
*TEST FORTRA
*SEND Error in DO loop test.
*EXIT
; Continue the tests in this case.
EX13::
; Same only optimized.
.COMPILE DO.FOR /COMP /OPT
.EXECUTE
.IF (ERROR) .GOTO B13
.GOTO EX14
B13::
.R UTP:SENDER
*TYPE ERROR
*BLABEL EX13:
*TEST FORTRA
*SEND Error in DO loop test (/OPT).
*EXIT
; Continue the tests in this case.
EX14::
; Test GO TO statements.
.COMPILE GOTO.FOR
.EXECUTE
.IF (ERROR) .GOTO B14
.GOTO EX15
B14::
.R UTP:SENDER
*TYPE ERROR
*BLABEL EX14:
*TEST FORTRA
*SEND Error in GO TO test.
*EXIT
; Continue the tests in this case.
EX15::
; Same only optimized.
.COMPILE GOTO.FOR /COMP /OPT
.EXECUTE
.IF (ERROR) .GOTO B15
.GOTO EX16
B15::
.R UTP:SENDER
*TYPE ERROR
*BLABEL EX15:
*TEST FORTRA
*SEND Error in GO TO test (/OPT).
*EXIT
; Continue the tests in this case.
EX16::
; Test IF statements.
.COMPILE IF.FOR
.EXECUTE
.IF (ERROR) .GOTO B16
.GOTO EX17
B16::
.R UTP:SENDER
*TYPE ERROR
*BLABEL EX16:
*TEST FORTRA
*SEND Error in IF statement test.
*EXIT
; Continue the tests in this case.
EX17::
; Same only optimized.
.COMPILE IF.FOR /COMP /OPT
.EXECUTE
.IF (ERROR) .GOTO B17
.GOTO EX18
B17::
.R UTP:SENDER
*TYPE ERROR
*BLABEL EX17:
*TEST FORTRA
*SEND Error in IF statement test (/OPT).
*EXIT
; Continue the tests in this case.
EX18::
; Test IMAGE I/O.
.COMPILE IMAGE.FOR
.EXECUTE
.IF (ERROR) .GOTO B18
.GOTO EX19
B18::
.R UTP:SENDER
*TYPE ERROR
*BLABEL EX18:
*TEST FORTRA
*SEND Error in IMAGE I/O test.
*EXIT
; Continue the tests in this case.
EX19::
; Same only optimized.
.COMPILE IMAGE.FOR /COMP /OPT
.EXECUTE
.IF (ERROR) .GOTO B19
.GOTO EX20
B19::
.R UTP:SENDER
*TYPE ERROR
*BLABEL EX19:
*TEST FORTRA
*SEND Error in IMAGE I/O test (/OPT).
*EXIT
; Continue the tests in this case.
EX20::
; Test RANDOM access I/O.
.COMPILE RANDOM.FOR
.EXECUTE
.IF (ERROR) .GOTO B20
.GOTO EX21
B20::
.R UTP:SENDER
*TYPE ERROR
*BLABEL EX20:
*TEST FORTRA
*SEND Error in RANDOM access I/O test.
*EXIT
; Continue the tests in this case.
EX21::
; Same only optimized.
.COMPILE RANDOM.FOR /COMP /OPT
.EXECUTE
.IF (ERROR) .GOTO B21
.GOTO EX22
B21::
.R UTP:SENDER
*TYPE ERROR
*BLABEL EX21:
*TEST FORTRA
*SEND Error in RANDOM access I/O test (/OPT).
*EXIT
; Continue the tests in this case.
EX22::
; Test subroutines and functions.
.COMPILE SUBFUN.FOR
.EXECUTE
.IF (ERROR) .GOTO B22
.GOTO EX23
B22::
.R UTP:SENDER
*TYPE ERROR
*BLABEL EX22:
*TEST FORTRA
*SEND Error in subroutine/function test.
*EXIT
; Continue the tests in this case.
EX23::
; Same only optimized.
.COMPILE SUBFUN.FOR /COMP /OPT
.EXECUTE
.IF (ERROR) .GOTO B23
.GOTO END
B23::
.R UTP:SENDER
*TYPE ERROR
*BLABEL EX23:
*TEST FORTRA
*SEND Error in subroutine/function test (/OPT).
*EXIT
.GOTO END
%CERR::
.GOTO UERR
%ERR::
.GOTO UERR
UERR::
; An unexpected error occured somewhere.
.
.RUN UTP:SENDER
*TYPE ERROR
*BLABEL ERR:
*TEST FORTRA
*SEND Unknown Fortran error - check .LOG file.
*EXIT
.GOTO END
END::
; Cleanup and finish.
.
.NOERROR
.DELETE ARRAYS.REL,ASCII.LST,ASCII.REL,BINARY.REL,DO.REL,GOTO.REL,IF.REL
.DELETE IMAGE.REL,LIB.REL,RANDOM.REL,SUBFUN.REL,T4DDT.REL
.DELETE FOR20.DAT,FOR21.DAT,FOR22.DAT,FOR23.DAT
.ERROR
.RUN UTP:SENDER
*TYPE END
*BLABEL END:
*TEST FORTRA
*SEND End of FORTRAN test.
*EXIT
%FIN::
; End of tests.