Floppy File System (FFS)
Posted On August 22, 2008 by GB Shah filed under
Every PC user must have used floppies. They have served as a storage device since the advent of PCs. It’s the predecessor of all modern day hard disks. But these days those floppies are not commonly used. The reason for this is, they became unreliable and the quality of floppies is getting poor these days. Of course it’s true. You too may have become upset with floppies sometime. This article deals with how to use floppies that can not be used with Windows.
Consider this case, suppose you are taking some important files to office but there it tells you that, “Disk is not formatted. Do want to format now “. But you did format it already, before you copied the files in the first place. How many of you have faced it? And this is one reason why we hate floppies.
Cause of unreliability:
The cause of the “Disk is not formatted “ error is, because Windows was unable to read the FAT file system in the disk. Because the file system sectors of floppy got damaged. Let’s deal in detail about this error later in this article. You may have come across these errors too while formatting the floppy disks,
"Windows was unable to complete the format. Disk in drive cannot be formatted".
"Invalid media or Track 0 bad - Disk unusable.” (in DOS).
After the above errors, you may have staked that floppy as unusable or thrown it to trash. But those are actually usable. Let’s go in detail here. Generally FAT is stored in disks from Track 0 itself. When the sectors in that track got damaged, file system can not be retrieved or stored. This results in non usability of the disk expressed by the above mentioned errors to users.
Consider this case, only one sector of the Track 0 is bad but the remaining sectors in floppy all are functioning. Here too FAT can not be created. Floppy is wasted. Totally a floppy (3.5 inch) will have 2880 sectors. One bad sector in FAT area can result in non usability of the remaining 2879 sectors. This is the actual cause behind such unreliable floppies. You can verify this by using the “Sector Test” utility. This will list you the number of bad sector sectors in each Track.
Alternate File System:
You may think of now, “Why File System can not be stored somewhere else in the good sectors of disk “. That’s right. That will be the better solution. To overcome the problems with such floppies and make use of them too, FFS (Floppy File System) is designed and implemented.
The problems overcame by this FFS are,
1. You may have encountered the following error,
“Cannot copy filename: Data error (Cyclic Redundancy Check)”.
This implies your file is stored in bad sectors and you can’t retrieve the file. You will only lose some parts of your file but windows wont’ let you to retrieve files partially. In FFS bad sectors are marked and won’t be used for storing files. You won’t lose any file because of this error.
Suppose a sector gets bad after saving data on it. Suppose that file is a text document then retrieving partially will save you some data. This file system supports retrieving files partially.
2. The reliability of the floppy is improved because four copies of the FFS are maintained. If any one copy of the File System (FFS) got damaged, then another will be used automatically. If all copies failed, then no way you cannot use the floppy. Only when the floppy is damaged heavily all copies of FFS will fail. If the number of bad sectors in the disk is high like 100 or more bad sectors, it is advisable to avoid such floppies; they are not reliable but can be used with this FFS handler too.
The four copies of the file system are at four tracks (0,79,80,159) of the disk. The chance of all these four tracks getting bad is very less, so reliability of floppy is high.
The features of this FFS are,
| Space used | 6 KB |
| Copies of File System | 4 Copies |
| File Limitation | 25 Files |
| Directory Support | No |
| Total Space | 1.40 MB (when no bad sectors) |
| Reliability | High |
FFS Handler:
This handles the FFS. Using the FFS handler utility you can read, write or delete files in the disk. While starting this utility, it will look for the FFS in the disk.
If the disk does not have FFS, formatting will be performed and file system will be created in disk. Then you can use the floppy for storing and retrieving files. It is completely done in C language. I have provided the code. Feel free to make changes and use.

The working environment of the FFS Handler is shown above.
Conclusion:
So now you can use those floppies which can not be used with FAT by using the FFS. Careful handling of floppies will avoid getting affected with bad sectors. Take care of.

