Clean up the Mass Storage bootloader virtual FAT directory entry definitions.
[pub/USBasp.git] / Bootloaders / MassStorage / Lib / VirtualFAT.h
index 440b65d..37095ea 100644 (file)
                        /* uint16_t MagicSignature; */
                } FATBootBlock_t;
 
-               /** FAT legacy 8.3 style directory entry structure definition, used to
-                *  identify the files and folders of FAT filesystem stored on a disk.
+               /** FAT directory entry structure, for the various kinds of File and
+                *  directory descriptors on a FAT disk.
                 */
                typedef union
                {
+                       /** FAT Long File Name directory entry. */
                        struct
                        {
                                uint8_t  Ordinal;
                                uint16_t Reserved2;
                                uint16_t Unicode12;
                                uint16_t Unicode13;
-                       } VFAT;
+                       } VFAT_LongFileName;
 
+                       /** FAT MSDOS 8.3 legacy file entry. */
                        struct
                        {
                                uint8_t  Filename[8];
                                uint16_t CreationDate;
                                uint16_t StartingCluster;
                                uint32_t FileSizeBytes;
-                       } MSDOS;
+                       } MSDOS_File;
+
+                       /** FAT MSDOS (sub-)directory entry. */
+                       struct
+                       {
+                               uint8_t  Name[11];
+                               uint8_t  Attributes;
+                               uint8_t  Reserved[10];
+                               uint16_t CreationTime;
+                               uint16_t CreationDate;
+                               uint16_t StartingCluster;
+                               uint32_t Reserved2;
+                       } MSDOS_Directory;
                } FATDirectoryEntry_t;
 
        /* Function Prototypes: */