[Scummvm-cvs-logs] CVS: scummvm/queen defs.h,1.20,1.21 resource.cpp,1.22,1.23 resource.h,1.17,1.18
Joost Peters
joostp at users.sourceforge.net
Thu Oct 30 15:22:05 CET 2003
Update of /cvsroot/scummvm/scummvm/queen
In directory sc8-pr-cvs1:/tmp/cvs-serv16894/queen
Modified Files:
defs.h resource.cpp resource.h
Log Message:
add support for spanish cd version
Index: defs.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/queen/defs.h,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -d -r1.20 -r1.21
--- defs.h 30 Oct 2003 10:56:38 -0000 1.20
+++ defs.h 30 Oct 2003 23:20:44 -0000 1.21
@@ -86,7 +86,8 @@
ENGLISH = 'E',
FRENCH = 'F',
GERMAN = 'G',
- ITALIAN = 'I'
+ ITALIAN = 'I',
+ SPANISH = 'S'
};
Index: resource.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/queen/resource.cpp,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -d -r1.22 -r1.23
--- resource.cpp 28 Oct 2003 15:26:05 -0000 1.22
+++ resource.cpp 30 Oct 2003 23:20:46 -0000 1.23
@@ -29,19 +29,22 @@
static const char *tableFilename = "queen.tbl";
+
const GameVersion Resource::_gameVersions[] = {
- { "PEM10", true, false, 0x00000008 },
- { "CEM10", false, false, 0x0000584E },
- { "PFM10", true, false, 0x0002CD93 },
- { "CFM10", false, false, 0x00032585 },
- { "PGM10", true, false, 0x00059ACA },
- { "CGM10", false, false, 0x0005F2A7 },
- { "PIM10", true, false, 0x000866B1 },
- { "CIM10", false, false, 0x0008BEE2 },
- { "PE100", true, true, 0x000B343C },
- { "PE100", true, true, 0x000B40F5 }
+ { "PEM10", true, false, 0x00000008, 22677657 },
+ { "CEM10", false, false, 0x0000584E, 190787021 },
+ { "PFM10", true, false, 0x0002CD93, 22157304 },
+ { "CFM10", false, false, 0x00032585, 186689095 },
+ { "PGM10", true, false, 0x00059ACA, 22240013 },
+ { "CGM10", false, false, 0x0005F2A7, 217648975 },
+ { "PIM10", true, false, 0x000866B1, 22461366 },
+ { "CIM10", false, false, 0x0008BEE2, 190795582 },
+ { "CSM10", false, false, 0x000B343C, 190730602 },
+ { "PE100", true, true, 0x000DA981, 3724538 },
+ { "PE100", true, true, 0x000DB63A, 3732177 }
};
+
Resource::Resource(const Common::String &datafilePath, const char *datafileName)
: _JAS2Pos(0), _datafilePath(datafilePath), _resourceEntries(0), _resourceTable(NULL) {
@@ -187,50 +190,25 @@
return FRENCH;
case 'I':
return ITALIAN;
+ case 'S':
+ return SPANISH;
default:
return ENGLISH;
}
}
const GameVersion *Resource::detectGameVersion(uint32 dataFilesize) {
- const GameVersion *pgv = NULL;
//detect game version based on resource file size.
//we try to verify that it is indeed the version we think it is later on
- switch(dataFilesize) {
- case 3724538:
- pgv = &_gameVersions[VER_DEMO_PCGAMES];
- break;
- case 3732177:
- pgv = &_gameVersions[VER_DEMO];
- break;
- case 22677657:
- pgv = &_gameVersions[VER_ENG_FLOPPY];
- break;
- case 190787021:
- pgv = &_gameVersions[VER_ENG_TALKIE];
- break;
- case 22157304: // computed from FREH_FAT.H
- pgv = &_gameVersions[VER_FRE_FLOPPY];
- break;
- case 186689095:
- pgv = &_gameVersions[VER_FRE_TALKIE];
- break;
- case 22240013: // computed from GERH_FAT.H
- pgv = &_gameVersions[VER_GER_FLOPPY];
- break;
- case 217648975: // computed from GERC_FAT.H
- pgv = &_gameVersions[VER_GER_TALKIE];
- break;
- case 22461366: // computed from ITAH_FAT.H
- pgv = &_gameVersions[VER_ITA_FLOPPY];
- break;
- case 190795582: // computed from ITAC_FAT.H
- pgv = &_gameVersions[VER_ITA_TALKIE];
- break;
- default:
- error("Unknown/unsupported FOTAQ version");
+ const GameVersion *pgv = _gameVersions;
+ int i;
+ for (i = 0; i < VER_NUMBER; ++i, ++pgv) {
+ if (pgv->dataFileSize == dataFilesize) {
+ return pgv;
+ }
}
- return pgv;
+ error("Unknown/unsupported FOTAQ version");
+ return NULL;
}
bool Resource::readTableFile() {
Index: resource.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/queen/resource.h,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -d -r1.17 -r1.18
--- resource.h 28 Oct 2003 15:26:05 -0000 1.17
+++ resource.h 30 Oct 2003 23:20:47 -0000 1.18
@@ -27,7 +27,7 @@
namespace Queen {
-enum {
+enum Version {
VER_ENG_FLOPPY = 0,
VER_ENG_TALKIE = 1,
VER_FRE_FLOPPY = 2,
@@ -36,8 +36,11 @@
VER_GER_TALKIE = 5,
VER_ITA_FLOPPY = 6,
VER_ITA_TALKIE = 7,
- VER_DEMO_PCGAMES = 8,
- VER_DEMO = 9
+ VER_SPA_TALKIE = 8,
+ VER_DEMO_PCGAMES = 9,
+ VER_DEMO = 10,
+
+ VER_NUMBER = 11
};
struct ResourceEntry {
@@ -52,6 +55,7 @@
bool isFloppy;
bool isDemo;
uint32 tableOffset;
+ uint32 dataFileSize;
};
More information about the Scummvm-git-logs
mailing list