1 #ident "$Id: libfatint.h,v 1.2 2004/12/15 20:29:17 hpa Exp $"
2 /* ----------------------------------------------------------------------- *
4 * Copyright 2004 H. Peter Anvin - All Rights Reserved
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation, Inc., 53 Temple Place Ste 330,
9 * Boston MA 02111-1307, USA; either version 2 of the License, or
10 * (at your option) any later version; incorporated herein by reference.
12 * ----------------------------------------------------------------------- */
17 * Internals for the libfat filesystem
26 struct libfat_sector {
27 libfat_sector_t n; /* Sector number */
28 struct libfat_sector *next; /* Next in list */
29 char data[LIBFAT_SECTOR_SIZE];
38 struct libfat_filesystem {
39 int (*read)(intptr_t, void *, size_t, libfat_sector_t);
42 enum fat_type fat_type;
43 unsigned int clustsize;
45 int32_t endcluster; /* Highest legal cluster number + 1 */
46 int32_t rootcluster; /* Root directory cluster */
48 libfat_sector_t fat; /* Start of FAT */
49 libfat_sector_t rootdir; /* Start of root directory */
50 libfat_sector_t data; /* Start of data area */
51 libfat_sector_t end; /* End of filesystem */
53 struct libfat_sector *sectors;
56 #endif /* LIBFATINT_H */