# HG changeset patch # User Darren Alton # Date 1219322301 0 # Node ID c9121b04cffa7810929ee4113edd32c963c647dc # Parent 0b395a60deffb52bd1ed0dde7b0c324e1e7494b0 Some more work on the audio driver. diff -r 0b395a60deff -r c9121b04cffa Makefile.ds --- a/Makefile.ds Mon Aug 18 07:29:52 2008 +0000 +++ b/Makefile.ds Thu Aug 21 12:38:21 2008 +0000 @@ -28,13 +28,14 @@ -DARM9 -D__NDS__ -I$(DEVKITPRO)/libnds/include -DENABLE_NDS -DNO_SIGNAL_H -DDISABLE_THREADS -DPACKAGE=\"SDL\" -DVERSION=\"1.3\" -DHAVE_ALLOCA_H=1 -DHAVE_ALLOCA=1 \ -Iinclude -Isrc -Isrc/audio -Isrc/cdrom -Isrc/endian -Isrc/events -Isrc/joystick -Isrc/thread/nds -Isrc/thread -Isrc/timer -Isrc/video +#src/audio/disk/SDL_diskaudio.c \ +#src/audio/dummy/SDL_dummyaudio.c \ + SRCS = \ src/SDL.c \ src/SDL_compat.c \ src/SDL_error.c \ src/SDL_fatal.c \ -src/audio/disk/SDL_diskaudio.c \ -src/audio/dummy/SDL_dummyaudio.c \ src/audio/nds/SDL_ndsaudio.c \ src/audio/SDL_audio.c \ src/audio/SDL_audiocvt.c \ diff -r 0b395a60deff -r c9121b04cffa include/SDL_config.h.in --- a/include/SDL_config.h.in Mon Aug 18 07:29:52 2008 +0000 +++ b/include/SDL_config.h.in Thu Aug 21 12:38:21 2008 +0000 @@ -176,6 +176,7 @@ #undef SDL_AUDIO_DRIVER_MMEAUDIO #undef SDL_AUDIO_DRIVER_NAS #undef SDL_AUDIO_DRIVER_NAS_DYNAMIC +#undef SDL_AUDIO_DRIVER_NDS #undef SDL_AUDIO_DRIVER_OSS #undef SDL_AUDIO_DRIVER_OSS_SOUNDCARD_H #undef SDL_AUDIO_DRIVER_PAUDIO @@ -210,6 +211,7 @@ #undef SDL_JOYSTICK_IOKIT #undef SDL_JOYSTICK_LINUX #undef SDL_JOYSTICK_MINT +#undef SDL_JOYSTICK_NDS #undef SDL_JOYSTICK_OS2 #undef SDL_JOYSTICK_RISCOS #undef SDL_JOYSTICK_WINMM @@ -228,6 +230,7 @@ /* Enable various threading systems */ #undef SDL_THREAD_BEOS #undef SDL_THREAD_DC +#undef SDL_THREAD_NDS #undef SDL_THREAD_OS2 #undef SDL_THREAD_PTH #undef SDL_THREAD_PTHREAD @@ -241,6 +244,7 @@ #undef SDL_TIMER_DC #undef SDL_TIMER_DUMMY #undef SDL_TIMER_MINT +#undef SDL_TIMER_NDS #undef SDL_TIMER_OS2 #undef SDL_TIMER_RISCOS #undef SDL_TIMER_UNIX @@ -258,6 +262,7 @@ #undef SDL_VIDEO_DRIVER_GEM #undef SDL_VIDEO_DRIVER_IPOD #undef SDL_VIDEO_DRIVER_NANOX +#undef SDL_VIDEO_DRIVER_NDS #undef SDL_VIDEO_DRIVER_OS2FS #undef SDL_VIDEO_DRIVER_PHOTON #undef SDL_VIDEO_DRIVER_PS2GS diff -r 0b395a60deff -r c9121b04cffa src/audio/nds/SDL_ndsaudio.c --- a/src/audio/nds/SDL_ndsaudio.c Mon Aug 18 07:29:52 2008 +0000 +++ b/src/audio/nds/SDL_ndsaudio.c Thu Aug 21 12:38:21 2008 +0000 @@ -31,6 +31,8 @@ #include "../SDL_audio_c.h" #include "SDL_ndsaudio.h" +#define TRACE printf + static int NDSAUD_OpenDevice(_THIS, const char *devname, int iscapture) { @@ -44,6 +46,7 @@ } SDL_memset(this->hidden, 0, (sizeof *this->hidden)); + TRACE("+NDSAUD_OpenDevice\n"); while ((!valid_datatype) && (test_format)) { this->spec.format = test_format; switch (test_format) { @@ -63,6 +66,7 @@ 64, /* panning/balance */ 0); /* sound format*/ + TRACE("-NDSAUD_OpenDevice\n"); return 1; } @@ -73,9 +77,11 @@ if(!sound) { SDL_OutOfMemory(); } + TRACE("+NDSAUD_PlayDevice\n"); playGenericSound(this->hidden->mixbuf, this->hidden->mixlen); + TRACE("-NDSAUD_PlayDevice\n"); // sound->data = this->hidden->mixbuf;/* pointer to raw audio data */ // sound->len = this->hidden->mixlen; /* size of raw data pointed to above */ // sound->rate = 22050; /* sample rate = 22050Hz */ @@ -89,6 +95,7 @@ static Uint8 * NDSAUD_GetDeviceBuf(_THIS) { /* is this right? */ + TRACE("!NDSAUD_GetDeviceBuf\n"); return this->hidden->mixbuf; } @@ -96,29 +103,39 @@ NDSAUD_WaitDevice(_THIS) { /* stub */ + TRACE("!NDSAUD_WaitDevice\n"); } static void NDSAUD_CloseDevice(_THIS) { /* stub */ + TRACE("!NDSAUD_CloseDevice\n"); } static int NDSAUD_Init(SDL_AudioDriverImpl * impl) { + TRACE("+NDSAUD_Init\n"); + /* Set the function pointers */ impl->OpenDevice = NDSAUD_OpenDevice; impl->PlayDevice = NDSAUD_PlayDevice; impl->WaitDevice = NDSAUD_WaitDevice; impl->GetDeviceBuf = NDSAUD_GetDeviceBuf; impl->CloseDevice = NDSAUD_CloseDevice; + + /* and the capabilities */ + impl->HasCaptureSupport = 1; impl->OnlyHasDefaultOutputDevice = 1; + impl->OnlyHasDefaultInputDevice = 1; + + TRACE("-NDSAUD_Init\n"); return 1; } AudioBootStrap NDSAUD_bootstrap = { - "nds", "SDL NDS audio driver", NDSAUD_Init, 1 + "nds", "SDL NDS audio driver", NDSAUD_Init, 0 /*1?*/ }; /* vi: set ts=4 sw=4 expandtab: */