[Scummvm-cvs-logs] SF.net SVN: scummvm:[39007] scummvm/trunk/engines/sci/sfx

fingolfin at users.sourceforge.net fingolfin at users.sourceforge.net
Sun Mar 1 07:02:26 CET 2009


Revision: 39007
          http://scummvm.svn.sourceforge.net/scummvm/?rev=39007&view=rev
Author:   fingolfin
Date:     2009-03-01 06:02:26 +0000 (Sun, 01 Mar 2009)

Log Message:
-----------
SCI: Removed some unused code from the SCI mixer

Modified Paths:
--------------
    scummvm/trunk/engines/sci/sfx/mixer.cpp
    scummvm/trunk/engines/sci/sfx/sfx_pcm.h

Modified: scummvm/trunk/engines/sci/sfx/mixer.cpp
===================================================================
--- scummvm/trunk/engines/sci/sfx/mixer.cpp	2009-03-01 06:02:17 UTC (rev 39006)
+++ scummvm/trunk/engines/sci/sfx/mixer.cpp	2009-03-01 06:02:26 UTC (rev 39007)
@@ -318,16 +318,9 @@
 	if (!P->writebuf)
 		P->writebuf = (byte*)sci_malloc(BUF_SIZE * frame_size + 4);
 
-	if (conf.stereo) {
-		if (conf.stereo == SFX_PCM_STEREO_RL) {
-			lchan = P->writebuf + ((use_16) ? 2 : 1);
-			rchan = P->writebuf;
-		} else {
-			lchan = P->writebuf;
-			rchan = P->writebuf + ((use_16) ? 2 : 1);
-		}
-	} else
-		lchan = P->writebuf;
+	lchan = P->writebuf;
+	if (conf.stereo)
+		rchan = P->writebuf + ((use_16) ? 2 : 1);
 
 
 	for (frame_i = 0; frame_i < outplen; frame_i++) {
@@ -347,17 +340,8 @@
 			right += bias;
 
 			if (use_16) {
-				if (SFX_PCM_FORMAT_LE == (conf.format & SFX_PCM_FORMAT_ENDIANNESS)) {
-					lchan[0] = left & 0xff;
-					lchan[1] = (left >> 8) & 0xff;
-					rchan[0] = right & 0xff;
-					rchan[1] = (right >> 8) & 0xff;
-				} else {
-					lchan[1] = left & 0xff;
-					lchan[0] = (left >> 8) & 0xff;
-					rchan[1] = right & 0xff;
-					rchan[0] = (right >> 8) & 0xff;
-				}
+				*(int16 *)lchan = left;
+				*(int16 *)rchan = right;
 
 				lchan += 4;
 				rchan += 4;
@@ -379,13 +363,7 @@
 			left += bias;
 
 			if (use_16) {
-				if (SFX_PCM_FORMAT_LE == (conf.format & SFX_PCM_FORMAT_ENDIANNESS)) {
-					lchan[0] = left & 0xff;
-					lchan[1] = (left >> 8) & 0xff;
-				} else {
-					lchan[1] = left & 0xff;
-					lchan[0] = (left >> 8) & 0xff;
-				}
+				*(int16 *)lchan = left;
 
 				lchan += 2;
 			} else {
@@ -510,33 +488,13 @@
 
 #define READ_NEW_VALUES() \
 		if (frames_left > 0) {						\
-			if (bias) { /* unsigned data */					\
-				if (!use_16) {						\
-					c_new.left = (*lsrc) << 8;			\
-					c_new.right = (*rsrc) << 8;			\
-				} else {						\
-					if (conf.format & SFX_PCM_FORMAT_LE) {		\
-						c_new.left = lsrc[0] | lsrc[1] << 8;	\
-						c_new.right = rsrc[0] | rsrc[1] << 8;	\
-					} else {					\
-						c_new.left = lsrc[1] | lsrc[0] << 8;	\
-						c_new.right = rsrc[1] | rsrc[0] << 8;	\
-					}						\
-				}							\
-			} else { /* signed data */							\
-				if (!use_16) {								\
-					c_new.left = (*((signed char *)lsrc)) << 8;			\
-					c_new.right = (*((signed char *)rsrc)) << 8;			\
-				} else {								\
-					if (conf.format & SFX_PCM_FORMAT_LE) {				\
-						c_new.left = lsrc[0] | ((signed char *)lsrc)[1] << 8;	\
-						c_new.right = rsrc[0] | ((signed char *)rsrc)[1] << 8;	\
-					} else {							\
-						c_new.left = lsrc[1] | ((signed char *)lsrc)[0] << 8;	\
-						c_new.right = rsrc[1] | ((signed char *)rsrc)[0] << 8;	\
-					}								\
-				}									\
-			}										\
+			if (!use_16) {						\
+				c_new.left = (*lsrc) << 8;			\
+				c_new.right = (*rsrc) << 8;			\
+			} else {								\
+				c_new.left = *((int16 *)lsrc);	\
+				c_new.right = *((int16 *)rsrc);	\
+			}									\
 										\
 			c_new.left -= bias;					\
 			c_new.right -= bias;					\
@@ -688,8 +646,6 @@
 
 	if (conf.stereo == SFX_PCM_STEREO_LR)
 		rsrc += (use_16) ? 2 : 1;
-	else if (conf.stereo == SFX_PCM_STEREO_RL)
-		lsrc += (use_16) ? 2 : 1;
 	/* Otherwise, we let both point to the same place */
 
 #if (DEBUG >= 2)

Modified: scummvm/trunk/engines/sci/sfx/sfx_pcm.h
===================================================================
--- scummvm/trunk/engines/sci/sfx/sfx_pcm.h	2009-03-01 06:02:17 UTC (rev 39006)
+++ scummvm/trunk/engines/sci/sfx/sfx_pcm.h	2009-03-01 06:02:26 UTC (rev 39007)
@@ -37,29 +37,14 @@
 
 /* The following are used internally by the mixer */
 #define SFX_PCM_FORMAT_LMASK 0x7
-#define SFX_PCM_FORMAT_BE 0
-#define SFX_PCM_FORMAT_LE 1
-#define SFX_PCM_FORMAT_ENDIANNESS 1
 #define SFX_PCM_FORMAT_8  0
 #define SFX_PCM_FORMAT_16 2
 
 
 /* Pick one of these formats (including the _NATIVE) ones for your PCM feed */
 #define SFX_PCM_FORMAT_U8     (0x0080 | SFX_PCM_FORMAT_8)			/* Unsigned (bias 128) 8 bit format */
-#define SFX_PCM_FORMAT_S8     (0x0000 | SFX_PCM_FORMAT_8)			/* Signed 8 bit format */
-#define SFX_PCM_FORMAT_U16_LE (0x8000 | SFX_PCM_FORMAT_16 | SFX_PCM_FORMAT_LE)	/* Unsigned (bias 32768) 16 bit LE format */
-#define SFX_PCM_FORMAT_S16_LE (0x0000 | SFX_PCM_FORMAT_16 | SFX_PCM_FORMAT_LE)	/* Signed 16 bit format, little endian */
-#define SFX_PCM_FORMAT_U16_BE (0x8000 | SFX_PCM_FORMAT_16 | SFX_PCM_FORMAT_BE)	/* Unsigned (bias 32768) 16 bit BE format */
-#define SFX_PCM_FORMAT_S16_BE (0x0000 | SFX_PCM_FORMAT_16 | SFX_PCM_FORMAT_BE)	/* Signed 16 bit format, big endian */
+#define SFX_PCM_FORMAT_S16_NATIVE (0x0000 | SFX_PCM_FORMAT_16)
 
-#ifdef SCUMM_BIG_ENDIAN
-#  define SFX_PCM_FORMAT_U16_NATIVE SFX_PCM_FORMAT_U16_BE
-#  define SFX_PCM_FORMAT_S16_NATIVE SFX_PCM_FORMAT_S16_BE
-#else
-#  define SFX_PCM_FORMAT_U16_NATIVE SFX_PCM_FORMAT_U16_LE
-#  define SFX_PCM_FORMAT_S16_NATIVE SFX_PCM_FORMAT_S16_LE
-#endif
-
 #define SFX_PCM_FRAME_SIZE(conf) ((conf).stereo? 2 : 1) * (((conf).format & SFX_PCM_FORMAT_16)? 2 : 1)
 
 


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list