Hi Roland,
210 OPEN (UNIT=K_DRAW_CHAN,
1 FILE=DRAWING_DATA,
2 STATUS='OLD',
3 ORGANIZATION='INDEXED',
I'd never heard of that one up to now.
4 ACCESS='KEYED',
5 RECORDTYPE='FIXED',
6 FORM='UNFORMATTED',
7 RECL=K_DRAWING_RECORD_SIZE/4,
8 CARRIAGECONTROL='FORTRAN',
9 KEY=(1:8:CHARACTER),
1 DISP='KEEP',
2 IOSTAT=L_DRAW_ERR,
3 ERR=999)
The ORGANIZATION='INDEXED' is key.
GnuCOBOL
https://gnucobol.sourceforge.io/
uses the BerkleyDB (sp?) library so the standard COBOL indexed file
support from the big computers can at least be mimicked.
I'm searching everywhere and I cannot find Gnu Fortran (any flavor)
having an ORGANIZATION clause in the OPEN().
ORGANIZATION is not an extension that gfortran supports.
ifort, which traces its lineage back to VMS Fortran, supports
ORGANIZATION, but not 'INDEXED', according to
https://www.intel.com/content/www/us/en/develop/documentation/fortran-compiler-oneapi-dev-guide-and-reference/top/language-reference/file-operation-i-o-statements/open-statement-specifiers/open-organization-specifier.html
This is likely a Fortran interface to a VMS speciality; the older
operating systems had stuff like that. UNIX did away with all
the record-orientation (I also remember VSAM and ISAM data sets
on old IBM mainframes) and UNIX and derivatives, and Windows, now
just offers the "stream of bytes" model.
So, if you need the functionality, you will have to implement it
yourself, possibly via a database.
Best regards
Thomas