Mercurial > sdl-ios-xcode
diff src/audio/dmedia/SDL_irixaudio.c @ 903:6e6248801043
Date: Sun, 18 Jul 2004 16:46:44 +0200
From: Georg Schwarz
Subject: Compiling SDL on IRIX 5.3
in order to make SDL compile on IRIX 5.3 I had to apply the following patch
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Sun, 18 Jul 2004 18:33:28 +0000 |
parents | 6399f4e90211 |
children | c9b51268668f |
line wrap: on
line diff
--- a/src/audio/dmedia/SDL_irixaudio.c Sat Jul 17 08:58:24 2004 +0000 +++ b/src/audio/dmedia/SDL_irixaudio.c Sun Jul 18 18:33:28 2004 +0000 @@ -28,6 +28,7 @@ #endif /* Allow access to a raw mixing buffer (For IRIX 6.5 and higher) */ +/* patch for IRIX 5 by Georg Schwarz 18/07/2004 */ #include <stdlib.h> @@ -39,6 +40,19 @@ #include "SDL_irixaudio.h" +#ifndef AL_RESOURCE /* as a test whether we use the old IRIX audio libraries */ +#define OLD_IRIX_AUDIO +#define alClosePort(x) ALcloseport(x) +#define alFreeConfig(x) ALfreeconfig(x) +#define alGetFillable(x) ALgetfillable(x) +#define alNewConfig() ALnewconfig() +#define alOpenPort(x,y,z) ALopenport(x,y,z) +#define alSetChannels(x,y) ALsetchannels(x,y) +#define alSetQueueSize(x,y) ALsetqueuesize(x,y) +#define alSetSampFmt(x,y) ALsetsampfmt(x,y) +#define alSetWidth(x,y) ALsetwidth(x,y) +#endif + /* Audio driver functions */ static int AL_OpenAudio(_THIS, SDL_AudioSpec *spec); static void AL_WaitAudio(_THIS); @@ -137,7 +151,11 @@ static int AL_OpenAudio(_THIS, SDL_AudioSpec *spec) { ALconfig audio_config; +#ifdef OLD_IRIX_AUDIO + long audio_param[2]; +#else ALpv audio_param; +#endif int width; /* Determine the audio parameters from the AudioSpec */ @@ -165,9 +183,15 @@ SDL_CalculateAudioSpec(spec); /* Set output frequency */ +#ifdef OLD_IRIX_AUDIO + audio_param[0] = AL_OUTPUT_RATE; + audio_param[1] = spec->freq; + if( ALsetparams(AL_DEFAULT_DEVICE, audio_param, 2) < 0 ) { +#else audio_param.param = AL_RATE; audio_param.value.i = spec->freq; if( alSetParams(AL_DEFAULT_OUTPUT, &audio_param, 1) < 0 ) { +#endif SDL_SetError("alSetParams failed"); return(-1); }