author | ecalot
<ecalot> 2004-07-30 19:56:12 UTC |
committer | ecalot
<ecalot> 2004-07-30 19:56:12 UTC |
parent | d6ded7850f96029dd7c775d899172a3c94ee2f9d |
PR/src/lib/layers/disk.c | +44 | -0 |
diff --git a/PR/src/lib/layers/disk.c b/PR/src/lib/layers/disk.c index 9555da7..faf6ae5 100644 --- a/PR/src/lib/layers/disk.c +++ b/PR/src/lib/layers/disk.c @@ -493,5 +493,49 @@ int recurseDirectory(const char* path,int optionflag, const char* extension,cons return 1; } +#ifdef MACOS +int macfreads (void* bigEndian,FILE* file) { + unsigned short int littleEndian; + unsigned char* lit_e=(unsigned char*)&littleEndian; + unsigned char* big_e=(unsigned char*)&bigEndian; + int result=fread(lit_e,2,1,file); + big_e[0]=lit_e[1]; + big_e[1]=lit_e[0]; + return result; +} +int macfreadl (void* var,FILE* file) { + unsigned short int littleEndian; + unsigned char* lit_e=(unsigned char*)&littleEndian; + unsigned char* big_e=(unsigned char*)&bigEndian; + int result=fread(lit_e,4,1,file); + big_e[0]=lit_e[3]; + big_e[1]=lit_e[2]; + big_e[2]=lit_e[1]; + big_e[3]=lit_e[0]; + return result; +} +int macfwrites(void* var,FILE* file) { + unsigned short int littleEndian; + unsigned short int bigEndian=(unsigned short int*)(&var); + unsigned char* lit_e=(unsigned char*)&littleEndian; + unsigned char* big_e=(unsigned char*)&bigEndian; + lit_e[0]=big_e[1]; + lit_e[1]=big_e[0]; + return fwrite(lit_e,2,1,file); +} + +int macfwritel(void* var,FILE* file) { + unsigned short int littleEndian; + unsigned short int bigEndian=(unsigned short int*)(&var); + unsigned char* lit_e=(unsigned char*)&littleEndian; + unsigned char* big_e=(unsigned char*)&bigEndian; + lit_e[0]=big_e[3]; + lit_e[1]=big_e[2]; + lit_e[2]=big_e[1]; + lit_e[3]=big_e[0]; + return fwrite(lit_e,4,1,file); +} + +#endif #endif