[Scummvm-git-logs] scummvm branch-2-8 -> 4bd4e7ec8f9f0afbf79d3d21e743016eb644d28a

sev- noreply at scummvm.org
Fri Mar 15 22:31:12 UTC 2024


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

Summary:
8e5bb394b3 I18N: Regenerate translations.dat
2efb1bf71c NEWS: Set 2.8.1 release date
c361f33d9c PLUMBERS: Fix graphics initialization for WIndows version
b8eb3c4b99 PLUMBERS: Use more conventional pixel format for 3DO version
4bd4e7ec8f Revert "PLUMBERS: Mark Windows release as unstable since it is broken after the 3DO code was added"


Commit: 8e5bb394b3bc8d368f8b4bd286179f6d25ce61b1
    https://github.com/scummvm/scummvm/commit/8e5bb394b3bc8d368f8b4bd286179f6d25ce61b1
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2024-03-15T21:15:15+01:00

Commit Message:
I18N: Regenerate translations.dat

Changed paths:
    gui/themes/translations.dat


diff --git a/gui/themes/translations.dat b/gui/themes/translations.dat
index 17fae1c1ea7..6f91e2a4adf 100644
Binary files a/gui/themes/translations.dat and b/gui/themes/translations.dat differ


Commit: 2efb1bf71c729db44ef91997338fe0e11d7724a5
    https://github.com/scummvm/scummvm/commit/2efb1bf71c729db44ef91997338fe0e11d7724a5
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2024-03-15T21:18:19+01:00

Commit Message:
NEWS: Set 2.8.1 release date

Changed paths:
    NEWS.md


diff --git a/NEWS.md b/NEWS.md
index ca78731ebff..9e85d334bc8 100644
--- a/NEWS.md
+++ b/NEWS.md
@@ -1,7 +1,7 @@
 For a more comprehensive changelog of the latest experimental code, see:
         https://github.com/scummvm/scummvm/commits/
 
-#### 2.8.1 (????-??-??)
+#### 2.8.1 (2024-03-31)
 
  General:
    - Fixed GLSL version parsing on some OpenGL ES2 platforms.


Commit: c361f33d9c36e8a05635a879b8c21c4ce6ce1bae
    https://github.com/scummvm/scummvm/commit/c361f33d9c36e8a05635a879b8c21c4ce6ce1bae
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2024-03-15T23:29:31+01:00

Commit Message:
PLUMBERS: Fix graphics initialization for WIndows version

Changed paths:
    engines/plumbers/windows.cpp


