CVF Region: BitFAT
The BitFAT is a simple one-bit-to-one-sector mapping of the contents of
the Sector Heap. Unlike the standard FAT, this does not provide
information in the location of files or cluster fragmentation--it simply
indicates which sectors are currently in use.
For safety and integrity, the BitFAT is rebuilt (by scanning the MDFAT)
each time a volume is mounted.
The BitFAT region starts at sector 1 (512 bytes from the start) of
the CVF. It may be as large as 256 sectors (128K=131,072 bytes).
Each 16-bit word in this region represents a group of 16 sectors of the
Sector Heap. When a bit is set (1), it indicates that the sector is in
use and when clear (0) indicates that the sector is free. The high bit
(bit 15) corresponds to the first sector of the 16-sector group and low
bit (bit 0) represents the 16th sector in the group:
(WORD) BitFAT+0 BitFAT+2 BitFAT+4
┌┴──────────────────────────────┐┌┴─────── - ───┐┌┴── - -
│1 1 1 1 1 1 ││1 1 1 1 ││1 1 1
╓5┬4┬3┬2┬1┬0┬9┬8╥7┬6┬5┬4┬3┬2┬1┬0╖╓5┬4┬3┬2┬\ \1┬0╖╓5┬4┬3┬\
║ │ │ │ │ │ │ │ ║ │ │ │ │ │ │ │ ║║ │ │ │ │/ / │ ║║ │ │ │/
╙╥┴╥┴╥┴╥┴╥┴╥┴╥┴╥╨╥┴╥┴╥┴╥┴╥┴╥┴╥┴╥╜╙╥┴╥┴╥┴╥┴\ \╥┴╥╜╙╥┴╥┴╥┴\
SectHeap+0 ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║
+1 ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║
+2 ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║
+3 ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║
+4 ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║
+5 ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║
+6 ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║
+7 ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║
+8 ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║
+9 ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║
+10 ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║
+11 ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║
+12 ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║
+13 ║ ║ ║ ║ ║ ║ ║ ║ ║ ║ ║
+14 ║ ║ ║ ║ ║ ║ ║ ║ ║ ║
+15 ║ ║ ║ ║ ║ ║ ║ ║ ║
SectHeap+16 ║ ║ ║ ║ ║ ║ ║ ║
+17 ║ ║ ║ ║ ║ ║ ║
+18 ║ ║ ║ ║ ║ ║
+19 ║ ║ ║ ║ ║
SectHeap+30 ║ ║ ║ ║
See Also: CVF Layout +31 ║ ║ ║
DoubleSpace Overview +32 ║ ║
DoubleSpace API +33 ║
DOS Functions +34...
-♦-