Added a GAME_SWAPENDIAN flag so that game files can be labelled as having

the opposite byte order of the rest of the files. This is needed for the
multi-OS version. (Now it crashes with a "RAWInputStream() wrong musicInfo"
message instead, but it's still an improvement.)

svn-id: r18852
This commit is contained in:
Torbjörn Andersson 2005-09-21 10:09:58 +00:00
parent 15969fa797
commit 8f8f0daf1c
3 changed files with 7 additions and 5 deletions

View File

@ -334,7 +334,7 @@ static GameFileDescription ITEMULTICD_GameFiles[] = {
{"ite.rsc", GAME_RESOURCEFILE},
{"scripts.rsc", GAME_SCRIPTFILE},
{"sounds.rsc", GAME_SOUNDFILE},
{"Inherit the Earth Voices", GAME_VOICEFILE},
{"Inherit the Earth Voices", GAME_VOICEFILE | GAME_SWAPENDIAN},
{"music.rsc", GAME_MUSICFILE}
};

View File

@ -268,12 +268,15 @@ bool Resource::loadContext(ResourceContext *context) {
byte *tableBuffer;
size_t tableSize;
bool isMacBinary;
if (!context->file->open(context->fileName)) {
return false;
}
context->isBigEndian = _vm->isBigEndian();
if (context->fileType & GAME_SWAPENDIAN)
context->isBigEndian = !context->isBigEndian;
isMacBinary = (context->fileType & GAME_MACBINARY) > 0;
context->fileType &= ~GAME_MACBINARY;
@ -287,7 +290,6 @@ bool Resource::loadContext(ResourceContext *context) {
return false;
}
}
//process internal patch files
if (GAME_PATCHFILE & context->fileType) {
@ -328,7 +330,6 @@ bool Resource::loadContext(ResourceContext *context) {
}
}
}
return true;
}

View File

@ -295,7 +295,8 @@ enum GameFileTypes {
GAME_MUSICFILE_GM = 1 << 6,
GAME_MUSICFILE_FM = 1 << 7,
GAME_PATCHFILE = 1 << 8,
GAME_MACBINARY = 1 << 9
GAME_MACBINARY = 1 << 9,
GAME_SWAPENDIAN = 1 << 10
};
enum GameSoundTypes {