[Scummvm-cvs-logs] CVS: scummvm/simon simon.cpp,1.416,1.417 simon.h,1.122,1.123 vga.cpp,1.112,1.113

Travis Howell kirben at users.sourceforge.net
Fri Jan 30 19:58:43 CET 2004


Update of /cvsroot/scummvm/scummvm/simon
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28625/simon

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

Add better work around for inventory arrows issue in some Simon1 versions.
Remove seom debugging output.


Index: simon.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/simon/simon.cpp,v
retrieving revision 1.416
retrieving revision 1.417
diff -u -d -r1.416 -r1.417
--- simon.cpp	27 Jan 2004 16:28:38 -0000	1.416
+++ simon.cpp	30 Jan 2004 03:26:45 -0000	1.417
@@ -362,7 +362,6 @@
 	_vga_var5 = 0;
 	_vga_var7 = 0;
 	_vga_var8 = 0;
-	_keep_arrows = 0;
 
 	_script_cond_a = 0;
 	_script_cond_b = 0;
@@ -1765,8 +1764,6 @@
 		ha->unk3 = 1;
 
 		// Simon1 specific
-		if (!(_game & GF_WIN))
-			_keep_arrows = 1;
 		o_kill_sprite_simon1(0x80);
 		start_vga_code(0, 1, 0x80, 0, 0, 0xE);
 	} else {
@@ -3001,9 +2998,6 @@
 	if (_video_var_9 == 2)
 		_video_var_9 = 1;
 
-	if (_continous_vgascript)
-		fprintf(_dump_file, "***\n");
-
 	if (_game & GF_SIMON2 && _vga_var3) {
 		timer_vga_sprites_helper();
 	}
@@ -3109,8 +3103,6 @@
 		vsp++;
 	}
 
-	fprintf(_dump_file, "***\n");
-
 	_video_var_8++;
 	_vc_ptr = vc_ptr_org;
 }
@@ -3385,8 +3377,7 @@
 
 // ok
 void SimonEngine::fcs_unk_5(FillOrCopyStruct *fcs, uint fcs_index) {
-	if (_game & GF_WIN)
-		o_kill_sprite_simon1(0x80);
+	o_kill_sprite_simon1(0x80);
 }
 
 void SimonEngine::delete_hitarea_by_index(uint index) {

Index: simon.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/simon/simon.h,v
retrieving revision 1.122
retrieving revision 1.123
diff -u -d -r1.122 -r1.123
--- simon.h	27 Jan 2004 16:28:39 -0000	1.122
+++ simon.h	30 Jan 2004 03:26:47 -0000	1.123
@@ -266,7 +266,6 @@
 	bool _exit_cutscene;
 	bool _skip_speech;
 	byte _video_var_9;
-	bool _keep_arrows;
 
 	uint _sound_file_id;
 	int16 _last_music_played;

Index: vga.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/simon/vga.cpp,v
retrieving revision 1.112
retrieving revision 1.113
diff -u -d -r1.112 -r1.113
--- vga.cpp	27 Jan 2004 13:33:21 -0000	1.112
+++ vga.cpp	30 Jan 2004 03:26:47 -0000	1.113
@@ -1009,6 +1009,7 @@
 }
 
 void SimonEngine::vc_12_delay() {
+	VgaSprite *vsp = find_cur_sprite();
 	uint num;
 
 	if (!(_game & GF_SIMON2)) {
@@ -1017,10 +1018,14 @@
 		num = vc_read_next_byte() * _vga_base_delay;
 	}
 
-	if (_continous_vgascript)
-		fprintf(_dump_file, "; sleep_ex = %d\n", num + VGA_DELAY_BASE);
+	// Work around to allow inventory arrows to be
+	// shown in some versions of Simon the Sorcerer 1
+	if (!(_game & GF_SIMON2) && !(_game & GF_WIN) && vsp->id == 0x80)
+		num = 0;
+	else
+		num += VGA_DELAY_BASE;
 
-	add_vga_timer(num + VGA_DELAY_BASE, _vc_ptr, _vga_cur_sprite_id, _vga_cur_file_id);
+	add_vga_timer(num, _vc_ptr, _vga_cur_sprite_id, _vga_cur_file_id);
 	_vc_ptr = (byte *)&vc_get_out_of_code;
 }
 
@@ -1202,13 +1207,6 @@
 
 void SimonEngine::vc_25_halt_sprite() {
 	VgaSprite *vsp = find_cur_sprite();
-	// Work around to allow inventory arrows to be
-	// showned in some versions of Simon the Sorcerer 1
-	if (vsp->id == 0x80 && _keep_arrows) {
-		_keep_arrows = 0;
-		return;
-	}
-
 	while (vsp->id != 0) {
 		memcpy(vsp, vsp + 1, sizeof(VgaSprite));
 		vsp++;
@@ -1597,9 +1595,6 @@
 	if (_game & GF_SIMON2) {
 		uint num = vc_read_var_or_word() * _vga_base_delay;
 
-		if (_continous_vgascript)
-			fprintf(_dump_file, "; sleep_ex = %d\n", num + VGA_DELAY_BASE);
-
 		add_vga_timer(num + VGA_DELAY_BASE, _vc_ptr, _vga_cur_sprite_id, _vga_cur_file_id);
 		_vc_ptr = (byte *)&vc_get_out_of_code;
 	}





More information about the Scummvm-git-logs mailing list