[Scummvm-cvs-logs] CVS: scummvm script_v1.cpp,1.33,1.34 scumm.h,1.48,1.49 sdl.cpp,1.31,1.32 windows.cpp,1.25,1.26

James Brown ender at users.sourceforge.net
Mon Feb 18 19:12:02 CET 2002


Update of /cvsroot/scummvm/scummvm
In directory usw-pr-cvs1:/tmp/cvs-serv28916

Modified Files:
	script_v1.cpp scumm.h sdl.cpp windows.cpp 
Log Message:
Voice support for loom talkie. Thanks Arisme.

Other ports will have to add a new 'cd_playtrack' function, lest there be compile errors.



Index: script_v1.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/script_v1.cpp,v
retrieving revision 1.33
retrieving revision 1.34
diff -C2 -d -r1.33 -r1.34
*** script_v1.cpp	16 Feb 2002 03:59:18 -0000	1.33
--- script_v1.cpp	19 Feb 2002 03:11:46 -0000	1.34
***************
*** 2434,2441 ****
  			string[textSlot].overhead = true;
  			break;
! 		case 8: /* ignore */
! 			getVarOrDirectWord(0x80);
! 			getVarOrDirectWord(0x40);
  			break;
  		case 15:
  			_messagePtr = _scriptPointer;
--- 2434,2445 ----
  			string[textSlot].overhead = true;
  			break;
!                 case 8: { /* play loom talkie sound - use in other games ? */
!                         int offset = getVarOrDirectWord(0x80);
!                         int delay = getVarOrDirectWord(0x40);
! 
!                         if (_gameId == GID_LOOM256) 
!                                 cd_playtrack(1, offset, delay);
  			break;
+                         }
  		case 15:
  			_messagePtr = _scriptPointer;

Index: scumm.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm.h,v
retrieving revision 1.48
retrieving revision 1.49
diff -C2 -d -r1.48 -r1.49
*** scumm.h	16 Feb 2002 19:03:14 -0000	1.48
--- scumm.h	19 Feb 2002 03:11:46 -0000	1.49
***************
*** 2265,2266 ****
--- 2265,2267 ----
  void setShakePos(Scumm *s, int shake_pos);
  uint16 newTag2Old(uint32 oldTag);
+ void cd_playtrack(int track, int offset, int delay);
\ No newline at end of file

Index: sdl.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sdl.cpp,v
retrieving revision 1.31
retrieving revision 1.32
diff -C2 -d -r1.31 -r1.32
*** sdl.cpp	12 Feb 2002 21:28:07 -0000	1.31
--- sdl.cpp	19 Feb 2002 03:11:46 -0000	1.32
***************
*** 38,41 ****
--- 38,42 ----
  
  static SDL_Surface *screen;
+ static SDL_CD      *cdrom;
  
  static int current_shake_pos;
***************
*** 463,466 ****
--- 464,472 ----
  }
  
+ void cd_playtrack(int track, int offset, int delay) {
+         SDL_CDStatus(cdrom);
+         SDL_CDPlayTracks(cdrom, track, (offset * 7.5) - 22650, 0, delay * 7.5);
+ }
+ 
  int music_thread(Scumm *s) {
  	int old_time, cur_time;
***************
*** 489,492 ****
--- 495,503 ----
  	    exit(1);
  	}
+ 
+     if (SDL_InitSubSystem(SDL_INIT_CDROM) == -1)
+         cdrom = NULL;
+     else
+         cdrom = SDL_CDOpen(0);
  
  	/* Clean up on exit */

Index: windows.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/windows.cpp,v
retrieving revision 1.25
retrieving revision 1.26
diff -C2 -d -r1.25 -r1.26
*** windows.cpp	17 Feb 2002 11:25:17 -0000	1.25
--- windows.cpp	19 Feb 2002 03:11:46 -0000	1.26
***************
*** 462,465 ****
--- 462,469 ----
  }
  
+ void cd_playtrack(int track, int offset, int delay) { // FIXME: Add for Win32
+ ;
+ }
+ 
  void WndMan::prepare_header(WAVEHDR *wh, int i) {
  	memset(wh, 0, sizeof(WAVEHDR));





More information about the Scummvm-git-logs mailing list