SIC has the following usage of Fortran logical unit numbers:
5 Input of Commands, shareable
6 Output of messages, shareable
Units 5 and 6 are respectively accessed via usual READ and WRITE instructions.
In addition, the terminal is accessed via QIO on an
assigned channel for keypad line editing. The associated logical names are FOR005 and FOR006 and the default assignments provided by the system VMS
are:
ASSIGN SYS$INPUT FOR005
ASSIGN SYS$OUTPUT FOR006
If you wish to be able to reassign the input or/and output of your
program to a file, you should also make your input and output in the same
way (or use the SIC_WPR, SIC_WPRN routine). If you mix READ(5,format) and WRITE(6,format) instructions with TYPE, ACCEPT,
READ(*,format) or WRITE(*,format) instructions, you might experience some
problems to properly re-assign input or output. As a hint for this, remember the
default logical names for Input/Output on VAX/VMS :
Statement Fortran Log Name System Log Name
READ(nnn,f) list FORnnn SYS$INPUT
READ(*,f) list FOR$READ SYS$INPUT
READ(f) list FOR$READ SYS$INPUT
ACCEPT f,list FOR$ACCEPT SYS$INPUT
WRITE(nnn,f) list FORnnn SYS$OUTPUT
WRITE(*,f) list FOR$PRINT SYS$OUTPUT
PRINT f,list FOR$PRINT SYS$OUTPUT
TYPE f,list FOR$TYPE SYS$OUTPUT
The monitor uses additional logical units for the LOG file, for opening temporary files and for active macro's. These units are reserved dynamically by calls to the VAX-VMS appropriate services and do not interfere with any Fortran unit numbers used within the user program, except that a program may use too many logical units.