[Scummvm-cvs-logs] scummvm master -> ce0f1b9c33a11c7cdc124fa68aab9febc5152992

csnover csnover at users.noreply.github.com
Wed Jul 27 15:53:16 CEST 2016


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

Summary:
bb0d5e00d0 SCI32: Handle remap data outside the game's remap range
20106fff7b SCI32: Fix backwards kFrameOut throttle timings
49eed5dd24 SCI32: Use extern instead of #include frameout.h for splitRects
272505fec1 SCI32: Re-enable the high resolution mode option for GK1
4dc3b046c3 SCI32: Fix kShowMovie calls crashing SCI32
631d22c4ac SCI32: Remove dead placeholder rendering code
ce0f1b9c33 SCI32: Give default skip color a name


Commit: bb0d5e00d03680becb349e9fa98e9eb6c83e4c04
    https://github.com/scummvm/scummvm/commit/bb0d5e00d03680becb349e9fa98e9eb6c83e4c04
Author: Colin Snover (github.com at zetafleet.com)
Date: 2016-07-27T08:49:33-05:00

Commit Message:
SCI32: Handle remap data outside the game's remap range

Changed paths:
    engines/sci/graphics/remap32.h



diff --git a/engines/sci/graphics/remap32.h b/engines/sci/graphics/remap32.h
index 5f629d7..1b9628c 100644
--- a/engines/sci/graphics/remap32.h
+++ b/engines/sci/graphics/remap32.h
@@ -325,7 +325,12 @@ public:
 	 */
 	inline bool remapEnabled(uint8 color) const {
 		const uint8 index = _remapEndColor - color;
-		assert(index < _remaps.size());
+		// At least KQ7 DOS uses remap colors that are outside the valid remap
+		// range; in these cases, just treat those pixels as skip pixels (which
+		// is how they would be treated in SSCI)
+		if (index >= _remaps.size()) {
+			return false;
+		}
 		return (_remaps[index]._type != kRemapNone);
 	}
 


Commit: 20106fff7b41d8f93270c8b5377a886fcfb854ec
    https://github.com/scummvm/scummvm/commit/20106fff7b41d8f93270c8b5377a886fcfb854ec
Author: Colin Snover (github.com at zetafleet.com)
Date: 2016-07-27T08:49:38-05:00

Commit Message:
SCI32: Fix backwards kFrameOut throttle timings

Changed paths:
    engines/sci/graphics/frameout.cpp



