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: