X-Git-Url: https://jasonwoof.com/gitweb/?p=vor.git;a=blobdiff_plain;f=sound.c;h=7a2ad22d5ff22a6b8a0172d3b1ce039e0725a66e;hp=aafff76659f08daced3ed3512b009e7268bf7284;hb=87dc7a4f84d0cca94f16619034fb0748e435322b;hpb=0ebbb01f731d0c9bb71140a93cfddd9abde509e5 diff --git a/sound.c b/sound.c index aafff76..7a2ad22 100644 --- a/sound.c +++ b/sound.c @@ -1,9 +1,7 @@ #include "sound.h" +#include "config.h" -extern int sound_flag, music_flag; - -#define CONDERROR(a) if ((a)) {fprintf(stderr,"Error: %s\n",SDL_GetError());exit(1);} -#define NULLERROR(a) CONDERROR((a)==NULL) +extern int opt_sound, opt_music; #define TUNE_TITLE_PAGE 0 #define TUNE_GAMEPLAY 1 @@ -21,92 +19,84 @@ int audio_rate; Uint16 audio_format; int audio_channels; -char *load_file(char *); +char *add_path(char *); char *wav_file[] = { - "sounds/booom.wav", + "sounds/booom.wav", "sounds/cboom.wav", "sounds/boom.wav", "sounds/bzboom.wav" }; char *tune_file[] = { - "music/magic.mod", - "music/getzznew.mod", - "music/4est_fulla3s.mod" + "music/magic.mod", + "music/getzznew.mod", + "music/4est_fulla3s.mod" }; int init_sound() { - // Return 1 if the sound is ready to roll, and 0 if not. + // Return 1 if the sound is ready to roll, and 0 if not. - int i; -#ifdef DEBUG - printf ("Initialise sound\n"); -#endif + int i; + debug(printf ("Initialise sound\n")); - // Initialise output with SDL_mixer - if (Mix_OpenAudio(MIX_DEFAULT_FREQUENCY, AUDIO_S16, MIX_DEFAULT_CHANNELS, 4096) < 0) { + // Initialise output with SDL_mixer + if (Mix_OpenAudio(MIX_DEFAULT_FREQUENCY, AUDIO_S16, MIX_DEFAULT_CHANNELS, 4096) < 0) { fprintf(stderr, "Couldn't open SDL_mixer audio: %s\n", SDL_GetError()); return 0; - } - -#ifdef DEBUG - // What kind of sound did we get? Ah who cares. As long as it can play - // some basic bangs and simple music. - Mix_QuerySpec(&audio_rate, &audio_format, &audio_channels); - printf("Opened audio at %d Hz %d bit %s\n", audio_rate, - (audio_format&0xFF), - (audio_channels > 1) ? "stereo" : "mono"); -#endif - - // Preload all the tunes into memory - for (i=0; i 1) ? "stereo" : "mono"); + ) + + // Preload all the tunes into memory + for (i=0; i