[Scummvm-git-logs] scummvm master -> c63f21cc3d012700fb4493942a6072ed5d7a920b

sev- sev at scummvm.org
Wed May 5 21:34:47 UTC 2021


This automated email contains information about 3 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
cea7ee1216 KYRA: Fixed recently added detection entry
1e3f7fe797 MOHAWK: Added unsupported greeneggs 2.0. Bugreport #12500
c63f21cc3d SLUDGE: Added possibility to dump zbuffers


Commit: cea7ee121633b9ec3aa449507744d05f59e28977
    https://github.com/scummvm/scummvm/commit/cea7ee121633b9ec3aa449507744d05f59e28977
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2021-05-05T23:34:14+02:00

Commit Message:
KYRA: Fixed recently added detection entry

Changed paths:
    engines/kyra/detection_tables.h


diff --git a/engines/kyra/detection_tables.h b/engines/kyra/detection_tables.h
index 2975d4700a..32f3392366 100644
--- a/engines/kyra/detection_tables.h
+++ b/engines/kyra/detection_tables.h
@@ -304,7 +304,7 @@ const KYRAGameDescription adGameDescs[] = {
 			AD_ENTRY1s("GEMCUT.EMC", "d0d1f35c5e2b6dee64b048bb77d1fc00", 6998),
 			Common::IT_ITA,
 			Common::kPlatformAmiga,
-			ADGF_NO_FLAGS,
+			ADGF_UNSUPPORTED,
 			GUIO3(GUIO_NOSPEECH, GUIO_MIDIAMIGA, GUIO_RENDERAMIGA)
 		},
 		KYRA1_AMIGA_FLAGS


Commit: 1e3f7fe7977cefaf277ae251609512351fb715c7
    https://github.com/scummvm/scummvm/commit/1e3f7fe7977cefaf277ae251609512351fb715c7
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2021-05-05T23:34:14+02:00

Commit Message:
MOHAWK: Added unsupported greeneggs 2.0. Bugreport #12500

The game has more opcodes used than the previously added entries,
thus it frequently stops with unimplimented stuff.

Changed paths:
    engines/mohawk/detection_tables.h
    engines/mohawk/livingbooks_code.cpp
    engines/mohawk/livingbooks_code.h


diff --git a/engines/mohawk/detection_tables.h b/engines/mohawk/detection_tables.h
index fbdc0df37f..8195d5cc54 100644
--- a/engines/mohawk/detection_tables.h
+++ b/engines/mohawk/detection_tables.h
@@ -948,6 +948,21 @@ static const MohawkGameDescription gameDescriptions[] = {
 		0
 	},
 
+	{ // Version 2.0, has lots of additional livingbooks_code
+		{
+			"greeneggs",
+			_s("Missing game code"), // Reason for being unsupported
+			AD_ENTRY1s("Outline", "bca2320b800f616118c2be239628a964", 3022),
+			Common::EN_ANY,
+			Common::kPlatformMacintosh,
+			ADGF_UNSUPPORTED,
+			GUIO1(GUIO_NOASPECT)
+		},
+		GType_LIVINGBOOKSV4,
+		0,
+		0
+	},
+
 	{
 		{
 			"greeneggs",
diff --git a/engines/mohawk/livingbooks_code.cpp b/engines/mohawk/livingbooks_code.cpp
index 5f64c7c07e..e4179c414f 100644
--- a/engines/mohawk/livingbooks_code.cpp
+++ b/engines/mohawk/livingbooks_code.cpp
@@ -257,6 +257,12 @@ void LBCode::nextToken() {
 			_currValue = READ_BE_UINT16(_data + _currOffset);
 			_currOffset += 2;
 			break;
+		case kLBCodeLiteralIntegerLE:
+			if (_currOffset + 2 > _size)
+				error("went off the end of code reading literal integer");
+			_currValue = READ_LE_UINT16(_data + _currOffset);
+			_currOffset += 2;
+			break;
 		default:
 			error("unknown kTokenLiteral type %02x", literalType);
 		}
@@ -761,6 +767,11 @@ void LBCode::parseMain() {
 		runNotifyCommand();
 		break;
 
+	case 4:
+		nextToken();
+		_stack.push(0);
+		break;
+
 	default:
 		error("unknown token %02x in code", _currToken);
 	}
diff --git a/engines/mohawk/livingbooks_code.h b/engines/mohawk/livingbooks_code.h
index 478b007a8f..0461f9305d 100644
--- a/engines/mohawk/livingbooks_code.h
+++ b/engines/mohawk/livingbooks_code.h
@@ -145,7 +145,8 @@ struct LBList {
 };
 
 enum {
-	kLBCodeLiteralInteger = 0x1
+	kLBCodeLiteralInteger = 0x1,
+	kLBCodeLiteralIntegerLE = 0x11
 };
 
 enum {


Commit: c63f21cc3d012700fb4493942a6072ed5d7a920b
    https://github.com/scummvm/scummvm/commit/c63f21cc3d012700fb4493942a6072ed5d7a920b
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2021-05-05T23:34:15+02:00

Commit Message:
SLUDGE: Added possibility to dump zbuffers

Changed paths:
    engines/sludge/zbuffer.cpp


diff --git a/engines/sludge/zbuffer.cpp b/engines/sludge/zbuffer.cpp
index 2659cde787..ad73004a1c 100644
--- a/engines/sludge/zbuffer.cpp
+++ b/engines/sludge/zbuffer.cpp
@@ -21,6 +21,7 @@
  */
 
 #include "common/debug.h"
+#include "common/config-manager.h"
 #include "graphics/pixelformat.h"
 #include "graphics/transparent_surface.h"
 
@@ -84,9 +85,23 @@ bool GraphicsManager::setZBuffer(int num) {
 	setResourceForFatal(num);
 
 	_zBuffer->originalNum = num;
-	if (!g_sludge->_resMan->openFileFromNum(num))
+	uint fsize = g_sludge->_resMan->openFileFromNum(num);
+	if (!fsize)
 		return false;
-	Common::ReadStream *readStream = g_sludge->_resMan->getData();
+
+	Common::SeekableReadStream *readStream = g_sludge->_resMan->getData();
+
+	if (ConfMan.getBool("dump_scripts")) {
+		Common::DumpFile dumpFile;
+		dumpFile.open(Common::String::format("dumps/zbuffer%d.zbu", num));
+		uint32 pos = readStream->pos();
+		byte *data = (byte *)malloc(fsize);
+		readStream->read(data, fsize);
+		dumpFile.write(data, fsize);
+		dumpFile.close();
+		readStream->seek(pos);
+	}
+
 	if (readStream->readByte() != 'S')
 		return fatal("Not a Z-buffer file");
 	if (readStream->readByte() != 'z')




More information about the Scummvm-git-logs mailing list