Coggle requires JavaScript to display documents.
FAT32
unsigned int ROOT_START = (BS.reserved_sector_count + BS.table_size_32 * BS.fat_num) * BS.bytes_per_sector;
struct DirEntry { unsigned char name[11]; unsigned char attr; unsigned char res; unsigned char crt_time_tenth; unsigned short crt_time; unsigned short crt_date; unsigned short last_access_date; unsigned short first_hi; unsigned short written_time; unsigned short written_date; unsigned short first_lo; unsigned long filesize; };
fseek(in, fat_start + cluster * 4, SEEK_SET); fread(&cluster, 4, 1, in); cluster &= 0x0FFFFFFF;