Path: utzoo!mnetor!tmsoft!torsqnt!lethe!yunexus!ists!helios.physics.utoronto.ca!news-server.csri.toronto.edu!bonnie.concordia.ca!uunet!munnari.oz.au!uhccux!tholen From: tholen@uhccux.uhcc.Hawaii.Edu (David Tholen) Newsgroups: comp.os.os2.programmer Subject: LONGNAMES Message-ID: <11355@uhccux.uhcc.Hawaii.Edu> Date: 7 Feb 91 11:11:56 GMT Organization: University of Hawaii Lines: 30 Does somebody have detailed information about the contents of an OS/2 EXE header? Microsoft LINK version 5.03 (bundled with FORTRAN version 5.0) does not support the LONGNAMES statement in the module definition file. To enable long filename support for HPFS, I've considered two options: (1) use the OS/2 version 1.2 linker, or (2) continue using the Microsoft linker and edit the executable file header to flip the necessary bits. I'm a little reluctant to use option (1) routinely, partly because the OS/2 version 1.2 documentation doesn't have anything for LINK (either on paper or in the on-line command reference), and partly because of the possibility of some subtle incompatibility with the FORTRAN version 5.0 .OBJ files (or should I not be concerned about this possibility?). To use option (2), I need to know which bits to flip. I tried to determine this information on my own by comparing the output from the Microsoft and IBM linkers, but the .EXE files were of different sizes. Next, I tried comparing the .EXE files produced by only the IBM linker, one done with LONGNAMES in a .DEF file and the other done without a .DEF file. Four bytes were different: offset 20 (hex) went from 0 to 1, offset B7 went from 0 to 1, offset 88 went from CE to CF, and offset 8B went from F to 10 (an increase of 1 in each case). Whereas the 20 and B7 bytes were the same in the output from the Microsoft linker, bytes 88 and 8B were not, so I don't know what to change (other than to try simply incrementing those bytes by 1). A little bit of experimentation showed that I could get a FORTRAN program to accept a long filename by changing only the B7 byte, but now I'm wondering what effect the other three bytes have and whether I need not bother with them? Can somebody advise me in this matter? Dave Tholen tholen@uhifa.ifa.hawaii.edu