diff --git a/360/xdk360_audio.cpp b/360/xdk360_audio.cpp
deleted file mode 100644
index e1558c1f63..0000000000
--- a/360/xdk360_audio.cpp
+++ /dev/null
@@ -1,227 +0,0 @@
-/* RetroArch - A frontend for libretro.
- * Copyright (C) 2010-2013 - Hans-Kristian Arntzen
- * Copyright (C) 2011-2013 - Daniel De Matteis
- *
- * RetroArch is free software: you can redistribute it and/or modify it under the terms
- * of the GNU General Public License as published by the Free Software Found-
- * ation, either version 3 of the License, or (at your option) any later version.
- *
- * RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
- * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
- * PURPOSE. See the GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along with RetroArch.
- * If not, see .
- */
-
-#include "../driver.h"
-#include
-#include
-#include "../audio/xaudio-c/xaudio_xdk360.h"
-#include "../general.h"
-
-#define MAX_BUFFERS 16
-#define MAX_BUFFERS_MASK 15
-
-struct XAudio : public IXAudio2VoiceCallback
-{
- XAudio() :
- buf(0), pXAudio2(0), pMasteringVoice(0),
- pSourceVoice(0), nonblock(false), bufsize(0),
- bufptr(0), write_buffer(0), buffers(0), hEvent(0)
- {}
-
- ~XAudio()
- {
- if (pSourceVoice)
- {
- pSourceVoice->Stop(0, XAUDIO2_COMMIT_NOW);
- pSourceVoice->DestroyVoice();
- }
-
- if (pMasteringVoice)
- pMasteringVoice->DestroyVoice();
-
- if (pXAudio2)
- pXAudio2->Release();
-
- if (hEvent)
- CloseHandle(hEvent);
-
- free(buf);
- }
-
- bool init(unsigned rate, unsigned latency)
- {
- size_t bufsize_ = latency * rate / 1000;
- size_t size = bufsize_ * 2 * sizeof(int16_t);
-
- RARCH_LOG("XAudio2: Requesting %d ms latency, using %d ms latency.\n", latency, (int)bufsize_ * 1000 / rate);
-
- if (FAILED(XAudio2Create(&pXAudio2, 0, XAUDIO2_DEFAULT_PROCESSOR)))
- return false;
-
- if (FAILED(pXAudio2->CreateMasteringVoice(&pMasteringVoice, 2, rate, 0, 0, NULL)))
- return false;
-
- WAVEFORMATEX wfx = {0};
- wfx.wFormatTag = WAVE_FORMAT_PCM;
- wfx.nChannels = 2;
- wfx.nSamplesPerSec = rate;
- wfx.nBlockAlign = 2 * sizeof(int16_t);
- wfx.wBitsPerSample = sizeof(int16_t) * 8;
- wfx.nAvgBytesPerSec = wfx.nSamplesPerSec * wfx.nBlockAlign;
- wfx.cbSize = 0;
-
- if (FAILED(pXAudio2->CreateSourceVoice(&pSourceVoice, &wfx,
- XAUDIO2_VOICE_NOSRC, XAUDIO2_DEFAULT_FREQ_RATIO, this, 0, 0)))
- return false;
-
- hEvent = CreateEvent(0, FALSE, FALSE, 0);
-
- bufsize = size / MAX_BUFFERS;
- buf = (uint8_t*)malloc(bufsize * MAX_BUFFERS);
- memset(buf, 0, bufsize * MAX_BUFFERS);
-
- if (FAILED(pSourceVoice->Start(0, XAUDIO2_COMMIT_NOW)))
- return false;
-
- return true;
- }
-
- // It's really 16-bit, but we have to byteswap.
- size_t write(const uint8_t *buffer, size_t size)
- {
- if (nonblock)
- {
- size_t avail = bufsize * (MAX_BUFFERS - buffers - 1);
- if (avail == 0)
- return 0;
- if (avail < size)
- size = avail;
- }
-
- unsigned bytes = size;
- while (bytes)
- {
- unsigned need = min(bytes, bufsize - bufptr);
- uint8_t *base_write = buf + write_buffer * bufsize + bufptr;
- memcpy(base_write, buffer, need);
-
- bufptr += need;
- buffer += need;
- bytes -= need;
-
- if (bufptr == bufsize)
- {
- while (buffers == MAX_BUFFERS - 1)
- WaitForSingleObject(hEvent, INFINITE);
-
- XAUDIO2_BUFFER xa2buffer = {0};
- xa2buffer.AudioBytes = bufsize;
- xa2buffer.pAudioData = buf + write_buffer * bufsize;
-
- if (FAILED(pSourceVoice->SubmitSourceBuffer(&xa2buffer, NULL)))
- return 0;
-
- InterlockedIncrement(&buffers);
- bufptr = 0;
- write_buffer = (write_buffer + 1) & MAX_BUFFERS_MASK;
- }
- }
-
- return size;
- }
-
- STDMETHOD_(void, OnBufferStart) (void *) {}
- STDMETHOD_(void, OnBufferEnd) (void *)
- {
- InterlockedDecrement(&buffers);
- SetEvent(hEvent);
- }
- STDMETHOD_(void, OnLoopEnd) (void *) {}
- STDMETHOD_(void, OnStreamEnd) () {}
- STDMETHOD_(void, OnVoiceError) (void *, HRESULT) {}
- STDMETHOD_(void, OnVoiceProcessingPassEnd) () {}
- STDMETHOD_(void, OnVoiceProcessingPassStart) (UINT32) {}
-
- uint8_t *buf;
- IXAudio2 *pXAudio2;
- IXAudio2MasteringVoice *pMasteringVoice;
- IXAudio2SourceVoice *pSourceVoice;
- bool nonblock;
- unsigned bufsize;
- unsigned bufptr;
- unsigned write_buffer;
- volatile long buffers;
- HANDLE hEvent;
-};
-
-static void *xa_init(const char *device, unsigned rate, unsigned latency)
-{
- if (latency < 8)
- latency = 8; // Do not allow shenanigans.
-
- XAudio *xa = new XAudio;
- if (!xa->init(rate, latency))
- goto error;
-
- return xa;
-
-error:
- RARCH_ERR("Failed to init XAudio2.\n");
- delete xa;
- return NULL;
-}
-
-static ssize_t xa_write(void *data, const void *buf, size_t size)
-{
- XAudio *xa = (XAudio*)data;
- size_t ret = xa->write((const uint8_t*)buf, size);
-
- if (ret == 0 && !xa->nonblock)
- return -1;
- return ret;
-}
-
-static bool xa_stop(void *data)
-{
- (void)data;
- return true;
-}
-
-static void xa_set_nonblock_state(void *data, bool state)
-{
- XAudio *xa = (XAudio*)data;
- xa->nonblock = state;
-}
-
-static bool xa_start(void *data)
-{
- (void)data;
- return true;
-}
-
-static void xa_free(void *data)
-{
- XAudio *xa = (XAudio*)data;
- if (xa)
- delete xa;
-}
-
-static bool xa_use_float(void *data)
-{
- (void)data;
- return false;
-}
-
-const audio_driver_t audio_xdk360 = {
- xa_init,
- xa_write,
- xa_stop,
- xa_start,
- xa_set_nonblock_state,
- xa_free,
- xa_use_float,
- "xdk360"
-};
diff --git a/audio/xaudio-c/xaudio-xdk360.cpp b/audio/xaudio-c/xaudio-xdk360.cpp
new file mode 100644
index 0000000000..42ea19d420
--- /dev/null
+++ b/audio/xaudio-c/xaudio-xdk360.cpp
@@ -0,0 +1,173 @@
+/* RetroArch - A frontend for libretro.
+ * Copyright (C) 2010-2013 - Hans-Kristian Arntzen
+ * Copyright (C) 2011-2013 - Daniel De Matteis
+ *
+ * RetroArch is free software: you can redistribute it and/or modify it under the terms
+ * of the GNU General Public License as published by the Free Software Found-
+ * ation, either version 3 of the License, or (at your option) any later version.
+ *
+ * RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
+ * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE. See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along with RetroArch.
+ * If not, see .
+ */
+
+#include
+#include
+#include "xaudio-xdk360.h"
+#include "xaudio-c.h"
+
+#define MAX_BUFFERS 16
+#define MAX_BUFFERS_MASK 15
+
+struct xaudio2 : public IXAudio2VoiceCallback
+{
+ xaudio2() :
+ buf(0), pXAudio2(0), pMasteringVoice(0),
+ pSourceVoice(0), nonblock(false), bufsize(0),
+ bufptr(0), write_buffer(0), buffers(0), hEvent(0)
+ {}
+
+ ~xaudio2()
+ {
+ if (pSourceVoice)
+ {
+ pSourceVoice->Stop(0, XAUDIO2_COMMIT_NOW);
+ pSourceVoice->DestroyVoice();
+ }
+
+ if (pMasteringVoice)
+ pMasteringVoice->DestroyVoice();
+
+ if (pXAudio2)
+ pXAudio2->Release();
+
+ if (hEvent)
+ CloseHandle(hEvent);
+
+ free(buf);
+ }
+
+ STDMETHOD_(void, OnBufferStart) (void *) {}
+ STDMETHOD_(void, OnBufferEnd) (void *)
+ {
+ InterlockedDecrement(&buffers);
+ SetEvent(hEvent);
+ }
+ STDMETHOD_(void, OnLoopEnd) (void *) {}
+ STDMETHOD_(void, OnStreamEnd) () {}
+ STDMETHOD_(void, OnVoiceError) (void *, HRESULT) {}
+ STDMETHOD_(void, OnVoiceProcessingPassEnd) () {}
+ STDMETHOD_(void, OnVoiceProcessingPassStart) (UINT32) {}
+
+ uint8_t *buf;
+ IXAudio2 *pXAudio2;
+ IXAudio2MasteringVoice *pMasteringVoice;
+ IXAudio2SourceVoice *pSourceVoice;
+ bool nonblock;
+ unsigned bufsize;
+ unsigned bufptr;
+ unsigned write_buffer;
+ volatile long buffers;
+ HANDLE hEvent;
+};
+
+void xaudio2_enumerate_devices(xaudio2_t *xa)
+{
+ (void)xa;
+}
+
+xaudio2_t *xaudio2_new(unsigned samplerate, unsigned channels,
+ size_t size, unsigned device)
+{
+ (void)device;
+ WAVEFORMATEX wfx = {0};
+ xaudio2 *handle = new xaudio2;
+ if (!handle)
+ return NULL;
+
+ if (FAILED(XAudio2Create(&handle->pXAudio2, 0, XAUDIO2_DEFAULT_PROCESSOR)))
+ goto error;
+
+ if (FAILED(handle->pXAudio2->CreateMasteringVoice(&handle->pMasteringVoice, channels,
+samplerate, 0, 0, NULL)))
+ goto error;
+
+ wfx.wFormatTag = WAVE_FORMAT_PCM;
+ wfx.nChannels = channels;
+ wfx.nSamplesPerSec = samplerate;
+ wfx.nBlockAlign = channels * sizeof(int16_t);
+ wfx.wBitsPerSample = sizeof(int16_t) * 8;
+ wfx.nAvgBytesPerSec = wfx.nSamplesPerSec * wfx.nBlockAlign;
+ wfx.cbSize = 0;
+
+ if (FAILED(handle->pXAudio2->CreateSourceVoice(&handle->pSourceVoice, &wfx,
+ XAUDIO2_VOICE_NOSRC, XAUDIO2_DEFAULT_FREQ_RATIO, handle, 0, 0)))
+ goto error;
+
+ handle->hEvent = CreateEvent(0, FALSE, FALSE, 0);
+
+ handle->bufsize = size / MAX_BUFFERS;
+ handle->buf = (uint8_t*)calloc(1, handle->bufsize * MAX_BUFFERS);
+ memset(handle->buf, 0, handle->bufsize * MAX_BUFFERS);
+
+ if (FAILED(handle->pSourceVoice->Start(0, XAUDIO2_COMMIT_NOW)))
+ goto error;
+
+ return handle;
+
+error:
+ RARCH_ERR("Failed to init XAudio2 (for Xbox 360).\n");
+ delete handle;
+ return NULL;
+}
+
+size_t xaudio2_write_avail(xaudio2_t *handle)
+{
+ return handle->bufsize * (MAX_BUFFERS - handle->buffers - 1);
+}
+
+// It's really 16-bit, but we have to byteswap.
+size_t xaudio2_write(xaudio2_t *handle, const void *buf, size_t bytes_)
+{
+ unsigned bytes = bytes_;
+ const uint8_t *buffer = (const uint8_t*)buf;
+ while (bytes)
+ {
+ unsigned need = min(bytes, handle->bufsize - handle->bufptr);
+ memcpy(handle->buf + handle->write_buffer * handle->bufsize + handle->bufptr,
+ buffer, need);
+
+ handle->bufptr += need;
+ buffer += need;
+ bytes -= need;
+
+ if (handle->bufptr == handle->bufsize)
+ {
+ while (handle->buffers == MAX_BUFFERS - 1)
+ WaitForSingleObject(handle->hEvent, INFINITE);
+
+ XAUDIO2_BUFFER xa2buffer = {0};
+ xa2buffer.AudioBytes = handle->bufsize;
+ xa2buffer.pAudioData = handle->buf + handle->write_buffer * handle->bufsize;
+
+ if (FAILED(handle->pSourceVoice->SubmitSourceBuffer(&xa2buffer, NULL)))
+ return 0;
+
+ InterlockedIncrement(&handle->buffers);
+ handle->bufptr = 0;
+ handle->write_buffer = (handle->write_buffer + 1) & MAX_BUFFERS_MASK;
+ }
+ }
+
+ return bytes_;
+}
+
+void xaudio2_free(xaudio2_t *handle)
+{
+ xaudio2 *xa = (xaudio2*)handle;
+ if (xa)
+ delete xa;
+}
diff --git a/audio/xaudio-c/xaudio_xdk360.h b/audio/xaudio-c/xaudio-xdk360.h
similarity index 100%
rename from audio/xaudio-c/xaudio_xdk360.h
rename to audio/xaudio-c/xaudio-xdk360.h
diff --git a/audio/xaudio.c b/audio/xaudio.c
index 015dd136c6..16bfa0ad4e 100644
--- a/audio/xaudio.c
+++ b/audio/xaudio.c
@@ -97,7 +97,11 @@ static bool xa_start(void *data)
static bool xa_use_float(void *data)
{
(void)data;
+#ifdef _XBOX
+ return false;
+#else
return true;
+#endif
}
static void xa_free(void *data)
diff --git a/config.def.h b/config.def.h
index 57f5e90780..09687d40f4 100644
--- a/config.def.h
+++ b/config.def.h
@@ -60,7 +60,6 @@ enum
AUDIO_PS3,
AUDIO_XENON360,
AUDIO_WII,
- AUDIO_XDK360,
AUDIO_NULL,
INPUT_ANDROID,
@@ -106,8 +105,6 @@ enum
#define AUDIO_DEFAULT_DRIVER AUDIO_PS3
#elif defined(XENON)
#define AUDIO_DEFAULT_DRIVER AUDIO_XENON360
-#elif defined(_XBOX360)
-#define AUDIO_DEFAULT_DRIVER AUDIO_XDK360
#elif defined(GEKKO)
#define AUDIO_DEFAULT_DRIVER AUDIO_WII
#elif defined(HAVE_ALSA) && defined(HAVE_VIDEOCORE)
diff --git a/console/griffin/griffin.c b/console/griffin/griffin.c
index 67abf23f59..33e7678ea4 100644
--- a/console/griffin/griffin.c
+++ b/console/griffin/griffin.c
@@ -290,15 +290,27 @@ AUDIO
============================================================ */
#if defined(__CELLOS_LV2__)
#include "../../ps3/ps3_audio.c"
-#elif defined(_XBOX360)
-#include "../../360/xdk360_audio.cpp"
#elif defined(XENON)
#include "../../360/xenon360_audio.c"
#elif defined(GEKKO)
#include "../../gx/gx_audio.c"
-#elif defined(HAVE_DSOUND)
+#endif
+
+#ifdef HAVE_XAUDIO
+#include "../../audio/xaudio.c"
+
+#ifdef _XBOX
+#include "../../audio/xaudio-c/xaudio-xdk360.cpp"
+#else
+#include "../../audio/xaudio-c/xaudio-c.c"
+#endif
+#endif
+
+#ifdef HAVE_DSOUND
#include "../../audio/dsound.c"
-#elif defined(HAVE_SL)
+#endif
+
+#ifdef HAVE_SL
#include "../../audio/opensl.c"
#endif
diff --git a/driver.c b/driver.c
index a37a7c456b..8d51b4ab9f 100644
--- a/driver.c
+++ b/driver.c
@@ -74,9 +74,6 @@ static const audio_driver_t *audio_drivers[] = {
#ifdef XENON
&audio_xenon360,
#endif
-#ifdef _XBOX360
- &audio_xdk360,
-#endif
#ifdef GEKKO
&audio_gx,
#endif
diff --git a/driver.h b/driver.h
index 363d08e694..43074591b1 100644
--- a/driver.h
+++ b/driver.h
@@ -341,7 +341,6 @@ extern const audio_driver_t audio_pulse;
extern const audio_driver_t audio_dsound;
extern const audio_driver_t audio_coreaudio;
extern const audio_driver_t audio_xenon360;
-extern const audio_driver_t audio_xdk360;
extern const audio_driver_t audio_ps3;
extern const audio_driver_t audio_gx;
extern const audio_driver_t audio_null;
diff --git a/msvc/RetroArch-360/RetroArch-360.vcxproj b/msvc/RetroArch-360/RetroArch-360.vcxproj
index a40ac81652..e52f89a982 100644
--- a/msvc/RetroArch-360/RetroArch-360.vcxproj
+++ b/msvc/RetroArch-360/RetroArch-360.vcxproj
@@ -113,7 +113,7 @@
true
false
MultiThreadedDebug
- _DEBUG;_XBOX;HAVE_XINPUT2;PACKAGE_VERSION="0.9.8-beta3";%(PreprocessorDefinitions);HAVE_DEFAULT_RETROPAD_INPUT;_CRT_SECURE_NO_WARNINGS;main=rarch_main;RARCH_CONSOLE;HAVE_RMENU;HAVE_FILEBROWSER;HAVE_HDD_CACHE_PARTITION;HAVE_NETPLAY;HAVE_SOCKET_LEGACY;HAVE_ZLIB;HAVE_RARCH_MAIN_WRAP;HAVE_RARCH_EXEC;HAVE_LIBRETRO_MANAGEMENT;D3DCOMPILE_USEVOIDS;HAVE_GRIFFIN;HAVE_HLSL;HAVE_VID_CONTEXT;HAVE_D3D9;_XBOX360;HAVE_FBO;HAVE_SCREENSHOTS;WANT_RZLIB
+ _DEBUG;_XBOX;HAVE_XINPUT2;PACKAGE_VERSION="0.9.8-beta3";%(PreprocessorDefinitions);HAVE_DEFAULT_RETROPAD_INPUT;_CRT_SECURE_NO_WARNINGS;main=rarch_main;RARCH_CONSOLE;HAVE_RMENU;HAVE_FILEBROWSER;HAVE_HDD_CACHE_PARTITION;HAVE_NETPLAY;HAVE_SOCKET_LEGACY;HAVE_ZLIB;HAVE_RARCH_MAIN_WRAP;HAVE_RARCH_EXEC;HAVE_LIBRETRO_MANAGEMENT;D3DCOMPILE_USEVOIDS;HAVE_GRIFFIN;HAVE_HLSL;HAVE_VID_CONTEXT;HAVE_D3D9;_XBOX360;HAVE_FBO;HAVE_SCREENSHOTS;WANT_RZLIB;HAVE_XAUDIO
Callcap
@@ -190,7 +190,7 @@
Size
false
MultiThreaded
- NDEBUG;_XBOX;PROFILE;%(PreprocessorDefinitions);HAVE_XINPUT2;PACKAGE_VERSION="0.9.8-beta3";HAVE_DEFAULT_RETROPAD_INPUT;_CRT_SECURE_NO_WARNINGS;RARCH_CONSOLE;HAVE_RMENU;main=rarch_main;HAVE_FILEBROWSER;HAVE_HDD_CACHE_PARTITION;HAVE_ZLIB;HAVE_RARCH_MAIN_WRAP;HAVE_RARCH_EXEC;HAVE_LIBRETRO_MANAGEMENT;D3DCOMPILE_USEVOIDS;HAVE_GRIFFIN;HAVE_HLSL;HAVE_VID_CONTEXT;HAVE_D3D9;_XBOX360;HAVE_FBO;HAVE_SCREENSHOTS;WANT_RZLIB
+ NDEBUG;_XBOX;PROFILE;%(PreprocessorDefinitions);HAVE_XINPUT2;PACKAGE_VERSION="0.9.8-beta3";HAVE_DEFAULT_RETROPAD_INPUT;_CRT_SECURE_NO_WARNINGS;RARCH_CONSOLE;HAVE_RMENU;main=rarch_main;HAVE_FILEBROWSER;HAVE_HDD_CACHE_PARTITION;HAVE_ZLIB;HAVE_RARCH_MAIN_WRAP;HAVE_RARCH_EXEC;HAVE_LIBRETRO_MANAGEMENT;D3DCOMPILE_USEVOIDS;HAVE_GRIFFIN;HAVE_HLSL;HAVE_VID_CONTEXT;HAVE_D3D9;_XBOX360;HAVE_FBO;HAVE_SCREENSHOTS;WANT_RZLIB;HAVE_XAUDIO
Callcap
@@ -234,7 +234,7 @@
Size
false
MultiThreaded
- NDEBUG;_XBOX;PROFILE;FASTCAP;%(PreprocessorDefinitions);HAVE_XINPUT2;PACKAGE_VERSION="0.9.8-beta3";HAVE_DEFAULT_RETROPAD_INPUT;_CRT_SECURE_NO_WARNINGS;main=rarch_main;HAVE_FILEBROWSER;HAVE_HDD_CACHE_PARTITION;HAVE_ZLIB;HAVE_RARCH_MAIN_WRAP;HAVE_RARCH_EXEC;HAVE_LIBRETRO_MANAGEMENT;D3DCOMPILE_USEVOIDS;HAVE_GRIFFIN;HAVE_HLSL;HAVE_VID_CONTEXT;HAVE_D3D9;_XBOX360;HAVE_FBO;HAVE_SCREENSHOTS;WANT_RZLIB;HAVE_RMENU
+ NDEBUG;_XBOX;PROFILE;FASTCAP;%(PreprocessorDefinitions);HAVE_XINPUT2;PACKAGE_VERSION="0.9.8-beta3";HAVE_DEFAULT_RETROPAD_INPUT;_CRT_SECURE_NO_WARNINGS;main=rarch_main;HAVE_FILEBROWSER;HAVE_HDD_CACHE_PARTITION;HAVE_ZLIB;HAVE_RARCH_MAIN_WRAP;HAVE_RARCH_EXEC;HAVE_LIBRETRO_MANAGEMENT;D3DCOMPILE_USEVOIDS;HAVE_GRIFFIN;HAVE_HLSL;HAVE_VID_CONTEXT;HAVE_D3D9;_XBOX360;HAVE_FBO;HAVE_SCREENSHOTS;WANT_RZLIB;HAVE_RMENU;HAVE_XAUDIO
true
@@ -275,7 +275,7 @@
false
false
MultiThreaded
- NDEBUG;_XBOX;%(PreprocessorDefinitions);HAVE_XINPUT2;PACKAGE_VERSION="0.9.8-beta3";_CRT_SECURE_NO_WARNINGS;HAVE_DEFAULT_RETROPAD_INPUT;main=rarch_main;RARCH_CONSOLE=1;HAVE_FILEBROWSER;HAVE_HDD_CACHE_PARTITION;HAVE_NETPLAY;HAVE_SOCKET_LEGACY;HAVE_ZLIB;HAVE_RARCH_MAIN_WRAP;HAVE_RARCH_EXEC;HAVE_LIBRETRO_MANAGEMENT;D3DCOMPILE_USEVOIDS;HAVE_GRIFFIN;HAVE_HLSL;HAVE_VID_CONTEXT;HAVE_D3D9;_XBOX360;HAVE_FBO;HAVE_SCREENSHOTS;WANT_RZLIB;HAVE_RMENU
+ NDEBUG;_XBOX;%(PreprocessorDefinitions);HAVE_XINPUT2;PACKAGE_VERSION="0.9.8-beta3";_CRT_SECURE_NO_WARNINGS;HAVE_DEFAULT_RETROPAD_INPUT;main=rarch_main;RARCH_CONSOLE=1;HAVE_FILEBROWSER;HAVE_HDD_CACHE_PARTITION;HAVE_NETPLAY;HAVE_SOCKET_LEGACY;HAVE_ZLIB;HAVE_RARCH_MAIN_WRAP;HAVE_RARCH_EXEC;HAVE_LIBRETRO_MANAGEMENT;D3DCOMPILE_USEVOIDS;HAVE_GRIFFIN;HAVE_HLSL;HAVE_VID_CONTEXT;HAVE_D3D9;_XBOX360;HAVE_FBO;HAVE_SCREENSHOTS;WANT_RZLIB;HAVE_RMENU;HAVE_XAUDIO
true
@@ -316,7 +316,7 @@
false
false
MultiThreaded
- NDEBUG;_XBOX;LTCG;%(PreprocessorDefinitions);HAVE_XINPUT2;PACKAGE_VERSION="0.9.8-beta3";_CRT_SECURE_NO_WARNINGS;HAVE_DEFAULT_RETROPAD_INPUT;RARCH_CONSOLE;HAVE_RMENU;main=rarch_main;HAVE_FILEBROWSER;HAVE_HDD_CACHE_PARTITION;HAVE_NETPLAY;HAVE_SOCKET_LEGACY;HAVE_ZLIB;HAVE_RARCH_MAIN_WRAP;HAVE_RARCH_EXEC;HAVE_LIBRETRO_MANAGEMENT;D3DCOMPILE_USEVOIDS;HAVE_GRIFFIN;HAVE_HLSL;HAVE_VID_CONTEXT;HAVE_D3D9;_XBOX360;HAVE_FBO;HAVE_SCREENSHOTS;WANT_RZLIB
+ NDEBUG;_XBOX;LTCG;%(PreprocessorDefinitions);HAVE_XINPUT2;PACKAGE_VERSION="0.9.8-beta3";_CRT_SECURE_NO_WARNINGS;HAVE_DEFAULT_RETROPAD_INPUT;RARCH_CONSOLE;HAVE_RMENU;main=rarch_main;HAVE_FILEBROWSER;HAVE_HDD_CACHE_PARTITION;HAVE_NETPLAY;HAVE_SOCKET_LEGACY;HAVE_ZLIB;HAVE_RARCH_MAIN_WRAP;HAVE_RARCH_EXEC;HAVE_LIBRETRO_MANAGEMENT;D3DCOMPILE_USEVOIDS;HAVE_GRIFFIN;HAVE_HLSL;HAVE_VID_CONTEXT;HAVE_D3D9;_XBOX360;HAVE_FBO;HAVE_SCREENSHOTS;WANT_RZLIB;HAVE_XAUDIO
true
diff --git a/settings.c b/settings.c
index 41cdccd535..cdaeb5678e 100644
--- a/settings.c
+++ b/settings.c
@@ -62,8 +62,6 @@ const char *config_get_default_audio(void)
return "ext";
case AUDIO_XENON360:
return "xenon360";
- case AUDIO_XDK360:
- return "xdk360";
case AUDIO_PS3:
return "ps3";
case AUDIO_WII: