FATFS

The FATFS structure holds dynamic work area of the logical drive and a file. It is given by application program and registerd/unregisterd to the Petit FatFs module with pf_mount function. There is no member that can be changed by application programs.

typedef struct {
    BYTE    fs_type;     /* FAT sub type */
    BYTE    csize;       /* Number of sectors per cluster */
    BYTE    flag;        /* File status flags */
    BYTE    pad1;
    WORD    n_rootdir;   /* Number of root directory entries (0 on FAT32) */
    CLUST   n_fatent;    /* Number of FAT entries (= number of clusters + 2) */
    DWORD   fatbase;     /* FAT start sector */
    DWORD   dirbase;     /* Root directory start sector (Cluster# on FAT32) */
    DWORD   database;    /* Data start sector */
    DWORD   fptr;        /* File read/write pointer */
    DWORD   fsize;       /* File size */
    CLUST   org_clust;   /* File start cluster */
    CLUST   curr_clust;  /* File current cluster */
    DWORD   dsect;       /* File current data sector */
} FATFS;

Return