rnd-19981204-1
[rocksndiamonds.git] / src / sound.h
index 213cd746739b02abc5c368a338fac99f1aa5f43d..2c747bd859788cd3d16f13ac5d3b759e5a1dc3e8 100644 (file)
@@ -1,13 +1,12 @@
 /***********************************************************
 *  Rocks'n'Diamonds -- McDuffin Strikes Back!              *
 *----------------------------------------------------------*
-*  ©1995 Artsoft Development                               *
-*        Holger Schemel                                    *
-*        33659 Bielefeld-Senne                             *
-*        Telefon: (0521) 493245                            *
-*        eMail: aeglos@valinor.owl.de                      *
-*               aeglos@uni-paderborn.de                    *
-*               q99492@pbhrzx.uni-paderborn.de             *
+*  (c) 1995-98 Artsoft Entertainment                       *
+*              Holger Schemel                              *
+*              Oststrasse 11a                              *
+*              33604 Bielefeld                             *
+*              phone: ++49 +521 290471                     *
+*              email: aeglos@valinor.owl.de                *
 *----------------------------------------------------------*
 *  sound.c                                                 *
 ***********************************************************/
@@ -15,8 +14,8 @@
 #ifndef SOUND_H
 #define SOUND_H
 
-#include "main.h"
 #include <math.h>
+#include "main.h"
 
 #ifdef linux
 #include <linux/soundcard.h>
@@ -80,9 +79,6 @@ extern void ioctl(long, long, void *);
 #define SSND_STOPPING(x)       (x & (SSND_STOP_SOUND | SSND_STOP_ALL_SOUNDS))
 #define SSND_ALL(x)            (x&(SSND_FADE_ALL_SOUNDS|SSND_STOP_ALL_SOUNDS))
 
-#define        TRUE    1
-#define FALSE  0
-
 /* settings for sound path, sound device, etc. */
 #ifndef SND_PATH
 #define SND_PATH       "./sounds"
@@ -123,11 +119,21 @@ struct SoundHeader_8SVX
   char magic_8SVX[4];
 };
 
+struct SoundHeader_WAV
+{
+  char magic_RIFF[4];
+  unsigned long header_size;
+  char magic_WAVE[4];
+  char some_stuff[24];
+  char magic_DATA[4];
+  unsigned long data_size;
+};
+
 struct SoundInfo
 { 
-  unsigned char *name;
-  unsigned char *file_ptr;
-  char *data_ptr;
+  char *name;
+  byte *file_ptr;
+  byte *data_ptr;
   long file_len, data_len;
 #ifdef MSDOS
   SAMPLE *sample_ptr;
@@ -139,15 +145,15 @@ struct SoundControl
   int nr;
   int volume;
   int stereo;
-  BOOL active;
-  BOOL loop;
-  BOOL fade_sound;
-  BOOL stop_sound;
-  BOOL stop_all_sounds;
+  boolean active;
+  boolean loop;
+  boolean fade_sound;
+  boolean stop_sound;
+  boolean stop_all_sounds;
   int playingtime;
   long playingpos;
   long data_len;
-  char *data_ptr;
+  byte *data_ptr;
 #ifdef MSDOS
   int voice;
 #endif
@@ -163,11 +169,11 @@ unsigned char linear_to_ulaw(int);
 int ulaw_to_linear(unsigned char);
 
 /* application functions */
-BOOL LoadSound(struct SoundInfo *);
+boolean LoadSound(struct SoundInfo *);
 void PlaySound(int);
 void PlaySoundStereo(int, int);
 void PlaySoundLoop(int);
-void PlaySoundExt(int, int, int, BOOL);
+void PlaySoundExt(int, int, int, boolean);
 void FadeSound(int);
 void FadeSounds(void);
 void StopSound(int);