[Scummvm-cvs-logs] CVS: scummvm/bs2/driver d_draw.h,1.1,1.2 palette.cpp,1.4,1.5 palette.h,1.1,1.2

Jonathan Gray khalek at users.sourceforge.net
Thu Jul 31 07:52:02 CEST 2003


Update of /cvsroot/scummvm/scummvm/bs2/driver
In directory sc8-pr-cvs1:/tmp/cvs-serv1271/driver

Modified Files:
	d_draw.h palette.cpp palette.h 
Log Message:
slightly changed version of erik's implmentation of FadeServer

Index: d_draw.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/bs2/driver/d_draw.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- d_draw.h	28 Jul 2003 01:47:40 -0000	1.1
+++ d_draw.h	31 Jul 2003 14:51:02 -0000	1.2
@@ -69,6 +69,7 @@
 #endif
 
 //#include "ddraw.h"
+#include "driver96.h"
 
 //  Bits defining hardware and emulation capabilities.
 #define RDCAPS_BLTSTRETCH	1
@@ -80,7 +81,7 @@
 extern uint8 *lpBackBuffer;		// back surface
 extern uint8 *lpPrimarySurface;	// DirectDraw front buffer.
 extern uint8 *lpDD2;				// DirectDraw2 object
-extern BOOL						bFullScreen;		// Defines whether the app is running in full screen mode or not.
+extern BOOL bFullScreen;		// Defines whether the app is running in full screen mode or not.
 //extern DDCOLORKEY				blackColorKey;		// transparent pixel for color key blitting.
 extern uint8 blackColorKey;		// transparent pixel for color key blitting.
 extern int32					dxHalCaps;			// Hardware capabilities.

Index: palette.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/bs2/driver/palette.cpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- palette.cpp	28 Jul 2003 07:47:21 -0000	1.4
+++ palette.cpp	31 Jul 2003 14:51:02 -0000	1.5
@@ -151,11 +151,13 @@
 #include <stdio.h>
 //#include <mmsystem.h>
 
-//#include "ddraw.h"
 
-#include "stdafx.h"
-#include "driver96.h"
+#include "common/util.h"
+#include "common/engine.h"
 #include "d_draw.h"
+#include "driver96.h"
+#include "stdafx.h"
+#include "../sword2.h"
 
 #define PALTABLESIZE 64*64*64
 
@@ -350,7 +352,7 @@
 
 int32 DimPalette(void)
 {
-	warning("stub DimpPalette");
+	warning("stub DimPalette");
 /*
 	uint8 *p;
 	uint32 i;
@@ -407,10 +409,50 @@
 }
 
 
-void FadeServer(void)
+void FadeServer(void *)
 
 {
-	warning("stub FadeServer");
+	int32 currentTime;
+	int16 fadeMultiplier;
+	int16 i;
+
+	StackLock lock(g_sword2->_paletteMutex);
+	
+	switch (fadeStatus) {
+		case RDFADE_UP:
+			currentTime = SVM_timeGetTime();
+			if (currentTime >= fadeStartTime + fadeTotalTime) {
+				fadeStatus = RDFADE_NONE;
+				g_sword2->_syst->set_palette((const byte *) palCopy, 0, 256);
+			} else {
+				fadeMultiplier = (int16) (((int32) (currentTime - fadeStartTime) * 256) / fadeTotalTime);
+				for (i=0; i<256; i++) {
+					fadePalette[i][0] = (palCopy[i][0] * fadeMultiplier) >> 8;
+					fadePalette[i][1] = (palCopy[i][1] * fadeMultiplier) >> 8;
+					fadePalette[i][2] = (palCopy[i][2] * fadeMultiplier) >> 8;
+				}
+				g_sword2->_syst->set_palette((const byte *) fadePalette, 0, 256);
+			}
+			break;
+
+		case RDFADE_DOWN:
+			currentTime = SVM_timeGetTime();
+			if (currentTime >= fadeStartTime + fadeTotalTime) {
+				memset(fadePalette, 0, sizeof(fadePalette));
+				fadeStatus = RDFADE_BLACK;
+			} else {
+				fadeMultiplier = (int16) (((int32) (fadeTotalTime - (currentTime - fadeStartTime)) * 256) / fadeTotalTime);
+				for (i=0; i<256; i++) {
+					fadePalette[i][0] = (palCopy[i][0] * fadeMultiplier) >> 8;
+					fadePalette[i][1] = (palCopy[i][1] * fadeMultiplier) >> 8;
+					fadePalette[i][2] = (palCopy[i][2] * fadeMultiplier) >> 8;
+				}
+			}
+			g_sword2->_syst->set_palette((const byte *) fadePalette, 0, 256);
+			break;
+		}
+
+
 /*
 	int32 currentTime;
 	int16 fadeMultiplier;

Index: palette.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/bs2/driver/palette.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- palette.h	28 Jul 2003 01:47:41 -0000	1.1
+++ palette.h	31 Jul 2003 14:51:02 -0000	1.2
@@ -59,7 +59,7 @@
 extern uint8 paletteMatch[64*64*64];
 
 extern int32 RestorePalette(void);
-extern void FadeServer(void);
+extern void FadeServer(void *);
 
 
 #endif





More information about the Scummvm-git-logs mailing list