1 /* ResidualVM - A 3D game interpreter 2 * 3 * ResidualVM is the legal property of its developers, whose names 4 * are too numerous to list here. Please refer to the AUTHORS 5 * file distributed with this source distribution. 6 * 7 * This program is free software; you can redistribute it and/or 8 * modify it under the terms of the GNU General Public License 9 * as published by the Free Software Foundation; either version 2 10 * of the License, or (at your option) any later version. 11 * 12 * This program is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License 18 * along with this program; if not, write to the Free Software 19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 20 * 21 */ 22 23 #include "engines/advancedDetector.h" 24 25 namespace ICB { 26 27 static const PlainGameDescriptor icbGames[] = { 28 { "icb", "In Cold Blood" }, 29 { 0, 0 } 30 }; 31 32 static const char *directoryGlobs[] = { 33 "engine", 34 "linc", 35 "demo", 36 0 37 }; 38 39 static const ADGameDescription gameDescriptions[] = { 40 { 41 // In Cold Blood 42 // English GOG Version 43 "icb", 44 "GOG", 45 AD_ENTRY1s("engine.exe", "0c4a7a5046ec13ccac89ab3f959cc217", 837632), 46 Common::EN_ANY, 47 Common::kPlatformWindows, 48 ADGF_NO_FLAGS, 49 GUIO1(GUIO_NONE) 50 }, 51 52 { 53 // In Cold Blood 54 // English Demo 55 "icb", 56 "Demo", 57 AD_ENTRY1s("engine.exe", "94222e343795853b0aa59cb9876415ae", 827392), 58 Common::EN_GRB, 59 Common::kPlatformWindows, 60 ADGF_DEMO, 61 GUIO1(GUIO_NONE) 62 }, 63 64 { 65 // In Cold Blood 66 // English Demo 67 "icb", 68 "Demo", 69 AD_ENTRY1s("engine.exe", "d0702069d95423107463001b99a19e73", 939520), 70 Common::EN_USA, 71 Common::kPlatformWindows, 72 ADGF_DEMO, 73 GUIO1(GUIO_NONE) 74 }, 75 76 AD_TABLE_END_MARKER 77 }; 78 79 class IcbMetaEngineDetection : public AdvancedMetaEngineDetection { 80 public: IcbMetaEngineDetection()81 IcbMetaEngineDetection() : AdvancedMetaEngineDetection(gameDescriptions, sizeof(ADGameDescription), icbGames) { 82 _guiOptions = GUIO_NOMIDI; 83 _maxScanDepth = 3; 84 _directoryGlobs = directoryGlobs; 85 } 86 getName() const87 virtual const char *getName() const override { return "In Cold Blood Engine"; } 88 getEngineId() const89 const char *getEngineId() const override { 90 return "icb"; 91 } 92 getOriginalCopyright() const93 virtual const char *getOriginalCopyright() const override { return "(C) 2000 Revolution Software Ltd"; } 94 }; 95 96 } // End of namespace ICB 97 98 REGISTER_PLUGIN_STATIC(ICB_DETECTION, PLUGIN_TYPE_ENGINE_DETECTION, ICB::IcbMetaEngineDetection); 99