Any ideas suggestions will be appreciated.
Malcolm Sharp
U of SoCal
I believe that FORTRAN allows a maximum of 20 open files. The system
already opened standard input, standard output, standard error, standard
printer, and standard auxiliary for you, so it makes sense that your
program dies when it attempts to open the sixteenth file. I also believe
that is some sort of system call you can make to reset the maximum number
of open files. Check your documentation. This setting is independent of
the FILES= statement in CONFIG.SYS. Obviously, it will also need to be
set to a higher value, but you already know that.
Oh, and when I say FORTRAN allows a maximum of 20 open files, I mean DOS
FORTRAN, not the ANSI standard.
This is specific to the compiler that you are using. Some, such as
WATCOM FORTRAN 77 & FORTRAN 77/386, will allow you to increase this
limit.
Changing the "FILES=" parameter in CONFIG.SYS changes the number of system
wide file handles that are available. But, the problem is that MS-DOS
limits the number of open files per process to twenty (20), five (5) of
which are pre-opened by COMMAND.COM for the process before it starts.
Given this fact, you will be able to open fifteen (15) additional files
before running out of 'per process' file descriptors. There are ways
around this limit that involves running a program that increases the per
process limit and then executes the program that needs the increased
limits. If you are interested in the details, send me E-mail, and I will
dig up the detailed information to send to you. Be sure to include the
version of MS-DOS you are using.
BTW: The five (5) pre-opened files are 'stdin', 'stdout', 'stderr',
'stdaux', and 'stdprn'
--
____ | Billy G. Allie | Domain....: b...@bgalli.eds.com
| /| | 7436 Hartwell | UUCP......: uunet!edsews!bgalli!bga
|-/-|----- | Dearborn, MI 48126 | Compuserve: 76337,2061
|/ |LLIE | (313) 582-1540 | Genie.....: BGALLIE