[Scummvm-git-logs] scummvm master -> 941db6e7e57ee6f8ebd81bc455426fa8976fd1ae

csnover csnover at users.noreply.github.com
Sat Sep 30 02:56:45 CEST 2017


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:
3cdf26b355 SCI32: Fix bad text rendering in RAMA
3b8b4f1722 SCI32: Clean up unused kBitmap code/subops
941db6e7e5 SCI32: Promote Lighthouse and RAMA to ADGF_TESTING


Commit: 3cdf26b355d5d0c387858bd85e546d6fff549dd4
    https://github.com/scummvm/scummvm/commit/3cdf26b355d5d0c387858bd85e546d6fff549dd4
Author: Colin Snover (github.com at zetafleet.com)
Date: 2017-09-29T19:56:24-05:00

Commit Message:
SCI32: Fix bad text rendering in RAMA

In SCI3, Sierra removed the ability of the main renderer to
automatically scale CelObjs with different source resolutions.
Instead, in SCI3, all CelObjs are treated as having the same
resolution as the screen (i.e. 640x480).

In all SCI3 games other than RAMA, keeping the code paths for
resolution-dependent scaling is not a problem because all the
assets and game code are correctly designed to use the same
640x480 resolution throughout. RAMA, on the other hand, was
written with the text subsystem set to a resolution of 630x450
(Phant1's screen resolution), and in SSCI, resolution-dependent
scaling code was not removed from the *text* subsystem. As a
result, RAMA's game scripts rely on the slightly larger scaled
dimensions coming out of the text system when determining the size
of screen items for rendering, and then also rely on the main
renderer ignoring the 630x450 resolution baked into the bitmaps
generated by the text subsystem when drawing them to the screen.

Changed paths:
    engines/sci/engine/kgraphics32.cpp
    engines/sci/engine/script_patches.cpp
    engines/sci/graphics/frameout.cpp
    engines/sci/graphics/screen_item32.cpp


diff --git a/engines/sci/engine/kgraphics32.cpp b/engines/sci/engine/kgraphics32.cpp
index c07282f..e75f563 100644
--- a/engines/sci/engine/kgraphics32.cpp
+++ b/engines/sci/engine/kgraphics32.cpp
@@ -75,8 +75,11 @@ reg_t kBaseSetter32(EngineState *s, int argc, reg_t *argv) {
 
 	CelObjView celObj(viewId, loopNo, celNo);
 
-	const int16 scriptWidth = g_sci->_gfxFrameout->getCurrentBuffer().scriptWidth;
-	const Ratio scaleX(scriptWidth, celObj._xResolution);
+	Ratio scaleX;
+	if (getSciVersion() < SCI_VERSION_3) {
+		const int16 scriptWidth = g_sci->_gfxFrameout->getCurrentBuffer().scriptWidth;
+		scaleX = Ratio(scriptWidth, celObj._xResolution);
+	}
 
 	int16 brLeft;
 
@@ -414,7 +417,11 @@ reg_t kCelHigh32(EngineState *s, int argc, reg_t *argv) {
 	int16 loopNo = argv[1].toSint16();
 	int16 celNo = argv[2].toSint16();
 	CelObjView celObj(resourceId, loopNo, celNo);
-	return make_reg(0, mulru(celObj._height, Ratio(g_sci->_gfxFrameout->getCurrentBuffer().scriptHeight, celObj._yResolution)));
+	int16 height = celObj._height;
+	if (getSciVersion() < SCI_VERSION_3) {
+		height = mulru(height, Ratio(g_sci->_gfxFrameout->getCurrentBuffer().scriptHeight, celObj._yResolution));
+	}
+	return make_reg(0, height);
 }
 
 reg_t kCelWide32(EngineState *s, int argc, reg_t *argv) {
@@ -422,7 +429,11 @@ reg_t kCelWide32(EngineState *s, int argc, reg_t *argv) {
 	int16 loopNo = argv[1].toSint16();
 	int16 celNo = argv[2].toSint16();
 	CelObjView celObj(resourceId, loopNo, celNo);
-	return make_reg(0, mulru(celObj._width, Ratio(g_sci->_gfxFrameout->getCurrentBuffer().scriptWidth, celObj._xResolution)));
+	int16 width = celObj._width;
+	if (getSciVersion() < SCI_VERSION_3) {
+		width = mulru(width, Ratio(g_sci->_gfxFrameout->getCurrentBuffer().scriptWidth, celObj._xResolution));
+	}
+	return make_reg(0, width);
 }
 
 // Used by Shivers 1, room 23601 to determine what blocks on the red door
diff --git a/engines/sci/engine/script_patches.cpp b/engines/sci/engine/script_patches.cpp
index 8bfd1d1..a8be13e 100644
--- a/engines/sci/engine/script_patches.cpp
+++ b/engines/sci/engine/script_patches.cpp
@@ -6382,25 +6382,6 @@ static const uint16 ramaBenchmarkPatch[] = {
 	PATCH_END
 };
 
-// RAMA initialises the font system with an incorrect text resolution (it uses
-// the resolution from Phant1) which causes text to be scaled incorrectly.
-static const uint16 ramaTextResolutionSignature[] = {
-	0x39, 0x03,                   // pushi 3
-	0x78,                         // push1
-	SIG_MAGICDWORD,
-	0x38, SIG_UINT16(0x276),      // pushi 630
-	0x38, SIG_UINT16(0x1c2),      // pushi 450
-	0x43, 0x49, SIG_UINT16(0x06), // callk Font, 6
-	SIG_END
-};
-
-static const uint16 ramaTextResolutionPatch[] = {
-	PATCH_ADDTOOFFSET(+3),     // pushi 3, push1
-	0x38, PATCH_UINT16(0x280), // pushi 640
-	0x38, PATCH_UINT16(0x1e0), // pushi 480
-	PATCH_END
-};
-
 // RAMA uses a custom save game format that game scripts read and write
 // manually. The save game format serialises object references, which in the
 // original engine could be done just by writing int16s (since object references
@@ -6474,7 +6455,6 @@ static const uint16 ramaChangeDirPatch[] = {
 };
 
 static const SciScriptPatcherEntry ramaSignatures[] = {
-	{  true,     0, "fix bad text resolution",                      1, ramaTextResolutionSignature,     ramaTextResolutionPatch },
 	{  true,    55, "fix bad DocReader::init priority calculation", 1, ramaDocReaderInitSignature,      ramaDocReaderInitPatch },
 	{  true,    85, "fix SaveManager to use normal readWord calls", 1, ramaSerializeRegTSignature1,     ramaSerializeRegTPatch1 },
 	{  true, 64908, "disable video benchmarking",                   1, ramaBenchmarkSignature,          ramaBenchmarkPatch },
diff --git a/engines/sci/graphics/frameout.cpp b/engines/sci/graphics/frameout.cpp
index d3e08bf..6ea4975 100644
--- a/engines/sci/graphics/frameout.cpp
+++ b/engines/sci/graphics/frameout.cpp
@@ -1228,7 +1228,9 @@ bool GfxFrameout::isOnMe(const ScreenItem &screenItem, const Plane &plane, const
 		scaledPosition.x -= screenItem._scaledPosition.x;
 		scaledPosition.y -= screenItem._scaledPosition.y;
 
-		mulru(scaledPosition, Ratio(celObj._xResolution, _currentBuffer.screenWidth), Ratio(celObj._yResolution, _currentBuffer.screenHeight));
+		if (getSciVersion() < SCI_VERSION_3) {
+			mulru(scaledPosition, Ratio(celObj._xResolution, _currentBuffer.screenWidth), Ratio(celObj._yResolution, _currentBuffer.screenHeight));
+		}
 
 		if (screenItem._scale.signal != kScaleSignalNone && screenItem._scale.x && screenItem._scale.y) {
 			scaledPosition.x = scaledPosition.x * 128 / screenItem._scale.x;
diff --git a/engines/sci/graphics/screen_item32.cpp b/engines/sci/graphics/screen_item32.cpp
index 8e4f713..5a35d30 100644
--- a/engines/sci/graphics/screen_item32.cpp
+++ b/engines/sci/graphics/screen_item32.cpp
@@ -297,8 +297,12 @@ void ScreenItem::calcRects(const Plane &plane) {
 	if (scaleX.getNumerator() && scaleY.getNumerator()) {
 		_screenItemRect = _insetRect;
 
-		const Ratio celToScreenX(screenWidth, celObj._xResolution);
-		const Ratio celToScreenY(screenHeight, celObj._yResolution);
+		Ratio celToScreenX;
+		Ratio celToScreenY;
+		if (getSciVersion() < SCI_VERSION_3) {
+			celToScreenX = Ratio(screenWidth, celObj._xResolution);
+			celToScreenY = Ratio(screenHeight, celObj._yResolution);
+		}
 
 		// Cel may use a coordinate system that is not the same size as the
 		// script coordinate system (usually this means high-resolution
@@ -307,9 +311,11 @@ void ScreenItem::calcRects(const Plane &plane) {
 			// high resolution coordinates
 
 			if (_useInsetRect) {
-				const Ratio scriptToCelX(celObj._xResolution, scriptWidth);
-				const Ratio scriptToCelY(celObj._yResolution, scriptHeight);
-				mulru(_screenItemRect, scriptToCelX, scriptToCelY, 0);
+				if (getSciVersion() < SCI_VERSION_3) {
+					const Ratio scriptToCelX(celObj._xResolution, scriptWidth);
+					const Ratio scriptToCelY(celObj._yResolution, scriptHeight);
+					mulru(_screenItemRect, scriptToCelX, scriptToCelY, 0);
+				}
 
 				if (_screenItemRect.intersects(celRect)) {
 					_screenItemRect.clip(celRect);
@@ -445,7 +451,7 @@ void ScreenItem::calcRects(const Plane &plane) {
 			_scaledPosition.y += plane._gameRect.top;
 			_screenItemRect.translate(plane._gameRect.left, plane._gameRect.top);
 
-			if (celObj._xResolution != screenWidth || celObj._yResolution != screenHeight) {
+			if (!celToScreenX.isOne() || !celToScreenY.isOne()) {
 				mulru(_scaledPosition, celToScreenX, celToScreenY);
 				mulru(_screenItemRect, celToScreenX, celToScreenY, 1);
 			}
@@ -626,9 +632,11 @@ Common::Rect ScreenItem::getNowSeenRect(const Plane &plane) const {
 		// high resolution coordinates
 
 		if (_useInsetRect) {
-			Ratio scriptToCelX(celObj._xResolution, scriptWidth);
-			Ratio scriptToCelY(celObj._yResolution, scriptHeight);
-			mulru(nsRect, scriptToCelX, scriptToCelY, 0);
+			if (getSciVersion() < SCI_VERSION_3) {
+				const Ratio scriptToCelX(celObj._xResolution, scriptWidth);
+				const Ratio scriptToCelY(celObj._yResolution, scriptHeight);
+				mulru(nsRect, scriptToCelX, scriptToCelY, 0);
+			}
 
 			if (nsRect.intersects(celObjRect)) {
 				nsRect.clip(celObjRect);
@@ -668,8 +676,12 @@ Common::Rect ScreenItem::getNowSeenRect(const Plane &plane) const {
 			}
 		}
 
-		Ratio celToScriptX(scriptWidth, celObj._xResolution);
-		Ratio celToScriptY(scriptHeight, celObj._yResolution);
+		Ratio celToScriptX;
+		Ratio celToScriptY;
+		if (getSciVersion() < SCI_VERSION_3) {
+			celToScriptX = Ratio(scriptWidth, celObj._xResolution);
+			celToScriptY = Ratio(scriptHeight, celObj._yResolution);
+		}
 
 		originX = (originX * scaleX * celToScriptX).toInt();
 		originY = (originY * scaleY * celToScriptY).toInt();


Commit: 3b8b4f1722872b9f241f8d1d6b3d581ac5cc8fb1
    https://github.com/scummvm/scummvm/commit/3b8b4f1722872b9f241f8d1d6b3d581ac5cc8fb1
Author: Colin Snover (github.com at zetafleet.com)
Date: 2017-09-29T19:56:24-05:00

Commit Message:
SCI32: Clean up unused kBitmap code/subops

Changed paths:
    engines/sci/engine/kernel.h
    engines/sci/engine/kernel_tables.h
    engines/sci/engine/kgraphics32.cpp


diff --git a/engines/sci/engine/kernel.h b/engines/sci/engine/kernel.h
index 69a86ae..5ab9abe 100644
--- a/engines/sci/engine/kernel.h
+++ b/engines/sci/engine/kernel.h
@@ -553,19 +553,12 @@ reg_t kCreateTextBitmap(EngineState *s, int argc, reg_t *argv);
 reg_t kBitmap(EngineState *s, int argc, reg_t *argv);
 reg_t kBitmapCreate(EngineState *s, int argc, reg_t *argv);
 reg_t kBitmapDestroy(EngineState *s, int argc, reg_t *argv);
-reg_t kBitmapDrawLine(EngineState *s, int argc, reg_t *argv);
 reg_t kBitmapDrawView(EngineState *s, int argc, reg_t *argv);
 reg_t kBitmapDrawText(EngineState *s, int argc, reg_t *argv);
 reg_t kBitmapDrawColor(EngineState *s, int argc, reg_t *argv);
-reg_t kBitmapDrawBitmap(EngineState *s, int argc, reg_t *argv);
-reg_t kBitmapInvert(EngineState *s, int argc, reg_t *argv);
 reg_t kBitmapSetOrigin(EngineState *s, int argc, reg_t *argv);
 reg_t kBitmapCreateFromView(EngineState *s, int argc, reg_t *argv);
-reg_t kBitmapCopyPixels(EngineState *s, int argc, reg_t *argv);
-reg_t kBitmapClone(EngineState *s, int argc, reg_t *argv);
 reg_t kBitmapGetInfo(EngineState *s, int argc, reg_t *argv);
-reg_t kBitmapScale(EngineState *s, int argc, reg_t *argv);
-reg_t kBitmapCreateFromUnknown(EngineState *s, int argc, reg_t *argv);
 
 reg_t kAddPlane(EngineState *s, int argc, reg_t *argv);
 reg_t kDeletePlane(EngineState *s, int argc, reg_t *argv);
diff --git a/engines/sci/engine/kernel_tables.h b/engines/sci/engine/kernel_tables.h
index fa93d60..797edee 100644
--- a/engines/sci/engine/kernel_tables.h
+++ b/engines/sci/engine/kernel_tables.h
@@ -382,19 +382,19 @@ static const SciKernelMapSubEntry kText_subops[] = {
 static const SciKernelMapSubEntry kBitmap_subops[] = {
 	{ SIG_SINCE_SCI21,     0, MAP_CALL(BitmapCreate),              "iiii(i)(i)(i)",        NULL },
 	{ SIG_SINCE_SCI21,     1, MAP_CALL(BitmapDestroy),             "[r!]",                 NULL },
-	{ SIG_SINCE_SCI21,     2, MAP_CALL(BitmapDrawLine),            "riiiii(i)(i)",         NULL },
+	{ SIG_SINCE_SCI21,     2, MAP_DUMMY(BitmapDrawLine),           "riiiii(i)(i)",         NULL },
 	{ SIG_SINCE_SCI21,     3, MAP_CALL(BitmapDrawView),            "riii(i)(i)(0)(i)(i)",  NULL },
 	{ SIG_SINCE_SCI21,     4, MAP_CALL(BitmapDrawText),            "rriiiiiiiiiii",        NULL },
 	{ SIG_SINCE_SCI21,     5, MAP_CALL(BitmapDrawColor),           "riiiii",               NULL },
-	{ SIG_SINCE_SCI21,     6, MAP_CALL(BitmapDrawBitmap),          "rr(i)(i)(i)",          NULL },
-	{ SIG_SINCE_SCI21,     7, MAP_CALL(BitmapInvert),              "riiiiii",              NULL },
+	{ SIG_SINCE_SCI21,     6, MAP_DUMMY(BitmapDrawBitmap),         "rr(i)(i)(i)",          NULL },
+	{ SIG_SINCE_SCI21,     7, MAP_DUMMY(BitmapInvert),             "riiiiii",              NULL },
 	{ SIG_SINCE_SCI21MID,  8, MAP_CALL(BitmapSetOrigin),           "rii",                  NULL },
 	{ SIG_SINCE_SCI21MID,  9, MAP_CALL(BitmapCreateFromView),      "iii(i)(i)(i)([r0])",   NULL },
-	{ SIG_SINCE_SCI21MID, 10, MAP_CALL(BitmapCopyPixels),          "rr",                   NULL },
-	{ SIG_SINCE_SCI21MID, 11, MAP_CALL(BitmapClone),               "r",                    NULL },
+	{ SIG_SINCE_SCI21MID, 10, MAP_DUMMY(BitmapCopyPixels),         "rr",                   NULL },
+	{ SIG_SINCE_SCI21MID, 11, MAP_DUMMY(BitmapClone),              "r",                    NULL },
 	{ SIG_SINCE_SCI21MID, 12, MAP_CALL(BitmapGetInfo),             "r(i)(i)",              NULL },
-	{ SIG_SINCE_SCI21LATE,13, MAP_CALL(BitmapScale),               "r...ii",               NULL },
-	{ SIG_SCI3,           14, MAP_CALL(BitmapCreateFromUnknown),   "......",               NULL },
+	{ SIG_SINCE_SCI21LATE,13, MAP_DUMMY(BitmapScale),              "r...ii",               NULL },
+	{ SIG_SCI3,           14, MAP_DUMMY(BitmapCreateFromUnknown),  "......",               NULL },
 	{ SIG_SCI3,           15, MAP_DUMMY(Bitmap),                   "(.*)",                 NULL },
 	{ SIG_SCI3,           16, MAP_DUMMY(Bitmap),                   "(.*)",                 NULL },
 	SCI_SUBOPENTRY_TERMINATOR
diff --git a/engines/sci/engine/kgraphics32.cpp b/engines/sci/engine/kgraphics32.cpp
index e75f563..bed4a09 100644
--- a/engines/sci/engine/kgraphics32.cpp
+++ b/engines/sci/engine/kgraphics32.cpp
@@ -670,11 +670,6 @@ reg_t kBitmapDestroy(EngineState *s, int argc, reg_t *argv) {
 	return s->r_acc;
 }
 
-reg_t kBitmapDrawLine(EngineState *s, int argc, reg_t *argv) {
-	// bitmapMemId, (x1, y1, x2, y2) OR (x2, y2, x1, y1), line color, unknown int, unknown int
-	return kStubNull(s, argc + 1, argv - 1);
-}
-
 reg_t kBitmapDrawView(EngineState *s, int argc, reg_t *argv) {
 	SciBitmap &bitmap = *s->_segMan->lookupBitmap(argv[0]);
 	CelObjView view(argv[1].toUint16(), argv[2].toSint16(), argv[3].toSint16());
@@ -722,12 +717,6 @@ reg_t kBitmapDrawText(EngineState *s, int argc, reg_t *argv) {
 	int16 borderColor = argv[11].toSint16();
 	bool dimmed = argv[12].toUint16();
 
-	// NOTE: Technically the engine checks these things:
-	// textRect.bottom > 0
-	// textRect.right > 0
-	// textRect.left < bitmap.width
-	// textRect.top < bitmap.height
-	// Then clips. But this seems stupid.
 	textRect.clip(Common::Rect(bitmap.getWidth(), bitmap.getHeight()));
 
 	reg_t textBitmapObject = g_sci->_gfxText32->createFontBitmap(textRect.width(), textRect.height(), Common::Rect(textRect.width(), textRect.height()), text, foreColor, backColor, skipColor, fontId, alignment, borderColor, dimmed, false, false);
@@ -753,18 +742,6 @@ reg_t kBitmapDrawColor(EngineState *s, int argc, reg_t *argv) {
 	return s->r_acc;
 }
 
-reg_t kBitmapDrawBitmap(EngineState *s, int argc, reg_t *argv) {
-	// target bitmap, source bitmap, x, y, unknown boolean
-
-	return kStubNull(s, argc + 1, argv - 1);
-}
-
-reg_t kBitmapInvert(EngineState *s, int argc, reg_t *argv) {
-	// bitmap, left, top, right, bottom, foreColor, backColor
-
-	return kStubNull(s, argc + 1, argv - 1);
-}
-
 reg_t kBitmapSetOrigin(EngineState *s, int argc, reg_t *argv) {
 	SciBitmap &bitmap = *s->_segMan->lookupBitmap(argv[0]);
 	bitmap.setOrigin(Common::Point(argv[1].toSint16(), argv[2].toSint16()));
@@ -798,18 +775,6 @@ reg_t kBitmapCreateFromView(EngineState *s, int argc, reg_t *argv) {
 	return bitmapId;
 }
 
-reg_t kBitmapCopyPixels(EngineState *s, int argc, reg_t *argv) {
-	// target bitmap, source bitmap
-
-	return kStubNull(s, argc + 1, argv - 1);
-}
-
-reg_t kBitmapClone(EngineState *s, int argc, reg_t *argv) {
-	// bitmap
-
-	return kStub(s, argc + 1, argv - 1);
-}
-
 reg_t kBitmapGetInfo(EngineState *s, int argc, reg_t *argv) {
 	SciBitmap &bitmap = *s->_segMan->lookupBitmap(argv[0]);
 
@@ -831,16 +796,6 @@ reg_t kBitmapGetInfo(EngineState *s, int argc, reg_t *argv) {
 	return make_reg(0, color);
 }
 
-reg_t kBitmapScale(EngineState *s, int argc, reg_t *argv) {
-	// TODO: SCI3
-	return kStubNull(s, argc + 1, argv - 1);
-}
-
-reg_t kBitmapCreateFromUnknown(EngineState *s, int argc, reg_t *argv) {
-	// TODO: SCI3
-	return kStub(s, argc + 1, argv - 1);
-}
-
 reg_t kEditText(EngineState *s, int argc, reg_t *argv) {
 	return g_sci->_gfxControls32->kernelEditText(argv[0]);
 }


Commit: 941db6e7e57ee6f8ebd81bc455426fa8976fd1ae
    https://github.com/scummvm/scummvm/commit/941db6e7e57ee6f8ebd81bc455426fa8976fd1ae
Author: Colin Snover (github.com at zetafleet.com)
Date: 2017-09-29T19:56:25-05:00

Commit Message:
SCI32: Promote Lighthouse and RAMA to ADGF_TESTING

Changed paths:
    engines/sci/detection_tables.h


diff --git a/engines/sci/detection_tables.h b/engines/sci/detection_tables.h
index 58af0fd..e12e5a1 100644
--- a/engines/sci/detection_tables.h
+++ b/engines/sci/detection_tables.h
@@ -2819,7 +2819,7 @@ static const struct ADGameDescription SciGameDescriptions[] = {
 		{"resmap.002", 0, "c68db5333f152fea6ca2dfc75cad8b34", 7573},
 		{"ressci.002", 0, "175468431a979b9f317c294ce3bc1430", 94628315},
 		AD_LISTEND},
-		Common::EN_ANY, Common::kPlatformDOS, ADGF_UNSTABLE, GUIO_LIGHTHOUSE },
+		Common::EN_ANY, Common::kPlatformDOS, ADGF_TESTING, GUIO_LIGHTHOUSE },
 
 	// Lighthouse - Japanese DOS (from m_kiewitz)
 	// Executable scanning reports "3.000.000", VERSION file reports "1.0C"
@@ -2829,7 +2829,7 @@ static const struct ADGameDescription SciGameDescriptions[] = {
 		{"resmap.002", 0, "723fc742c623d8933e5753a264324cb0", 7657},
 		{"ressci.002", 0, "175468431a979b9f317c294ce3bc1430", 94627469},
 		AD_LISTEND},
-		Common::JA_JPN, Common::kPlatformDOS, ADGF_UNSTABLE, GUIO_LIGHTHOUSE },
+		Common::JA_JPN, Common::kPlatformDOS, ADGF_TESTING, GUIO_LIGHTHOUSE },
 
 	// Lighthouse - Spanish DOS (from jvprat)
 	// Executable scanning reports "3.000.000", VERSION file reports "1.1"
@@ -2839,7 +2839,7 @@ static const struct ADGameDescription SciGameDescriptions[] = {
 		{"resmap.002", 0, "e7dc85884a2417e2eff9de0c63dd65fa", 7630},
 		{"ressci.002", 0, "3c8d627c555b0e3e4f1d9955bc0f0df4", 94631127},
 		AD_LISTEND},
-		Common::ES_ESP, Common::kPlatformDOS, ADGF_UNSTABLE, GUIO_LIGHTHOUSE },
+		Common::ES_ESP, Common::kPlatformDOS, ADGF_TESTING, GUIO_LIGHTHOUSE },
 
 	// Lighthouse - French DOS (from bgK)
 	// Executable scanning reports "3.000.000", VERSION file reports "1.1"
@@ -2849,7 +2849,7 @@ static const struct ADGameDescription SciGameDescriptions[] = {
 		{"resmap.002", 0, "703e7ab04bd358e76bc098995d71f36a", 7642},
 		{"ressci.002", 0, "6635764dc258b2041ca9a387e5aaab25", 115212682},
 		AD_LISTEND},
-		Common::FR_FRA, Common::kPlatformDOS, ADGF_UNSTABLE, GUIO_LIGHTHOUSE },
+		Common::FR_FRA, Common::kPlatformDOS, ADGF_TESTING, GUIO_LIGHTHOUSE },
 
 #undef GUIO_LIGHTHOUSE_DEMO
 #undef GUIO_LIGHTHOUSE
@@ -4044,7 +4044,7 @@ static const struct ADGameDescription SciGameDescriptions[] = {
 		{"resmap.001", 0, "775304e9b2a545156be4d94209550094", 1393},
 		{"ressci.001", 0, "259437fd75fdf51e8207fda8c01fa4fd", 2334384},
 		AD_LISTEND},
-		Common::EN_ANY, Common::kPlatformDOS, ADGF_DEMO | ADGF_UNSTABLE, GUIO_RAMA_DEMO },
+		Common::EN_ANY, Common::kPlatformDOS, ADGF_DEMO | ADGF_TESTING, GUIO_RAMA_DEMO },
 
 	// RAMA - English DOS/Windows (from jvprat)
 	// Executable scanning reports "3.000.000", VERSION file reports "1.100.000"
@@ -4056,7 +4056,7 @@ static const struct ADGameDescription SciGameDescriptions[] = {
 		{"resmap.003", 0, "31ef4c0621711585d031f0ae81707251", 1636},
 		{"ressci.003", 0, "2a68edd064e5e4937b5e9c74b38f2082", 6860492},
 		AD_LISTEND},
-		Common::EN_ANY, Common::kPlatformDOS, ADGF_UNSTABLE, GUIO_RAMA },
+		Common::EN_ANY, Common::kPlatformDOS, ADGF_TESTING, GUIO_RAMA },
 
 	// RAMA - English DOS/Windows (from Quietust, in bug report #2850645)
 	{"rama", "", {
@@ -4067,7 +4067,7 @@ static const struct ADGameDescription SciGameDescriptions[] = {
 		{"resmap.003", 0, "48841e4b84ef1b98b48d43566fda9e13", 1636},
 		{"ressci.003", 0, "2a68edd064e5e4937b5e9c74b38f2082", 6870356},
 		AD_LISTEND},
-		Common::EN_ANY, Common::kPlatformDOS, ADGF_UNSTABLE, GUIO_RAMA },
+		Common::EN_ANY, Common::kPlatformDOS, ADGF_TESTING, GUIO_RAMA },
 
 	// RAMA - German DOS/Windows CD (from farmboy0, in gh-397)
 	{"rama", "", {
@@ -4078,7 +4078,7 @@ static const struct ADGameDescription SciGameDescriptions[] = {
 		{"resmap.003", 0, "222096000bd83a1d56577114a452cccf", 1636},
 		{"ressci.003", 0, "2a68edd064e5e4937b5e9c74b38f2082", 6954219},
 		AD_LISTEND},
-		Common::DE_DEU, Common::kPlatformDOS, ADGF_UNSTABLE, GUIO_RAMA },
+		Common::DE_DEU, Common::kPlatformDOS, ADGF_TESTING, GUIO_RAMA },
 
 	// RAMA - French DOS/Windows CD (from bgK)
 	// Executable scanning reports "3.000.000", VERSION file reports "1.000.000"
@@ -4090,14 +4090,14 @@ static const struct ADGameDescription SciGameDescriptions[] = {
 		{"resmap.003", 0, "fd2ce2312084e60b2cc5194a799873d0", 1636},
 		{"ressci.003", 0, "2a68edd064e5e4937b5e9c74b38f2082", 6379952},
 		AD_LISTEND},
-		Common::FR_FRA, Common::kPlatformDOS, ADGF_UNSTABLE, GUIO_RAMA },
+		Common::FR_FRA, Common::kPlatformDOS, ADGF_TESTING, GUIO_RAMA },
 
 	// RAMA - Italian DOS/Windows CD (from glorifindel)
 	{"rama", "", {
 		{"ressci.001", 0, "2a68edd064e5e4937b5e9c74b38f2082", 70611091},
 		{"resmap.001", 0, "70ba2ff04a2b7fb2c52420ba7fbd47c2", 8338},
 		AD_LISTEND},
-		Common::IT_ITA, Common::kPlatformDOS, ADGF_UNSTABLE, GUIO_RAMA },
+		Common::IT_ITA, Common::kPlatformDOS, ADGF_TESTING, GUIO_RAMA },
 
 #undef GUIO_RAMA_DEMO
 #undef GUIO_RAMA





More information about the Scummvm-git-logs mailing list