diff --git a/engines/plumbers/windows.cpp b/engines/plumbers/windows.cpp
index 2882fc6e957..6e42e3f65a7 100644
--- a/engines/plumbers/windows.cpp
+++ b/engines/plumbers/windows.cpp
@@ -65,9 +65,9 @@ void PlumbersGameWindows::startGraphics() {
 
 	Graphics::ModeWithFormatList modes = {
 		// First try for a 640x480 mode
-		Graphics::ModeWithFormat(640, 480),
+		Graphics::ModeWithFormat(640, 480, Graphics::PixelFormat::createFormatCLUT8()),
 		// System doesn't support it, so fall back on 320x240 mode
-		Graphics::ModeWithFormat(320, 240),
+		Graphics::ModeWithFormat(320, 240, Graphics::PixelFormat::createFormatCLUT8()),
 	};
 
 	int modeIdx = initGraphicsAny(modes);


Commit: b8eb3c4b99dff358f94574688c174b565f4dc0b5
    https://github.com/scummvm/scummvm/commit/b8eb3c4b99dff358f94574688c174b565f4dc0b5
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2024-03-15T23:29:57+01:00

Commit Message:
PLUMBERS: Use more conventional pixel format for 3DO version

Also, convert the 3DO format to target format

Changed paths:
    engines/plumbers/3do.cpp
    engines/plumbers/plumbers.h


diff --git a/engines/plumbers/3do.cpp b/engines/plumbers/3do.cpp
index f83a406c5ff..eea01114526 100644
--- a/engines/plumbers/3do.cpp
+++ b/engines/plumbers/3do.cpp
@@ -396,7 +396,7 @@ void PlumbersGame3DO::loadMikeDecision(const Common::String &dirname, const Comm
 	Common::String baseName = dirname + "/" + baseFilename;
 	debugC(1, kDebugGeneral, "%s : %s", __FUNCTION__, baseName.c_str());
 	Graphics::Surface *surf = new Graphics::Surface();
-	surf->create(_screenW, _screenH, Graphics::PixelFormat(2, 5, 5, 5, 1, 10,  5,  0, 15));
+	surf->create(_screenW, _screenH, _targetFormat);
 
 	delete _compositeSurface;
 	_compositeSurface = nullptr;
@@ -410,17 +410,26 @@ void PlumbersGame3DO::loadMikeDecision(const Common::String &dirname, const Comm
 			error("unable to load image %s", nameP.c_str());
 
 		_image->loadStream(fileP);
-		surf->copyRectToSurface(*_image->getSurface(), p.x, p.y,
+		Graphics::Surface *conv = _image->getSurface()->convertTo(_targetFormat);
+		surf->copyRectToSurface(*conv, p.x, p.y,
 					Common::Rect(0, 0, sz.x, sz.y));
 
+		conv->free();
+		delete conv;
+
 		Common::File fileW;
 		Common::String nameW = Common::String::format("%s%dW.CEL", baseName.c_str(), i + 1);
 		if (!fileW.open(nameW))
 			error("unable to load image %s", nameW.c_str());
 
 		_image->loadStream(fileW);
-		surf->copyRectToSurface(*_image->getSurface(), p.x + sz.x, p.y,
+		conv = _image->getSurface()->convertTo(_targetFormat);
+		surf->copyRectToSurface(*conv, p.x + sz.x, p.y,
 					Common::Rect(0, 0, sz.x, sz.y));
+
+		conv->free();
+		delete conv;
+
 	}
 
 	_compositeSurface = surf;
@@ -433,6 +442,7 @@ void PlumbersGame3DO::loadMikeDecision(const Common::String &dirname, const Comm
 void PlumbersGame3DO::postSceneBitmaps() {
 	if (_scenes[_curSceneIdx]._style == Scene::STYLE_VIDEO) {
 		_videoDecoder = new Video::ThreeDOMovieDecoder();
+		_videoDecoder->setOutputPixelFormat(_targetFormat);
 		_curChoice = 0;
 		if (!_videoDecoder->loadFile(_scenes[_curSceneIdx]._sceneName)) {
 			_actions.push(ChangeScene);
@@ -447,7 +457,7 @@ void PlumbersGame3DO::postSceneBitmaps() {
 		_actions.push(ChangeScene);
 		return;
 	}
-	
+
 	_showScoreFl = true;
 	_leftButtonDownFl = true;
 	_setDurationFl = false;
@@ -479,29 +489,35 @@ void PlumbersGame3DO::startGraphics() {
 	_ctrlHelpImage = new Image::Cel3DODecoder();
 	_screenW = 320;
 	_screenH = 240;
-	Graphics::PixelFormat pf(2, 5, 5, 5, 1, 10,  5,  0, 15);
-	initGraphics(_screenW, _screenH, &pf);
+	_targetFormat = Graphics::PixelFormat(2, 5, 6, 5, 0, 11, 5, 0, 0);
+
+	initGraphics(_screenW, _screenH, &_targetFormat);
 }
 
 void PlumbersGame3DO::blitImage(Graphics::Surface *screen) {
 	const Graphics::Surface *surface;
 	bool ctrlHelp = false;
+	bool needConv = false;
+
 	if (_leftShoulderPressed && _leftButtonDownFl && _ctrlHelpImage) {
 		surface = _ctrlHelpImage->getSurface();
 		ctrlHelp = true;
+		needConv = true;
 	} else if (_videoDecoder)
 		surface = _videoDecoder->decodeNextFrame();
 	else if (_compositeSurface)
 		surface = _compositeSurface;
-	else
+	else {
 		surface = _image->getSurface();
+		needConv = true;
+	}
 
 	Graphics::Surface modSurf;
 	bool modded = false;
+	Graphics::Surface *conv = nullptr;
 
 	if (_hiLite >= 0 && _leftButtonDownFl && !ctrlHelp) {
-		Graphics::PixelFormat pf(2, 5, 5, 5, 1, 10,  5,  0, 15);
-		modSurf.create(surface->w, surface->h, pf);
+		modSurf.create(surface->w, surface->h, _targetFormat);
 		modSurf.copyRectToSurface(*surface, 0, 0, Common::Rect(0, 0, surface->w, surface->h));
 		const Common::Rect rec = _scenes[_curSceneIdx]._choices[_hiLite]._region;
 
@@ -512,17 +528,25 @@ void PlumbersGame3DO::blitImage(Graphics::Surface *screen) {
 				r = (*p >> 10) & 0x1f;
 				g = (*p >> 5) & 0x1f;
 				b = (*p >> 0) & 0x1f;
+
 				// TODO: figure out the correct multipliers
-				r = MIN<int>(3 * r / 2, 0x1f);
-				g = MIN<int>(3 * g / 2, 0x1f);
-				b = MIN<int>(3 * b / 2, 0x1f);
-				*p = (*p & 0x8000) | (r << 10) | (g << 5) | (b);
+				*p = _targetFormat.RGBToColor(3 * r / 2, 3 * g / 2, 3 * b / 2);
 			}
 		}
 		modded = true;
 	}
 
+	if (needConv) {
+		conv = surface->convertTo(_targetFormat);
+		surface = conv;
+	}
+
 	blitImageSurface(screen, modded ? &modSurf : surface);
+
+	if (needConv) {
+		conv->free();
+		delete conv;
+	}
 }
 
 void PlumbersGame3DO::skipVideo() {
diff --git a/engines/plumbers/plumbers.h b/engines/plumbers/plumbers.h
index 787390449ed..3578c447612 100644
--- a/engines/plumbers/plumbers.h
+++ b/engines/plumbers/plumbers.h
@@ -113,6 +113,8 @@ protected:
 	int	 _totScene;
 	long _totScore;
 
+	Graphics::PixelFormat _targetFormat;
+
 	Image::ImageDecoder *_image;
 	Console *_console;
 	Video::VideoDecoder *_videoDecoder;


Commit: 4bd4e7ec8f9f0afbf79d3d21e743016eb644d28a
    https://github.com/scummvm/scummvm/commit/4bd4e7ec8f9f0afbf79d3d21e743016eb644d28a
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2024-03-15T23:30:48+01:00

Commit Message:
Revert "PLUMBERS: Mark Windows release as unstable since it is broken after the 3DO code was added"

This reverts commit 24e4ad565b0f3ca6cb3afb07c5ac38b4234020ca.

Changed paths:
    engines/plumbers/detection.cpp


diff --git a/engines/plumbers/detection.cpp b/engines/plumbers/detection.cpp
index c4acc755827..844494eebec 100644
--- a/engines/plumbers/detection.cpp
+++ b/engines/plumbers/detection.cpp
@@ -46,7 +46,7 @@ static const ADGameDescription gameDescriptions[] = {
 		AD_ENTRY1s("GAME.BIN", "02c965b11e952ce1ee83019576f5aef5", 41622),
 		Common::EN_ANY,
 		Common::kPlatformWindows,
-		ADGF_UNSTABLE,
+		ADGF_NO_FLAGS,
 		GUIO1(GUIO_NOMIDI)
 	},
 




More information about the Scummvm-git-logs mailing list