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

thebluegr at users.sourceforge.net thebluegr at users.sourceforge.net
Mon Nov 16 00:39:55 CET 2009


Revision: 45934
          http://scummvm.svn.sourceforge.net/scummvm/?rev=45934&view=rev
Author:   thebluegr
Date:     2009-11-15 23:39:55 +0000 (Sun, 15 Nov 2009)

Log Message:
-----------
Some more work on music code

Modified Paths:
--------------
    scummvm/trunk/engines/sci/sfx/music.h
    scummvm/trunk/engines/sci/sfx/soundcmd.cpp
    scummvm/trunk/engines/sci/sfx/soundcmd.h

Modified: scummvm/trunk/engines/sci/sfx/music.h
===================================================================
--- scummvm/trunk/engines/sci/sfx/music.h	2009-11-15 23:26:47 UTC (rev 45933)
+++ scummvm/trunk/engines/sci/sfx/music.h	2009-11-15 23:39:55 UTC (rev 45934)
@@ -34,6 +34,7 @@
 #include "common/savefile.h"
 
 #include "sci/sci.h"
+#include "sci/resource.h"
 
 /*
  Sound drivers info: (from driver cmd0)
@@ -53,7 +54,7 @@
 typedef uint16 SCIHANDLE;
 typedef uint16 HEAPHANDLE;
 
-class SoundRes {
+class SoundRes : Resource {
 public:
 	enum kTrackType {
 		kTrackAdlib = 0,

Modified: scummvm/trunk/engines/sci/sfx/soundcmd.cpp
===================================================================
--- scummvm/trunk/engines/sci/sfx/soundcmd.cpp	2009-11-15 23:26:47 UTC (rev 45933)
+++ scummvm/trunk/engines/sci/sfx/soundcmd.cpp	2009-11-15 23:39:55 UTC (rev 45934)
@@ -262,22 +262,23 @@
 
 	if (!GET_SEL32V(_segMan, obj, nodePtr)) {
 		PUT_SEL32(_segMan, obj, nodePtr, obj);
-		_soundList.push_back(obj.toUint16());
+		_soundList.push_back(obj);
 	}
 
-	// TODO
-	/*
-	sciSound *pSnd = (sciSound *)heap2Ptr(hptr);
+	sciSound *pSnd = new sciSound();
 	pSnd->resnum = resnum;
 	pSnd->loop = (GET_SEL32V(_segMan, obj, loop) == 0xFFFF ? 1 : 0);
 	pSnd->prio = GET_SEL32V(_segMan, obj, pri) & 0xFF; // priority
 	pSnd->volume = GET_SEL32V(_segMan, obj, vol) & 0xFF; // volume
 	pSnd->signal = pSnd->dataInc = 0;
+	pSnd->pMidiParser = 0;
+	pSnd->pStreamAud = 0;
 
 	_music->soundKill(pSnd);
-	if (res)
-		_music->soundInitSnd(res, pSnd);
-	*/
+	if (res) {
+		SoundRes *sndRes = (SoundRes *)res;
+		_music->soundInitSnd(sndRes, pSnd);
+	}
 #endif
 }
 

Modified: scummvm/trunk/engines/sci/sfx/soundcmd.h
===================================================================
--- scummvm/trunk/engines/sci/sfx/soundcmd.h	2009-11-15 23:26:47 UTC (rev 45933)
+++ scummvm/trunk/engines/sci/sfx/soundcmd.h	2009-11-15 23:39:55 UTC (rev 45934)
@@ -60,7 +60,7 @@
 	reg_t _acc;
 	int _midiCmd, _controller, _param;
 
-	Common::List<uint16> _soundList;
+	Common::List<reg_t> _soundList;
 
 	void cmdInitHandle(reg_t obj, SongHandle handle, int value);
 	void cmdPlayHandle(reg_t obj, SongHandle handle, int value);


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