[Scummvm-cvs-logs] CVS: scummvm/sword2/driver d_sound.cpp,1.96,1.97 d_sound.h,1.40,1.41

Max Horn fingolfin at users.sourceforge.net
Sat Jan 3 11:13:04 CET 2004


Update of /cvsroot/scummvm/scummvm/sword2/driver
In directory sc8-pr-cvs1:/tmp/cvs-serv29759

Modified Files:
	d_sound.cpp d_sound.h 
Log Message:
cleanup

Index: d_sound.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sword2/driver/d_sound.cpp,v
retrieving revision 1.96
retrieving revision 1.97
diff -u -d -r1.96 -r1.97
--- d_sound.cpp	3 Jan 2004 19:02:18 -0000	1.96
+++ d_sound.cpp	3 Jan 2004 19:12:23 -0000	1.97
@@ -175,64 +175,58 @@
 }
 
 int MusicHandle::readBuffer(int16 *buffer, const int numSamples) {
+	assert(numSamples > 0);
 	int samples;
-	for (samples = 0; samples < numSamples && !endOfData(); samples++)
-		*buffer++ = read();
-	return samples;
-}
-
-int16 MusicHandle::read(void) {
-	uint8 in;
-	uint16 delta;
-	int16 out;
-
-	if (!_streaming)
-		return 0;
-
-	if (_firstTime) {
-		_lastSample = fpMus.readUint16LE();
-		_filePos += 2;
-		_firstTime = false;
-		return _lastSample;
-	}
 
 	// Assume the file handle has been correctly positioned already.
 
-	in = fpMus.readByte();
-	delta = GetCompressedAmplitude(in) << GetCompressedShift(in);
-
-	if (GetCompressedSign(in))
-		out = _lastSample - delta;
-	else
-		out = _lastSample + delta;
-
-	_filePos++;
-	_lastSample = out;
-
-	if (_looping) {
-		if (_filePos >= _fileEnd) {
-			_firstTime = true;
-			_filePos = _fileStart;
-			fpMus.seek(_filePos, SEEK_SET);
+	for (samples = 0; samples < numSamples && !endOfData(); samples++) {
+		int16 out;
+		if (_firstTime) {
+			_lastSample = fpMus.readUint16LE();
+			_filePos += 2;
+			_firstTime = false;
+			out = _lastSample;
+		} else {
+			uint8 in = fpMus.readByte();
+			uint16 delta = GetCompressedAmplitude(in) << GetCompressedShift(in);
+		
+			if (GetCompressedSign(in))
+				out = _lastSample - delta;
+			else
+				out = _lastSample + delta;
+		
+			_filePos++;
+			_lastSample = out;
+		
+			if (_looping) {
+				if (_filePos >= _fileEnd) {
+					_firstTime = true;
+					_filePos = _fileStart;
+					fpMus.seek(_filePos, SEEK_SET);
+				}
+			} else {
+				// Fade out at the end of the music, unless it already is.
+				if (_fileEnd - _filePos <= FADE_SAMPLES && _fading <= 0)
+					fadeDown();
+			}
+		
+			if (_fading > 0) {
+				if (--_fading == 0) {
+					_streaming = false;
+					_looping = false;
+				}
+				out = (out * _fading) / FADE_SAMPLES;
+			} else if (_fading < 0) {
+				_fading++;
+				out = (out * (FADE_SAMPLES + _fading)) / FADE_SAMPLES;
+			}
 		}
-	} else {
-		// Fade out at the end of the music, unless it already is.
-		if (_fileEnd - _filePos <= FADE_SAMPLES && _fading <= 0)
-			fadeDown();
-	}
 
-	if (_fading > 0) {
-		if (--_fading == 0) {
-			_streaming = false;
-			_looping = false;
-		}
-		out = (out * _fading) / FADE_SAMPLES;
-	} else if (_fading < 0) {
-		_fading++;
-		out = (out * (FADE_SAMPLES + _fading)) / FADE_SAMPLES;
+		*buffer++ = out;
 	}
 
-	return out;
+	return samples;
 }
 
 bool MusicHandle::endOfData(void) const {

Index: d_sound.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sword2/driver/d_sound.h,v
retrieving revision 1.40
retrieving revision 1.41
diff -u -d -r1.40 -r1.41
--- d_sound.h	3 Jan 2004 14:10:13 -0000	1.40
+++ d_sound.h	3 Jan 2004 19:12:23 -0000	1.41
@@ -63,8 +63,7 @@
 	void fadeUp(void);
 	int32 play(const char *filename, uint32 musicId, bool looping);
 	void stop(void);
-	virtual int readBuffer(int16 *buffer, const int numSamples);
-	int16 read(void);
+	int readBuffer(int16 *buffer, const int numSamples);
 	bool endOfData(void) const;
 	// This stream never 'ends'
 	bool endOfStream(void) const { return false; }





More information about the Scummvm-git-logs mailing list