aboutsummaryrefslogtreecommitdiff
path: root/scumm
diff options
context:
space:
mode:
authorEugene Sandulenko2005-02-02 00:32:02 +0000
committerEugene Sandulenko2005-02-02 00:32:02 +0000
commitff7e16dc2bad56f1cc3d2ae71754668783e5354e (patch)
treeeabedc2db6eb4bcfac9ee952c26124da9da2ed61 /scumm
parenta0ef9b4d7888cdc354e866f16d30cb6186f8cb77 (diff)
downloadscummvm-rg350-ff7e16dc2bad56f1cc3d2ae71754668783e5354e.tar.gz
scummvm-rg350-ff7e16dc2bad56f1cc3d2ae71754668783e5354e.tar.bz2
scummvm-rg350-ff7e16dc2bad56f1cc3d2ae71754668783e5354e.zip
o Added few targets
* baseball2003 and Soccer2004 use Bink videos but just for intro movies and logos, so we may add them. * artdemo and readdemo also use Bink, but seems that additionally it uses them in cutscenes, but since there are just few of them, not like in full games, we may try to look at them too * SoccerMLS is (alsmost) working. It runs the intro, shows menu, lets to select from it but then fails at some Wiz stuff and there is no hotspots to choose. I think it may be related to overall HE99 problem with inventory where there is a bug preventing from item selection o baseball2003 and Soccer2004 featured new LECF index block. Add stub for it o SoccerMLS used kernelSetFunction 2001 in intro. add stub for it o Alternative russian freddi3 uses badly formatted logo substitution in intro, so error() in default case in Gdi::drawBMAPBg() was replaced with warning(). svn-id: r16722
Diffstat (limited to 'scumm')
-rw-r--r--scumm/gfx.cpp3
-rw-r--r--scumm/resource.cpp5
-rw-r--r--scumm/script_v7he.cpp4
-rw-r--r--scumm/scumm.cpp12
4 files changed, 23 insertions, 1 deletions
diff --git a/scumm/gfx.cpp b/scumm/gfx.cpp
index 8291a2794c..1156f16688 100644
--- a/scumm/gfx.cpp
+++ b/scumm/gfx.cpp
@@ -1405,7 +1405,8 @@ void Gdi::drawBMAPBg(const byte *ptr, VirtScreen *vs, int startstrip) {
fill((byte *)vs->backBuf, vs->pitch, *bmap_ptr, vs->w, vs->h);
break;
default:
- error("Gdi::drawBMAPBg: default case %d", code);
+ // Alternayive russian freddi3 uses badly formatted bitmaps
+ warning("Gdi::drawBMAPBg: default case %d", code);
}
copyVirtScreenBuffers(Common::Rect(vs->w, vs->h));
diff --git a/scumm/resource.cpp b/scumm/resource.cpp
index 97ebd26cb4..c97cde6637 100644
--- a/scumm/resource.cpp
+++ b/scumm/resource.cpp
@@ -476,6 +476,11 @@ void ScummEngine::readIndexFile() {
readArrayFromIndexFile();
break;
+ case MKID('LECF'):
+ _fileHandle.seek(itemsize - 8, SEEK_CUR);
+ debug(2, "LECF index block not yet handled, skipping");
+ break;
+
default:
error("Bad ID %04X('%s') found in index file directory!", blocktype,
tag2str(blocktype));
diff --git a/scumm/script_v7he.cpp b/scumm/script_v7he.cpp
index 3f74ff7c5d..c07026f001 100644
--- a/scumm/script_v7he.cpp
+++ b/scumm/script_v7he.cpp
@@ -790,6 +790,10 @@ void ScummEngine_v70he::o70_kernelSetFunctions() {
break;
case 714:
break;
+ case 2001:
+ // Used in SoccerMLS
+ warning("o70_kernelSetFunctions: unhandled case 2001");
+ break;
default:
error("o70_kernelSetFunctions: default case %d (param count %d)", args[0], num);
}
diff --git a/scumm/scumm.cpp b/scumm/scumm.cpp
index bfdc59ccdc..492192dd4c 100644
--- a/scumm/scumm.cpp
+++ b/scumm/scumm.cpp
@@ -366,6 +366,13 @@ static const ScummGameSettings scumm_settings[] = {
GF_NEW_OPCODES | GF_USE_KEY | GF_HUMONGOUS | GF_NEW_COSTUMES, 0, 0},
{"footdemo", "Backyard Football 2002 (Demo)", GID_HEGAME, 6, 99, 61, MDT_NONE,
GF_NEW_OPCODES | GF_USE_KEY | GF_HUMONGOUS | GF_NEW_COSTUMES, 0, 0},
+ {"SoccerMLS", "Backyard Soccer MLS Edition", GID_HEGAME, 6, 99, 61, MDT_NONE,
+ GF_NEW_OPCODES | GF_USE_KEY | GF_HUMONGOUS | GF_NEW_COSTUMES, 0, 0},
+
+ {"artdemo", "Blue's Art Time Activities (Demo)", GID_HEGAME, 6, 99, 61, MDT_NONE,
+ GF_NEW_OPCODES | GF_USE_KEY | GF_HUMONGOUS | GF_NEW_COSTUMES, 0, 0},
+ {"readdemo", "Blue's Reading Time Activities (Demo)", GID_HEGAME, 6, 99, 61, MDT_NONE,
+ GF_NEW_OPCODES | GF_USE_KEY | GF_HUMONGOUS | GF_NEW_COSTUMES, 0, 0},
// Humongous Entertainment Scumm Version ?
{"Football2002", "Backyard Football 2002 (Demo)", GID_HEGAME, 6, 100, 61, MDT_NONE,
@@ -381,6 +388,11 @@ static const ScummGameSettings scumm_settings[] = {
{"PuttTTT", "Putt-Putt Travels Through Time *updated)", GID_HEGAME, 6, 100, 31, MDT_NONE,
GF_NEW_OPCODES | GF_USE_KEY | GF_HUMONGOUS | GF_NEW_COSTUMES, 0, 0},
+ // Uses bink in external files for logos
+ {"baseball2003", "Backyard Baseball 2003", GID_HEGAME, 6, 100, 61, MDT_NONE,
+ GF_NEW_OPCODES | GF_USE_KEY | GF_HUMONGOUS | GF_NEW_COSTUMES, 0, 0},
+ {"Soccer2004", "Backyard Soccer 2004", GID_HEGAME, 6, 100, 61, MDT_NONE,
+ GF_NEW_OPCODES | GF_USE_KEY | GF_HUMONGOUS | GF_NEW_COSTUMES, 0, 0},
#endif
{NULL, NULL, 0, 0, 0, 0, MDT_NONE, 0, 0, 0}