From 8693ae1bd880a758eb2efec4fccd32f89593855d Mon Sep 17 00:00:00 2001 From: Nebuleon Fumika Date: Sun, 3 Feb 2013 04:19:11 -0500 Subject: Add SDK modifications by BassAceGold as of 2011-04-14, as well as modified DMA functions as of 2013-01-29. --- sdk-modifications/libsrc/fs/fs_api.h | 130 +++++++++++++++++++++++++++++++++++ 1 file changed, 130 insertions(+) create mode 100644 sdk-modifications/libsrc/fs/fs_api.h (limited to 'sdk-modifications/libsrc/fs/fs_api.h') diff --git a/sdk-modifications/libsrc/fs/fs_api.h b/sdk-modifications/libsrc/fs/fs_api.h new file mode 100644 index 0000000..fa4ae07 --- /dev/null +++ b/sdk-modifications/libsrc/fs/fs_api.h @@ -0,0 +1,130 @@ +#ifndef __FS_API_H__ +#define __FS_API_H__ +//v1.0 + +#include "sys/stat.h" +#include "fatfile.h" +#include "fatdir.h" + +extern struct _reent __REENT; +typedef unsigned int mode_t; + +extern int fat_init(void); + +extern FILE_STRUCT* fat_fopen(const char *file, const char *mode); + +extern size_t fat_fread(void *buf, size_t size, size_t count, FILE_STRUCT *fp); + +extern size_t fat_fwrite(const void *buf, size_t size, size_t count, FILE_STRUCT *fp); + +extern int fat_fclose(FILE_STRUCT *fp); + +extern int fat_fseek(FILE_STRUCT *fp, long offset, int whence); + +extern long fat_ftell(FILE_STRUCT *fp); + +extern int fat_feof(FILE_STRUCT *fp); + +extern int fat_ferror(FILE_STRUCT *fp); + +extern void fat_clearerr(FILE_STRUCT *fp); + +extern int fat_fflush(FILE_STRUCT *fp); + +extern int fat_fgetc(FILE_STRUCT *fp); + +extern char* fat_fgets(char *buf, int n, FILE_STRUCT *fp); + +extern int fat_fputc(int ch, FILE_STRUCT *fp); + +extern int fat_fputs(const char *s, FILE_STRUCT *fp); + +extern int fat_remove(const char *filename); + +extern int fat_rename(const char *oldName, const char *newName); + +extern int fat_setHidden(const char *name, unsigned char hide); + +extern int fat_isHidden(struct stat *st); + +extern int fat_getShortName(const char *fullName, char *outName); + +extern void fat_rewind(FILE_STRUCT *fp); + +extern int fat_fstat(int fildes, struct stat *buf); + +extern int fat_fprintf(void* fp, const char *format, ...); + +extern int fat_fscanf(FILE_STRUCT *fp, const char *format, ...); + +extern DIR_STATE_STRUCT* fat_opendir(const char *name); + +extern DIR_ENTRY* fat_readdir(DIR_STATE_STRUCT *dirp); + +extern long fat_telldir(DIR_STATE_STRUCT *dirp); + +extern void fat_seekdir(DIR_STATE_STRUCT *dirp, long int loc); + +extern int fat_closedir(DIR_STATE_STRUCT *dirp); + +extern int fat_chdir(const char *path); + +extern char* fat_getcwd(char *buf, size_t size); + +extern int fat_mkdir(const char *path, mode_t mode); + +extern int fat_rmdir(const char *path); + +extern int fat_lstat(const char *path, struct stat *buf); + +extern DIR_ENTRY* fat_readdir_ex(DIR_STATE_STRUCT *dirp, struct stat *statbuf); + +//#define S_ISDIR(st) (st.st_mode & S_IFDIR) + +#define FILE FILE_STRUCT +#define fopen fat_fopen +#define fread fat_fread +#define fwrite fat_fwrite +#define fclose fat_fclose +#define fseek fat_fseek +#define ftell fat_ftell +#define feof fat_feof +#define ferror fat_ferror +#define fclearerr fat_clearerr +#define fflush fat_fflush +#define fgetc fat_fgetc +#define fgets fat_fgets +#define fputc fat_fputc +#define fputs fat_fputs +#define fprintf fat_fprintf +#define fscanf fat_fscanf +#define remove fat_remove +#define fhidden fat_isHidden + +#define DIR DIR_STATE_STRUCT +#define dirent DIR_ENTRY +#define opendir fat_opendir +#define readdir fat_readdir +#define telldir fat_telldir +#define seekdir fat_seekdir +#define closedir fat_closedir +#define chdir fat_chdir +#define getcwd fat_getcwd +#define mkdir fat_mkdir +#define rmdir fat_rmdir + +#define lstat fat_lstat +#define fstat fat_fstat + +#define S_ISHID(st_mode) ((st_mode & S_IHIDDEN) != 0) + +//the extended version of readdir_ex +#define readdir_ex fat_readdir_ex + +#define MAX_PATH 512 +#define MAX_FILE 512 + +//Misc function +extern bool fat_getDiskSpaceInfo( char * diskName, unsigned int *total, unsigned int *used, unsigned int *freeSpace ); + +#endif //__FS_API_H__ -- cgit v1.2.3 From d1a7bf5eb558e7db4a1a27e15ebedb02e6b7f804 Mon Sep 17 00:00:00 2001 From: Nebuleon Fumika Date: Mon, 4 Feb 2013 23:45:44 -0500 Subject: Fully integrate BassAceGold's libraries, finally. The README still states that 1.2 is required to overwrite 0.13's stuff; really, 0.13 is needed only for `gcc`. So the sequence goes 0.13's `gcc` -> 1.2 -> BassAceGold's libraries -> make `libds2a.a`. DMA function names changed to match BassAceGold's. --- sdk-modifications/libsrc/fs/fs_api.h | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 sdk-modifications/libsrc/fs/fs_api.h (limited to 'sdk-modifications/libsrc/fs/fs_api.h') diff --git a/sdk-modifications/libsrc/fs/fs_api.h b/sdk-modifications/libsrc/fs/fs_api.h old mode 100644 new mode 100755 -- cgit v1.2.3