The following snippet is the first few lines of the driver program for TOMS 494, published around 1975. While the second argument seems to possibly refer to a tape drive, it would be interesting to know what the arguments mean. The line seems to give error in gfortran 4.x
PROGRAM BURGER(PDEOUT, TAPE3=PDEOUT)
COMMON /MESH/ X(201)
COMMON /COORD/ ICORD
COMMON /SIZES/ NPDE,NPTS
DIMENSION U(201)
output of compilation:
PROGRAM BURGER(PDEOUT, TAPE3=PDEOUT)
1
Error: Invalid form of PROGRAM statement at (1)
It can be found in this manual FORTRAN EXTENDED VERSION 4 USER'S GUIDE from CDC (CONTROL DATA CORPORATION)
It was a way to pass the file names to be connected to when calling/launching the program. See page 7-3 (pdf 91).
Example 1
PROGRAM statement: PROGRAM FOIST (INPUT, OUTPUT, TAPE3)
Name call statement:
LGO(FIRST, SECOND)
File names actually used:
FIRST SECOND TAPE3
the LGO(file1, file2)
statement belongs to the loader as explained on the directly preceding pages and LGO
is the default program name (sort of how a.out
is today).
name(p1,p2,... ,pn)
Logical file name of the file to be loaded and executed, or name of the main program to be loaded and executed. Alternate file names for execution time file name substitution.
...
The file name call is the commonest call and is usually used for the simple case in which the object code is written by default to the file
LGO
.
The INPUT
and OUTPUT
files are what we call standard input and output today and were accessed by READ *,
, PRINT *,
and similar. TAPE3
was connected to unit 3 and TAPE5
to unit five like in the example on page 1-3 (pdf 13).
PROGRAM NEWTON (INPUT, OUTPUT, TAPE5=OUTPUT)
...
READ *, XO, EPS, ITMAX
...
WRITE (5,20) ITMAX
What did those tapes actually represented physically was controlled outside of Fortran and is explained in the manual as well.
So in modern times you either pre-connect the files to those units by some other system-specific means, or you use the OPEN()
statement to connect an external file to a Fortran unit number. We do not have the rest of your code so I cannot recommend any more detail.