aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Hoops2012-05-28 14:29:44 -0400
committerMatthew Hoops2012-05-28 14:29:44 -0400
commitd54e53d4620ae1d5e08ac48022f7a286a274473f (patch)
treee6838f83fed52bba45e1fc67bd516269e75fecf5
parentd67f9b89f275ddb092d0b833b7ca9adf6a722c5a (diff)
downloadscummvm-rg350-d54e53d4620ae1d5e08ac48022f7a286a274473f.tar.gz
scummvm-rg350-d54e53d4620ae1d5e08ac48022f7a286a274473f.tar.bz2
scummvm-rg350-d54e53d4620ae1d5e08ac48022f7a286a274473f.zip
SCUMM: Add support for Spy Fox iOS
-rw-r--r--devtools/scumm-md5.txt1
-rw-r--r--engines/scumm/detection.cpp10
-rw-r--r--engines/scumm/detection.h1
-rw-r--r--engines/scumm/detection_tables.h1
-rw-r--r--engines/scumm/scumm-md5.h3
5 files changed, 13 insertions, 3 deletions
diff --git a/devtools/scumm-md5.txt b/devtools/scumm-md5.txt
index 7d2ea94f10..99e23f7aca 100644
--- a/devtools/scumm-md5.txt
+++ b/devtools/scumm-md5.txt
@@ -841,6 +841,7 @@ spyfox SPY Fox 1: Dry Cereal
3de99ef0523f8ca7958faa3afccd035a -1 us All HE 100 Updated - Kirben
23394c8d29cc63c61313959431a12476 -1 en Windows HE 100 Updated - Jonathan
50b831f11b8c4b83784cf81f4dcc69ea -1 en Wii HE 100 - - sanguinehearts
+ 15878e3bee2e1e759184abee98589eaa -1 en iOS HE 100 - - clone2727
53e94115b55dd51d4b8ff0871aa1df1e 20103 en All - Demo - khalek, sev
fbdd947d21e8f5bac6d6f7a316af1c5a 15693 en All - Demo - sev
diff --git a/engines/scumm/detection.cpp b/engines/scumm/detection.cpp
index 2da0abb5df..cd878b49ae 100644
--- a/engines/scumm/detection.cpp
+++ b/engines/scumm/detection.cpp
@@ -156,6 +156,7 @@ Common::String ScummEngine_v70he::generateFilename(const int room) const {
case kGenHEMac:
case kGenHEMacNoParens:
case kGenHEPC:
+ case kGenHEIOS:
if (_game.heversion >= 98 && room >= 0) {
int disk = 0;
if (_heV7DiskOffsets)
@@ -168,7 +169,11 @@ Common::String ScummEngine_v70he::generateFilename(const int room) const {
break;
case 1:
id = 'a';
- result = Common::String::format("%s.(a)", _filenamePattern.pattern);
+ // Some of the newer HE games for iOS use the ".hea" suffix instead
+ if (_filenamePattern.genMethod == kGenHEIOS)
+ result = Common::String::format("%s.hea", _filenamePattern.pattern);
+ else
+ result = Common::String::format("%s.(a)", _filenamePattern.pattern);
break;
default:
id = '0';
@@ -180,7 +185,7 @@ Common::String ScummEngine_v70he::generateFilename(const int room) const {
id = (room == 0) ? '0' : '1';
}
- if (_filenamePattern.genMethod == kGenHEPC) {
+ if (_filenamePattern.genMethod == kGenHEPC || _filenamePattern.genMethod == kGenHEIOS) {
// For HE >= 98, we already called snprintf above.
if (_game.heversion < 98 || room < 0)
result = Common::String::format("%s.he%c", _filenamePattern.pattern, id);
@@ -217,6 +222,7 @@ static Common::String generateFilenameForDetection(const char *pattern, Filename
break;
case kGenHEPC:
+ case kGenHEIOS:
result = Common::String::format("%s.he0", pattern);
break;
diff --git a/engines/scumm/detection.h b/engines/scumm/detection.h
index b6dfa757bb..5ed6b5aab0 100644
--- a/engines/scumm/detection.h
+++ b/engines/scumm/detection.h
@@ -99,6 +99,7 @@ enum FilenameGenMethod {
kGenHEMac,
kGenHEMacNoParens,
kGenHEPC,
+ kGenHEIOS,
kGenUnchanged
};
diff --git a/engines/scumm/detection_tables.h b/engines/scumm/detection_tables.h
index e1989d5274..f48b40dd48 100644
--- a/engines/scumm/detection_tables.h
+++ b/engines/scumm/detection_tables.h
@@ -885,6 +885,7 @@ static const GameFilenamePattern gameFilenamesTable[] = {
{ "spyfox", "Spy Fox", kGenHEMac, Common::NL_NLD, Common::kPlatformMacintosh, 0 },
{ "spyfox", "Spy Fox Demo", kGenHEMac, Common::NL_NLD, Common::kPlatformMacintosh, 0 },
{ "spyfox", "JR-Demo", kGenHEMac, Common::FR_FRA, Common::kPlatformMacintosh, 0 },
+ { "spyfox", "game", kGenHEIOS, Common::EN_ANY, Common::kPlatformIOS, 0 },
{ "spyfox2", "spyfox2", kGenHEPC, UNK_LANG, UNK, 0 },
{ "spyfox2", "sf2-demo", kGenHEPC, UNK_LANG, UNK, 0 },
diff --git a/engines/scumm/scumm-md5.h b/engines/scumm/scumm-md5.h
index 3957c7c42d..f719f7df19 100644
--- a/engines/scumm/scumm-md5.h
+++ b/engines/scumm/scumm-md5.h
@@ -1,5 +1,5 @@
/*
- This file was generated by the md5table tool on Tue Apr 24 03:50:58 2012
+ This file was generated by the md5table tool on Mon May 28 18:17:29 2012
DO NOT EDIT MANUALLY!
*/
@@ -73,6 +73,7 @@ static const MD5Table md5table[] = {
{ "151071053a1d0021198216713939521d", "freddi2", "HE 80", "", -1, Common::EN_ANY, Common::kPlatformWindows },
{ "15240c59d3681ed53f714f8d925cb2d6", "maniac", "V2", "V2", -1, Common::ES_ESP, Common::kPlatformAtariST },
{ "157367c3c21e0d03a0cba44361b4cf65", "indy3", "No AdLib", "EGA", -1, Common::EN_ANY, Common::kPlatformAtariST },
+ { "15878e3bee2e1e759184abee98589eaa", "spyfox", "HE 100", "", -1, Common::EN_ANY, Common::kPlatformIOS },
{ "15e03ffbfeddb9c2aebc13dcb2a4a8f4", "monkey", "VGA", "VGA", 8357, Common::EN_ANY, Common::kPlatformPC },
{ "15f588e887e857e8c56fe6ade4956168", "atlantis", "Floppy", "Floppy", -1, Common::ES_ESP, Common::kPlatformAmiga },
{ "16542a7342a918bfe4ba512007d36c47", "FreddisFunShop", "HE 99L", "", -1, Common::EN_USA, Common::kPlatformUnknown },