[Scummvm-cvs-logs] SF.net SVN: scummvm: [26020] scummvm/trunk
fingolfin at users.sourceforge.net
fingolfin at users.sourceforge.net
Thu Mar 8 17:57:14 CET 2007
Revision: 26020
http://scummvm.svn.sourceforge.net/scummvm/?rev=26020&view=rev
Author: fingolfin
Date: 2007-03-08 08:57:14 -0800 (Thu, 08 Mar 2007)
Log Message:
-----------
Moving Nintendo DS std C I/O emulation wrappers to common/file.cpp; also add a FIXME comment (why is assert redefined in ds-fs.h ?)
Modified Paths:
--------------
scummvm/trunk/backends/fs/ds/ds-fs.h
scummvm/trunk/common/file.cpp
Modified: scummvm/trunk/backends/fs/ds/ds-fs.h
===================================================================
--- scummvm/trunk/backends/fs/ds/ds-fs.h 2007-03-08 16:53:30 UTC (rev 26019)
+++ scummvm/trunk/backends/fs/ds/ds-fs.h 2007-03-08 16:57:14 UTC (rev 26020)
@@ -105,77 +105,8 @@
};
-// File reading
+// FIXME: Why is assert redefined ? And why here (this is definitely the wrong place).
-
-struct fileHandle {
- int pos;
- bool used;
- char* data;
- int size;
-
- DSSaveFile* sramFile;
-};
-
-// These functions replease the standard library functions of the same name.
-// As this header is included after the standard one, I have the chance to #define
-// all of these to my own code.
-//
-// A #define is the only way, as redefinig the functions would cause linker errors.
-
-// These functions need to be #undef'ed, as their original definition
-// in devkitarm is done with #includes (ugh!)
-#undef feof
-#undef stderr
-#undef stdout
-#undef stdin
-#undef clearerr
-#undef getc
-#undef ferror
-
-#define stdout ((DS::fileHandle*) -1)
-#define stderr ((DS::fileHandle*) -2)
-#define stdin ((DS::fileHandle*) -3)
-
-#define FILE DS::fileHandle
-//#define size_t int
-
-//#define FAT_chdir FAT_CWD
-
-FILE* std_fopen(const char* name, const char* mode);
-void std_fclose(FILE* handle);
-size_t std_fread(const void* ptr, size_t size, size_t numItems, FILE* handle);
-size_t std_fwrite(const void* ptr, size_t size, size_t numItems, FILE* handle);
-void std_fprintf(FILE* handle, const char* fmt, ...);
-bool std_feof(FILE* handle);
-void std_fflush(FILE* handle);
-char* std_fgets(char* str, int size, FILE* file);
-long int std_ftell(FILE* handle);
-int std_fseek(FILE* handle, long int offset, int whence);
-void std_clearerr(FILE* handle);
-int std_getc(FILE* handle);
-char* std_getcwd(char* dir, int dunno);
-void std_cwd(char* dir);
-int std_ferror(FILE* handle);
-
-// Only functions used in the ScummVM source have been defined here!
-#define fopen(name, mode) DS::std_fopen(name, mode)
-#define fclose(handle) DS::std_fclose(handle)
-#define fread(ptr, size, items, file) DS::std_fread(ptr, size, items, file)
-#define fwrite(ptr, size, items, file) DS::std_fwrite(ptr, size, items, file)
-#define feof(handle) DS::std_feof(handle)
-//#define fprintf(file, fmt, ...) DS::fprintf(file, fmt, ##__VA_ARGS__)
-#define fprintf(file, fmt, ...) { char str[128]; sprintf(str, fmt, ##__VA_ARGS__); DS::std_fwrite(str, strlen(str), 1, file); }
-#define printf(fmt, ...) consolePrintf(fmt, ##__VA_ARGS__)
-#define fflush(file) DS::std_fflush(file)
-#define fgets(str, size, file) DS::std_fgets(str, size, file)
-#define ftell(handle) DS::std_ftell(handle)
-#define fseek(handle, offset, whence) DS::std_fseek(handle, offset, whence)
-#define clearerr(handle) DS::std_clearerr(handle)
-#define getc(handle) DS::std_getc(handle)
-#define getcwd(dir, dunno) DS::std_getcwd(dir, dunno)
-#define ferror(handle) DS::std_ferror(handle)
-
#ifdef assert
#undef assert
#endif
Modified: scummvm/trunk/common/file.cpp
===================================================================
--- scummvm/trunk/common/file.cpp 2007-03-08 16:53:30 UTC (rev 26019)
+++ scummvm/trunk/common/file.cpp 2007-03-08 16:57:14 UTC (rev 26020)
@@ -52,7 +52,79 @@
#define fsize(a) ps2_fsize(a)
#endif
+#ifdef __DS__
+ struct fileHandle {
+ int pos;
+ bool used;
+ char* data;
+ int size;
+
+ DSSaveFile* sramFile;
+ };
+
+ // These functions replease the standard library functions of the same name.
+ // As this header is included after the standard one, I have the chance to #define
+ // all of these to my own code.
+ //
+ // A #define is the only way, as redefinig the functions would cause linker errors.
+
+ // These functions need to be #undef'ed, as their original definition
+ // in devkitarm is done with #includes (ugh!)
+ #undef feof
+ #undef stderr
+ #undef stdout
+ #undef stdin
+ #undef clearerr
+ #undef getc
+ #undef ferror
+
+ #define stdout ((DS::fileHandle*) -1)
+ #define stderr ((DS::fileHandle*) -2)
+ #define stdin ((DS::fileHandle*) -3)
+
+ #define FILE DS::fileHandle
+ //#define size_t int
+
+ //#define FAT_chdir FAT_CWD
+
+ FILE* std_fopen(const char* name, const char* mode);
+ void std_fclose(FILE* handle);
+ size_t std_fread(const void* ptr, size_t size, size_t numItems, FILE* handle);
+ size_t std_fwrite(const void* ptr, size_t size, size_t numItems, FILE* handle);
+ void std_fprintf(FILE* handle, const char* fmt, ...);
+ bool std_feof(FILE* handle);
+ void std_fflush(FILE* handle);
+ char* std_fgets(char* str, int size, FILE* file);
+ long int std_ftell(FILE* handle);
+ int std_fseek(FILE* handle, long int offset, int whence);
+ void std_clearerr(FILE* handle);
+ int std_getc(FILE* handle);
+ char* std_getcwd(char* dir, int dunno);
+ void std_cwd(char* dir);
+ int std_ferror(FILE* handle);
+
+ // Only functions used in the ScummVM source have been defined here!
+ #define fopen(name, mode) DS::std_fopen(name, mode)
+ #define fclose(handle) DS::std_fclose(handle)
+ #define fread(ptr, size, items, file) DS::std_fread(ptr, size, items, file)
+ #define fwrite(ptr, size, items, file) DS::std_fwrite(ptr, size, items, file)
+ #define feof(handle) DS::std_feof(handle)
+ //#define fprintf(file, fmt, ...) DS::fprintf(file, fmt, ##__VA_ARGS__)
+ #define fprintf(file, fmt, ...) { char str[128]; sprintf(str, fmt, ##__VA_ARGS__); DS::std_fwrite(str, strlen(str), 1, file); }
+ #define printf(fmt, ...) consolePrintf(fmt, ##__VA_ARGS__)
+ #define fflush(file) DS::std_fflush(file)
+ #define fgets(str, size, file) DS::std_fgets(str, size, file)
+ #define ftell(handle) DS::std_ftell(handle)
+ #define fseek(handle, offset, whence) DS::std_fseek(handle, offset, whence)
+ #define clearerr(handle) DS::std_clearerr(handle)
+ #define getc(handle) DS::std_getc(handle)
+ #define getcwd(dir, dunno) DS::std_getcwd(dir, dunno)
+ #define ferror(handle) DS::std_ferror(handle)
+
+#endif
+
+
namespace Common {
typedef HashMap<String, int, CaseSensitiveString_Hash, CaseSensitiveString_EqualTo> StringIntMap;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list