This program was written to fill a hole in my own arsenal of programs. Our library system offers free internet access, with downloading of files onto floppy disks permitted. However all the internet PCs run Windows, and at home we use OS/2. Both systems support long file names, but (of course) incompatibly. A program exists to show the Windows long names in a directory listing (called "wir"), but it refuses to read FAT12, so it won't touch our floppies. Rather than restrain myself to 8.3 (or 6.3 in case I overstep somewhere and get a rotten ~1 on the name!), I wrote this program. So far (version 1.0.0), only the root directory is supported (hence the program name), and the path is hardcoded into the program (it will only read from drive A: unless you edit the executable).
RootDir uses DASD (Direct Access to Storage Device) to read the floppy disk sector by sector. If another program is using the disk, RootDir may fail.
All errors are reported by exiting with an error code. These codes are the standard OS/2 codes, so (eg) "HELP 21" will tell you about error 21.
If you want to recompile the program, you will need the Netwide Assembler (nasm), and my S2Macros library. If you make any changes, please change the version number at the beginning of the data segment! Especially please change the first letter - it's an author code. (See the comments at the top of the program for details.)
The long names are sent to STDOUT, and can be redirected or piped. The format is simple: first the real file name, then the long name, separated by one blank. See the comments in the .ASM file for details.
The CMD, LongNameEA.CMD, uses RootDir.EXE and the RXQUEUE command to get the information, and REXXUTIL's SysPutEA function to apply the long names as OS/2 .LONGNAME extended attributes. Simply run this program, then view the drive in Icon View, and you'll see the long names. Note that after tinkering of this sort, you'd do well to get the information and format the disk - there's rubbish on it from OS/2's point of view (the extra directory entries), and Windows's (the 'EA DATA. SF' file).
I haven't tested it, but I think RootDir will work on FAT16 drives, and maybe FAT32 as well. YMMV.
File: RootDir.ZIP - current version 1.0.1
Requires: OS/2
Installation: Unzip
Operation: Run.
De-installation: Delete.
Distribution: Open Source.