aboutsummaryrefslogtreecommitdiffstats
path: root/Projects/Incomplete/StandaloneProgrammer/Lib/PetiteFATFs/pff.h
diff options
context:
space:
mode:
authorDean Camera <dean@fourwalledcubicle.com>2012-05-27 19:12:07 +0000
committerDean Camera <dean@fourwalledcubicle.com>2012-05-27 19:12:07 +0000
commit2ff1370221d3650a6bc0523c93c2f0d37508f408 (patch)
treeb1d7f7a2a7dbebaf76e43e0f977d227d0cabf95a /Projects/Incomplete/StandaloneProgrammer/Lib/PetiteFATFs/pff.h
parentb017b41e91f7eb7bb83d1466b45c24e01ac2e309 (diff)
parent1e42f7bd46fbef1e67f50741e4fe1a5ea3a70869 (diff)
downloadlufa-2ff1370221d3650a6bc0523c93c2f0d37508f408.tar.gz
lufa-2ff1370221d3650a6bc0523c93c2f0d37508f408.tar.bz2
lufa-2ff1370221d3650a6bc0523c93c2f0d37508f408.zip
Merge in AppConfigHeaders branch to trunk, altering all projects and demos to use configuration headers for application and LUFA compile time settings, rather than defines in the project makefiles.
Diffstat (limited to 'Projects/Incomplete/StandaloneProgrammer/Lib/PetiteFATFs/pff.h')
-rw-r--r--Projects/Incomplete/StandaloneProgrammer/Lib/PetiteFATFs/pff.h193
1 files changed, 0 insertions, 193 deletions
diff --git a/Projects/Incomplete/StandaloneProgrammer/Lib/PetiteFATFs/pff.h b/Projects/Incomplete/StandaloneProgrammer/Lib/PetiteFATFs/pff.h
deleted file mode 100644
index 82f8832c7..000000000
--- a/Projects/Incomplete/StandaloneProgrammer/Lib/PetiteFATFs/pff.h
+++ /dev/null
@@ -1,193 +0,0 @@
-/*---------------------------------------------------------------------------/
-/ Petit FatFs - FAT file system module include file R0.02a (C)ChaN, 2010
-/----------------------------------------------------------------------------/
-/ Petit FatFs module is an open source software to implement FAT file system to
-/ small embedded systems. This is a free software and is opened for education,
-/ research and commercial developments under license policy of following trems.
-/
-/ Copyright (C) 2010, ChaN, all right reserved.
-/
-/ * The Petit FatFs module is a free software and there is NO WARRANTY.
-/ * No restriction on use. You can use, modify and redistribute it for
-/ personal, non-profit or commercial use UNDER YOUR RESPONSIBILITY.
-/ * Redistributions of source code must retain the above copyright notice.
-/
-/----------------------------------------------------------------------------*/
-
-#include "integer.h"
-
-/*---------------------------------------------------------------------------/
-/ Petit FatFs Configuration Options
-/
-/ CAUTION! Do not forget to make clean the project after any changes to
-/ the configuration options.
-/
-/----------------------------------------------------------------------------*/
-#ifndef _FATFS
-#define _FATFS
-
-#define _USE_READ 1 /* 1:Enable pf_read() */
-
-#define _USE_DIR 0 /* 1:Enable pf_opendir() and pf_readdir() */
-
-#define _USE_LSEEK 0 /* 1:Enable pf_lseek() */
-
-#define _USE_WRITE 0 /* 1:Enable pf_write() */
-
-#define _FS_FAT12 1 /* 1:Enable FAT12 support */
-#define _FS_FAT32 0 /* 1:Enable FAT32 support */
-
-
-#define _CODE_PAGE 1
-/* Defines which code page is used for path name. Supported code pages are:
-/ 932, 936, 949, 950, 437, 720, 737, 775, 850, 852, 855, 857, 858, 862, 866,
-/ 874, 1250, 1251, 1252, 1253, 1254, 1255, 1257, 1258 and 1 (ASCII only).
-/ SBCS code pages except for 1 requiers a case conversion table. This
-/ might occupy 128 bytes on the RAM on some platforms, e.g. avr-gcc. */
-
-
-#define _WORD_ACCESS 0
-/* The _WORD_ACCESS option defines which access method is used to the word
-/ data in the FAT structure.
-/
-/ 0: Byte-by-byte access. Always compatible with all platforms.
-/ 1: Word access. Do not choose this unless following condition is met.
-/
-/ When the byte order on the memory is big-endian or address miss-aligned
-/ word access results incorrect behavior, the _WORD_ACCESS must be set to 0.
-/ If it is not the case, the value can also be set to 1 to improve the
-/ performance and code efficiency. */
-
-
-/* End of configuration options. Do not change followings without care. */
-/*--------------------------------------------------------------------------*/
-
-
-
-#if _FS_FAT32
-#define CLUST DWORD
-#else
-#define CLUST WORD
-#endif
-
-
-/* File system object structure */
-
-typedef struct {
- BYTE fs_type; /* FAT sub type */
- BYTE flag; /* File status flags */
- BYTE csize; /* Number of sectors per cluster */
- 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 R/W pointer */
- DWORD fsize; /* File size */
- CLUST org_clust; /* File start cluster */
- CLUST curr_clust; /* File current cluster */
- DWORD dsect; /* File current data sector */
-} FATFS;
-
-
-
-/* Directory object structure */
-
-typedef struct {
- WORD index; /* Current read/write index number */
- BYTE* fn; /* Pointer to the SFN (in/out) {file[8],ext[3],status[1]} */
- CLUST sclust; /* Table start cluster (0:Static table) */
- CLUST clust; /* Current cluster */
- DWORD sect; /* Current sector */
-} DIR;
-
-
-
-/* File status structure */
-
-typedef struct {
- DWORD fsize; /* File size */
- WORD fdate; /* Last modified date */
- WORD ftime; /* Last modified time */
- BYTE fattrib; /* Attribute */
- char fname[13]; /* File name */
-} FILINFO;
-
-
-
-/* File function return code (FRESULT) */
-
-typedef enum {
- FR_OK = 0, /* 0 */
- FR_DISK_ERR, /* 1 */
- FR_NOT_READY, /* 2 */
- FR_NO_FILE, /* 3 */
- FR_NO_PATH, /* 4 */
- FR_NOT_OPENED, /* 5 */
- FR_NOT_ENABLED, /* 6 */
- FR_NO_FILESYSTEM /* 7 */
-} FRESULT;
-
-
-
-/*--------------------------------------------------------------*/
-/* Petit FatFs module application interface */
-
-FRESULT pf_mount (FATFS*); /* Mount/Unmount a logical drive */
-FRESULT pf_open (const char*); /* Open a file */
-FRESULT pf_read (void*, WORD, WORD*); /* Read data from the open file */
-FRESULT pf_write (const void*, WORD, WORD*); /* Write data to the open file */
-FRESULT pf_lseek (DWORD); /* Move file pointer of the open file */
-FRESULT pf_opendir (DIR*, const char*); /* Open a directory */
-FRESULT pf_readdir (DIR*, FILINFO*); /* Read a directory item from the open directory */
-
-
-
-/*--------------------------------------------------------------*/
-/* Flags and offset address */
-
-/* File status flag (FATFS.flag) */
-
-#define FA_OPENED 0x01
-#define FA_WPRT 0x02
-#define FA__WIP 0x40
-
-
-/* FAT sub type (FATFS.fs_type) */
-
-#define FS_FAT12 1
-#define FS_FAT16 2
-#define FS_FAT32 3
-
-
-/* File attribute bits for directory entry */
-
-#define AM_RDO 0x01 /* Read only */
-#define AM_HID 0x02 /* Hidden */
-#define AM_SYS 0x04 /* System */
-#define AM_VOL 0x08 /* Volume label */
-#define AM_LFN 0x0F /* LFN entry */
-#define AM_DIR 0x10 /* Directory */
-#define AM_ARC 0x20 /* Archive */
-#define AM_MASK 0x3F /* Mask of defined bits */
-
-
-/*--------------------------------*/
-/* Multi-byte word access macros */
-
-#if _WORD_ACCESS == 1 /* Enable word access to the FAT structure */
-#define LD_WORD(ptr) (WORD)(*(WORD*)(BYTE*)(ptr))
-#define LD_DWORD(ptr) (DWORD)(*(DWORD*)(BYTE*)(ptr))
-#define ST_WORD(ptr,val) *(WORD*)(BYTE*)(ptr)=(WORD)(val)
-#define ST_DWORD(ptr,val) *(DWORD*)(BYTE*)(ptr)=(DWORD)(val)
-#else /* Use byte-by-byte access to the FAT structure */
-#define LD_WORD(ptr) (WORD)(((WORD)*((BYTE*)(ptr)+1)<<8)|(WORD)*(BYTE*)(ptr))
-#define LD_DWORD(ptr) (DWORD)(((DWORD)*((BYTE*)(ptr)+3)<<24)|((DWORD)*((BYTE*)(ptr)+2)<<16)|((WORD)*((BYTE*)(ptr)+1)<<8)|*(BYTE*)(ptr))
-#define ST_WORD(ptr,val) *(BYTE*)(ptr)=(BYTE)(val); *((BYTE*)(ptr)+1)=(BYTE)((WORD)(val)>>8)
-#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)
-#endif
-
-
-#endif /* _FATFS */
-