summaryrefslogtreecommitdiffstats
path: root/src/core
diff options
context:
space:
mode:
Diffstat (limited to 'src/core')
-rw-r--r--src/core/Game.cpp19
-rw-r--r--src/core/common.h2
-rw-r--r--src/core/config.h3
-rw-r--r--src/core/re3.cpp14
4 files changed, 21 insertions, 17 deletions
diff --git a/src/core/Game.cpp b/src/core/Game.cpp
index 969e0cdf..c50471f1 100644
--- a/src/core/Game.cpp
+++ b/src/core/Game.cpp
@@ -220,22 +220,9 @@ bool CGame::InitialiseOnceAfterRW(void)
if ( FrontEndMenuManager.m_nPrefsAudio3DProviderIndex == -99 || FrontEndMenuManager.m_nPrefsAudio3DProviderIndex == -2 )
{
CMenuManager::m_PrefsSpeakers = 0;
-
- for ( int32 i = 0; i < DMAudio.GetNum3DProvidersAvailable(); i++ )
- {
- wchar buff[64];
-
- char *name = DMAudio.Get3DProviderName(i);
- AsciiToUnicode(name, buff);
- char *providername = UnicodeToAscii(buff);
- strupr(providername);
-
- if ( !strcmp(providername, "MILES FAST 2D POSITIONAL AUDIO") )
- {
- FrontEndMenuManager.m_nPrefsAudio3DProviderIndex = i;
- break;
- }
- }
+ int8 provider = DMAudio.AutoDetect3DProviders();
+ if ( provider != -1 )
+ FrontEndMenuManager.m_nPrefsAudio3DProviderIndex = provider;
}
DMAudio.SetCurrent3DProvider(FrontEndMenuManager.m_nPrefsAudio3DProviderIndex);
diff --git a/src/core/common.h b/src/core/common.h
index 41773877..f79b199b 100644
--- a/src/core/common.h
+++ b/src/core/common.h
@@ -212,6 +212,7 @@ void mysrand(unsigned int seed);
void re3_debug(const char *format, ...);
void re3_trace(const char *filename, unsigned int lineno, const char *func, const char *format, ...);
void re3_assert(const char *expr, const char *filename, unsigned int lineno, const char *func);
+void re3_usererror(const char *format, ...);
#define DEBUGBREAK() __debugbreak();
@@ -219,6 +220,7 @@ void re3_assert(const char *expr, const char *filename, unsigned int lineno, con
#define DEV(f, ...) re3_debug("[DEV]: " f, ## __VA_ARGS__)
#define TRACE(f, ...) re3_trace(__FILE__, __LINE__, __FUNCTION__, f, ## __VA_ARGS__)
#define Error(f, ...) re3_debug("[ERROR]: " f, ## __VA_ARGS__)
+#define USERERROR(f, ...) re3_usererror(f, ## __VA_ARGS__)
#define assert(_Expression) (void)( (!!(_Expression)) || (re3_assert(#_Expression, __FILE__, __LINE__, __FUNCTION__), 0) )
#define ASSERT assert
diff --git a/src/core/config.h b/src/core/config.h
index 20e5d679..ae30b539 100644
--- a/src/core/config.h
+++ b/src/core/config.h
@@ -198,7 +198,8 @@ enum Config {
#define USE_TXD_CDIMAGE // generate and load textures from txd.img
#define IMPROVED_VIDEOMODE // save and load videomode parameters instead of a magic number
//#define USE_TEXTURE_POOL
-//#define OPENAL
+//#define AUDIO_OAL
+#define AUDIO_MSS
// Particle
//#define PC_PARTICLE
diff --git a/src/core/re3.cpp b/src/core/re3.cpp
index 2c07836a..0ab32999 100644
--- a/src/core/re3.cpp
+++ b/src/core/re3.cpp
@@ -462,6 +462,20 @@ void re3_trace(const char *filename, unsigned int lineno, const char *func, cons
OutputDebugStringA(buff);
}
+void re3_usererror(const char *format, ...)
+{
+ va_list va;
+ va_start(va, format);
+ vsprintf_s(re3_buff, re3_buffsize, format, va);
+ va_end(va);
+
+ ::MessageBoxA(nil, re3_buff, "RE3 Error!",
+ MB_OK|MB_ICONHAND|MB_SETFOREGROUND|MB_TASKMODAL);
+
+ raise(SIGABRT);
+ _exit(3);
+}
+
#ifdef VALIDATE_SAVE_SIZE
int32 _saveBufCount;
#endif