; Job to test the FORTRAN system on the DECsystem-10 ; SUBMIT F10TST.CTL/TIME:0:02:00 ;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 F10TST.CTL March 81 ; Control file to run a small version of the Fortran version 6 test ; system and confirm that all essential parts of Fortran are present ; on tapes sent to field testing. ; Files needed on DSK: ; F10TST.CTL This file ; FORTRA.EXE ; FORTRA.HLP ; FORTB.EXE ; FORTC.EXE ; FORTD.EXE ; FORTE.EXE ; FORTF.EXE ; FORTG.EXE ; FORLIB.REL ; FOROT6.EXE ; FORDDT.HLP ; FORDDT.REL ; SINGLE.EXE ; ARRAYS.FOR ; ASCII.FOR ; BINARY.FOR ; DO.FOR ; GOTO.FOR ; IF.FOR ; IMAGE.FOR ; LIB.FOR ; RANDOM.FOR ; SUBFUN.FOR ; T4DDT.FOR ; Get private copies of necessary system software. .COPY = SYS:DDT.REL .COPY = SYS:DIRECT.EXE .COPY = SYS:COMPIL.EXE .COPY = SYS:LINK.EXE .COPY = SYS:LNK???.EXE .COPY = SYS:PIP.EXE ; Setup libraries. .ASSIGN DSK: SYS: .ASSIGN DSK: HLP: ; Clean out. .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. .ERROR % .DIRECT DSK:FORTRA.EXE,DSK:FORTRA.HLP,DSK:FORTB.EXE,DSK:FORTC.EXE .DIRECT DSK:FORTD.EXE,DSK:FORTE.EXE,DSK:FORTF.EXE,DSK:FORTG.EXE .DIRECT DSK:FORLIB.REL,DSK:FOROT6.EXE,DSK:FORDDT.HLP,DSK:FORDDT.REL .ERROR .IF (ERROR) .GOTO UERR ; 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 UERR */HELP .IF (ERROR) .GOTO UERR *^Z .DIRECT ASCII.LST .IF (ERROR) .GOTO UERR .DIRECT ASCII.REL .IF (ERROR) .GOTO UERR ; 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. ; Program is merely loaded, not executed. .COMPILE LIB.FOR .LOAD LIB.REL .IF (ERROR) .GOTO UERR ; 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 UERR ; Test non-sharable FOROTS. ; ASCII previously compiled. .R LINK *ASCII.REL /OTS:NONSHAR /GO .START .IF (ERROR) .GOTO UERR ; Try FORDDT with the non-sharable FOROTS. .COMPILE T4DDT.FOR /COMP /DEB:(DIM,BOU) .R LINK *T4DDT.REL /SEG:LOW /DEBUG:FORTRA /OTS:NONSHAR /GO *T4DDT *PAUSE 10 *START *TYPE X *CONTINUE .IF (ERROR) .GOTO UERR ; Test arrays. .EXECUTE ARRAYS.FOR .IF (ERROR) .GOTO UERR .EXECUTE ARRAYS.FOR /COMP /OPT .IF (ERROR) .GOTO UERR ; Test ASCII I/O. .EXECUTE ASCII.FOR /COMP .IF (ERROR) .GOTO UERR .EXECUTE ASCII.FOR /COMP /OPT .IF (ERROR) .GOTO UERR ; Test BINARY I/O. .EXECUTE BINARY.FOR .IF (ERROR) .GOTO UERR .EXECUTE BINARY.FOR /COMP /OPT .IF (ERROR) .GOTO UERR ; Test DO loops. .EXECUTE DO.FOR .IF (ERROR) .GOTO UERR .EXECUTE DO.FOR /COMP /OPT .IF (ERROR) .GOTO UERR ; Test GO TO statements. .EXECUTE GOTO.FOR .IF (ERROR) .GOTO UERR .EXECUTE GOTO.FOR /COMP /OPT .IF (ERROR) .GOTO UERR ; Test IF statements. .EXECUTE IF.FOR .IF (ERROR) .GOTO UERR .EXECUTE IF.FOR /COMP /OPT .IF (ERROR) .GOTO UERR ; Test IMAGE I/O. .EXECUTE IMAGE.FOR .IF (ERROR) .GOTO UERR .EXECUTE IMAGE.FOR /COMP /OPT .IF (ERROR) .GOTO UERR ; Test RANDOM access I/O. .EXECUTE RANDOM.FOR .IF (ERROR) .GOTO UERR .EXECUTE RANDOM.FOR /COMP /OPT .IF (ERROR) .GOTO UERR ; Test subroutines and functions. .EXECUTE SUBFUN.FOR .IF (ERROR) .GOTO UERR .EXECUTE SUBFUN.FOR /COMP /OPT .IF (ERROR) .GOTO UERR ; Check out single segment compiler (unsupported). .DIRECT DSK:SINGLE.EXE .IF (ERROR) .GOTO UERR .NOERROR .DELETE ASCII.LST,ASCII.REL .ERROR % .R SINGLE *ASCII,ASCII=ASCII.FOR .IF (ERROR) .GOTO UERR *^Z .DIRECT ASCII.LST .IF (ERROR) .GOTO UERR .DIRECT ASCII.REL .IF (ERROR) .GOTO UERR .EXECUTE ASCII.REL .IF (ERROR) .GOTO UERR .R SINGLE *ASCII=ASCII.FOR /OPT .IF (ERROR) .GOTO UERR *^Z .EXECUTE ASCII.REL .IF (ERROR) .GOTO UERR .GOTO END %CERR:: .GOTO UERR %ERR:: .GOTO UERR UERR:: ; ***************************************************** ; ***************************************************** ; * * ; * ?Unexpected error - should not occur * ; * * ; ***************************************************** ; ***************************************************** .GOTO END END:: ; Cleanup. . .DEASSIGN SYS: .NOERROR .DELETE DDT.REL,DIRECT.EXE,COMPIL.EXE,LINK.EXE,LNK???.EXE,PIP.EXE .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 %FIN:: ; [End F10TST.CTL]