diff options
-rw-r--r-- | common/advancedDetector.cpp | 12 | ||||
-rw-r--r-- | engines/lure/lure.cpp | 6 | ||||
-rw-r--r-- | engines/scumm/plugin.cpp | 26 |
3 files changed, 30 insertions, 14 deletions
diff --git a/common/advancedDetector.cpp b/common/advancedDetector.cpp index 809a279281..5f2873126a 100644 --- a/common/advancedDetector.cpp +++ b/common/advancedDetector.cpp @@ -403,11 +403,17 @@ static ADGameDescList detectGame(const FSList *fslist, const Common::ADParams &p if (!filesMD5.empty()) { // TODO: This message should be cleaned up / made more specific. // For example, we should specify at least which engine triggered this. - printf("MD5s of your game version are unknown. Please, report following data to\n"); - printf("ScummVM team along with your game name and version:\n"); + // + // Might also be helpful to display the full path (for when this is used + // from the mass detector). + printf("Your game version appears to be unknown. Please, report the following\n"); + printf("data to the ScummVM team along with name of the game you tried to add\n"); + printf("and its version/language/etc.:\n"); for (StringMap::const_iterator file = filesMD5.begin(); file != filesMD5.end(); ++file) - printf("%s: \"%s\", %d\n", file->_key.c_str(), file->_value.c_str(), filesSize[file->_key]); + printf(" %s: '%s', %d\n", file->_key.c_str(), file->_value.c_str(), filesSize[file->_key]); + + printf("\n"); } if (params.fileBasedFallback != 0) { diff --git a/engines/lure/lure.cpp b/engines/lure/lure.cpp index 5154a07175..455bcc2e32 100644 --- a/engines/lure/lure.cpp +++ b/engines/lure/lure.cpp @@ -139,7 +139,11 @@ GameList Engine_LURE_detectGames(const FSList &fslist) { } } if (detectedGames.empty()) { - debug("Unknown MD5 (%s)! Please report the details (language, platform, etc.) of this game to the ScummVM team\n", md5str); + printf("Your game version appears to be unknown. Please, report the following\n"); + printf("data to the ScummVM team along with name of the game you tried to add\n"); + printf("and its version/language/etc.:\n"); + + printf(" LURE MD5 '%s'\n\n", md5str); const PlainGameDescriptor *g1 = lure_list; while (g1->gameid) { diff --git a/engines/scumm/plugin.cpp b/engines/scumm/plugin.cpp index f025665de4..2d987f0de1 100644 --- a/engines/scumm/plugin.cpp +++ b/engines/scumm/plugin.cpp @@ -938,29 +938,29 @@ Common::String ScummEngine::generateFilename(const int room) const { return buf; } -static Common::String generateFilenameForDetection(const GameFilenamePattern &gfp) { +static Common::String generateFilenameForDetection(const char *pattern, FilenameGenMethod genMethod) { char buf[128]; - switch (gfp.genMethod) { + switch (genMethod) { case kGenDiskNum: case kGenRoomNum: - snprintf(buf, sizeof(buf), gfp.pattern, 0); + snprintf(buf, sizeof(buf), pattern, 0); break; case kGenHEPC: - snprintf(buf, sizeof(buf), "%s.he0", gfp.pattern); + snprintf(buf, sizeof(buf), "%s.he0", pattern); break; case kGenHEMac: - snprintf(buf, sizeof(buf), "%s (0)", gfp.pattern); + snprintf(buf, sizeof(buf), "%s (0)", pattern); break; case kGenHEMacNoParens: - snprintf(buf, sizeof(buf), "%s 0", gfp.pattern); + snprintf(buf, sizeof(buf), "%s 0", pattern); break; case kGenUnchanged: - strncpy(buf, gfp.pattern, sizeof(buf)); + strncpy(buf, pattern, sizeof(buf)); break; default: @@ -1119,7 +1119,7 @@ static void detectGames(const FSList &fslist, Common::List<DetectorResult> &resu // Generate the detectname corresponding to the gfp. If the file doesn't // exist in the directory we are looking at, we can skip to the next // one immediately. - Common::String file(generateFilenameForDetection(*gfp)); + Common::String file(generateFilenameForDetection(gfp->pattern, gfp->genMethod)); if (!fileMD5Map.contains(file)) continue; @@ -1576,8 +1576,14 @@ PluginError Engine_SCUMM_create(OSystem *syst, Engine **engine) { // unknown MD5, or with a medium debug level in case of a known MD5 (for // debugging purposes). if (!findInMD5Table(res.md5.c_str())) { - printf("Unknown MD5 (%s)! If this is an official version of the game (and not e.g. a fan made translation), " - "please report the details (language, platform, etc.) of this game to the ScummVM team\n", res.md5.c_str()); + printf("Your game version appears to be unknown. Please, report the following\n"); + printf("data to the ScummVM team along with name of the game you tried to add\n"); + printf("and its version/language/etc.:\n"); + + printf(" SCUMM gameid '%s', file '%s', MD5 '%s'\n\n", + res.game.gameid, + generateFilenameForDetection(res.fp.pattern, res.fp.genMethod).c_str(), + res.md5.c_str()); } else { debug(1, "Using MD5 '%s'", res.md5.c_str()); } |