diff options
| -rw-r--r-- | engines/sci/detection.cpp | 2 | ||||
| -rw-r--r-- | engines/sci/detection_tables.h | 14 | ||||
| -rw-r--r-- | engines/sci/engine/kmisc.cpp | 3 | ||||
| -rw-r--r-- | engines/sci/graphics/frameout.cpp | 1 | ||||
| -rw-r--r-- | engines/sci/sci.h | 1 | 
5 files changed, 21 insertions, 0 deletions
| diff --git a/engines/sci/detection.cpp b/engines/sci/detection.cpp index 8d5c923f66..8691c37b3e 100644 --- a/engines/sci/detection.cpp +++ b/engines/sci/detection.cpp @@ -107,6 +107,7 @@ static const PlainGameDescriptor s_sciGameTitles[] = {  	{"pq4",             "Police Quest IV: Open Season"}, // floppy is SCI2, CD SCI2.1  	{"qfg4",            "Quest for Glory IV: Shadows of Darkness"},	// floppy is SCI2, CD SCI2.1  	// === SCI2.1 games ======================================================== +	{"hoyle5",          "Hoyle Classic Games"},  	{"chest",           "Inside the Chest"},	// aka Behind the Developer's Shield  	{"gk2",             "The Beast Within: A Gabriel Knight Mystery"},  	{"kq7",             "King's Quest VII: The Princeless Bride"}, @@ -157,6 +158,7 @@ static const GameIdStrToEnum s_gameIdStrToEnum[] = {  	{ "hoyle2",          GID_HOYLE2 },  	{ "hoyle3",          GID_HOYLE3 },  	{ "hoyle4",          GID_HOYLE4 }, +	{ "hoyle5",          GID_HOYLE5 },  	{ "iceman",          GID_ICEMAN },  	{ "inndemo",         GID_INNDEMO },  	{ "islandbrain",     GID_ISLANDBRAIN }, diff --git a/engines/sci/detection_tables.h b/engines/sci/detection_tables.h index 6ee666a648..f1076a78a7 100644 --- a/engines/sci/detection_tables.h +++ b/engines/sci/detection_tables.h @@ -1132,6 +1132,20 @@ static const struct ADGameDescription SciGameDescriptions[] = {  		AD_LISTEND},  		Common::EN_ANY, Common::kPlatformMacintosh, ADGF_MACRESFORK, GUIO4(GUIO_NOSPEECH, GAMEOPTION_PREFER_DIGITAL_SFX, GAMEOPTION_ORIGINAL_SAVELOAD, GAMEOPTION_FB01_MIDI)	}, +#ifdef ENABLE_SCI32 +#define GUIO_HOYLE5_DEMO GUIO3(GUIO_NOSPEECH, \ +                               GUIO_NOASPECT, \ +                               GAMEOPTION_ORIGINAL_SAVELOAD) + +	// Hoyle 5 (Hoyle Classic Games) - Windows demo +	{"hoyle5", "Demo", { +		{"ressci.000", 0, "98a39ae535dd01714ac313f8ba925045", 7260363}, +		{"resmap.000", 0, "10267a1542a73d527e50f0340549088b", 4900}, +		AD_LISTEND}, +		Common::EN_ANY, Common::kPlatformWindows, ADGF_UNSTABLE, GUIO_HOYLE5_DEMO }, + +#endif // ENABLE_SCI32 +  	// ImagiNation Network (INN) Demo  	// SCI interpreter version 1.001.097  	{"inndemo", "", { diff --git a/engines/sci/engine/kmisc.cpp b/engines/sci/engine/kmisc.cpp index 065625f85f..0d6831139a 100644 --- a/engines/sci/engine/kmisc.cpp +++ b/engines/sci/engine/kmisc.cpp @@ -409,6 +409,9 @@ reg_t kGetConfig(EngineState *s, int argc, reg_t *argv) {  	} else if (setting == "startroom") {  		// Debug setting in LSL7, specifies the room to start from.  		s->_segMan->strcpy(data, ""); +	} else if (setting == "game") { +		// Hoyle 5 Demo startup. +		s->_segMan->strcpy(data, "");  	} else {  		error("GetConfig: Unknown configuration setting %s", setting.c_str());  	} diff --git a/engines/sci/graphics/frameout.cpp b/engines/sci/graphics/frameout.cpp index ceab949969..44db9f870e 100644 --- a/engines/sci/graphics/frameout.cpp +++ b/engines/sci/graphics/frameout.cpp @@ -115,6 +115,7 @@ GfxFrameout::GfxFrameout(SegManager *segMan, ResourceManager *resMan, GfxCoordAd  	}  	switch (g_sci->getGameId()) { +	case GID_HOYLE5:  	case GID_GK2:  	case GID_LIGHTHOUSE:  	case GID_LSL7: diff --git a/engines/sci/sci.h b/engines/sci/sci.h index 6481365936..0020d25b91 100644 --- a/engines/sci/sci.h +++ b/engines/sci/sci.h @@ -140,6 +140,7 @@ enum SciGameId {  	GID_HOYLE2,  	GID_HOYLE3,  	GID_HOYLE4, +	GID_HOYLE5,  	GID_ICEMAN,  	GID_INNDEMO,  	GID_ISLANDBRAIN, | 
