foy@aero.ARPA (Richard Foy) (12/24/85)
I have been reading to and writing from a disk OK in assembly language. However I have not been able to figure out how to read the disk directory. Can Robert Switzer or anyone else on the net tell me how to do it.
mj@myrias.UUCP (Michal Jaegermann) (12/30/85)
> I have been reading to and writing from a disk OK in assembly language. > However I have not been able to figure out how to read the disk directory. > Can Robert Switzer or anyone else on the net tell me how to do it. [ reply is news, since mail bounced at ittatc ] There are basically two ways. The first one - if you are able to read disk on sector-by-sector basis. Read sector 0 and extract all information about disk - name, format, number of sectors, used (this have to be computed from a bit-map table). Read sector 1. You will get up to 127 pointers to sectors which contain file information. Read all sectors with non-zero pointers to extract file information. This method will may reveal all "hidden" files, which pointers follow a null pointer. The second one. Open a file with an empty name like "DSK1.". This is - if I remeber correctly - internal, fixed 38 with record fields: string followed by 3 numbers. Record #0 will give you a disk information. Subsequent records will hold file info. I do not remember a meaning of numbers, but quick experiment in Basic with a known disk will reveal that (negative type if protected). Since this is a standard Basic file, thus all numeric entries are in a floating point format. This will give you a slight headache if you will be reading the stuff in assembler. ============================= Michal Jaegermann Myrias Research Corporation ...ihnp4!alberta!myrias!mj