-/***********************************************************
-* Artsoft Retro-Game Library *
-*----------------------------------------------------------*
-* (c) 1994-2002 Artsoft Entertainment *
-* Holger Schemel *
-* Detmolder Strasse 189 *
-* 33604 Bielefeld *
-* Germany *
-* e-mail: info@artsoft.org *
-*----------------------------------------------------------*
-* sound.h *
-***********************************************************/
+// ============================================================================
+// Artsoft Retro-Game Library
+// ----------------------------------------------------------------------------
+// (c) 1995-2014 by Artsoft Entertainment
+// Holger Schemel
+// info@artsoft.org
+// https://www.artsoft.org/
+// ----------------------------------------------------------------------------
+// sound.h
+// ============================================================================
-#if defined(PLATFORM_UNIX) && !defined(TARGET_SDL)
-#define AUDIO_UNIX_NATIVE
-#endif
-
-#if defined(PLATFORM_LINUX) || defined(PLATFORM_FREEBSD) || defined(VOXWARE)
-#define AUDIO_LINUX_IOCTL
-#endif
-
-#if defined(AUDIO_LINUX_IOCTL) || defined(PLATFORM_NETBSD)
-#define AUDIO_STREAMING_DSP
-#endif
-
-/* values for platform specific sound initialization */
-#define AUDIO_SAMPLE_RATE_8000 8000
+// values for platform specific sound initialization
-#if defined(AUDIO_UNIX_NATIVE) && !defined(AUDIO_STREAMING_DSP)
-#define DEFAULT_AUDIO_SAMPLE_RATE AUDIO_SAMPLE_RATE_8000
-#else
-#define DEFAULT_AUDIO_SAMPLE_RATE AUDIO_SAMPLE_RATE_22050
-#endif
+#define DEFAULT_AUDIO_SAMPLE_RATE AUDIO_SAMPLE_RATE_44100
#define DEFAULT_AUDIO_FRAGMENT_SIZE AUDIO_FRAGMENT_SIZE_1024
#else
#define DEFAULT_AUDIO_FRAGMENT_SIZE AUDIO_FRAGMENT_SIZE_512
#endif
#define DEFAULT_AUDIO_FRAGMENT_SIZE AUDIO_FRAGMENT_SIZE_1024
#else
#define DEFAULT_AUDIO_FRAGMENT_SIZE AUDIO_FRAGMENT_SIZE_512
#endif
#define SND_CTRL_NONE (0)
#define SND_CTRL_MUSIC (1 << 0)
#define SND_CTRL_LOOP (1 << 1)
#define SND_CTRL_NONE (0)
#define SND_CTRL_MUSIC (1 << 0)
#define SND_CTRL_LOOP (1 << 1)
#define SND_CTRL_ALL_SOUNDS (1 << 4)
#define SND_CTRL_RELOAD_SOUNDS (1 << 5)
#define SND_CTRL_RELOAD_MUSIC (1 << 6)
#define SND_CTRL_ALL_SOUNDS (1 << 4)
#define SND_CTRL_RELOAD_SOUNDS (1 << 5)
#define SND_CTRL_RELOAD_MUSIC (1 << 6)
#define SND_CTRL_FADE_SOUND (SND_CTRL_FADE)
#define SND_CTRL_FADE_MUSIC (SND_CTRL_FADE | SND_CTRL_MUSIC)
#define SND_CTRL_FADE_SOUND (SND_CTRL_FADE)
#define SND_CTRL_FADE_MUSIC (SND_CTRL_FADE | SND_CTRL_MUSIC)
#define IS_RELOADING(x) ((x).state & (SND_CTRL_RELOAD_SOUNDS |\
SND_CTRL_RELOAD_MUSIC))
#define ALL_SOUNDS(x) ((x).state & SND_CTRL_ALL_SOUNDS)
#define IS_RELOADING(x) ((x).state & (SND_CTRL_RELOAD_SOUNDS |\
SND_CTRL_RELOAD_MUSIC))
#define ALL_SOUNDS(x) ((x).state & SND_CTRL_ALL_SOUNDS)
#define MAP_NOCONF_MUSIC(x) (-((x) + 1))
#define UNMAP_NOCONF_MUSIC(x) MAP_NOCONF_MUSIC(x)
#define SOUND_MIN_VOLUME 0
#define MAP_NOCONF_MUSIC(x) (-((x) + 1))
#define UNMAP_NOCONF_MUSIC(x) MAP_NOCONF_MUSIC(x)
#define SOUND_MIN_VOLUME 0
void PlaySound(int);
void PlaySoundStereo(int, int);
void PlaySoundLoop(int);
void PlaySoundMusic(int);
void PlaySound(int);
void PlaySoundStereo(int, int);
void PlaySoundLoop(int);
void PlaySoundMusic(int);
void PlaySoundExt(int, int, int, int);
void FadeMusic(void);
void FadeSound(int);
void PlaySoundExt(int, int, int, int);
void FadeMusic(void);
void FadeSound(int);
-int getSoundListPropertyMappingSize();
-int getMusicListPropertyMappingSize();
-struct PropertyMapping *getSoundListPropertyMapping();
-struct PropertyMapping *getMusicListPropertyMapping();
+char *getSoundInfoEntryFilename(int);
+char *getMusicInfoEntryFilename(int);
+char *getCurrentlyPlayingMusicFilename(void);
+int getSoundListPropertyMappingSize(void);
+int getMusicListPropertyMappingSize(void);
+struct PropertyMapping *getSoundListPropertyMapping(void);
+struct PropertyMapping *getMusicListPropertyMapping(void);
void InitSoundList(struct ConfigInfo *, int, struct ConfigTypeInfo *,
char **, char **, char **, char **, char **);
void InitMusicList(struct ConfigInfo *, int, struct ConfigTypeInfo *,
char **, char **, char **, char **, char **);
void InitSoundList(struct ConfigInfo *, int, struct ConfigTypeInfo *,
char **, char **, char **, char **, char **);
void InitMusicList(struct ConfigInfo *, int, struct ConfigTypeInfo *,
char **, char **, char **, char **, char **);