FRAGHDR STRUC fhcFrag dd ? ; Count of fragments fhaFrag dd ? DUP (?) ; Variable size array of fragment entries FRAGHDR ENDS
Contains information about fragmented clusters. The first sector of fragmented sections contains a FRAGHDR structure.
The count of sectors stored for each fragment header entry is actually the count of sectors in the fragment minus one. Also, the first entry in fhaFrag describes the first fragment in the cluster, just as the MDFAT entry does.
You can use the following values to retrieve information from a segment entry in the fhaFrag array:
Value | Meaning |
FG_SECTORWIDTH (23) | Width of sector number |
FG_SECTORSHIFT (0) | Shift sector number to low end |
FG_SECTORMASK (((1 SHL FG_SECTORWIDTH) - 1) SHL FG_SECTORSHIFT) | Mask for sector number |
FG_RESERVEDWIDTH (3) | Width of reserved bits |
FG_RESERVEDSHIFT (FG_SECTORSHIFT + FG_SECTORWIDTH) | Shift reserved bits to low end |
FG_RESERVEDMASK (((1 SHL FG_RESERVEDWIDTH) - 1) SHL FG_RESERVEDSHIFT) | Mask for reserved bits |
FG_CSECWIDTH (6) | Width of sector count |
FG_CSECSHIFT (FG_RESERVEDSHIFT + FG_RESERVEDWIDTH) | Shift sector count to low end |
FG_CSECMASK (((1 SHL FG_CSECWIDTH) - 1) SHL FG_CSECSHIFT) | Mask for sector count |