summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDarren Alton <dalton@stevens.edu>2008-08-21 12:38:21 +0000
committerDarren Alton <dalton@stevens.edu>2008-08-21 12:38:21 +0000
commitf3350ad63d9ebe81a4bc33da7c4d6c7a13248624 (patch)
treecdd202bb6ce8398d8a6b45073c9309fbe8b0d453
parentd95df2ea999fc1bd186ac3cd28b0bda879c1f9ef (diff)
downloadsdl-f3350ad63d9ebe81a4bc33da7c4d6c7a13248624.tar.gz
Some more work on the audio driver.
-rw-r--r--Makefile.ds5
-rw-r--r--include/SDL_config.h.in5
-rw-r--r--src/audio/nds/SDL_ndsaudio.c19
3 files changed, 26 insertions, 3 deletions
diff --git a/Makefile.ds b/Makefile.ds
index 573f007f6..cabe0a3f6 100644
--- a/Makefile.ds
+++ b/Makefile.ds
@@ -28,13 +28,14 @@ CFLAGS = -mthumb -mthumb-interwork \
-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 --git a/include/SDL_config.h.in b/include/SDL_config.h.in
index cf1a61c06..89d157cd8 100644
--- a/include/SDL_config.h.in
+++ b/include/SDL_config.h.in
@@ -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 --git a/src/audio/nds/SDL_ndsaudio.c b/src/audio/nds/SDL_ndsaudio.c
index de1e2d91a..fbe6197a5 100644
--- a/src/audio/nds/SDL_ndsaudio.c
+++ b/src/audio/nds/SDL_ndsaudio.c
@@ -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 @@ NDSAUD_OpenDevice(_THIS, const char *devname, int iscapture)
}
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 @@ NDSAUD_OpenDevice(_THIS, const char *devname, int iscapture)
64, /* panning/balance */
0); /* sound format*/
+ TRACE("-NDSAUD_OpenDevice\n");
return 1;
}
@@ -73,9 +77,11 @@ NDSAUD_PlayDevice(_THIS)
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 @@ NDSAUD_PlayDevice(_THIS)
static Uint8 *
NDSAUD_GetDeviceBuf(_THIS)
{ /* is this right? */
+ TRACE("!NDSAUD_GetDeviceBuf\n");
return this->hidden->mixbuf;
}
@@ -96,29 +103,39 @@ static void
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: */