[Scummvm-cvs-logs] CVS: scummvm/simon items.cpp,1.58,1.59 simon.cpp,1.184,1.185 simon.h,1.57,1.58 vga.cpp,1.39,1.40

Travis Howell kirben at users.sourceforge.net
Mon May 19 02:42:06 CEST 2003


Update of /cvsroot/scummvm/scummvm/simon
In directory sc8-pr-cvs1:/tmp/cvs-serv26328/simon

Modified Files:
	items.cpp simon.cpp simon.h vga.cpp 
Log Message:

Try and make some sense ot of simon 2 midi systems


Index: items.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/simon/items.cpp,v
retrieving revision 1.58
retrieving revision 1.59
diff -u -d -r1.58 -r1.59
--- items.cpp	18 May 2003 23:54:58 -0000	1.58
+++ items.cpp	19 May 2003 09:41:28 -0000	1.59
@@ -753,7 +753,7 @@
 				if (_debugMode)
 					warning("stopMidiMusic: not implemented");
 				_vc70_var2 = 0xFFFF;
-				_midi_unk1 = 0xFFFF;
+				_last_music_played = 0xFFFF;
 				_vc72_var1 = 0xFFFF;
 			}
 			break;
@@ -1441,27 +1441,24 @@
 		if (_debugMode)
 			warning("o_unk_127(%d,%d,%d) not implemented properly", a, b, c);
 
-		if (_midi_unk1 == a) {
-			if (b == _vc72_var1 || b == 999) {
+		if (_last_music_played == a) {
+			if (b == _vc72_var1 || b == 999) 
 				return;
-			}
+
 			if (_vc72_var1 != 0xFFFF || _vc72_var1 != 999)  {
 				_vc70_var2 = c;
 				_vc70_var1 = 0xffff;
 				_vc72_var3 = 0xffff;
-				_midi_unk2 = 0xffff;
-				if (_game & GF_WIN) {
-					// FIXME: What do we expect to happen at this moment?
-					// midi.initialize();
-					// midi.play();
-				}
+				_next_music_to_play = 0xffff;
+				if (!(_music_paused))
+					midi_play(b);
 				_vc72_var1 = b;
 			} else {
 				_vc72_var3 = b;
 				_vc72_var2 = c;
 			}
 		} else if (b == 999) {
-			_midi_unk2 = a;
+			_next_music_to_play = a;
 		}
 	} else {
 		if (a != _last_music_played) {

Index: simon.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/simon/simon.cpp,v
retrieving revision 1.184
retrieving revision 1.185
diff -u -d -r1.184 -r1.185
--- simon.cpp	19 May 2003 04:59:53 -0000	1.184
+++ simon.cpp	19 May 2003 09:41:28 -0000	1.185
@@ -5037,6 +5037,19 @@
 	return true;
 }
 
+void SimonState::midi_play(uint music) {
+	// FIXME What exactly should this function do?
+	if (music != 0) {
+		//_midi_cur_song_ptr = ((arg_0 & 0xFFFF) << 4) + midi_songs;
+		if (_vc72_var1 == 999)
+			//midi.initialize();
+
+		//_midi_var11 = 0;
+		//_midi_var12 = 1;
+	}
+}
+
+
 void SimonState::playMusic(uint music_unk, uint music) {
 	if (midi._midi_sfx_toggle)
 		return;
@@ -5049,11 +5062,11 @@
 		} else {
 			midi.playXMIDI (_game_file);
 		}
-		_midi_unk1 = music;
+		_last_music_played = music;
 		_vc72_var1 = music_unk;
 		_vc70_var1 = 0xFFFF;
 		_vc72_var3 = 0xFFFF;
-		_midi_unk2 = 0xFFFF;
+		_next_music_to_play = 0xFFFF;
 	} else { // Simon 1 music
 		if (_game & GF_AMIGAS) {
 			if (_game != GAME_SIMON1CD32) {

Index: simon.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/simon/simon.h,v
retrieving revision 1.57
retrieving revision 1.58
diff -u -d -r1.57 -r1.58
--- simon.h	10 May 2003 05:20:55 -0000	1.57
+++ simon.h	19 May 2003 09:41:28 -0000	1.58
@@ -192,7 +192,6 @@
 	int _x_scroll, _vga_var1, _vga_var2, _vga_var3, _vga_var5;
 	byte _vga_var8;
 
-	uint16 _midi_unk1, _midi_unk2;
 	uint16 _vc72_var1, _vc72_var2, _vc72_var3;
 	uint16 _vc70_var1, _vc70_var2;
 	byte *_vga_var7;
@@ -253,6 +252,7 @@
 
 	uint _midi_sfx;
 	uint _last_music_played;
+	uint _next_music_to_play;
 
 	bool _show_preposition;
 	bool _showmessage_flag;
@@ -762,6 +762,7 @@
 	void video_putchar_newline(FillOrCopyStruct *fcs);
 	void video_putchar_drawchar(FillOrCopyStruct *fcs, uint x, uint y, byte chr);
 
+	void midi_play(uint music);
 	void playMusic(uint music, uint music_unk);
 	void checkTimerCallback();
 	void delay(uint delay);

Index: vga.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/simon/vga.cpp,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -d -r1.39 -r1.40
--- vga.cpp	18 May 2003 23:55:30 -0000	1.39
+++ vga.cpp	19 May 2003 09:41:28 -0000	1.40
@@ -1692,9 +1692,8 @@
 
 	if (!_video_var_3) {
 		if (_game & GF_SIMON2) {
-			if (_midi_unk2 != 0xffff) {
-				playMusic(999, _midi_unk2);
-			}
+			if (_next_music_to_play != 0xffff)
+				playMusic(999, _next_music_to_play);
 		}
 	} else
 		_video_var_3 = true;
@@ -1813,11 +1812,7 @@
 
 	if (_vc72_var1 == 999) {
 		_vc70_var2 = b;
-		if (_game & GF_WIN) {
-			// FIXME: What do we expect to have happen here?
-			// midi.initialize();
-			// midi.play();
-		}
+		midi_play(a);
 		_vc72_var1 = b;
 	} else if (_vc72_var1 != 0xFFFF) {
 		if (_vc72_var1 != a) {





More information about the Scummvm-git-logs mailing list