diff options
| author | Joel de Vahl <joel@stalverk80.se> | 2007-09-25 19:48:52 +0000 |
|---|---|---|
| committer | Joel de Vahl <joel@stalverk80.se> | 2007-09-25 19:48:52 +0000 |
| commit | aca6dd808b19072b653ce81384490c8b08edbedd (patch) | |
| tree | 804fc5f8e5e554f4065fd063f4d3f587b6c20b5d /src/engine/datafile.c | |
| parent | 06c341be51a75fd8a24f2441654e184fd3fdefcd (diff) | |
| download | zcatch-aca6dd808b19072b653ce81384490c8b08edbedd.tar.gz zcatch-aca6dd808b19072b653ce81384490c8b08edbedd.zip | |
new mixer and ppc fixes
Diffstat (limited to 'src/engine/datafile.c')
| -rw-r--r-- | src/engine/datafile.c | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/src/engine/datafile.c b/src/engine/datafile.c index fddd522d..c11082ac 100644 --- a/src/engine/datafile.c +++ b/src/engine/datafile.c @@ -92,8 +92,10 @@ DATAFILE *datafile_load(const char *filename) return 0; } } - - /* TODO: swap the header */ + +#if defined(CONF_ARCH_ENDIAN_BIG) + swap_endian(&header, sizeof(int), sizeof(header)/sizeof(int)); +#endif if(header.version != 3 && header.version != 4) { dbg_msg("datafile", "wrong version. version=%x", header.version); @@ -129,16 +131,10 @@ DATAFILE *datafile_load(const char *filename) dbg_msg("datafile", "couldn't load the whole thing, wanted=%d got=%d", size, readsize); return 0; } -/* + #if defined(CONF_ARCH_ENDIAN_BIG) - unsigned *dst = (unsigned*)df; - unsigned char *src = (unsigned char*)df; - for(unsigned i = 0; i < swapsize; i++) - { - unsigned j = i << 2; - dst[i] = src[j] | src[j+1]<<8 | src[j+2]<<16 | src[j+3]<<24; - } -#endif*/ + swap_endian(df->data, sizeof(int), header.swaplen); +#endif if(DEBUG) dbg_msg("datafile", "item_size=%d", df->header.item_size); |