[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