From d229c92879048bc1e48892231783a4788f452490 Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Fri, 5 Aug 2011 21:09:03 +1000 Subject: CGE: Built an English version game archive This combines the base game resources with the files of cge_work\dusa and work\ins\usa. This makes both action descriptions and hotspots appear in English, although the introduction credits still appear in Polish. I don't know if this was the case for the original 'official' English release; but I consider it a minor issue. --- engines/cge/detection.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/engines/cge/detection.cpp b/engines/cge/detection.cpp index 24fd3d2043..fbe3bc6076 100644 --- a/engines/cge/detection.cpp +++ b/engines/cge/detection.cpp @@ -75,6 +75,17 @@ static const ADGameDescription gameDescriptions[] = { }, Common::PL_POL, Common::kPlatformPC, ADGF_DEMO, GUIO_NONE }, + // English ScummVM version + { + "soltys", "", + { + {"vol.cat", 0, "bfea076fee47b8d64fdf213e56c60911", 50176}, + {"vol.dat", 0, "f9ae2e7f8f7cac91378cdafca43faf1e", 8427396}, + AD_LISTEND + }, + Common::EN_ANY, Common::kPlatformPC, ADGF_NO_FLAGS, GUIO_NONE + }, + AD_TABLE_END_MARKER }; -- cgit v1.2.3 From b7a548f3c75e80573b31dd7fdec39bd6569af662 Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Fri, 5 Aug 2011 21:23:41 +1000 Subject: CGE: Fixed compiler warning of shadowed variable --- engines/cge/cge_main.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/engines/cge/cge_main.cpp b/engines/cge/cge_main.cpp index 123501047a..05beaae58d 100644 --- a/engines/cge/cge_main.cpp +++ b/engines/cge/cge_main.cpp @@ -318,8 +318,8 @@ void CGEEngine::syncGame(Common::SeekableReadStream *readStream, Common::WriteSt if (s.isSaving()) { for (i = 0; i < kPocketNX; i++) { - register Sprite *s = _pocket[i]; - _pocref[i] = (s) ? s->_ref : -1; + register Sprite *spr = _pocket[i]; + _pocref[i] = (spr) ? spr->_ref : -1; } warning("STUB: CGEEngine::syncGame Digital and Midi volume"); -- cgit v1.2.3 From 3ce71737b590ed1306f836c6fb751c2d2654a431 Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Fri, 5 Aug 2011 21:54:21 +1000 Subject: CGE: Fix mismatched memory free. --- engines/cge/bitmap.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/engines/cge/bitmap.cpp b/engines/cge/bitmap.cpp index c02c66df8b..6689998deb 100644 --- a/engines/cge/bitmap.cpp +++ b/engines/cge/bitmap.cpp @@ -187,7 +187,7 @@ uint16 Bitmap::moveVmap(uint8 *buf) { uint16 vsiz = (uint8 *)_b - (uint8 *)_v; uint16 siz = vsiz + _h * sizeof(HideDesc); memcpy(buf, _v, siz); - free(_v); + delete[] _v; _b = (HideDesc *)((_v = buf) + vsiz); return siz; } -- cgit v1.2.3 From c1294b772f3f459976dacb1c06f45425cc94853b Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Fri, 5 Aug 2011 22:51:32 +1000 Subject: CGE: Added an assert to test out of bounds sprite shape access The English version seems to expect a different number of shapes for some sprites, so it will need further work to determine how best to handle the differences. --- engines/cge/vga13h.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/engines/cge/vga13h.cpp b/engines/cge/vga13h.cpp index 9b30e02e4d..62b902b19c 100644 --- a/engines/cge/vga13h.cpp +++ b/engines/cge/vga13h.cpp @@ -382,6 +382,7 @@ Sprite *Sprite::expand() { if (len == 0 || *line == '.') continue; + assert(shpcnt <= _shpCnt); switch (takeEnum(Comd, strtok(line, " =\t"))) { case 0 : { // Name setName(strtok(NULL, "")); -- cgit v1.2.3