MOHAWK: Add games not yet suppoted by engine to detection and mark them as such

This effectively reverts 44fd44ccc965b91a38c534e0a890772e83577c4b

We use detection for documentation purposes, to reduce time spent
on game cataloging and also indicate to the devs where they could
explore
This commit is contained in:
Eugene Sandulenko 2022-11-23 12:39:28 +01:00
parent 51a1c568d9
commit e269f55f50
No known key found for this signature in database
GPG Key ID: 014D387312D34F08
5 changed files with 237 additions and 1 deletions

View File

@ -36,12 +36,19 @@ static const PlainGameDescriptor mohawkGames[] = {
{"myst", "Myst"},
{"makingofmyst", "The Making of Myst"},
{"riven", "Riven: The Sequel to Myst"},
{"zoombini", "Logical Journey of the Zoombinis"},
{"cstime", "Where in Time is Carmen Sandiego?"},
{"csworld", "Where in the World is Carmen Sandiego?"},
{"csamtrak", "Where in America is Carmen Sandiego? (The Great Amtrak Train Adventure)"},
{"carmentq", "Carmen Sandiego's ThinkQuick Challenge"},
{"carmentqc", "Carmen Sandiego's ThinkQuick Challenge Custom Question Creator"},
{"maggiesfa", "Maggie's Farmyard Adventure"},
{"jamesmath", "James Discovers/Explores Math"},
{"treehouse", "The Treehouse"},
{"greeneggs", "Green Eggs and Ham"},
{"seussabc", "Dr Seuss's ABC"},
{"1stdegree", "In the 1st Degree"},
{"csusa", "Where in the USA is Carmen Sandiego?"},
{"seussps", "Dr Seuss's Preschool"},
{"tortoise", "Aesop's Fables: The Tortoise and the Hare"},
{"arthur", "Arthur's Teacher Trouble"},

View File

@ -35,7 +35,14 @@ enum MohawkGameType {
GType_LIVINGBOOKSV2,
GType_LIVINGBOOKSV3,
GType_LIVINGBOOKSV4,
GType_LIVINGBOOKSV5
GType_LIVINGBOOKSV5,
GType_ZOOMBINI,
GType_CSWORLD,
GType_CSAMTRAK,
GType_JAMESMATH,
GType_TREEHOUSE,
GType_1STDEGREE,
GType_CSUSA,
};
#define GAMEOPTION_ME GUIO_GAMEOPTIONS1

View File

@ -758,6 +758,123 @@ static const MohawkGameDescription gameDescriptions[] = {
0
},
{
{
"zoombini",
_s("Missing game code"), // Reason for being unsupported,
AD_ENTRY1("ZOOMBINI.MHK", "98b758fec55104c096cfd129048be9a6"),
Common::EN_ANY,
Common::kPlatformWindows,
ADGF_UNSUPPORTED,
GUIO1(GUIO_NOASPECT)
},
GType_ZOOMBINI,
0,
0
},
{
{
"zoombini",
_s("Missing game code"), // Reason for being unsupported,
AD_ENTRY1("ZOOMBINI.MHK", "0672f65c40dd065840c896e41c13f980"),
Common::EN_ANY,
Common::kPlatformWindows,
ADGF_UNSUPPORTED,
GUIO1(GUIO_NOASPECT)
},
GType_ZOOMBINI,
0,
0
},
{
{
"zoombini",
_s("Missing game code"), // Reason for being unsupported // "v2.0",
AD_ENTRY1("ZOOMBINI.MHK", "506b1122ffa740e2566cf0b583d24478"),
Common::EN_ANY,
Common::kPlatformWindows,
ADGF_UNSUPPORTED,
GUIO1(GUIO_NOASPECT)
},
GType_ZOOMBINI,
0,
0
},
{
{
"zoombini",
_s("Missing game code"), // Reason for being unsupported,
AD_ENTRY1("ZOOMBINI.MHK", "6ae0bdf791266b1fe3d4fabbf44c3faa"),
Common::DE_DEU,
Common::kPlatformWindows,
ADGF_UNSUPPORTED,
GUIO1(GUIO_NOASPECT)
},
GType_ZOOMBINI,
0,
0
},
{
{
"zoombini",
_s("Missing game code"), // Reason for being unsupported,
AD_ENTRY1("ZOOMBINI.MHK", "8231e58525143ccf6e8b747df34b139f"),
Common::FR_FRA,
Common::kPlatformWindows,
ADGF_UNSUPPORTED,
GUIO1(GUIO_NOASPECT)
},
GType_ZOOMBINI,
0,
0
},
{
{
"csworld",
_s("Missing game code"), // Reason for being unsupported // "v3.0",
AD_ENTRY1("C2K.MHK", "605fe88380848031bbd0ff84ade6fe40"),
Common::EN_ANY,
Common::kPlatformWindows,
ADGF_UNSUPPORTED,
GUIO1(GUIO_NOASPECT)
},
GType_CSWORLD,
0,
0
},
{
{
"csworld",
_s("Missing game code"), // Reason for being unsupported // "v3.5",
AD_ENTRY1("C2K.MHK", "d4857aeb0f5e2e0c4ac556aa74f38c23"),
Common::EN_ANY,
Common::kPlatformWindows,
ADGF_UNSUPPORTED,
GUIO1(GUIO_NOASPECT)
},
GType_CSWORLD,
0,
0
},
{
{
"csamtrak",
_s("Missing game code"), // Reason for being unsupported,
AD_ENTRY1("AMTRAK.MHK", "2f95301f0bb950d555bb7b0e3b1b7eb1"),
Common::EN_ANY,
Common::kPlatformWindows,
ADGF_UNSUPPORTED,
GUIO1(GUIO_NOASPECT)
},
GType_CSAMTRAK,
0,
0
},
// Harry and the Haunted House v1.0E
// English Windows 3.11
// From strangerke
@ -987,6 +1104,52 @@ static const MohawkGameDescription gameDescriptions[] = {
0
},
{
{
"jamesmath",
_s("Missing game code"), // Reason for being unsupported,
AD_ENTRY1("BRODER.MHK", "007299da8b2c6e8ec1cde9598c243024"),
Common::EN_ANY,
Common::kPlatformWindows,
ADGF_UNSUPPORTED,
GUIO1(GUIO_NOASPECT)
},
GType_JAMESMATH,
0,
0
},
// This is in the NEWDATA folder, so I assume it's a newer version ;)
{
{
"jamesmath",
_s("Missing game code"), // Reason for being unsupported,
AD_ENTRY1("BRODER.MHK", "53c000938a50dca92860fd9b546dd276"),
Common::EN_ANY,
Common::kPlatformWindows,
ADGF_UNSUPPORTED,
GUIO1(GUIO_NOASPECT)
},
GType_JAMESMATH,
0,
0
},
{
{
"treehouse",
_s("Missing game code"), // Reason for being unsupported,
AD_ENTRY1("MAINROOM.MHK", "12f51894d7f838af639ea9bf1bc8f45b"),
Common::EN_ANY,
Common::kPlatformWindows,
ADGF_UNSUPPORTED,
GUIO1(GUIO_NOASPECT)
},
GType_TREEHOUSE,
0,
0
},
{
{
"greeneggs",
@ -1154,6 +1317,54 @@ static const MohawkGameDescription gameDescriptions[] = {
0
},
{
{
"1stdegree",
_s("Missing game code"), // Reason for being unsupported,
AD_ENTRY1("AL236_1.MHK", "3ba145492a7b8b4dee0ef4222c5639c3"),
Common::EN_ANY,
Common::kPlatformWindows,
ADGF_UNSUPPORTED,
GUIO1(GUIO_NOASPECT)
},
GType_1STDEGREE,
0,
0
},
// In The 1st Degree
// French Windows
// From Strangerke
{
{
"1stdegree",
_s("Missing game code"), // Reason for being unsupported,
AD_ENTRY1("AL236_1.MHK", "0e0c70b1b702b6ddca61a1192ada1282"),
Common::FR_FRA,
Common::kPlatformWindows,
ADGF_UNSUPPORTED,
GUIO1(GUIO_NOASPECT)
},
GType_1STDEGREE,
0,
0
},
{
{
"csusa",
_s("Missing game code"), // Reason for being unsupported,
AD_ENTRY1("USAC2K.MHK", "b8c9d3a2586f62bce3a48b50d7a700e9"),
Common::EN_ANY,
Common::kPlatformWindows,
ADGF_UNSUPPORTED,
GUIO1(GUIO_NOASPECT)
},
GType_CSUSA,
0,
0
},
{
{
"tortoise",

View File

@ -92,6 +92,10 @@ namespace Mohawk {
#define ID_BMAP MKTAG('B','M','A','P') // Old Mohawk Bitmap
#define ID_BCOD MKTAG('B','C','O','D') // Book Code
// JamesMath Resource FourCC's
#define ID_TANM MKTAG('t','A','N','M') // Animation?
#define ID_TMFO MKTAG('t','M','F','O') // ???
// CSTime Resource FourCC's
#define ID_CINF MKTAG('C','I','N','F') // Case Info
#define ID_CONV MKTAG('C','O','N','V') // Conversation
@ -107,6 +111,10 @@ namespace Mohawk {
#define ID_DATA MKTAG('D','a','t','a') // Game Sound Chunk
#define ID_CUE MKTAG('C','u','e','#') // Game Sound Chunk
// Mohawk MIDI Tags
#define ID_MIDI MKTAG('M','I','D','I') // Game Sound (Third Tag), instead of WAVE
#define ID_PRG MKTAG('P','r','g','#') // MIDI Patch
// Common Resource FourCC's
#define ID_TBMP MKTAG('t','B','M','P') // Standard Mohawk Bitmap
#define ID_TWAV MKTAG('t','W','A','V') // Standard Mohawk Sound

View File

@ -196,6 +196,9 @@ Audio::RewindableAudioStream *Sound::makeAudioStream(uint16 id, CueList *cueList
Audio::RewindableAudioStream *audStream = nullptr;
switch (_vm->getGameType()) {
case GType_ZOOMBINI:
audStream = makeMohawkWaveStream(_vm->getResource(ID_SND, id));
break;
case GType_LIVINGBOOKSV1:
audStream = makeLivingBooksWaveStream_v1(_vm->getResource(ID_WAV, id));
break;