This pull request adds a new function call, GETCLUS (code 7Eh), that allows to retrieve information about a given cluster in a FAT12 or FAT16 drive. The information returned is:
FAT sector number that contains the entry for the cluster
Offset in the FAT sector where the entry for the cluster is located
First data sector number the cluster refers to
Value of the FAT entry for the cluster
Size of a cluster in sectors for the drive
Flags indicating:
The type of FAT (FAT12 or FAT16)
Whether the FAT entry for the cluster is an odd entry (FAT12 only)
Whether the the cluster is the last one of a file, or is an unused cluster
A new tool is added, CONCLUS: it checks the FAT chain of a given file using the new function, and tells whether the file is stored across consecutive sectors in the disk or not.
Also the EMUFILE tool is updated to use this new function in order to check if disk image files are stored across consecutive sectors in the disk.
As a bonus, there's another improvement to EMUFILE: now the "set" command accepts a directory name as parameter instead of a file name. When a directory name is supplied, a file with the same name and .EMU extension will be used. For example, EMUFILE SET \DSKS\GAME is equivalent to EMUFILE SET \DSKS\GAME\GAME.EMU if \DSKS\GAME is a directory.
This pull request adds a new function call, GETCLUS (code 7Eh), that allows to retrieve information about a given cluster in a FAT12 or FAT16 drive. The information returned is:
A new tool is added, CONCLUS: it checks the FAT chain of a given file using the new function, and tells whether the file is stored across consecutive sectors in the disk or not.
Also the EMUFILE tool is updated to use this new function in order to check if disk image files are stored across consecutive sectors in the disk.
As a bonus, there's another improvement to EMUFILE: now the "set" command accepts a directory name as parameter instead of a file name. When a directory name is supplied, a file with the same name and .EMU extension will be used. For example,
EMUFILE SET \DSKS\GAME
is equivalent toEMUFILE SET \DSKS\GAME\GAME.EMU
if\DSKS\GAME
is a directory.