rest of solution to bug #344
authorBradley Bell <btb@icculus.org>
Fri, 21 Feb 2003 05:05:41 +0000 (05:05 +0000)
committerBradley Bell <btb@icculus.org>
Fri, 21 Feb 2003 05:05:41 +0000 (05:05 +0000)
ChangeLog
arch/sdl/digi.c
main/kludge.c

index 211cbed..a9bc6f6 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,6 @@
 2003-02-20  Bradley Bell <btb@icculus.org>
 
+       * arch/sdl/digi.c, main/kludge.c: rest of solution to bug #344
        * arch/sdl/timer.c, include/timer.h: revert to more accurate
        timers
        * main/kludge.c: partial solution to bug #344
index 1e7f0bd..5e708b9 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: digi.c,v 1.5 2003-01-15 02:42:41 btb Exp $ */
+/* $Id: digi.c,v 1.6 2003-02-21 05:05:41 btb Exp $ */
 /*
  *
  * SDL digital audio support
@@ -301,7 +301,7 @@ static int get_free_slot()
  return -1;
 }
 
-int digi_start_sound(int soundnum, fix volume, fix pan, int unknown1, int unknown2, int unknown3, int unknown4)
+int digi_start_sound(int soundnum, fix volume, fix pan, int looping, int loop_start, int loop_end, int soundobj)
 {
  int ntries;
  int slot;
@@ -339,7 +339,7 @@ TryNextChannel:
  SoundSlots[slot].volume = fixmul(digi_volume, volume);
  SoundSlots[slot].pan = pan;
  SoundSlots[slot].position = 0;
- SoundSlots[slot].looped = 0;
+ SoundSlots[slot].looped = looping;
  SoundSlots[slot].playing = 1;
 
  //added on 980905 by adb to add sound kill system from original sos digi.c
@@ -836,6 +836,12 @@ int digi_get_max_channels() {
 }
 // end edit by adb
 
+void digi_stop_sound(int channel)
+{
+       //FIXME: Is this correct?  I dunno, it works.
+       SoundSlots[channel].playing=0;
+}
+
 void digi_reset_digi_sounds() {
  int i;
 
index 6fdd083..3fa6311 100644 (file)
@@ -116,11 +116,6 @@ int digi_link_sound_to_object3( int org_soundnum, short objnum, int forever, fix
        return digi_link_sound_to_object2(org_soundnum, objnum, forever, max_volume, max_distance);
 }
 
-void digi_stop_sound(int channel)
-{
-
-}
-
 void digi_stop_digi_sounds(void)
 {