diff --git a/engines/sci/graphics/frameout.cpp b/engines/sci/graphics/frameout.cpp
index a7899b8..b5b3206 100644
--- a/engines/sci/graphics/frameout.cpp
+++ b/engines/sci/graphics/frameout.cpp
@@ -1609,10 +1609,10 @@ void GfxFrameout::throttle() {
 	if (_throttleFrameOut) {
 		uint8 throttleTime;
 		if (_throttleState == 2) {
-			throttleTime = 17;
+			throttleTime = 16;
 			_throttleState = 0;
 		} else {
-			throttleTime = 16;
+			throttleTime = 17;
 			++_throttleState;
 		}
 


Commit: 49eed5dd2439c93dcace3f2daf05a0d164e0792f
    https://github.com/scummvm/scummvm/commit/49eed5dd2439c93dcace3f2daf05a0d164e0792f
Author: Colin Snover (github.com at zetafleet.com)
Date: 2016-07-27T08:49:44-05:00

Commit Message:
SCI32: Use extern instead of #include frameout.h for splitRects

Changed paths:
    engines/sci/graphics/plane32.cpp



diff --git a/engines/sci/graphics/plane32.cpp b/engines/sci/graphics/plane32.cpp
index aa629e4..6b05b2d 100644
--- a/engines/sci/graphics/plane32.cpp
+++ b/engines/sci/graphics/plane32.cpp
@@ -247,6 +247,8 @@ void Plane::deleteAllPics() {
 #pragma mark -
 #pragma mark Plane - Rendering
 
+extern int splitRects(Common::Rect r, const Common::Rect &other, Common::Rect(&outRects)[4]);
+
 void Plane::breakDrawListByPlanes(DrawList &drawList, const PlaneList &planeList) const {
 	const int nextPlaneIndex = planeList.findIndexByObject(_object) + 1;
 	const PlaneList::size_type planeCount = planeList.size();


Commit: 272505fec1455c116486b6a2248a1821c7baf09c
    https://github.com/scummvm/scummvm/commit/272505fec1455c116486b6a2248a1821c7baf09c
Author: Colin Snover (github.com at zetafleet.com)
Date: 2016-07-27T08:49:51-05:00

Commit Message:
SCI32: Re-enable the high resolution mode option for GK1

Changed paths:
    engines/sci/detection_tables.h



diff --git a/engines/sci/detection_tables.h b/engines/sci/detection_tables.h
index b945b55..4b8ede3 100644
--- a/engines/sci/detection_tables.h
+++ b/engines/sci/detection_tables.h
@@ -734,8 +734,9 @@ static const struct ADGameDescription SciGameDescriptions[] = {
                               GAMEOPTION_PREFER_DIGITAL_SFX, \
                               GAMEOPTION_ORIGINAL_SAVELOAD, \
                               GAMEOPTION_FB01_MIDI)
-#define GUIO_GK1_CD     GUIO3(GAMEOPTION_PREFER_DIGITAL_SFX, \
+#define GUIO_GK1_CD     GUIO4(GAMEOPTION_PREFER_DIGITAL_SFX, \
                               GAMEOPTION_ORIGINAL_SAVELOAD, \
+                              GAMEOPTION_HIGH_RESOLUTION_GRAPHICS, \
                               GAMEOPTION_FB01_MIDI)
 #define GUIO_GK1_MAC    GUIO_GK1_FLOPPY
 


Commit: 4dc3b046c3c32487ffaaf7107959d9869d04680d
    https://github.com/scummvm/scummvm/commit/4dc3b046c3c32487ffaaf7107959d9869d04680d
Author: Colin Snover (github.com at zetafleet.com)
Date: 2016-07-27T08:49:56-05:00

Commit Message:
SCI32: Fix kShowMovie calls crashing SCI32

This will all be overhauled in the future but for now it is best
not to crash when playing AVI/SEQ files.

Changed paths:
    engines/sci/engine/kvideo.cpp



diff --git a/engines/sci/engine/kvideo.cpp b/engines/sci/engine/kvideo.cpp
index 1096e78..de4d4a2 100644
--- a/engines/sci/engine/kvideo.cpp
+++ b/engines/sci/engine/kvideo.cpp
@@ -230,7 +230,7 @@ reg_t kShowMovie(EngineState *s, int argc, reg_t *argv) {
 		// We also won't be copying the screen to the SCI screen...
 		if (g_system->getScreenFormat().bytesPerPixel != 1)
 			initGraphics(screenWidth, screenHeight, screenWidth > 320);
-		else {
+		else if (getSciVersion() < SCI_VERSION_2) {
 			g_sci->_gfxScreen->kernelSyncWithFramebuffer();
 			g_sci->_gfxPalette16->kernelSyncScreenPalette();
 		}


Commit: 631d22c4ac0796dee830d6e8738e41abb6cbbbd7
    https://github.com/scummvm/scummvm/commit/631d22c4ac0796dee830d6e8738e41abb6cbbbd7
Author: Colin Snover (github.com at zetafleet.com)
Date: 2016-07-27T08:50:03-05:00

Commit Message:
SCI32: Remove dead placeholder rendering code

Changed paths:
    engines/sci/graphics/celobj32.cpp



diff --git a/engines/sci/graphics/celobj32.cpp b/engines/sci/graphics/celobj32.cpp
index 48de054..a3dcbbb 100644
--- a/engines/sci/graphics/celobj32.cpp
+++ b/engines/sci/graphics/celobj32.cpp
@@ -685,10 +685,6 @@ void CelObj::render(Buffer &target, const Common::Rect &targetRect, const Common
 	}
 }
 
-void dummyFill(Buffer &target, const Common::Rect &targetRect) {
-	target.fillRect(targetRect, 250);
-}
-
 void CelObj::drawHzFlip(Buffer &target, const Common::Rect &targetRect, const Common::Point &scaledPosition) const {
 	render<MAPPER_NoMap, SCALER_NoScale<true, READER_Compressed> >(target, targetRect, scaledPosition);
 }


Commit: ce0f1b9c33a11c7cdc124fa68aab9febc5152992
    https://github.com/scummvm/scummvm/commit/ce0f1b9c33a11c7cdc124fa68aab9febc5152992
Author: Colin Snover (github.com at zetafleet.com)
Date: 2016-07-27T08:50:13-05:00

Commit Message:
SCI32: Give default skip color a name

Changed paths:
    engines/sci/graphics/paint32.cpp
    engines/sci/graphics/text32.h



diff --git a/engines/sci/graphics/paint32.cpp b/engines/sci/graphics/paint32.cpp
index 74eb162..7773b9f 100644
--- a/engines/sci/graphics/paint32.cpp
+++ b/engines/sci/graphics/paint32.cpp
@@ -117,7 +117,7 @@ void GfxPaint32::plotter(int x, int y, int color, void *data) {
 }
 
 BitmapResource GfxPaint32::makeLineBitmap(const Common::Point &startPoint, const Common::Point &endPoint, const int16 priority, const uint8 color, const LineStyle style, uint16 pattern, uint8 thickness, Common::Rect &outRect) {
-	const uint8 skipColor = color != 250 ? 250 : 0;
+	const uint8 skipColor = color != kDefaultSkipColor ? kDefaultSkipColor : 0;
 
 	// Thickness is expected to be 2n+1
 	thickness = ((MAX((uint8)1, thickness) - 1) | 1);
diff --git a/engines/sci/graphics/text32.h b/engines/sci/graphics/text32.h
index a61760d..f57433f 100644
--- a/engines/sci/graphics/text32.h
+++ b/engines/sci/graphics/text32.h
@@ -46,6 +46,10 @@ enum BitmapFlags {
 	kBitmapRemap = 2
 };
 
+enum {
+	kDefaultSkipColor = 250
+};
+
 #define BITMAP_PROPERTY(size, property, offset)\
 inline uint##size get##property() const {\
 	return READ_SCI11ENDIAN_UINT##size(_bitmap + (offset));\






More information about the Scummvm-git-logs mailing list