29 #error Wrong configuration file (ffconf.h).
41 extern PARTITION VolToPart[];
42 #define LD2PD(vol) (VolToPart[vol].pd)
43 #define LD2PT(vol) (VolToPart[vol].pt)
46 #define LD2PD(vol) (BYTE)(vol)
57 #error _LFN_UNICODE must be 0 at non-LFN cfg.
62 #define _TEXT(x) L ## x
87 #if _MAX_SS != _MIN_SS
243 TCHAR*
f_gets (TCHAR* buff,
int len,
FIL* fp);
245 #define f_eof(fp) ((int)((fp)->fptr == (fp)->fsize))
246 #define f_error(fp) ((fp)->err)
247 #define f_tell(fp) ((fp)->fptr)
248 #define f_size(fp) ((fp)->fsize)
249 #define f_rewind(fp) f_lseek((fp), 0)
250 #define f_rewinddir(dp) f_readdir((dp), 0)
263 #if !_FS_READONLY && !_FS_NORTC
272 void* ff_memalloc (
UINT msize);
273 void ff_memfree (
void* mblock);
295 #define FA_OPEN_EXISTING 0x00
298 #define FA_WRITE 0x02
299 #define FA_CREATE_NEW 0x04
300 #define FA_CREATE_ALWAYS 0x08
301 #define FA_OPEN_ALWAYS 0x10
302 #define FA__WRITTEN 0x20
303 #define FA__DIRTY 0x40
327 #define CREATE_LINKMAP 0xFFFFFFFF
334 #if _WORD_ACCESS == 1
335 #define LD_WORD(ptr) (WORD)(*(WORD*)(BYTE*)(ptr))
336 #define LD_DWORD(ptr) (DWORD)(*(DWORD*)(BYTE*)(ptr))
337 #define ST_WORD(ptr,val) *(WORD*)(BYTE*)(ptr)=(WORD)(val)
338 #define ST_DWORD(ptr,val) *(DWORD*)(BYTE*)(ptr)=(DWORD)(val)
340 #define LD_WORD(ptr) (WORD)(((WORD)*((BYTE*)(ptr)+1)<<8)|(WORD)*(BYTE*)(ptr))
341 #define LD_DWORD(ptr) (DWORD)(((DWORD)*((BYTE*)(ptr)+3)<<24)|((DWORD)*((BYTE*)(ptr)+2)<<16)|((WORD)*((BYTE*)(ptr)+1)<<8)|*(BYTE*)(ptr))
342 #define ST_WORD(ptr,val) *(BYTE*)(ptr)=(BYTE)(val); *((BYTE*)(ptr)+1)=(BYTE)((WORD)(val)>>8)
343 #define ST_DWORD(ptr,val) *(BYTE*)(ptr)=(BYTE)(val); *((BYTE*)(ptr)+1)=(BYTE)((WORD)(val)>>8); *((BYTE*)(ptr)+2)=(BYTE)((DWORD)(val)>>16); *((BYTE*)(ptr)+3)=(BYTE)((DWORD)(val)>>24)
FATFS * fs
Definition: ff.h:115
FRESULT f_chdrive(const TCHAR *path)
DWORD winsect
Definition: ff.h:106
int f_puts(const TCHAR *str, FIL *cp)
unsigned short WORD
Definition: integer.h:20
unsigned short WCHAR
Definition: integer.h:21
DWORD sclust
Definition: ff.h:121
int f_putc(TCHAR c, FIL *fp)
DWORD clust
Definition: ff.h:148
#define _MAX_SS
Definition: ffconf.h:163
int ff_req_grant(_SYNC_t sobj)
WORD ftime
Definition: ff.h:171
DWORD n_fatent
Definition: ff.h:100
BYTE err
Definition: ff.h:118
FRESULT f_fdisk(BYTE pdrv, const DWORD szt[], void *work)
FRESULT f_mount(FATFS *fs, const TCHAR *path, BYTE opt)
FRESULT f_getlabel(const TCHAR *path, TCHAR *label, DWORD *vsn)
BYTE csize
Definition: ff.h:81
char TCHAR
Definition: ff.h:67
DWORD dir_sect
Definition: ff.h:125
BYTE * dir
Definition: ff.h:150
FRESULT f_chdir(const TCHAR *path)
FRESULT f_chmod(const TCHAR *path, BYTE attr, BYTE mask)
FRESULT f_readdir(DIR *dp, FILINFO *fno)
FRESULT f_read(FIL *fp, void *buff, UINT btr, UINT *br)
DWORD fsize
Definition: ff.h:120
FRESULT f_getfree(const TCHAR *path, DWORD *nclst, FATFS **fatfs)
FRESULT f_mkdir(const TCHAR *path)
FATFS * fs
Definition: ff.h:144
BYTE fsi_flag
Definition: ff.h:84
unsigned long DWORD
Definition: integer.h:29
FRESULT f_lseek(FIL *fp, DWORD ofs)
int ff_cre_syncobj(BYTE vol, _SYNC_t *sobj)
DWORD dsect
Definition: ff.h:123
FRESULT f_truncate(FIL *fp)
void ff_rel_grant(_SYNC_t sobj)
FRESULT f_forward(FIL *fp, UINT(*func)(const BYTE *, UINT), UINT btf, UINT *bf)
unsigned char BYTE
Definition: integer.h:16
WORD n_rootdir
Definition: ff.h:86
BYTE flag
Definition: ff.h:117
WORD id
Definition: ff.h:145
FRESULT f_closedir(DIR *dp)
FRESULT f_stat(const TCHAR *path, FILINFO *fno)
FRESULT f_rename(const TCHAR *path_old, const TCHAR *path_new)
DWORD last_clust
Definition: ff.h:94
FRESULT f_write(FIL *fp, const void *buff, UINT btw, UINT *bw)
_SYNC_t sobj
Definition: ff.h:91
FRESULT
Definition: ff.h:184
DWORD fsize
Definition: ff.h:101
BYTE fs_type
Definition: ff.h:79
FRESULT f_open(FIL *fp, const TCHAR *path, BYTE mode)
BYTE n_fats
Definition: ff.h:82
DWORD fptr
Definition: ff.h:119
FRESULT f_mkfs(const TCHAR *path, BYTE sfd, UINT au)
DWORD sect
Definition: ff.h:149
WORD id
Definition: ff.h:116
DWORD sclust
Definition: ff.h:147
BYTE drv
Definition: ff.h:80
BYTE fattrib
Definition: ff.h:172
unsigned int UINT
Definition: integer.h:25
FRESULT f_setlabel(const TCHAR *label)
#define _SYNC_t
Definition: ffconf.h:231
FRESULT f_findfirst(DIR *dp, FILINFO *fno, const TCHAR *path, const TCHAR *pattern)
BYTE * dir_ptr
Definition: ff.h:126
DWORD clust
Definition: ff.h:122
WORD id
Definition: ff.h:85
FRESULT f_utime(const TCHAR *path, const FILINFO *fno)
DWORD free_clust
Definition: ff.h:95
TCHAR * f_gets(TCHAR *buff, int len, FIL *fp)
BYTE wflag
Definition: ff.h:83
BYTE * fn
Definition: ff.h:151
int f_printf(FIL *fp, const TCHAR *str,...)
DWORD volbase
Definition: ff.h:102
DWORD dirbase
Definition: ff.h:104
DWORD fsize
Definition: ff.h:169
DWORD database
Definition: ff.h:105
FRESULT f_findnext(DIR *dp, FILINFO *fno)
FRESULT f_opendir(DIR *dp, const TCHAR *path)
FRESULT f_unlink(const TCHAR *path)
FRESULT f_getcwd(TCHAR *buff, UINT len)
DWORD fatbase
Definition: ff.h:103
int ff_del_syncobj(_SYNC_t sobj)
WORD index
Definition: ff.h:146
WORD fdate
Definition: ff.h:170