summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFire-Head <Fire-Head@users.noreply.github.com>2020-06-29 09:29:02 +0200
committerFire-Head <Fire-Head@users.noreply.github.com>2020-06-29 09:29:02 +0200
commit63fdcf7e64655767d3c56917d50141602b565447 (patch)
tree54282c118b3a6f0e4e506b57f403a4723555785a
parentUpdate AudioLogic.cpp (diff)
downloadre3-63fdcf7e64655767d3c56917d50141602b565447.tar
re3-63fdcf7e64655767d3c56917d50141602b565447.tar.gz
re3-63fdcf7e64655767d3c56917d50141602b565447.tar.bz2
re3-63fdcf7e64655767d3c56917d50141602b565447.tar.lz
re3-63fdcf7e64655767d3c56917d50141602b565447.tar.xz
re3-63fdcf7e64655767d3c56917d50141602b565447.tar.zst
re3-63fdcf7e64655767d3c56917d50141602b565447.zip
m---------librw0
-rw-r--r--src/audio/AudioManager.h4
-rw-r--r--src/core/Frontend_PS2.cpp86
-rw-r--r--src/core/MenuScreens.cpp5
-rw-r--r--src/core/config.h27
-rw-r--r--src/core/re3.cpp6
-rw-r--r--src/skel/win/win.cpp3
7 files changed, 72 insertions, 59 deletions
diff --git a/librw b/librw
-Subproject 6ff378bb16007ad003b1a71996944a20f2e7655
+Subproject 556f6af1b5a15d5ba1a2254a95076578cd16018
diff --git a/src/audio/AudioManager.h b/src/audio/AudioManager.h
index 0e9ef51a..52c26552 100644
--- a/src/audio/AudioManager.h
+++ b/src/audio/AudioManager.h
@@ -444,14 +444,14 @@ public:
void ServiceSoundEffects();
int8 SetCurrent3DProvider(uint8 which);
void SetDynamicAcousticModelingStatus(uint8 status);
- void SetEffectsFadeVolume(uint8 volume) const;
+ void SetEffectsFadeVol(uint8 volume) const;
void SetEffectsMasterVolume(uint8 volume) const;
void SetEntityStatus(int32 id, uint8 status);
uint32 SetLoopingCollisionRequestedSfxFreqAndGetVol(const cAudioCollision &audioCollision);
void SetMissionAudioLocation(float x, float y, float z);
void SetMissionScriptPoliceAudio(int32 sfx) const;
void SetMonoMode(uint8 mono);
- void SetMusicFadeVolume(uint8 volume) const;
+ void SetMusicFadeVol(uint8 volume) const;
void SetMusicMasterVolume(uint8 volume) const;
void SetSpeakerConfig(int32 conf) const;
void SetUpLoopingCollisionSound(const cAudioCollision &col, uint8 counter);
diff --git a/src/core/Frontend_PS2.cpp b/src/core/Frontend_PS2.cpp
index d236a9a1..8e604978 100644
--- a/src/core/Frontend_PS2.cpp
+++ b/src/core/Frontend_PS2.cpp
@@ -2431,10 +2431,10 @@ CMenuManager::ProcessDPadLeftJustDown(void)
if ( MenuSaveZoneSSL_1.m_numOptions < 2 )
;
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
}
else
@@ -2453,7 +2453,7 @@ CMenuManager::ProcessDPadLeftJustDown(void)
m_nPageRightTimer = 0;
m_nChangePageTimer = CTimer::GetTimeInMillisecondsPauseMode() + 250;
field_18 = m_newPage;
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_COMPLETED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NEW_PAGE, 0);
}
}
@@ -2465,7 +2465,7 @@ CMenuManager::ProcessDPadLeftJustDown(void)
if ( pActiveMenuPage )
pActiveMenuPage->GoLeftMenuOnPage();
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
break;
}
@@ -2483,14 +2483,14 @@ CMenuManager::ProcessDPadLeftJustDown(void)
else if ( pActiveMenuPage->m_pCurrentControl == &MenuAudio_2 )
;
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
else if ( m_currentPage == PAGE_DISPLAY)
{
if ( pActiveMenuPage->m_pCurrentControl == &MenuDisplay_1 )
;
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
else
{
@@ -2499,17 +2499,17 @@ CMenuManager::ProcessDPadLeftJustDown(void)
if ( MenuSaveDG_2.m_numOptions < 2 )
;
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
else if ( pActiveMenuPage->m_pCurrentControl == &MenuSaveLG_2 )
{
if ( MenuSaveLG_2.m_numOptions < 2 )
;
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
}
@@ -2533,10 +2533,10 @@ CMenuManager::ProcessDPadRightJustDown(void)
if ( MenuSaveZoneSSL_1.m_numOptions < 2 )
;
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
}
else
@@ -2555,7 +2555,7 @@ CMenuManager::ProcessDPadRightJustDown(void)
m_nPageRightTimer = CTimer::GetTimeInMillisecondsPauseMode() + 300;
m_nChangePageTimer = CTimer::GetTimeInMillisecondsPauseMode() + 250;
field_18 = m_newPage;
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_COMPLETED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NEW_PAGE, 0);
}
}
@@ -2567,7 +2567,7 @@ CMenuManager::ProcessDPadRightJustDown(void)
if ( pActiveMenuPage )
pActiveMenuPage->GoRightMenuOnPage();
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
break;
}
@@ -2585,14 +2585,14 @@ CMenuManager::ProcessDPadRightJustDown(void)
else if ( pActiveMenuPage->m_pCurrentControl == &MenuAudio_2 )
;
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
else if ( m_currentPage == PAGE_DISPLAY)
{
if ( pActiveMenuPage->m_pCurrentControl == &MenuDisplay_1 )
;
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
else
{
@@ -2601,17 +2601,17 @@ CMenuManager::ProcessDPadRightJustDown(void)
if ( MenuSaveDG_2.m_numOptions < 2 )
;
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
else if ( pActiveMenuPage->m_pCurrentControl == &MenuSaveLG_2 )
{
if ( MenuSaveLG_2.m_numOptions < 2 )
;
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
}
@@ -2635,10 +2635,10 @@ CMenuManager::ProcessDPadUpJustDown(void)
if ( MenuSaveZoneSSL_1.m_numOptions < 2 )
;
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
}
else
@@ -2653,7 +2653,7 @@ CMenuManager::ProcessDPadUpJustDown(void)
if ( pActiveMenuPage )
pActiveMenuPage->GoUpMenuOnPage();
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
break;
}
@@ -2668,17 +2668,17 @@ CMenuManager::ProcessDPadUpJustDown(void)
if ( MenuSaveDG_2.m_numOptions < 2 )
;
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
else if ( pActiveMenuPage->m_pCurrentControl == &MenuSaveLG_2 )
{
if ( MenuSaveLG_2.m_numOptions < 2 )
;
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
break;
@@ -2701,10 +2701,10 @@ CMenuManager::ProcessDPadDownJustDown(void)
if ( MenuSaveZoneSSL_1.m_numOptions < 2 )
;
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
}
else
@@ -2719,7 +2719,7 @@ CMenuManager::ProcessDPadDownJustDown(void)
if ( pActiveMenuPage )
pActiveMenuPage->GoDownMenuOnPage();
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
break;
}
@@ -2735,17 +2735,17 @@ CMenuManager::ProcessDPadDownJustDown(void)
if ( MenuSaveDG_2.m_numOptions < 2 )
;
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
else if ( pActiveMenuPage->m_pCurrentControl == &MenuSaveLG_2 )
{
if ( MenuSaveLG_2.m_numOptions < 2 )
;
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_DENIED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NAVIGATION, 0);
}
break;
}
@@ -2765,9 +2765,9 @@ CMenuManager::ProcessDPadTriangleJustDown(void)
if ( bIgnoreTriangleButton )
{
if ( m_bInSaveZone )
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_EXIT, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_BACK, 0);
else if ( pActiveMenuPage->m_pCurrentControl == &MenuSaveDG_2 || pActiveMenuPage->m_pCurrentControl == &MenuSaveLG_2 )
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_EXIT, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_BACK, 0);
}
else if ( !bIgnoreTriangleButton )
{
@@ -2779,7 +2779,7 @@ CMenuManager::ProcessDPadTriangleJustDown(void)
case PAGESTATE_HIGHLIGHTED:
m_pageState = PAGESTATE_NORMAL;
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_COMPLETED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NEW_PAGE, 0);
break;
case PAGESTATE_SELECTED:
@@ -2790,10 +2790,10 @@ CMenuManager::ProcessDPadTriangleJustDown(void)
if ( pActiveMenuPage->m_numControls == 1 )
{
m_pageState = PAGESTATE_NORMAL;
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_COMPLETED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NEW_PAGE, 0);
}
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_EXIT, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_BACK, 0);
}
break;
}
@@ -2813,7 +2813,7 @@ CMenuManager::ProcessDPadTriangleJustDown(void)
case PAGESTATE_HIGHLIGHTED:
m_pageState = PAGESTATE_NORMAL;
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_COMPLETED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NEW_PAGE, 0);
break;
case PAGESTATE_SELECTED:
@@ -2824,10 +2824,10 @@ CMenuManager::ProcessDPadTriangleJustDown(void)
if ( pActiveMenuPage->m_numControls == 1 )
{
m_pageState = PAGESTATE_NORMAL;
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_COMPLETED, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_NEW_PAGE, 0);
}
else
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_EXIT, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_BACK, 0);
}
break;
}
@@ -2844,7 +2844,7 @@ CMenuManager::ProcessDPadCrossJustDown(void)
if ( pActiveMenuPage )
pActiveMenuPage->SelectCurrentOptionUnderCursor();
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_SUCCESS, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_SETTING_CHANGE, 0);
}
else
{
@@ -2885,7 +2885,7 @@ CMenuManager::ProcessDPadCrossJustDown(void)
}
}
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_SUCCESS, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_SETTING_CHANGE, 0);
break;
}
@@ -2907,14 +2907,14 @@ CMenuManager::ProcessDPadCrossJustDown(void)
case PAGE_AUDIO:
{
if ( pActiveMenuPage->m_pCurrentControl != &MenuAudio_4 )
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_SUCCESS, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_SETTING_CHANGE, 0);
break;
}
default:
{
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_SUCCESS, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_SETTING_CHANGE, 0);
DMAudio.StopFrontEndTrack();
gMusicPlaying = false;
break;
@@ -2948,7 +2948,7 @@ CMenuManager::ProcessDPadCrossJustDown(void)
}
}
- DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_SUCCESS, 0);
+ DMAudio.PlayFrontEndSound(SOUND_FRONTEND_MENU_SETTING_CHANGE, 0);
break;
}
}
diff --git a/src/core/MenuScreens.cpp b/src/core/MenuScreens.cpp
index 7b66a27a..4685918e 100644
--- a/src/core/MenuScreens.cpp
+++ b/src/core/MenuScreens.cpp
@@ -1,5 +1,6 @@
#include "common.h"
#include "Frontend.h"
+#ifdef PC_MENU
// If you want to add new options, please don't do that here and see CustomFrontendOptionsPopulate in re3.cpp.
@@ -445,4 +446,6 @@ CMenuScreen aScreens[] = {
MENUACTION_CHANGEMENU, "FEDS_TB", SAVESLOT_NONE, MENUPAGE_NONE,
},
#endif
-}; \ No newline at end of file
+};
+
+#endif \ No newline at end of file
diff --git a/src/core/config.h b/src/core/config.h
index 98f031b3..ed36a493 100644
--- a/src/core/config.h
+++ b/src/core/config.h
@@ -216,22 +216,31 @@ enum Config {
#define REGISTER_START_BUTTON
// Hud, frontend and radar
-#define TRIANGULAR_BLIPS // height indicating triangular radar blips, as in VC
-#define PS2_SAVE_DIALOG // PS2 style save dialog with transparent black box
-// #define PS2_LIKE_MENU // An effort to recreate PS2 menu, cycling through tabs, different bg etc.
-#define MENU_MAP // VC-like menu map. Make sure you have new menu.txd
-#define SCROLLABLE_STATS_PAGE // only draggable by mouse atm
-#define TRIANGLE_BACK_BUTTON
-// #define CIRCLE_BACK_BUTTON
#define HUD_ENHANCEMENTS // Adjusts some aspects to make the HUD look/behave a little bit better.
#define BETA_SLIDING_TEXT
-#define CUSTOM_FRONTEND_OPTIONS
+#define TRIANGULAR_BLIPS // height indicating triangular radar blips, as in VC
+#define PC_MENU
+
+#ifndef PC_MENU
+# define PS2_MENU
+//# define PS2_MENU_USEALLPAGEICONS
+#else
+# define PS2_SAVE_DIALOG // PS2 style save dialog with transparent black box
+//# define PS2_LIKE_MENU // An effort to recreate PS2 menu, cycling through tabs, different bg etc.
+# define MENU_MAP // VC-like menu map. Make sure you have new menu.txd
+# define SCROLLABLE_STATS_PAGE // only draggable by mouse atm
+# define TRIANGLE_BACK_BUTTON
+//# define CIRCLE_BACK_BUTTON
+# define CUSTOM_FRONTEND_OPTIONS
+#endif
// Script
#define USE_DEBUG_SCRIPT_LOADER // Loads main.scm by default. Hold R for main_freeroam.scm and D for main_d.scm
#define USE_MEASUREMENTS_IN_METERS // makes game use meters instead of feet in script
#define USE_PRECISE_MEASUREMENT_CONVERTION // makes game convert feet to meeters more precisely
-#define MISSION_REPLAY // mobile feature
+#ifdef PC_MENU
+# define MISSION_REPLAY // mobile feature
+#endif
//#define SIMPLIER_MISSIONS // apply simplifications from mobile
#define USE_ADVANCED_SCRIPT_DEBUG_OUTPUT
#define SCRIPT_LOG_FILE_LEVEL 1 // 0 == no log, 1 == overwrite every frame, 2 == full log
diff --git a/src/core/re3.cpp b/src/core/re3.cpp
index 56ee9aa7..b21bff58 100644
--- a/src/core/re3.cpp
+++ b/src/core/re3.cpp
@@ -83,7 +83,7 @@ void ReloadFrontendOptions(void)
void LangPolSelect(int8 action)
{
if (action == FEOPTION_ACTION_SELECT) {
- FrontEndMenuManager.m_PrefsLanguage = LANGUAGE_POLISH;
+ FrontEndMenuManager.m_PrefsLanguage = CMenuManager::LANGUAGE_POLISH;
FrontEndMenuManager.m_bFrontEnd_ReloadObrTxtGxt = true;
FrontEndMenuManager.InitialiseChangedLanguageSettings();
FrontEndMenuManager.SaveSettings();
@@ -93,7 +93,7 @@ void LangPolSelect(int8 action)
void LangRusSelect(int8 action)
{
if (action == FEOPTION_ACTION_SELECT) {
- FrontEndMenuManager.m_PrefsLanguage = LANGUAGE_RUSSIAN;
+ FrontEndMenuManager.m_PrefsLanguage = CMenuManager::LANGUAGE_RUSSIAN;
FrontEndMenuManager.m_bFrontEnd_ReloadObrTxtGxt = true;
FrontEndMenuManager.InitialiseChangedLanguageSettings();
FrontEndMenuManager.SaveSettings();
@@ -103,7 +103,7 @@ void LangRusSelect(int8 action)
void LangJapSelect(int8 action)
{
if (action == FEOPTION_ACTION_SELECT) {
- FrontEndMenuManager.m_PrefsLanguage = LANGUAGE_JAPANESE;
+ FrontEndMenuManager.m_PrefsLanguage = CMenuManager::LANGUAGE_JAPANESE;
FrontEndMenuManager.m_bFrontEnd_ReloadObrTxtGxt = true;
FrontEndMenuManager.InitialiseChangedLanguageSettings();
FrontEndMenuManager.SaveSettings();
diff --git a/src/skel/win/win.cpp b/src/skel/win/win.cpp
index d923d93d..d7216d2e 100644
--- a/src/skel/win/win.cpp
+++ b/src/skel/win/win.cpp
@@ -1929,12 +1929,13 @@ WinMain(HINSTANCE instance,
StaticPatcher::Apply();
SystemParametersInfo(SPI_SETFOREGROUNDLOCKTIMEOUT, 0, nil, SPIF_SENDCHANGE);
+/*
// TODO: make this an option somewhere
AllocConsole();
freopen("CONIN$", "r", stdin);
freopen("CONOUT$", "w", stdout);
freopen("CONOUT$", "w", stderr);
-
+*/
/*
* Initialize the platform independent data.