3 * Stäubli Faverges - <www.staubli.com>
4 * Pierre AUBERT p.aubert@staubli.com
6 * See file CREDITS for list of people who contributed to this
9 * This program is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU General Public License as
11 * published by the Free Software Foundation; either version 2 of
12 * the License, or (at your option) any later version.
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
19 * You should have received a copy of the GNU General Public License
20 * along with this program; if not, write to the Free Software
21 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
32 #define PRINTF(fmt,args...) printf (fmt ,##args)
34 #define PRINTF(fmt,args...)
37 /* Data structure describing media */
40 unsigned long tot_sectors
;
53 unsigned char *fat_buf
;
57 /* Data structure describing one file system slot */
59 int (*map
) (struct fs
*fs
,
63 unsigned long FileSize
;
65 unsigned short int FirstAbsCluNr
;
66 unsigned short int PreviousAbsCluNr
;
67 unsigned short int PreviousRelCluNr
;
82 int dev_read (void *buffer
, int where
, int len
);
84 int check_dev (BootSector_t
*boot
, Fs_t
*fs
);
87 unsigned int fat_decode (Fs_t
*fs
, unsigned int num
);
88 int read_fat (BootSector_t
*boot
, Fs_t
*fs
);
91 int vfat_lookup (Slot_t
*dir
,
102 char *basename (char *name
);
103 int open_subdir (File_t
*desc
);
104 int open_file (Slot_t
*file
, Directory_t
*dir
);
105 int read_file (Fs_t
*fs
,
110 void init_subdir (void);
113 int fs_init (Fs_t
*fs
);