diff options
Diffstat (limited to 'src/audio/audio.c~')
| -rw-r--r-- | src/audio/audio.c~ | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/src/audio/audio.c~ b/src/audio/audio.c~ new file mode 100644 index 0000000..cc9d81e --- /dev/null +++ b/src/audio/audio.c~ @@ -0,0 +1,54 @@ + +#include <stdio.h> +#include <assert.h> +#include <SDL_mixer.h> + +#include "main.h" +#include "audio.h" +#include "interface.h" + +static bool_t isAudioInit = FALSE; +/* + * Returns state of audio + */ +bool_t isAudioInicialized() +{ + return isAudioInit; +} +/* + * Inicialize audio + */ +void initAudio() +{ + if( isParamFlag("--noaudio") ) + { + return; + } + + if (SDL_Init(SDL_INIT_AUDIO) == -1) { + fprintf(stderr, _("Unable to initialize audio: %s\n"), SDL_GetError()); + return; + } + if (Mix_OpenAudio(MIX_DEFAULT_FREQUENCY, MIX_DEFAULT_FORMAT, 2, 1024) == -1) { + fprintf(stderr, _("Unable to create proper audio settings: %s\n"), Mix_GetError()); + return; + } + Mix_AllocateChannels(16); + Mix_Volume(-1, MIX_MAX_VOLUME); +#ifdef DEBUG + printf(_("Initializing audio system...\n")); +#endif + isAudioInit = TRUE; +} +/* + * Quit audio + */ +void quitAudio() +{ + Mix_CloseAudio(); + isAudioInit = TRUE; +#ifdef DEBUG + printf(_("Quitting audio...\n")); +#endif +} + |