diff --git a/Source/Common/Common.vcxproj b/Source/Common/Common.vcxproj
index c3308312f..549205118 100644
--- a/Source/Common/Common.vcxproj
+++ b/Source/Common/Common.vcxproj
@@ -61,7 +61,7 @@
-
+
\ No newline at end of file
diff --git a/Source/Common/Common.vcxproj.filters b/Source/Common/Common.vcxproj.filters
index d2f85956e..0cda762ed 100644
--- a/Source/Common/Common.vcxproj.filters
+++ b/Source/Common/Common.vcxproj.filters
@@ -88,10 +88,10 @@
Header Files
-
+
Header Files
-
+
Header Files
diff --git a/Source/Common/Trace.cpp b/Source/Common/Trace.cpp
index 8d03af00f..cbc31e39b 100644
--- a/Source/Common/Trace.cpp
+++ b/Source/Common/Trace.cpp
@@ -1,7 +1,10 @@
#include "stdafx.h"
-#include
-BOOL TraceClosed = FALSE;
+typedef std::map ModuleNameMap;
+
+uint32_t * g_ModuleLogLevel = NULL;
+static bool g_TraceClosed = false;
+static ModuleNameMap g_ModuleNames;
class CTraceLog
{
@@ -14,13 +17,65 @@ public:
}
~CTraceLog() { CloseTrace(); }
+ void TraceMessage(uint32_t module, uint8_t severity, const char * file, int line, const char * function, const char * Message);
+
CTraceModule * AddTraceModule(CTraceModule * TraceModule);
CTraceModule * RemoveTraceModule(CTraceModule * TraceModule);
void CloseTrace(void);
- void WriteTrace(TraceType Type, LPCTSTR Message);
- void WriteTraceF(TraceType Type, LPCTSTR strFormat, va_list args);
};
+CTraceLog & GetTraceObjet(void)
+{
+ static CTraceLog TraceLog;
+ return TraceLog;
+}
+
+void TraceSetModuleName(uint8_t module, const char * Name)
+{
+ g_ModuleNames.insert(ModuleNameMap::value_type(module, Name));
+}
+
+void WriteTraceFull(uint32_t module, uint8_t severity, const char * file, int line, const char * function, const char *format, ...)
+{
+ va_list args;
+ va_start(args, format);
+ size_t nlen = _vscprintf(format, args) + 1;
+ char * Message = (char *)alloca(nlen * sizeof(char));
+ Message[nlen - 1] = 0;
+ if (Message != NULL)
+ {
+ vsprintf(Message, format, args);
+ GetTraceObjet().TraceMessage(module, severity, file, line, function, Message);
+ }
+ va_end(args);
+}
+
+void CloseTrace(void)
+{
+ g_TraceClosed = true;
+ GetTraceObjet().CloseTrace();
+
+ if (g_ModuleLogLevel)
+ {
+ delete g_ModuleLogLevel;
+ g_ModuleLogLevel = NULL;
+ }
+}
+
+void TraceSetMaxModule(uint32_t MaxModule, uint8_t DefaultSeverity)
+{
+ if (g_ModuleLogLevel)
+ {
+ delete g_ModuleLogLevel;
+ g_ModuleLogLevel = NULL;
+ }
+ g_ModuleLogLevel = new uint32_t[MaxModule];
+ for (uint32_t i = 0; i < MaxModule; i++)
+ {
+ g_ModuleLogLevel[i] = DefaultSeverity;
+ }
+}
+
CTraceModule * CTraceLog::AddTraceModule(CTraceModule * TraceModule)
{
CGuard Guard(m_CS);
@@ -54,116 +109,22 @@ CTraceModule * CTraceLog::RemoveTraceModule(CTraceModule * TraceModule)
void CTraceLog::CloseTrace(void)
{
CGuard Guard(m_CS);
-
- for (int i = 0; i < (int)m_Modules.size(); i++)
- {
- if (m_Modules[i])
- delete m_Modules[i];
- }
m_Modules.clear();
}
-void CTraceLog::WriteTraceF(TraceType Type, LPCTSTR strFormat, va_list args)
-{
- const int nMaxSize = 32 * 1024;
- TCHAR pBuffer[nMaxSize];
-
- _vsntprintf(pBuffer, nMaxSize, strFormat, args);
- pBuffer[nMaxSize - 1] = 0;
- WriteTrace(Type, pBuffer);
-}
-
-void CTraceLog::WriteTrace(TraceType Type, LPCTSTR Message)
+void CTraceLog::TraceMessage(uint32_t module, uint8_t severity, const char * file, int line, const char * function, const char * Message)
{
CGuard Guard(m_CS);
- if (Type != TraceNone)
+ for (uint32_t i = 0, n = m_Modules.size(); i < n; i++)
{
- bool WriteToLog = false;
- for (int i = 0; i < (int)m_Modules.size(); i++)
- {
- if ((m_Modules[i]->GetTraceLevel() & Type) != 0)
- {
- WriteToLog = true;
- break;
- }
- }
- if (!WriteToLog) { return; }
- }
-
- if ((Type & TraceNoHeader) == 0)
- {
- TCHAR pBuffer[300];
- int nPos = 0;
-
- SYSTEMTIME sysTime;
- ::GetLocalTime(&sysTime);
-
- nPos = _stprintf(pBuffer, _T("%04d/%02d/%02d %02d:%02d:%02d.%03d %05d: "), sysTime.wYear,
- sysTime.wMonth, sysTime.wDay, sysTime.wHour, sysTime.wMinute, sysTime.wSecond, sysTime.wMilliseconds,
- ::GetCurrentThreadId()
- );
-
- // show the debug level
- if (Type == TraceNone) { nPos += _stprintf(pBuffer + nPos, _T("%s"), _T("None : ")); }
- else if ((Type & TraceError) != 0) { nPos += _stprintf(pBuffer + nPos, _T("%s"), _T("Error : ")); }
- else if ((Type & TraceSettings) != 0) { nPos += _stprintf(pBuffer + nPos, _T("%s"), _T("Setting: ")); }
- else if ((Type & TraceGfxPlugin) != 0) { nPos += _stprintf(pBuffer + nPos, _T("%s"), _T("Gfx : ")); }
- else if ((Type & TraceDebug) != 0) { nPos += _stprintf(pBuffer + nPos, _T("%s"), _T("Debug : ")); }
- else if ((Type & TraceRecompiler) != 0) { nPos += _stprintf(pBuffer + nPos, _T("%s"), _T("Recomp : ")); }
- else if ((Type & TraceRSP) != 0) { nPos += _stprintf(pBuffer + nPos, _T("%s"), _T("RSP : ")); }
- else if ((Type & TraceTLB) != 0) { nPos += _stprintf(pBuffer + nPos, _T("%s"), _T("TLB : ")); }
- else if ((Type & TraceValidate) != 0) { nPos += _stprintf(pBuffer + nPos, _T("%s"), _T("Valid : ")); }
- else if ((Type & TraceAudio) != 0) { nPos += _stprintf(pBuffer + nPos, _T("%s"), _T("Audio : ")); }
- else { nPos += _stprintf(pBuffer + nPos, _T("%s"), _T("Unknown: ")); }
-
- for (int i = 0; i < (int)m_Modules.size(); i++)
- {
- if ((m_Modules[i]->GetTraceLevel() & Type) != 0)
- {
- m_Modules[i]->Write(pBuffer, false);
- }
- }
- }
- for (int i = 0; i < (int)m_Modules.size(); i++)
- {
- if ((m_Modules[i]->GetTraceLevel() & Type) != 0)
- {
- m_Modules[i]->Write(Message, true);
- }
+ m_Modules[i]->Write(module, severity, file, line, function, Message);
}
}
-CTraceLog & GetTraceObjet(void)
+CTraceModule * TraceAddModule(CTraceModule * TraceModule)
{
- static CTraceLog TraceLog;
- return TraceLog;
-}
-
-void WriteTrace(TraceType Type, LPCTSTR Message)
-{
- if (TraceClosed)
- {
- return;
- }
- GetTraceObjet().WriteTrace(Type, Message);
-}
-
-void WriteTraceF(TraceType Type, LPCTSTR strFormat, ...)
-{
- if (TraceClosed)
- {
- return;
- }
- va_list args;
- va_start(args, strFormat);
- GetTraceObjet().WriteTraceF(Type, strFormat, args);
- va_end(args);
-}
-
-CTraceModule * AddTraceModule(CTraceModule * TraceModule)
-{
- if (TraceClosed)
+ if (g_TraceClosed)
{
return NULL;
}
@@ -171,27 +132,41 @@ CTraceModule * AddTraceModule(CTraceModule * TraceModule)
return TraceModule;
}
-CTraceModule * RemoveTraceModule(CTraceModule * TraceModule)
+CTraceModule * TraceRemoveModule(CTraceModule * TraceModule)
{
return GetTraceObjet().RemoveTraceModule(TraceModule);
}
-void CloseTrace(void)
+const char * TraceSeverity(uint8_t severity)
{
- TraceClosed = true;
- GetTraceObjet().CloseTrace();
+ switch (severity)
+ {
+ case TraceError: return "Error";
+ case TraceWarning: return "Warning";
+ case TraceNotice: return "Notice";
+ case TraceInfo: return "Info";
+ case TraceDebug: return "Debug";
+ case TraceVerbose: return "Verbose";
+ }
+
+ static stdstr Unknown;
+ Unknown.Format("Unknown (%d)", (int32_t)severity);
+ return Unknown.c_str();
}
-CTraceFileLog::CTraceFileLog(LPCTSTR FileName, bool FlushFile) :
-m_FlushFile(FlushFile)
+const char * TraceModule(uint32_t module)
{
- m_hLogFile.SetFlush(false);
- m_hLogFile.SetTruncateFile(true);
- m_hLogFile.SetMaxFileSize(5 * MB);
- m_hLogFile.Open(FileName, Log_Append);
+ ModuleNameMap::const_iterator itr = g_ModuleNames.find(module);
+ if (itr != g_ModuleNames.end())
+ {
+ return itr->second.c_str();
+ }
+ static stdstr Unknown;
+ Unknown.Format("Unknown (%d)", module);
+ return Unknown.c_str();
}
-CTraceFileLog::CTraceFileLog(LPCTSTR FileName, bool FlushFile, LOG_OPEN_MODE eMode, size_t dwMaxFileSize) :
+CTraceFileLog::CTraceFileLog(const char * FileName, bool FlushFile, LOG_OPEN_MODE eMode, size_t dwMaxFileSize) :
m_FlushFile(FlushFile)
{
enum { MB = 1024 * 1024 };
@@ -210,35 +185,32 @@ m_FlushFile(FlushFile)
CTraceFileLog::~CTraceFileLog()
{
- TraceClosed = true;
}
-void CTraceFileLog::Write(LPCTSTR Message, bool EndOfLine)
+void CTraceFileLog::Write(uint32_t module, uint8_t severity, const char * /*file*/, int /*line*/, const char * function, const char * Message)
{
if (!m_hLogFile.IsOpen()) { return; }
- CGuard Section(m_CriticalSection);
+ SYSTEMTIME sysTime;
+ ::GetLocalTime(&sysTime);
+ stdstr_f timestamp("%04d/%02d/%02d %02d:%02d:%02d.%03d %05d,", sysTime.wYear, sysTime.wMonth, sysTime.wDay, sysTime.wHour, sysTime.wMinute, sysTime.wSecond, sysTime.wMilliseconds, GetCurrentThreadId());
+
+ m_hLogFile.Log(timestamp.c_str());
+ m_hLogFile.Log(TraceSeverity(severity));
+ m_hLogFile.Log(",");
+ m_hLogFile.Log(TraceModule(module));
+ m_hLogFile.Log(",");
+ m_hLogFile.Log(function);
+ m_hLogFile.Log(",");
m_hLogFile.Log(Message);
- if (EndOfLine)
+ m_hLogFile.Log("\r\n");
+ if (m_FlushFile)
{
- m_hLogFile.Log(_T("\r\n"));
- if (m_FlushFile)
- {
- m_hLogFile.Flush();
- }
+ m_hLogFile.Flush();
}
}
void CTraceFileLog::SetFlushFile(bool bFlushFile)
{
m_FlushFile = bFlushFile;
-}
-
-void CDebugTraceLog::Write(const char * Message, bool EndOfLine)
-{
- OutputDebugString(Message);
- if (EndOfLine)
- {
- OutputDebugString("\n");
- }
}
\ No newline at end of file
diff --git a/Source/Common/Trace.h b/Source/Common/Trace.h
index e093589a4..3d1b310ce 100644
--- a/Source/Common/Trace.h
+++ b/Source/Common/Trace.h
@@ -1,43 +1,45 @@
#pragma once
-
-#include "CriticalSection.h"
#include "LogClass.h"
-class CTraceModule
+enum TraceSeverity
{
- TraceLevel m_Type;
+ TraceError = 0x00000001,
+ TraceWarning = 0x00000002,
+ TraceNotice = 0x00000003,
+ TraceInfo = 0x00000004,
+ TraceDebug = 0x00000005,
+ TraceVerbose = 0x00000006,
+};
-public:
- CTraceModule() { m_Type = TrLvError; }
- virtual ~CTraceModule() {}
-
- inline void SetTraceLevel(TraceLevel Type) { m_Type = Type; }
- inline TraceLevel GetTraceLevel(void) const { return m_Type; }
- virtual void Write(const char * Message, bool EndOfLine) = 0;
+__interface CTraceModule
+{
+ virtual void Write(uint32_t module, uint8_t severity, const char * file, int line, const char * function, const char * Message) = 0;
};
class CTraceFileLog : public CTraceModule
{
- enum { MB = 1024 * 1024 };
-
- CriticalSection m_CriticalSection;
- CLog m_hLogFile;
- bool m_FlushFile;
-
public:
- CTraceFileLog(const char * FileName, bool FlushFile = true);
CTraceFileLog(const char * FileName, bool FlushFile, LOG_OPEN_MODE eMode, size_t dwMaxFileSize = 5);
virtual ~CTraceFileLog();
- void Write(const char * Message, bool EndOfLine);
void SetFlushFile(bool bFlushFile);
+ void Write(uint32_t module, uint8_t severity, const char * file, int line, const char * function, const char * Message);
+
+private:
+ CLog m_hLogFile;
+ bool m_FlushFile;
};
-class CDebugTraceLog : public CTraceModule
-{
-public:
- void Write(const char * Message, bool EndOfLine);
-};
+#define WriteTrace(m, s, format, ...) if(g_ModuleLogLevel[(m)] >= (s)) { WriteTraceFull((m), (s), __FILE__, __LINE__, __FUNCTION__, (format), ## __VA_ARGS__); }
-CTraceModule * AddTraceModule(CTraceModule * TraceModule); // Must be created with new
-CTraceModule * RemoveTraceModule(CTraceModule * TraceModule); // Is not automaticly deleted
+CTraceModule * TraceAddModule(CTraceModule * TraceModule);
+CTraceModule * TraceRemoveModule(CTraceModule * TraceModule);
+const char * TraceSeverity(uint8_t severity);
+const char * TraceModule(uint32_t module);
+void TraceSetModuleName(uint8_t module, const char * Name);
+void CloseTrace(void);
+
+void WriteTraceFull(uint32_t module, uint8_t severity, const char * file, int line, const char * function, const char *format, ...);
+void TraceSetMaxModule(uint32_t MaxModule, uint8_t DefaultSeverity);
+
+extern uint32_t * g_ModuleLogLevel;
diff --git a/Source/Common/TraceDefs.h b/Source/Common/TraceDefs.h
deleted file mode 100644
index 2248215e4..000000000
--- a/Source/Common/TraceDefs.h
+++ /dev/null
@@ -1,31 +0,0 @@
-#pragma once
-
-enum TraceType
-{
- TraceNone = 0x00000000,
- TraceError = 0x00000001,
- TraceSettings = 0x00000002,
- TraceGfxPlugin = 0x00000004,
- TraceDebug = 0x00000010,
- TraceRecompiler = 0x00000020,
- TraceRSP = 0x00000040,
- TraceTLB = 0x00000080,
- TraceValidate = 0x00000100,
- TraceAudio = 0x00000200,
- TraceProtectedMem = 0x00000400,
- TraceNoHeader = 0x80000000,
-};
-
-enum TraceLevel
-{
- //Handle Existing Code
- TrLvError = TraceError,
- TrLv1 = TraceSettings | TrLvError,
- TrLv2 = TrLv1 | TraceDebug,
- TrlvGfxPlugin = TraceGfxPlugin,
- TrLvAll = ~TraceNoHeader,
-};
-
-void WriteTrace(TraceType Type, const char * Message);
-void WriteTraceF(TraceType Type, const char * strFormat, ...);
-void CloseTrace(void); //Free's all memory associated with trace
diff --git a/Source/Common/TraceModulesCommon.h b/Source/Common/TraceModulesCommon.h
new file mode 100644
index 000000000..6335bdc5e
--- /dev/null
+++ b/Source/Common/TraceModulesCommon.h
@@ -0,0 +1,7 @@
+#pragma once
+
+enum TraceModuleCommon
+{
+ TraceMD5,
+ MaxTraceModuleCommon,
+};
\ No newline at end of file
diff --git a/Source/Common/md5.cpp b/Source/Common/md5.cpp
index 86f4cbf42..c8f4340f5 100644
--- a/Source/Common/md5.cpp
+++ b/Source/Common/md5.cpp
@@ -40,7 +40,6 @@
*/
#include "stdafx.h"
-#include
// MD5 simple initialization method
MD5::MD5()
@@ -62,7 +61,7 @@ void MD5::update(const uint1 *input, uint4 input_length)
if (finalized) // so we can't update!
{
- WriteTrace(TraceError, _T("MD5::update: Can't update a finalized digest!"));
+ WriteTrace(TraceMD5, TraceError, "Can't update a finalized digest!");
return;
}
@@ -139,7 +138,7 @@ void MD5::finalize()
if (finalized)
{
- WriteTrace(TraceError, _T("MD5::finalize: Already finalized this digest!"));
+ WriteTrace(TraceMD5, TraceError, "Already finalized this digest!");
return;
}
@@ -168,7 +167,7 @@ MD5::MD5(CPath File)
init(); // must be called be all constructors
if (File.Exists())
{
- FILE * fp = fopen((LPCTSTR)File, _T("rb"));
+ FILE * fp = fopen((LPCTSTR)File, "rb");
if (fp)
{
update(fp);
@@ -202,7 +201,7 @@ const unsigned char *MD5::raw_digest()
{
if (!finalized)
{
- WriteTrace(TraceError, _T("MD5::raw_digest: Can't get digest if you haven't finalized the digest!"));
+ WriteTrace(TraceMD5, TraceError, "Can't get digest if you haven't finalized the digest!");
return ((unsigned char*) "");
}
return digest;
@@ -212,7 +211,7 @@ void MD5::get_digest(MD5Digest& extdigest)
{
if (!finalized)
{
- WriteTrace(TraceError, _T("MD5::get_digest: Can't get digest if you haven't finalized the digest!"));
+ WriteTrace(TraceMD5, TraceError, "Can't get digest if you haven't finalized the digest!");
memset(extdigest.digest, 0, sizeof(extdigest.digest));
return;
}
@@ -229,7 +228,7 @@ const char *MD5::hex_digest()
if (!finalized)
{
- WriteTrace(TraceError, _T("MD5::hex_digest: Can't get digest if you haven't finalized the digest!"));
+ WriteTrace(TraceMD5, TraceError, "Can't get digest if you haven't finalized the digest!");
return "";
}
char c[33];
diff --git a/Source/Common/stdafx.h b/Source/Common/stdafx.h
index e5f1eebbc..037b04c12 100644
--- a/Source/Common/stdafx.h
+++ b/Source/Common/stdafx.h
@@ -13,7 +13,7 @@
#include "IniFileClass.h"
#include "path.h"
#include "LogClass.h"
-#include "TraceDefs.h"
+#include "TraceModulesCommon.h"
#include "Trace.h"
#include "md5.h"
#include "SmartPointer.h"
diff --git a/Source/Project64-core/AppInit.cpp b/Source/Project64-core/AppInit.cpp
index be60eb1ba..dfbaf01fd 100644
--- a/Source/Project64-core/AppInit.cpp
+++ b/Source/Project64-core/AppInit.cpp
@@ -10,20 +10,23 @@
void FixDirectories(void);
static void IncreaseThreadPriority(void);
-
static CTraceFileLog * g_LogFile = NULL;
-void LogLevelChanged(CTraceFileLog * LogFile)
-{
- LogFile->SetTraceLevel((TraceLevel)g_Settings->LoadDword(Debugger_AppLogLevel));
-}
-
void LogFlushChanged(CTraceFileLog * LogFile)
{
LogFile->SetFlushFile(g_Settings->LoadDword(Debugger_AppLogFlush) != 0);
}
void InitializeLog(void)
+{
+#ifdef _DEBUG
+ TraceSetMaxModule(MaxTraceModuleProject64, TraceInfo);
+#else
+ TraceSetMaxModule(MaxTraceModuleProject64, TraceError);
+#endif
+}
+
+void AddLogModule(void)
{
CPath LogFilePath(CPath::MODULE_DIRECTORY);
LogFilePath.AppendDirectory("Logs");
@@ -34,15 +37,108 @@ void InitializeLog(void)
LogFilePath.SetNameExtension("Project64.log");
g_LogFile = new CTraceFileLog(LogFilePath, g_Settings->LoadDword(Debugger_AppLogFlush) != 0, Log_New, 500);
-#ifdef VALIDATE_DEBUG
- g_LogFile->SetTraceLevel((TraceLevel)(g_Settings->LoadDword(Debugger_AppLogLevel) | TraceValidate | TraceDebug));
-#else
- g_LogFile->SetTraceLevel((TraceLevel)g_Settings->LoadDword(Debugger_AppLogLevel));
-#endif
- AddTraceModule(g_LogFile);
+ TraceAddModule(g_LogFile);
+}
- g_Settings->RegisterChangeCB(Debugger_AppLogLevel, g_LogFile, (CSettings::SettingChangedFunc)LogLevelChanged);
+void SetTraceModuleNames(void)
+{
+ TraceSetModuleName(TraceMD5, "MD5");
+ TraceSetModuleName(TraceSettings, "Settings");
+ TraceSetModuleName(TraceUnknown, "Unknown");
+ TraceSetModuleName(TraceAppInit, "App Init");
+ TraceSetModuleName(TraceAppCleanup, "App Cleanup");
+ TraceSetModuleName(TraceN64System, "N64 System");
+ TraceSetModuleName(TracePlugins, "Plugins");
+ TraceSetModuleName(TraceGFXPlugin, "GFX Plugin");
+ TraceSetModuleName(TraceAudioPlugin, "Audio Plugin");
+ TraceSetModuleName(TraceControllerPlugin, "Controller Plugin");
+ TraceSetModuleName(TraceRSPPlugin, "RSP Plugin");
+ TraceSetModuleName(TraceRSP, "RSP");
+ TraceSetModuleName(TraceAudio, "Audio");
+ TraceSetModuleName(TraceRegisterCache, "Register Cache");
+ TraceSetModuleName(TraceRecompiler, "Recompiler");
+ TraceSetModuleName(TraceTLB, "TLB");
+ TraceSetModuleName(TraceProtectedMem, "Protected Memory");
+ TraceSetModuleName(TraceUserInterface, "User Interface");
+}
+
+void UpdateTraceLevel(void * /*NotUsed*/)
+{
+ g_ModuleLogLevel[TraceMD5] = (uint8_t)g_Settings->LoadDword(Debugger_TraceMD5);
+ g_ModuleLogLevel[TraceSettings] = (uint8_t)g_Settings->LoadDword(Debugger_TraceSettings);
+ g_ModuleLogLevel[TraceUnknown] = (uint8_t)g_Settings->LoadDword(Debugger_TraceUnknown);
+ g_ModuleLogLevel[TraceAppInit] = (uint8_t)g_Settings->LoadDword(Debugger_TraceAppInit);
+ g_ModuleLogLevel[TraceAppCleanup] = (uint8_t)g_Settings->LoadDword(Debugger_TraceAppCleanup);
+ g_ModuleLogLevel[TraceN64System] = (uint8_t)g_Settings->LoadDword(Debugger_TraceN64System);
+ g_ModuleLogLevel[TracePlugins] = (uint8_t)g_Settings->LoadDword(Debugger_TracePlugins);
+ g_ModuleLogLevel[TraceGFXPlugin] = (uint8_t)g_Settings->LoadDword(Debugger_TraceGFXPlugin);
+ g_ModuleLogLevel[TraceAudioPlugin] = (uint8_t)g_Settings->LoadDword(Debugger_TraceAudioPlugin);
+ g_ModuleLogLevel[TraceControllerPlugin] = (uint8_t)g_Settings->LoadDword(Debugger_TraceControllerPlugin);
+ g_ModuleLogLevel[TraceRSPPlugin] = (uint8_t)g_Settings->LoadDword(Debugger_TraceRSPPlugin);
+ g_ModuleLogLevel[TraceRSP] = (uint8_t)g_Settings->LoadDword(Debugger_TraceRSP);
+ g_ModuleLogLevel[TraceAudio] = (uint8_t)g_Settings->LoadDword(Debugger_TraceAudio);
+ g_ModuleLogLevel[TraceRegisterCache] = (uint8_t)g_Settings->LoadDword(Debugger_TraceRegisterCache);
+ g_ModuleLogLevel[TraceRecompiler] = (uint8_t)g_Settings->LoadDword(Debugger_TraceRecompiler);
+ g_ModuleLogLevel[TraceTLB] = (uint8_t)g_Settings->LoadDword(Debugger_TraceTLB);
+ g_ModuleLogLevel[TraceProtectedMem] = (uint8_t)g_Settings->LoadDword(Debugger_TraceProtectedMEM);
+ g_ModuleLogLevel[TraceUserInterface] = (uint8_t)g_Settings->LoadDword(Debugger_TraceUserInterface);
+}
+
+void SetupTrace(void)
+{
+ SetTraceModuleNames();
+ AddLogModule();
+
+ g_Settings->RegisterChangeCB(Debugger_TraceMD5, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->RegisterChangeCB(Debugger_TraceSettings, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->RegisterChangeCB(Debugger_TraceUnknown, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->RegisterChangeCB(Debugger_TraceAppInit, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->RegisterChangeCB(Debugger_TraceAppCleanup, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->RegisterChangeCB(Debugger_TraceN64System, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->RegisterChangeCB(Debugger_TracePlugins, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->RegisterChangeCB(Debugger_TraceGFXPlugin, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->RegisterChangeCB(Debugger_TraceAudioPlugin, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->RegisterChangeCB(Debugger_TraceControllerPlugin, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->RegisterChangeCB(Debugger_TraceRSPPlugin, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->RegisterChangeCB(Debugger_TraceRSP, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->RegisterChangeCB(Debugger_TraceAudio, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->RegisterChangeCB(Debugger_TraceRegisterCache, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->RegisterChangeCB(Debugger_TraceRecompiler, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->RegisterChangeCB(Debugger_TraceTLB, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->RegisterChangeCB(Debugger_TraceProtectedMEM, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->RegisterChangeCB(Debugger_TraceUserInterface, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
g_Settings->RegisterChangeCB(Debugger_AppLogFlush, g_LogFile, (CSettings::SettingChangedFunc)LogFlushChanged);
+ UpdateTraceLevel(NULL);
+
+ WriteTrace(TraceAppInit, TraceInfo, "Application Starting %s", VER_FILE_VERSION_STR);
+}
+
+void CleanupTrace(void)
+{
+ WriteTrace(TraceAppCleanup, TraceDebug, "Done");
+
+ g_Settings->UnregisterChangeCB(Debugger_TraceMD5, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->UnregisterChangeCB(Debugger_TraceSettings, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->UnregisterChangeCB(Debugger_TraceUnknown, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->UnregisterChangeCB(Debugger_TraceAppInit, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->UnregisterChangeCB(Debugger_TraceAppCleanup, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->UnregisterChangeCB(Debugger_TraceN64System, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->UnregisterChangeCB(Debugger_TracePlugins, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->UnregisterChangeCB(Debugger_TraceGFXPlugin, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->UnregisterChangeCB(Debugger_TraceAudioPlugin, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->UnregisterChangeCB(Debugger_TraceControllerPlugin, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->UnregisterChangeCB(Debugger_TraceRSPPlugin, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->UnregisterChangeCB(Debugger_TraceRSP, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->UnregisterChangeCB(Debugger_TraceAudio, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->UnregisterChangeCB(Debugger_TraceRegisterCache, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->UnregisterChangeCB(Debugger_TraceRecompiler, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->UnregisterChangeCB(Debugger_TraceTLB, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->UnregisterChangeCB(Debugger_TraceProtectedMEM, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->UnregisterChangeCB(Debugger_TraceUserInterface, NULL, (CSettings::SettingChangedFunc)UpdateTraceLevel);
+ g_Settings->UnregisterChangeCB(Debugger_AppLogFlush, g_LogFile, (CSettings::SettingChangedFunc)LogFlushChanged);
+
+ CloseTrace();
+ if (g_LogFile) { delete g_LogFile; g_LogFile = NULL; }
}
void AppInit(CNotification * Notify)
@@ -50,8 +146,7 @@ void AppInit(CNotification * Notify)
try
{
g_Notify = Notify;
-
- FixDirectories();
+ InitializeLog();
stdstr_f AppName("Project64 %s", VER_FILE_VERSION_STR);
IncreaseThreadPriority();
@@ -67,13 +162,12 @@ void AppInit(CNotification * Notify)
g_Settings->Initialize(AppName.c_str());
}
- InitializeLog();
-
- WriteTrace(TraceDebug, __FUNCTION__ ": Application Starting");
+ SetupTrace();
CMipsMemoryVM::ReserveMemory();
+ FixDirectories();
//Create the plugin container
- WriteTrace(TraceDebug, __FUNCTION__ ": Create Plugins");
+ WriteTrace(TraceAppInit, TraceInfo, "Create Plugins");
g_Plugins = new CPlugins(g_Settings->LoadStringVal(Directory_Plugin));
g_Lang = new CLanguage();
@@ -88,9 +182,7 @@ void AppInit(CNotification * Notify)
void AppCleanup(void)
{
- g_Settings->UnregisterChangeCB(Debugger_AppLogLevel, g_LogFile, (CSettings::SettingChangedFunc)LogLevelChanged);
- g_Settings->UnregisterChangeCB(Debugger_AppLogFlush, g_LogFile, (CSettings::SettingChangedFunc)LogFlushChanged);
- WriteTrace(TraceDebug, __FUNCTION__ ": cleaning up global objects");
+ WriteTrace(TraceAppCleanup, TraceDebug, "cleaning up global objects");
if (g_Rom) { delete g_Rom; g_Rom = NULL; }
if (g_Plugins) { delete g_Plugins; g_Plugins = NULL; }
@@ -98,9 +190,7 @@ void AppCleanup(void)
if (g_Lang) { delete g_Lang; g_Lang = NULL; }
CMipsMemoryVM::FreeReservedMemory();
-
- WriteTrace(TraceDebug, __FUNCTION__ ": Done");
- CloseTrace();
+ CleanupTrace();
}
void FixDirectories(void)
@@ -109,10 +199,6 @@ void FixDirectories(void)
Directory.AppendDirectory("Config");
if (!Directory.DirectoryExists()) Directory.DirectoryCreate();
- Directory.UpDirectory();
- Directory.AppendDirectory("Logs");
- if (!Directory.DirectoryExists()) Directory.DirectoryCreate();
-
Directory.UpDirectory();
Directory.AppendDirectory("Save");
if (!Directory.DirectoryExists()) Directory.DirectoryCreate();
@@ -130,4 +216,4 @@ void FixDirectories(void)
void IncreaseThreadPriority(void)
{
SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_ABOVE_NORMAL);
-}
+}
\ No newline at end of file
diff --git a/Source/Project64-core/N64System/Mips/Audio.cpp b/Source/Project64-core/N64System/Mips/Audio.cpp
index 57260785c..6409a34f8 100644
--- a/Source/Project64-core/N64System/Mips/Audio.cpp
+++ b/Source/Project64-core/N64System/Mips/Audio.cpp
@@ -34,30 +34,30 @@ void CAudio::Reset()
uint32_t CAudio::GetLength()
{
- WriteTraceF(TraceAudio, __FUNCTION__ ": Start (m_SecondBuff = %d)", m_SecondBuff);
+ WriteTrace(TraceAudio, TraceDebug, "Start (m_SecondBuff = %d)", m_SecondBuff);
uint32_t TimeLeft = g_SystemTimer->GetTimer(CSystemTimer::AiTimerInterrupt), Res = 0;
if (TimeLeft > 0)
{
Res = (TimeLeft / m_CountsPerByte);
}
- WriteTraceF(TraceAudio, __FUNCTION__ ": Done (res = %d, TimeLeft = %d)", Res, TimeLeft);
+ WriteTrace(TraceAudio, TraceDebug, "Done (res = %d, TimeLeft = %d)", Res, TimeLeft);
return (Res + 3)&~3;
}
uint32_t CAudio::GetStatus()
{
- WriteTraceF(TraceAudio, __FUNCTION__ ": m_Status = %X", m_Status);
+ WriteTrace(TraceAudio, TraceDebug, "m_Status = %X", m_Status);
return m_Status;
}
void CAudio::LenChanged()
{
- WriteTraceF(TraceAudio, __FUNCTION__ ": Start (g_Reg->AI_LEN_REG = %d)", g_Reg->AI_LEN_REG);
+ WriteTrace(TraceAudio, TraceDebug, "Start (g_Reg->AI_LEN_REG = %d)", g_Reg->AI_LEN_REG);
if (g_Reg->AI_LEN_REG != 0)
{
if (g_Reg->AI_LEN_REG >= 0x40000)
{
- WriteTraceF(TraceAudio, __FUNCTION__ ": *** Ignoring Write, To Large (%X)", g_Reg->AI_LEN_REG);
+ WriteTrace(TraceAudio, TraceDebug, "*** Ignoring Write, To Large (%X)", g_Reg->AI_LEN_REG);
}
else
{
@@ -67,12 +67,12 @@ void CAudio::LenChanged()
{
if (AudioLeft == 0)
{
- WriteTraceF(TraceAudio, __FUNCTION__ ": Set Timer AI_LEN_REG: %d m_CountsPerByte: %d", g_Reg->AI_LEN_REG, m_CountsPerByte);
+ WriteTrace(TraceAudio, TraceDebug, "Set Timer AI_LEN_REG: %d m_CountsPerByte: %d", g_Reg->AI_LEN_REG, m_CountsPerByte);
g_SystemTimer->SetTimer(CSystemTimer::AiTimerInterrupt, g_Reg->AI_LEN_REG * m_CountsPerByte, false);
}
else
{
- WriteTraceF(TraceAudio, __FUNCTION__ ": Increasing Second Buffer (m_SecondBuff %d Increase: %d)", m_SecondBuff, g_Reg->AI_LEN_REG);
+ WriteTrace(TraceAudio, TraceDebug, "Increasing Second Buffer (m_SecondBuff %d Increase: %d)", m_SecondBuff, g_Reg->AI_LEN_REG);
m_SecondBuff += g_Reg->AI_LEN_REG;
m_Status |= ai_full;
}
@@ -85,7 +85,7 @@ void CAudio::LenChanged()
}
else
{
- WriteTraceF(TraceAudio, __FUNCTION__ ": *** Reset Timer to 0");
+ WriteTrace(TraceAudio, TraceDebug, "*** Reset Timer to 0");
g_SystemTimer->StopTimer(CSystemTimer::AiTimerBusy);
g_SystemTimer->StopTimer(CSystemTimer::AiTimerInterrupt);
m_SecondBuff = 0;
@@ -96,12 +96,12 @@ void CAudio::LenChanged()
{
g_Plugins->Audio()->AiLenChanged();
}
- WriteTraceF(TraceAudio, __FUNCTION__ ": Done");
+ WriteTrace(TraceAudio, TraceDebug, "Done");
}
void CAudio::InterruptTimerDone()
{
- WriteTraceF(TraceAudio, __FUNCTION__ ": Start (m_SecondBuff = %d)", m_SecondBuff);
+ WriteTrace(TraceAudio, TraceDebug, "Start (m_SecondBuff = %d)", m_SecondBuff);
m_Status &= ~ai_full;
g_Reg->MI_INTR_REG |= MI_INTR_AI;
g_Reg->CheckInterrupts();
@@ -118,12 +118,12 @@ void CAudio::InterruptTimerDone()
{
g_System->SyncToAudio();
}
- WriteTrace(TraceAudio, __FUNCTION__ ": Done");
+ WriteTrace(TraceAudio, TraceDebug, "Done");
}
void CAudio::BusyTimerDone()
{
- WriteTraceF(TraceAudio, __FUNCTION__ ": Start (m_SecondBuff = %d)", m_SecondBuff);
+ WriteTrace(TraceAudio, TraceDebug, "Start (m_SecondBuff = %d)", m_SecondBuff);
g_Notify->BreakPoint(__FILE__, __LINE__);
m_Status &= ~ai_busy;
}
@@ -139,7 +139,7 @@ void CAudio::SetViIntr(uint32_t VI_INTR_TIME)
void CAudio::SetFrequency(uint32_t Dacrate, uint32_t System)
{
- WriteTraceF(TraceAudio, __FUNCTION__ "(Dacrate: %X System: %d): AI_BITRATE_REG = %X", Dacrate, System, g_Reg->AI_BITRATE_REG);
+ WriteTrace(TraceAudio, TraceDebug, "(Dacrate: %X System: %d): AI_BITRATE_REG = %X", Dacrate, System, g_Reg->AI_BITRATE_REG);
uint32_t Frequency;
switch (System)
diff --git a/Source/Project64-core/N64System/Mips/Eeprom.cpp b/Source/Project64-core/N64System/Mips/Eeprom.cpp
index 03d8f50b1..416a5613e 100644
--- a/Source/Project64-core/N64System/Mips/Eeprom.cpp
+++ b/Source/Project64-core/N64System/Mips/Eeprom.cpp
@@ -160,7 +160,7 @@ void CEeprom::LoadEeprom()
FILE_ATTRIBUTE_NORMAL | FILE_FLAG_RANDOM_ACCESS, NULL);
if (m_hFile == INVALID_HANDLE_VALUE)
{
- WriteTraceF(TraceError, __FUNCTION__ ": Failed to open (%s), ReadOnly = %d, LastError = %X", (LPCTSTR)FileName, m_ReadOnly, GetLastError());
+ WriteTrace(TraceN64System, TraceError, "Failed to open (%s), ReadOnly = %d, LastError = %X", (LPCTSTR)FileName, m_ReadOnly, GetLastError());
g_Notify->DisplayError(GS(MSG_FAIL_OPEN_EEPROM));
return;
}
diff --git a/Source/Project64-core/N64System/Mips/FlashRam.cpp b/Source/Project64-core/N64System/Mips/FlashRam.cpp
index a47cfc3b5..afa4697ba 100644
--- a/Source/Project64-core/N64System/Mips/FlashRam.cpp
+++ b/Source/Project64-core/N64System/Mips/FlashRam.cpp
@@ -150,7 +150,7 @@ bool CFlashram::LoadFlashram()
FILE_ATTRIBUTE_NORMAL | FILE_FLAG_RANDOM_ACCESS, NULL);
if (m_hFile == INVALID_HANDLE_VALUE)
{
- WriteTraceF(TraceError, __FUNCTION__ ": Failed to open (%s), ReadOnly = %d, LastError = %X", (LPCTSTR)FileName, m_ReadOnly, GetLastError());
+ WriteTrace(TraceN64System, TraceError, "Failed to open (%s), ReadOnly = %d, LastError = %X", (LPCTSTR)FileName, m_ReadOnly, GetLastError());
g_Notify->DisplayError(GS(MSG_FAIL_OPEN_FLASH));
return false;
}
diff --git a/Source/Project64-core/N64System/Mips/MemoryVirtualMem.cpp b/Source/Project64-core/N64System/Mips/MemoryVirtualMem.cpp
index 4d4663c3a..2755df8b9 100644
--- a/Source/Project64-core/N64System/Mips/MemoryVirtualMem.cpp
+++ b/Source/Project64-core/N64System/Mips/MemoryVirtualMem.cpp
@@ -143,7 +143,7 @@ bool CMipsMemoryVM::Initialize()
}
if (m_RDRAM == NULL)
{
- WriteTraceF(TraceError, __FUNCTION__ ": Failed to Reserve RDRAM (Size: 0x%X)", 0x20000000);
+ WriteTrace(TraceN64System, TraceError, "Failed to Reserve RDRAM (Size: 0x%X)", 0x20000000);
FreeMemory();
return false;
}
@@ -151,14 +151,14 @@ bool CMipsMemoryVM::Initialize()
m_AllocatedRdramSize = g_Settings->LoadDword(Game_RDRamSize);
if (VirtualAlloc(m_RDRAM, m_AllocatedRdramSize, MEM_COMMIT, PAGE_READWRITE) == NULL)
{
- WriteTraceF(TraceError, __FUNCTION__ ": Failed to Allocate RDRAM (Size: 0x%X)", m_AllocatedRdramSize);
+ WriteTrace(TraceN64System, TraceError, "Failed to Allocate RDRAM (Size: 0x%X)", m_AllocatedRdramSize);
FreeMemory();
return false;
}
if (VirtualAlloc(m_RDRAM + 0x04000000, 0x2000, MEM_COMMIT, PAGE_READWRITE) == NULL)
{
- WriteTraceF(TraceError, __FUNCTION__ ": Failed to Allocate DMEM/IMEM (Size: 0x%X)", 0x2000);
+ WriteTrace(TraceN64System, TraceError, "Failed to Allocate DMEM/IMEM (Size: 0x%X)", 0x2000);
FreeMemory();
return false;
}
@@ -173,7 +173,7 @@ bool CMipsMemoryVM::Initialize()
m_RomSize = g_Rom->GetRomSize();
if (VirtualAlloc(m_Rom, g_Rom->GetRomSize(), MEM_COMMIT, PAGE_READWRITE) == NULL)
{
- WriteTraceF(TraceError, __FUNCTION__ ": Failed to Allocate Rom (Size: 0x%X)", g_Rom->GetRomSize());
+ WriteTrace(TraceN64System, TraceError, "Failed to Allocate Rom (Size: 0x%X)", g_Rom->GetRomSize());
FreeMemory();
return false;
}
@@ -198,7 +198,7 @@ bool CMipsMemoryVM::Initialize()
);
if (m_TLB_ReadMap == NULL)
{
- WriteTraceF(TraceError, __FUNCTION__": Failed to Allocate m_TLB_ReadMap (Size: 0x%X)", 0xFFFFF * sizeof(size_t));
+ WriteTrace(TraceN64System, TraceError, "Failed to Allocate m_TLB_ReadMap (Size: 0x%X)", 0xFFFFF * sizeof(size_t));
FreeMemory();
return false;
}
@@ -211,7 +211,7 @@ bool CMipsMemoryVM::Initialize()
);
if (m_TLB_WriteMap == NULL)
{
- WriteTraceF(TraceError, __FUNCTION__": Failed to Allocate m_TLB_WriteMap (Size: 0x%X)", 0xFFFFF * sizeof(size_t));
+ WriteTrace(TraceN64System, TraceError, "Failed to Allocate m_TLB_WriteMap (Size: 0x%X)", 0xFFFFF * sizeof(size_t));
FreeMemory();
return false;
}
@@ -3455,7 +3455,7 @@ void CMipsMemoryVM::UpdateFieldSerration(uint32_t interlaced)
void CMipsMemoryVM::ProtectMemory(uint32_t StartVaddr, uint32_t EndVaddr)
{
- WriteTraceF(TraceProtectedMem, __FUNCTION__ ": StartVaddr: %08X EndVaddr: %08X", StartVaddr, EndVaddr);
+ WriteTrace(TraceProtectedMem, TraceDebug, "StartVaddr: %08X EndVaddr: %08X", StartVaddr, EndVaddr);
if (!ValidVaddr(StartVaddr) || !ValidVaddr(EndVaddr))
{
return;
@@ -3482,14 +3482,14 @@ void CMipsMemoryVM::ProtectMemory(uint32_t StartVaddr, uint32_t EndVaddr)
//Protect that memory address space
DWORD OldProtect;
uint8_t * MemLoc = Rdram() + StartPAddr;
- WriteTraceF(TraceProtectedMem, __FUNCTION__ ": Paddr: %08X Length: %X", StartPAddr, Length);
+ WriteTrace(TraceProtectedMem, TraceDebug, "Paddr: %08X Length: %X", StartPAddr, Length);
VirtualProtect(MemLoc, Length, PAGE_READONLY, &OldProtect);
}
void CMipsMemoryVM::UnProtectMemory(uint32_t StartVaddr, uint32_t EndVaddr)
{
- WriteTraceF(TraceProtectedMem, __FUNCTION__ ": StartVaddr: %08X EndVaddr: %08X", StartVaddr, EndVaddr);
+ WriteTrace(TraceProtectedMem, TraceDebug, "StartVaddr: %08X EndVaddr: %08X", StartVaddr, EndVaddr);
if (!ValidVaddr(StartVaddr) || !ValidVaddr(EndVaddr)) { return; }
//Get Physical Addresses passed
@@ -5432,7 +5432,7 @@ void CMipsMemoryVM::RdramChanged(CMipsMemoryVM * _this)
);
if (result == NULL)
{
- WriteTrace(TraceError, __FUNCTION__": failed to allocate extended memory");
+ WriteTrace(TraceN64System, TraceError, "failed to allocate extended memory");
g_Notify->FatalError(GS(MSG_MEM_ALLOC_ERROR));
}
}
diff --git a/Source/Project64-core/N64System/Mips/Mempak.cpp b/Source/Project64-core/N64System/Mips/Mempak.cpp
index a1ea04063..b9f11b9c8 100644
--- a/Source/Project64-core/N64System/Mips/Mempak.cpp
+++ b/Source/Project64-core/N64System/Mips/Mempak.cpp
@@ -83,7 +83,7 @@ void LoadMempak(int Control)
if (hMempakFile[Control] == INVALID_HANDLE_VALUE)
{
- WriteTraceF(TraceError, __FUNCTION__ ": Failed to open (%s), lastError = %X", (LPCTSTR)FileName, GetLastError());
+ WriteTrace(TraceN64System, TraceError, "Failed to open (%s), lastError = %X", (LPCTSTR)FileName, GetLastError());
return;
}
diff --git a/Source/Project64-core/N64System/Mips/Sram.cpp b/Source/Project64-core/N64System/Mips/Sram.cpp
index 8e42e8021..601a34edf 100644
--- a/Source/Project64-core/N64System/Mips/Sram.cpp
+++ b/Source/Project64-core/N64System/Mips/Sram.cpp
@@ -45,7 +45,7 @@ bool CSram::LoadSram()
FILE_ATTRIBUTE_NORMAL | FILE_FLAG_RANDOM_ACCESS, NULL);
if (m_hFile == INVALID_HANDLE_VALUE)
{
- WriteTraceF(TraceError, __FUNCTION__ ": Failed to open (%s), ReadOnly = %d, LastError = %X", (LPCTSTR)FileName, m_ReadOnly, GetLastError());
+ WriteTrace(TraceN64System, TraceError, "Failed to open (%s), ReadOnly = %d, LastError = %X", (LPCTSTR)FileName, m_ReadOnly, GetLastError());
return false;
}
SetFilePointer(m_hFile, 0, NULL, FILE_BEGIN);
diff --git a/Source/Project64-core/N64System/Mips/SystemTiming.cpp b/Source/Project64-core/N64System/Mips/SystemTiming.cpp
index f61f30da5..0a08d2ff0 100644
--- a/Source/Project64-core/N64System/Mips/SystemTiming.cpp
+++ b/Source/Project64-core/N64System/Mips/SystemTiming.cpp
@@ -214,7 +214,7 @@ void CSystemTimer::TimerDone()
}
catch (...)
{
- WriteTraceF(TraceError, __FUNCTION__ ": Exception caught\nFile: %s\nLine: %d", __FILE__, __LINE__);
+ WriteTrace(TraceN64System, TraceError, "Exception caught\nFile: %s\nLine: %d", __FILE__, __LINE__);
}
g_Reg->MI_INTR_REG |= MI_INTR_VI;
g_Reg->CheckInterrupts();
diff --git a/Source/Project64-core/N64System/Mips/TLBclass.cpp b/Source/Project64-core/N64System/Mips/TLBclass.cpp
index faa257e8c..dbb154f87 100644
--- a/Source/Project64-core/N64System/Mips/TLBclass.cpp
+++ b/Source/Project64-core/N64System/Mips/TLBclass.cpp
@@ -16,17 +16,17 @@
CTLB::CTLB(CTLB_CB * CallBack) :
m_CB(CallBack)
{
- WriteTrace(TraceTLB, __FUNCTION__ ": Start");
+ WriteTrace(TraceTLB, TraceDebug, "Start");
memset(m_tlb, 0, sizeof(m_tlb));
memset(m_FastTlb, 0, sizeof(m_FastTlb));
Reset(true);
- WriteTrace(TraceTLB, __FUNCTION__ ": Done");
+ WriteTrace(TraceTLB, TraceDebug, "Done");
}
CTLB::~CTLB()
{
- WriteTrace(TraceTLB, __FUNCTION__ ": Start");
- WriteTrace(TraceTLB, __FUNCTION__ ": Done");
+ WriteTrace(TraceTLB, TraceDebug, "Start");
+ WriteTrace(TraceTLB, TraceDebug, "Done");
}
void CTLB::Reset(bool InvalidateTLB)
@@ -79,7 +79,7 @@ void CTLB::Probe()
{
int Counter;
- WriteTrace(TraceTLB, __FUNCTION__ ": Start");
+ WriteTrace(TraceTLB, TraceDebug, "Start");
g_Reg->INDEX_REGISTER |= 0x80000000;
for (Counter = 0; Counter < 32; Counter++)
{
@@ -106,7 +106,7 @@ void CTLB::Probe()
}
}
}
- WriteTrace(TraceTLB, __FUNCTION__ ": Done");
+ WriteTrace(TraceTLB, TraceDebug, "Done");
}
void CTLB::ReadEntry()
@@ -123,7 +123,7 @@ void CTLB::WriteEntry(int index, bool Random)
{
int FastIndx;
- WriteTraceF(TraceTLB, __FUNCTION__ ": %02d %d %08X %08X %08X %08X ", index, Random, g_Reg->PAGE_MASK_REGISTER, g_Reg->ENTRYHI_REGISTER, g_Reg->ENTRYLO0_REGISTER, g_Reg->ENTRYLO1_REGISTER);
+ WriteTrace(TraceTLB, TraceDebug, "%02d %d %08X %08X %08X %08X ", index, Random, g_Reg->PAGE_MASK_REGISTER, g_Reg->ENTRYHI_REGISTER, g_Reg->ENTRYLO0_REGISTER, g_Reg->ENTRYLO1_REGISTER);
//Check to see if entry is unmapping it self
if (m_tlb[index].EntryDefined)
@@ -133,14 +133,14 @@ void CTLB::WriteEntry(int index, bool Random)
*_PROGRAM_COUNTER < m_FastTlb[FastIndx].VEND &&
m_FastTlb[FastIndx].ValidEntry && m_FastTlb[FastIndx].VALID)
{
- WriteTraceF(TraceTLB, __FUNCTION__ ": Ignored PC: %X VAddr Start: %X VEND: %X", *_PROGRAM_COUNTER, m_FastTlb[FastIndx].VSTART, m_FastTlb[FastIndx].VEND);
+ WriteTrace(TraceTLB, TraceDebug, "Ignored PC: %X VAddr Start: %X VEND: %X", *_PROGRAM_COUNTER, m_FastTlb[FastIndx].VSTART, m_FastTlb[FastIndx].VEND);
return;
}
if (*_PROGRAM_COUNTER >= m_FastTlb[FastIndx + 1].VSTART &&
*_PROGRAM_COUNTER < m_FastTlb[FastIndx + 1].VEND &&
m_FastTlb[FastIndx + 1].ValidEntry && m_FastTlb[FastIndx + 1].VALID)
{
- WriteTraceF(TraceTLB, __FUNCTION__ ": Ignored PC: %X VAddr Start: %X VEND: %X", *_PROGRAM_COUNTER, m_FastTlb[FastIndx + 1].VSTART, m_FastTlb[FastIndx + 1].VEND);
+ WriteTrace(TraceTLB, TraceDebug, "Ignored PC: %X VAddr Start: %X VEND: %X", *_PROGRAM_COUNTER, m_FastTlb[FastIndx + 1].VSTART, m_FastTlb[FastIndx + 1].VEND);
return;
}
}
diff --git a/Source/Project64-core/N64System/N64Class.cpp b/Source/Project64-core/N64System/N64Class.cpp
index 13d18855f..5d2eee952 100644
--- a/Source/Project64-core/N64System/N64Class.cpp
+++ b/Source/Project64-core/N64System/N64Class.cpp
@@ -180,7 +180,7 @@ void CN64System::ExternalEvent(SystemEvent action)
}
break;
default:
- WriteTraceF(TraceError, __FUNCTION__ ": Unknown event %d", action);
+ WriteTrace(TraceN64System, TraceError, "Unknown event %d", action);
g_Notify->BreakPoint(__FILE__, __LINE__);
}
}
@@ -194,22 +194,22 @@ bool CN64System::RunFileImage(const char * FileLoc)
}
//Mark the rom as loading
- WriteTrace(TraceDebug, __FUNCTION__ ": Mark Rom as loading");
+ WriteTrace(TraceN64System, TraceDebug, "Mark Rom as loading");
g_Settings->SaveString(Game_File, "");
g_Settings->SaveBool(GameRunning_LoadingInProgress, true);
//Try to load the passed N64 rom
if (g_Rom == NULL)
{
- WriteTrace(TraceDebug, __FUNCTION__ ": Allocating global rom object");
+ WriteTrace(TraceN64System, TraceDebug, "Allocating global rom object");
g_Rom = new CN64Rom();
}
else
{
- WriteTrace(TraceDebug, __FUNCTION__ ": Use existing global rom object");
+ WriteTrace(TraceN64System, TraceDebug, "Use existing global rom object");
}
- WriteTraceF(TraceDebug, __FUNCTION__ ": Loading \"%s\"", FileLoc);
+ WriteTrace(TraceN64System, TraceDebug, "Loading \"%s\"", FileLoc);
if (g_Rom->LoadN64Image(FileLoc))
{
g_System->RefreshGameSettings();
@@ -228,7 +228,7 @@ bool CN64System::RunFileImage(const char * FileLoc)
}
else
{
- WriteTraceF(TraceError, __FUNCTION__ ": LoadN64Image failed (\"%s\")", FileLoc);
+ WriteTrace(TraceN64System, TraceError, "LoadN64Image failed (\"%s\")", FileLoc);
g_Notify->DisplayError(g_Rom->GetError());
delete g_Rom;
g_Rom = NULL;
@@ -252,18 +252,18 @@ bool CN64System::EmulationStarting(void * hThread, uint32_t ThreadId)
{
bool bRes = true;
- WriteTrace(TraceDebug, __FUNCTION__ ": Setting N64 system as active");
+ WriteTrace(TraceN64System, TraceDebug, "Setting N64 system as active");
if (g_BaseSystem->SetActiveSystem(true))
{
g_BaseSystem->m_CPU_Handle = hThread;
g_BaseSystem->m_CPU_ThreadID = ThreadId;
- WriteTrace(TraceDebug, __FUNCTION__ ": Setting up N64 system done");
+ WriteTrace(TraceN64System, TraceDebug, "Setting up N64 system done");
g_Settings->SaveBool(GameRunning_LoadingInProgress, false);
try
{
- WriteTrace(TraceDebug, __FUNCTION__ ": Game set to auto start, starting");
+ WriteTrace(TraceN64System, TraceDebug, "Game set to auto start, starting");
g_BaseSystem->StartEmulation2(false);
- WriteTrace(TraceDebug, __FUNCTION__ ": Game Done");
+ WriteTrace(TraceN64System, TraceDebug, "Game Done");
}
catch (...)
{
@@ -272,7 +272,7 @@ bool CN64System::EmulationStarting(void * hThread, uint32_t ThreadId)
}
else
{
- WriteTrace(TraceError, __FUNCTION__ ": SetActiveSystem failed");
+ WriteTrace(TraceN64System, TraceError, "SetActiveSystem failed");
g_Notify->DisplayError(__FUNCTIONW__ L": Failed to Initialize N64 System");
g_Settings->SaveBool(GameRunning_LoadingInProgress, false);
bRes = false;
@@ -284,7 +284,7 @@ void CN64System::StartEmulation2(bool NewThread)
{
if (NewThread)
{
- WriteTrace(TraceDebug, __FUNCTION__ ": Starting");
+ WriteTrace(TraceN64System, TraceDebug, "Starting");
if (bHaveDebugger())
{
StartLog();
@@ -552,13 +552,13 @@ bool CN64System::SetActiveSystem(bool bActive)
if (bInitPlugin)
{
- WriteTrace(TraceDebug, __FUNCTION__ ": Reseting Plugins");
+ WriteTrace(TraceN64System, TraceDebug, "Reseting Plugins");
g_Notify->DisplayMessage(5, MSG_PLUGIN_INIT);
m_Plugins->CreatePlugins();
bRes = m_Plugins->Initiate(this);
if (!bRes)
{
- WriteTrace(TraceError, __FUNCTION__ ": g_Plugins->Initiate Failed");
+ WriteTrace(TraceN64System, TraceError, "g_Plugins->Initiate Failed");
}
}
@@ -1238,7 +1238,7 @@ void CN64System::DumpSyncErrors(CN64System * SecondCPU)
bool CN64System::SaveState()
{
- WriteTrace(TraceDebug, __FUNCTION__ ": Start");
+ WriteTrace(TraceN64System, TraceDebug, "Start");
// if (!m_SystemTimer.SaveAllowed()) { return false; }
if ((m_Reg.STATUS_REGISTER & STATUS_EXL) != 0) { return false; }
@@ -1393,7 +1393,7 @@ bool CN64System::SaveState()
g_Notify->DisplayMessage(5, stdwstr_f(L"%ws %ws", SaveMessage.c_str(), stdstr(SavedFileName.GetNameExtension()).ToUTF16().c_str()).c_str());
//Notify().RefreshMenu();
- WriteTrace(TraceDebug, __FUNCTION__ ": Done");
+ WriteTrace(TraceN64System, TraceDebug, "Done");
return true;
}
@@ -1449,7 +1449,7 @@ bool CN64System::LoadState(const char * FileName)
old_width = g_Reg->VI_WIDTH_REG;
old_dacrate = g_Reg->AI_DACRATE_REG;
- WriteTraceF((TraceType)(TraceDebug | TraceRecompiler), __FUNCTION__ "(%s): Start", FileName);
+ WriteTrace(TraceN64System, TraceDebug, "(%s): Start", FileName);
char drive[_MAX_DRIVE], dir[_MAX_DIR], fname[_MAX_FNAME], ext[_MAX_EXT];
_splitpath(FileName, drive, dir, fname, ext);
@@ -1646,25 +1646,25 @@ bool CN64System::LoadState(const char * FileName)
m_Reg.RANDOM_REGISTER += 32 - m_Reg.WIRED_REGISTER;
}
//Fix up timer
- WriteTrace(TraceDebug, __FUNCTION__ ": 2");
+ WriteTrace(TraceN64System, TraceDebug, "2");
m_SystemTimer.SetTimer(CSystemTimer::CompareTimer, m_Reg.COMPARE_REGISTER - m_Reg.COUNT_REGISTER, false);
m_SystemTimer.SetTimer(CSystemTimer::ViTimer, NextVITimer, false);
m_Reg.FixFpuLocations();
- WriteTrace(TraceDebug, __FUNCTION__ ": 5");
+ WriteTrace(TraceN64System, TraceDebug, "5");
m_TLB.Reset(false);
- WriteTrace(TraceDebug, __FUNCTION__ ": 6");
+ WriteTrace(TraceN64System, TraceDebug, "6");
m_CPU_Usage.ResetCounters();
- WriteTrace(TraceDebug, __FUNCTION__ ": 7");
+ WriteTrace(TraceN64System, TraceDebug, "7");
m_Profile.ResetCounters();
- WriteTrace(TraceDebug, __FUNCTION__ ": 8");
+ WriteTrace(TraceN64System, TraceDebug, "8");
m_FPS.Reset(true);
- WriteTrace(TraceDebug, __FUNCTION__ ": 9");
+ WriteTrace(TraceN64System, TraceDebug, "9");
if (bLogX86Code())
{
Stop_x86_Log();
Start_x86_Log();
}
- WriteTrace(TraceDebug, __FUNCTION__ ": Done");
+ WriteTrace(TraceN64System, TraceDebug, "Done");
#ifdef TEST_SP_TRACKING
m_CurrentSP = GPR[29].UW[0];
@@ -1685,10 +1685,10 @@ bool CN64System::LoadState(const char * FileName)
SyncCPU(m_SyncCPU);
}
}
- WriteTrace(TraceDebug, __FUNCTION__ ": 13");
+ WriteTrace(TraceN64System, TraceDebug, "13");
std::wstring LoadMsg = g_Lang->GetString(MSG_LOADED_STATE);
g_Notify->DisplayMessage(5, stdwstr_f(L"%ws %ws", LoadMsg.c_str(), stdstr(CPath(FileNameStr).GetNameExtension()).ToUTF16().c_str()).c_str());
- WriteTrace(TraceDebug, __FUNCTION__ ": Done");
+ WriteTrace(TraceN64System, TraceDebug, "Done");
return true;
}
@@ -1699,7 +1699,7 @@ void CN64System::DisplayRSPListCount()
void CN64System::RunRSP()
{
- WriteTraceF(TraceRSP, __FUNCTION__ ": Start (SP Status %X)", m_Reg.SP_STATUS_REG);
+ WriteTrace(TraceRSP, TraceDebug, "Start (SP Status %X)", m_Reg.SP_STATUS_REG);
if ((m_Reg.SP_STATUS_REG & SP_STATUS_HALT) == 0)
{
if ((m_Reg.SP_STATUS_REG & SP_STATUS_BROKE) == 0)
@@ -1712,23 +1712,23 @@ void CN64System::RunRSP()
g_MMU->LW_VAddr(0xA4000FC0, Task);
if (Task == 1 && (m_Reg.DPC_STATUS_REG & DPC_STATUS_FREEZE) != 0)
{
- WriteTrace(TraceRSP, __FUNCTION__ ": Dlist that is frozen");
+ WriteTrace(TraceRSP, TraceDebug, "Dlist that is frozen");
return;
}
switch (Task)
{
case 1:
- WriteTrace(TraceRSP, __FUNCTION__ ": *** Display list ***");
+ WriteTrace(TraceRSP, TraceDebug, "*** Display list ***");
m_DlistCount += 1;
m_FPS.UpdateDlCounter();
break;
case 2:
- WriteTrace(TraceRSP, __FUNCTION__ ": *** Audio list ***");
+ WriteTrace(TraceRSP, TraceDebug, "*** Audio list ***");
m_AlistCount += 1;
break;
default:
- WriteTrace(TraceRSP, __FUNCTION__ ": *** Unknown list ***");
+ WriteTrace(TraceRSP, TraceDebug, "*** Unknown list ***");
m_UnknownCount += 1;
break;
}
@@ -1750,13 +1750,13 @@ void CN64System::RunRSP()
__try
{
- WriteTrace(TraceRSP, __FUNCTION__ ": do cycles - starting");
+ WriteTrace(TraceRSP, TraceDebug, "do cycles - starting");
g_Plugins->RSP()->DoRspCycles(100);
- WriteTrace(TraceRSP, __FUNCTION__ ": do cycles - Done");
+ WriteTrace(TraceRSP, TraceDebug, "do cycles - Done");
}
__except (g_MMU->MemoryFilter(GetExceptionCode(), GetExceptionInformation()))
{
- WriteTrace(TraceError, __FUNCTION__ ": exception generated");
+ WriteTrace(TraceRSP, TraceError, "exception generated");
g_Notify->FatalError(__FUNCTIONW__ L"\nUnknown memory action\n\nEmulation stop");
}
@@ -1779,11 +1779,11 @@ void CN64System::RunRSP()
{
m_RspBroke = true;
}
- WriteTrace(TraceRSP, __FUNCTION__ ": check interrupts");
+ WriteTrace(TraceRSP, TraceDebug, "check interrupts");
g_Reg->CheckInterrupts();
}
}
- WriteTraceF(TraceRSP, __FUNCTION__ ": Done (SP Status %X)", m_Reg.SP_STATUS_REG);
+ WriteTrace(TraceRSP, TraceDebug, "Done (SP Status %X)", m_Reg.SP_STATUS_REG);
}
void CN64System::SyncToAudio()
@@ -1800,7 +1800,7 @@ void CN64System::SyncToAudio()
{
if (g_Reg->m_AudioIntrReg != 0)
{
- WriteTraceF(TraceAudio, __FUNCTION__ ": Audio Interrupt done (%d)", i);
+ WriteTrace(TraceAudio, TraceDebug, "Audio Interrupt done (%d)", i);
break;
}
pjutil::Sleep(1);
@@ -1854,14 +1854,13 @@ void CN64System::RefreshScreen()
__try
{
- WriteTrace(TraceGfxPlugin, __FUNCTION__ ": Starting");
+ WriteTrace(TraceGFXPlugin, TraceDebug, "Starting");
g_Plugins->Gfx()->UpdateScreen();
- WriteTrace(TraceGfxPlugin, __FUNCTION__ ": Done");
+ WriteTrace(TraceGFXPlugin, TraceDebug, "Done");
}
__except (g_MMU->MemoryFilter(GetExceptionCode(), GetExceptionInformation()))
{
- WriteTrace(TraceGfxPlugin, __FUNCTION__ ": Exception caught");
- WriteTrace(TraceError, __FUNCTION__ ": Exception caught");
+ WriteTrace(TraceGFXPlugin, TraceError, "Exception caught");
}
g_MMU->UpdateFieldSerration((m_Reg.VI_STATUS_REG & 0x40) != 0);
@@ -1912,7 +1911,7 @@ void CN64System::RefreshScreen()
bool CN64System::WriteToProtectedMemory(uint32_t Address, int length)
{
- WriteTraceF(TraceDebug, __FUNCTION__ ": Address: %X Len: %d", Address, length);
+ WriteTrace(TraceN64System, TraceDebug, "Address: %X Len: %d", Address, length);
if (m_Recomp)
{
g_Notify->BreakPoint(__FILE__, __LINE__);
@@ -1943,4 +1942,4 @@ void CN64System::TLB_Changed()
{
g_Debugger->TLBChanged();
}
-}
+}
\ No newline at end of file
diff --git a/Source/Project64-core/N64System/Recompiler/CodeSection.cpp b/Source/Project64-core/N64System/Recompiler/CodeSection.cpp
index a8fca5557..8916fca6b 100644
--- a/Source/Project64-core/N64System/Recompiler/CodeSection.cpp
+++ b/Source/Project64-core/N64System/Recompiler/CodeSection.cpp
@@ -377,7 +377,7 @@ void CCodeSection::CompileExit(uint32_t JumpPC, uint32_t TargetPC, CRegInfo &Exi
ExitCodeBlock();
break;
default:
- WriteTraceF(TraceError, __FUNCTION__ ": how did you want to exit on reason (%d) ???", reason);
+ WriteTrace(TraceRecompiler, TraceError, "how did you want to exit on reason (%d) ???", reason);
g_Notify->BreakPoint(__FILE__, __LINE__);
}
}
@@ -2145,7 +2145,7 @@ bool CCodeSection::InheritParentInfo()
}
break;
default:
- WriteTraceF(TraceError, __FUNCTION__ ": Unhandled Reg state %d\nin InheritParentInfo", GetMipsRegState(i2));
+ WriteTrace(TraceRecompiler, TraceError, "Unhandled Reg state %d\nin InheritParentInfo", GetMipsRegState(i2));
g_Notify->BreakPoint(__FILE__, __LINE__);
}
}
diff --git a/Source/Project64-core/N64System/Recompiler/FunctionMapClass.cpp b/Source/Project64-core/N64System/Recompiler/FunctionMapClass.cpp
index 1db93925a..cae54f509 100644
--- a/Source/Project64-core/N64System/Recompiler/FunctionMapClass.cpp
+++ b/Source/Project64-core/N64System/Recompiler/FunctionMapClass.cpp
@@ -15,8 +15,8 @@
#include
CFunctionMap::CFunctionMap() :
- m_JumpTable(NULL),
- m_FunctionTable(NULL)
+m_JumpTable(NULL),
+m_FunctionTable(NULL)
{
}
@@ -32,7 +32,7 @@ bool CFunctionMap::AllocateMemory()
m_FunctionTable = (PCCompiledFunc_TABLE *)VirtualAlloc(NULL, 0xFFFFF * sizeof(CCompiledFunc *), MEM_RESERVE | MEM_COMMIT, PAGE_READWRITE);
if (m_FunctionTable == NULL)
{
- WriteTrace(TraceError, __FUNCTION__ ": failed to allocate function table");
+ WriteTrace(TraceRecompiler, TraceError, "failed to allocate function table");
g_Notify->FatalError(MSG_MEM_ALLOC_ERROR);
return false;
}
@@ -43,7 +43,7 @@ bool CFunctionMap::AllocateMemory()
m_JumpTable = new PCCompiledFunc[g_MMU->RdramSize() >> 2];
if (m_JumpTable == NULL)
{
- WriteTrace(TraceError, __FUNCTION__ ": failed to allocate jump table");
+ WriteTrace(TraceRecompiler, TraceError, "failed to allocate jump table");
g_Notify->FatalError(MSG_MEM_ALLOC_ERROR);
return false;
}
@@ -80,4 +80,4 @@ void CFunctionMap::Reset(bool bAllocate)
{
AllocateMemory();
}
-}
+}
\ No newline at end of file
diff --git a/Source/Project64-core/N64System/Recompiler/RecompilerClass.cpp b/Source/Project64-core/N64System/Recompiler/RecompilerClass.cpp
index aefd7832f..2ada9fa48 100644
--- a/Source/Project64-core/N64System/Recompiler/RecompilerClass.cpp
+++ b/Source/Project64-core/N64System/Recompiler/RecompilerClass.cpp
@@ -43,12 +43,12 @@ void CRecompiler::Run()
if (!CRecompMemory::AllocateMemory())
{
- WriteTrace(TraceError, __FUNCTION__ ": AllocateMemory failed");
+ WriteTrace(TraceRecompiler, TraceError, "AllocateMemory failed");
return;
}
if (!CFunctionMap::AllocateMemory())
{
- WriteTrace(TraceError, __FUNCTION__ ": AllocateMemory failed");
+ WriteTrace(TraceRecompiler, TraceError, "AllocateMemory failed");
return;
}
m_EndEmulation = false;
@@ -145,13 +145,13 @@ void CRecompiler::RecompilerMain_VirtualTable()
table = new PCCompiledFunc[(0x1000 >> 2)];
if (table == NULL)
{
- WriteTrace(TraceError, __FUNCTION__ ": failed to allocate PCCompiledFunc");
+ WriteTrace(TraceRecompiler, TraceError, "failed to allocate PCCompiledFunc");
g_Notify->FatalError(MSG_MEM_ALLOC_ERROR);
}
memset(table, 0, sizeof(PCCompiledFunc) * (0x1000 >> 2));
if (g_System->bSMM_Protect())
{
- WriteTraceF(TraceError, __FUNCTION__ ": Create Table (%X): Index = %d", table, PC >> 0xC);
+ WriteTrace(TraceRecompiler, TraceError, "Create Table (%X): Index = %d", table, PC >> 0xC);
g_MMU->ProtectMemory(PC & ~0xFFF, PC | 0xFFF);
}
}
@@ -905,7 +905,7 @@ CCompiledFunc * CRecompiler::CompilerCode()
uint32_t pAddr = 0;
if (!g_TransVaddr->TranslateVaddr(PROGRAM_COUNTER, pAddr))
{
- WriteTraceF(TraceError, __FUNCTION__ ": Failed to translate %X", PROGRAM_COUNTER);
+ WriteTrace(TraceRecompiler, TraceError, "Failed to translate %X", PROGRAM_COUNTER);
return NULL;
}
@@ -930,7 +930,7 @@ CCompiledFunc * CRecompiler::CompilerCode()
CheckRecompMem();
//uint32_t StartTime = timeGetTime();
- WriteTraceF(TraceRecompiler, __FUNCTION__ ": Compile Block-Start: Program Counter: %X pAddr: %X", PROGRAM_COUNTER, pAddr);
+ WriteTrace(TraceRecompiler, TraceDebug, ": Compile Block-Start: Program Counter: %X pAddr: %X", PROGRAM_COUNTER, pAddr);
CCodeBlock CodeBlock(PROGRAM_COUNTER, RecompPos());
if (!CodeBlock.Compile())
@@ -966,7 +966,7 @@ void CRecompiler::ClearRecompCode_Phys(uint32_t Address, int length, REMOVE_REAS
uint32_t VAddr, Index = 0;
while (g_TLB->PAddrToVAddr(Address, VAddr, Index))
{
- WriteTraceF(TraceRecompiler, __FUNCTION__ ": ClearRecompCode Vaddr %X len: %d", VAddr, length);
+ WriteTrace(TraceRecompiler, TraceDebug, "ClearRecompCode Vaddr %X len: %d", VAddr, length);
ClearRecompCode_Virt(VAddr, length, Reason);
}
}
@@ -981,7 +981,7 @@ void CRecompiler::ClearRecompCode_Phys(uint32_t Address, int length, REMOVE_REAS
g_Notify->BreakPoint(__FILE__, __LINE__);
ClearLen = g_System->RdramSize() - Address;
}
- WriteTraceF(TraceRecompiler, __FUNCTION__ ": Reseting Jump Table, Addr: %X len: %d", Address, ClearLen);
+ WriteTrace(TraceRecompiler, TraceDebug, "Reseting Jump Table, Addr: %X len: %d", Address, ClearLen);
memset((uint8_t *)JumpTable() + Address, 0, ClearLen);
if (g_System->bSMM_Protect())
{
@@ -990,7 +990,7 @@ void CRecompiler::ClearRecompCode_Phys(uint32_t Address, int length, REMOVE_REAS
}
else
{
- WriteTraceF(TraceRecompiler, __FUNCTION__ ": Ignoring reset of Jump Table, Addr: %X len: %d", Address, ((length + 3) & ~3));
+ WriteTrace(TraceRecompiler, TraceDebug, "Ignoring reset of Jump Table, Addr: %X len: %d", Address, ((length + 3) & ~3));
}
}
}
@@ -1012,7 +1012,7 @@ void CRecompiler::ClearRecompCode_Virt(uint32_t Address, int length, REMOVE_REAS
PCCompiledFunc_TABLE & table = FunctionTable()[AddressIndex];
if (table)
{
- WriteTraceF(TraceError, __FUNCTION__ ": Delete Table (%X): Index = %d", table, AddressIndex);
+ WriteTrace(TraceRecompiler, TraceError, "Delete Table (%X): Index = %d", table, AddressIndex);
delete table;
table = NULL;
g_MMU->UnProtectMemory(Address, Address + length);
@@ -1058,7 +1058,7 @@ void CRecompiler::ResetMemoryStackPos()
}
else
{
- WriteTraceF(TraceError, __FUNCTION__ ": Failed to translate SP address (%s)", m_Registers.m_GPR[29].UW[0]);
+ WriteTrace(TraceRecompiler, TraceError, "Failed to translate SP address (%s)", m_Registers.m_GPR[29].UW[0]);
g_Notify->BreakPoint(__FILE__, __LINE__);
}
}
\ No newline at end of file
diff --git a/Source/Project64-core/N64System/Recompiler/RecompilerMemory.cpp b/Source/Project64-core/N64System/Recompiler/RecompilerMemory.cpp
index 304d21861..4acd1bce7 100644
--- a/Source/Project64-core/N64System/Recompiler/RecompilerMemory.cpp
+++ b/Source/Project64-core/N64System/Recompiler/RecompilerMemory.cpp
@@ -36,7 +36,7 @@ bool CRecompMemory::AllocateMemory()
uint8_t * RecompCodeBase = (uint8_t *)VirtualAlloc(NULL, MaxCompileBufferSize + 4, MEM_RESERVE | MEM_TOP_DOWN, PAGE_EXECUTE_READWRITE);
if (RecompCodeBase == NULL)
{
- WriteTrace(TraceError, __FUNCTION__ ": failed to allocate RecompCodeBase");
+ WriteTrace(TraceRecompiler, TraceError, "failed to allocate RecompCodeBase");
g_Notify->DisplayError(MSG_MEM_ALLOC_ERROR);
return false;
}
@@ -44,7 +44,7 @@ bool CRecompMemory::AllocateMemory()
m_RecompCode = (uint8_t *)VirtualAlloc(RecompCodeBase, InitialCompileBufferSize, MEM_COMMIT, PAGE_EXECUTE_READWRITE);
if (m_RecompCode == NULL)
{
- WriteTrace(TraceError, __FUNCTION__ ": failed to commit initial buffer");
+ WriteTrace(TraceRecompiler, TraceError, "failed to commit initial buffer");
VirtualFree(RecompCodeBase, 0, MEM_RELEASE);
g_Notify->DisplayError(MSG_MEM_ALLOC_ERROR);
return false;
@@ -70,7 +70,7 @@ void CRecompMemory::CheckRecompMem()
LPVOID MemAddr = VirtualAlloc(m_RecompCode + m_RecompSize, IncreaseCompileBufferSize, MEM_COMMIT, PAGE_EXECUTE_READWRITE);
if (MemAddr == NULL)
{
- WriteTrace(TraceError, __FUNCTION__ ": failed to increase buffer");
+ WriteTrace(TraceRecompiler, TraceError, "failed to increase buffer");
g_Notify->FatalError(MSG_MEM_ALLOC_ERROR);
}
m_RecompSize += IncreaseCompileBufferSize;
diff --git a/Source/Project64-core/N64System/Recompiler/RegInfo.cpp b/Source/Project64-core/N64System/Recompiler/RegInfo.cpp
index a60a4963f..ca4428a3d 100644
--- a/Source/Project64-core/N64System/Recompiler/RegInfo.cpp
+++ b/Source/Project64-core/N64System/Recompiler/RegInfo.cpp
@@ -826,7 +826,7 @@ CX86Ops::x86Reg CRegInfo::Map_TempReg(CX86Ops::x86Reg Reg, int32_t MipsReg, bool
Reg = FreeX86Reg();
if (Reg == x86_Unknown)
{
- WriteTrace(TraceError, __FUNCTION__ ": Failed to find a free register");
+ WriteTrace(TraceRegisterCache, TraceError, "Failed to find a free register");
g_Notify->BreakPoint(__FILE__, __LINE__);
return x86_Unknown;
}
@@ -844,7 +844,7 @@ CX86Ops::x86Reg CRegInfo::Map_TempReg(CX86Ops::x86Reg Reg, int32_t MipsReg, bool
Reg = Free8BitX86Reg();
if (Reg < 0)
{
- WriteTrace(TraceError, __FUNCTION__ ": Failed to find a free 8 bit register");
+ WriteTrace(TraceRegisterCache, TraceError, "Failed to find a free 8 bit register");
g_Notify->BreakPoint(__FILE__, __LINE__);
return x86_Unknown;
}
@@ -854,7 +854,7 @@ CX86Ops::x86Reg CRegInfo::Map_TempReg(CX86Ops::x86Reg Reg, int32_t MipsReg, bool
{
if (GetX86Protected(Reg))
{
- WriteTrace(TraceError, __FUNCTION__ ": Register is protected");
+ WriteTrace(TraceRegisterCache, TraceError, "Register is protected");
g_Notify->BreakPoint(__FILE__, __LINE__);
return x86_Unknown;
}
diff --git a/Source/Project64-core/Plugins/AudioPlugin.cpp b/Source/Project64-core/Plugins/AudioPlugin.cpp
index aa6f6efcf..dab95d11c 100644
--- a/Source/Project64-core/Plugins/AudioPlugin.cpp
+++ b/Source/Project64-core/Plugins/AudioPlugin.cpp
@@ -18,12 +18,12 @@
#include
CAudioPlugin::CAudioPlugin() :
- AiLenChanged(NULL),
- AiReadLength(NULL),
- ProcessAList(NULL),
- m_hAudioThread(NULL),
- AiUpdate(NULL),
- AiDacrateChanged(NULL)
+AiLenChanged(NULL),
+AiReadLength(NULL),
+ProcessAList(NULL),
+m_hAudioThread(NULL),
+AiUpdate(NULL),
+AiDacrateChanged(NULL)
{
}
@@ -148,7 +148,7 @@ bool CAudioPlugin::Initiate(CN64System * System, RenderWindow * Window)
{
if (m_hAudioThread)
{
- WriteTraceF(TraceAudio, __FUNCTION__ ": Terminate Audio Thread");
+ WriteTrace(TraceAudioPlugin, TraceDebug, "Terminate Audio Thread");
TerminateThread(m_hAudioThread, 0);
}
m_hAudioThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)AudioThread, (LPVOID)this, 0, &ThreadID);
@@ -166,7 +166,7 @@ void CAudioPlugin::UnloadPluginDetails(void)
{
if (m_hAudioThread)
{
- WriteTraceF(TraceAudio, __FUNCTION__ ": Terminate Audio Thread");
+ WriteTrace(TraceAudioPlugin, TraceDebug, "Terminate Audio Thread");
TerminateThread(m_hAudioThread, 0);
m_hAudioThread = NULL;
}
@@ -180,21 +180,22 @@ void CAudioPlugin::UnloadPluginDetails(void)
void CAudioPlugin::DacrateChanged(SYSTEM_TYPE Type)
{
if (!Initialized()) { return; }
- WriteTraceF(TraceAudio, __FUNCTION__ ": SystemType: %s", Type == SYSTEM_NTSC ? "SYSTEM_NTSC" : "SYSTEM_PAL");
+ WriteTrace(TraceAudioPlugin, TraceDebug, "SystemType: %s", Type == SYSTEM_NTSC ? "SYSTEM_NTSC" : "SYSTEM_PAL");
//uint32_t Frequency = g_Reg->AI_DACRATE_REG * 30;
//uint32_t CountsPerSecond = (g_Reg->VI_V_SYNC_REG != 0 ? (g_Reg->VI_V_SYNC_REG + 1) * g_Settings->LoadDword(Game_ViRefreshRate) : 500000) * 60;
AiDacrateChanged(Type);
}
-void CAudioPlugin::AudioThread(CAudioPlugin * _this) {
+void CAudioPlugin::AudioThread(CAudioPlugin * _this)
+{
SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_TIME_CRITICAL);
- if (g_Settings->LoadBool(Setting_CN64TimeCritical))
- {
- SetThreadPriority(GetCurrentThread(),THREAD_PRIORITY_HIGHEST);
- }
- for (;;)
+ if (g_Settings->LoadBool(Setting_CN64TimeCritical))
+ {
+ SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_HIGHEST);
+ }
+ for (;;)
{
_this->AiUpdate(true);
}
-}
+}
\ No newline at end of file
diff --git a/Source/Project64-core/Plugins/PluginBase.cpp b/Source/Project64-core/Plugins/PluginBase.cpp
index adc10ea59..80de16028 100644
--- a/Source/Project64-core/Plugins/PluginBase.cpp
+++ b/Source/Project64-core/Plugins/PluginBase.cpp
@@ -120,13 +120,13 @@ bool CPlugin::Load(const char * FileName)
{
return false;
}
- WriteTraceF(PluginTraceType(), __FUNCTION__ "(%s): Functions loaded", PluginType());
+ WriteTrace(PluginTraceType(), TraceDebug, "Functions loaded");
if (PluginOpened)
{
- WriteTraceF(PluginTraceType(), __FUNCTION__ "(%s): Before Plugin Opened", PluginType());
+ WriteTrace(PluginTraceType(), TraceDebug, "Before Plugin Opened");
PluginOpened();
- WriteTraceF(PluginTraceType(), __FUNCTION__ "(%s): After Plugin Opened", PluginType());
+ WriteTrace(PluginTraceType(), TraceDebug, "After Plugin Opened");
}
return true;
}
@@ -134,13 +134,15 @@ bool CPlugin::Load(const char * FileName)
void CPlugin::RomOpened()
{
if (m_RomOpen)
+ {
return;
+ }
if (RomOpen != NULL)
{
- WriteTraceF(PluginTraceType(), __FUNCTION__ "(%s): Before Rom Open", PluginType());
+ WriteTrace(PluginTraceType(), TraceDebug, "Before Rom Open");
RomOpen();
- WriteTraceF(PluginTraceType(), __FUNCTION__ "(%s): After Rom Open", PluginType());
+ WriteTrace(PluginTraceType(), TraceDebug, "After Rom Open");
}
m_RomOpen = true;
}
@@ -150,10 +152,10 @@ void CPlugin::RomClose()
if (!m_RomOpen)
return;
- WriteTraceF(PluginTraceType(), __FUNCTION__ "(%s): Before Rom Close", PluginType());
+ WriteTrace(PluginTraceType(), TraceDebug, "Before Rom Close");
RomClosed();
m_RomOpen = false;
- WriteTraceF(PluginTraceType(), __FUNCTION__ "(%s): After Rom Close", PluginType());
+ WriteTrace(PluginTraceType(), TraceDebug, "After Rom Close");
}
void CPlugin::GameReset()
@@ -170,19 +172,19 @@ void CPlugin::GameReset()
void CPlugin::Close()
{
- WriteTraceF(PluginTraceType(), __FUNCTION__ "(%s): Start", PluginType());
+ WriteTrace(PluginTraceType(), TraceDebug, "(%s): Start", PluginType());
RomClose();
if (m_Initialized)
{
CloseDLL();
m_Initialized = false;
}
- WriteTraceF(PluginTraceType(), __FUNCTION__ "(%s): Done", PluginType());
+ WriteTrace(PluginTraceType(), TraceDebug, "(%s): Done", PluginType());
}
void CPlugin::UnloadPlugin()
{
- WriteTraceF(PluginTraceType(), __FUNCTION__ "(%s): unloading", PluginType());
+ WriteTrace(PluginTraceType(), TraceDebug, "(%s): unloading", PluginType());
memset(&m_PluginInfo, 0, sizeof(m_PluginInfo));
if (m_hDll != NULL)
{
@@ -214,16 +216,16 @@ const char * CPlugin::PluginType() const
return "Unknown";
}
-TraceType CPlugin::PluginTraceType() const
+TraceModuleProject64 CPlugin::PluginTraceType() const
{
switch (m_PluginInfo.Type)
{
- case PLUGIN_TYPE_RSP: return TraceRSP;
- case PLUGIN_TYPE_GFX: return TraceGfxPlugin;
- case PLUGIN_TYPE_AUDIO: return TraceDebug;
- case PLUGIN_TYPE_CONTROLLER: return TraceDebug;
+ case PLUGIN_TYPE_RSP: return TraceRSPPlugin;
+ case PLUGIN_TYPE_GFX: return TraceGFXPlugin;
+ case PLUGIN_TYPE_AUDIO: return TraceAudioPlugin;
+ case PLUGIN_TYPE_CONTROLLER: return TraceControllerPlugin;
}
- return TraceDebug;
+ return TraceUnknown;
}
bool CPlugin::ValidPluginVersion(PLUGIN_INFO & PluginInfo)
diff --git a/Source/Project64-core/Plugins/PluginBase.h b/Source/Project64-core/Plugins/PluginBase.h
index cf45623b2..c140964ad 100644
--- a/Source/Project64-core/Plugins/PluginBase.h
+++ b/Source/Project64-core/Plugins/PluginBase.h
@@ -11,6 +11,7 @@
#pragma once
#include
+#include
#include "PluginClass.h"
class CPlugin :
@@ -40,7 +41,7 @@ public:
protected:
void UnloadPlugin();
const char * PluginType() const;
- TraceType PluginTraceType() const;
+ TraceModuleProject64 PluginTraceType() const;
virtual void UnloadPluginDetails() = 0;
virtual PLUGIN_TYPE type() = 0;
virtual bool LoadFunctions(void) = 0;
diff --git a/Source/Project64-core/Plugins/PluginClass.cpp b/Source/Project64-core/Plugins/PluginClass.cpp
index f29bb6de2..21189a135 100644
--- a/Source/Project64-core/Plugins/PluginClass.cpp
+++ b/Source/Project64-core/Plugins/PluginClass.cpp
@@ -84,7 +84,7 @@ void CPlugins::PluginChanged(CPlugins * _this)
}
template
-static void LoadPlugin(SettingID PluginSettingID, SettingID PluginVerSettingID, plugin_type * & plugin, const char * PluginDir, stdstr & FileName, TraceType TraceLevel, const char * type)
+static void LoadPlugin(SettingID PluginSettingID, SettingID PluginVerSettingID, plugin_type * & plugin, const char * PluginDir, stdstr & FileName, TraceModuleProject64 TraceLevel, const char * type)
{
if (plugin != NULL)
{
@@ -95,39 +95,39 @@ static void LoadPlugin(SettingID PluginSettingID, SettingID PluginVerSettingID,
plugin = new plugin_type();
if (plugin)
{
- WriteTraceF(TraceLevel, __FUNCTION__ ": %s Loading (%s): Starting", type, (const char *)PluginFileName);
+ WriteTrace(TraceLevel, TraceDebug, "%s Loading (%s): Starting", type, (const char *)PluginFileName);
if (plugin->Load(PluginFileName))
{
- WriteTraceF(TraceLevel, __FUNCTION__ ": %s Current Ver: %s", type, plugin->PluginName());
+ WriteTrace(TraceLevel, TraceDebug, "%s Current Ver: %s", type, plugin->PluginName());
g_Settings->SaveString(PluginVerSettingID, plugin->PluginName());
}
else
{
- WriteTraceF(TraceError, __FUNCTION__ ": Failed to load %s", (const char *)PluginFileName);
+ WriteTrace(TraceError, TraceDebug, "Failed to load %s", (const char *)PluginFileName);
delete plugin;
plugin = NULL;
}
- WriteTraceF(TraceLevel, __FUNCTION__ ": %s Loading Done", type);
+ WriteTrace(TraceLevel, TraceDebug, "%s Loading Done", type);
}
else
{
- WriteTraceF(TraceError, __FUNCTION__ ": Failed to allocate %s plugin", type);
+ WriteTrace(TraceError, TraceDebug, "Failed to allocate %s plugin", type);
}
}
void CPlugins::CreatePlugins(void)
{
- LoadPlugin(Game_Plugin_Gfx, Plugin_GFX_CurVer, m_Gfx, m_PluginDir.c_str(), m_GfxFile, TraceGfxPlugin, "GFX");
- LoadPlugin(Game_Plugin_Audio, Plugin_AUDIO_CurVer, m_Audio, m_PluginDir.c_str(), m_AudioFile, TraceDebug, "Audio");
- LoadPlugin(Game_Plugin_RSP, Plugin_RSP_CurVer, m_RSP, m_PluginDir.c_str(), m_RSPFile, TraceRSP, "RSP");
- LoadPlugin(Game_Plugin_Controller, Plugin_CONT_CurVer, m_Control, m_PluginDir.c_str(), m_ControlFile, TraceDebug, "Control");
+ LoadPlugin(Game_Plugin_Gfx, Plugin_GFX_CurVer, m_Gfx, m_PluginDir.c_str(), m_GfxFile, TraceGFXPlugin, "GFX");
+ LoadPlugin(Game_Plugin_Audio, Plugin_AUDIO_CurVer, m_Audio, m_PluginDir.c_str(), m_AudioFile, TraceAudioPlugin, "Audio");
+ LoadPlugin(Game_Plugin_RSP, Plugin_RSP_CurVer, m_RSP, m_PluginDir.c_str(), m_RSPFile, TraceRSPPlugin, "RSP");
+ LoadPlugin(Game_Plugin_Controller, Plugin_CONT_CurVer, m_Control, m_PluginDir.c_str(), m_ControlFile, TraceControllerPlugin, "Control");
//Enable debugger
if (m_RSP != NULL && m_RSP->EnableDebugging)
{
- WriteTrace(TraceRSP, __FUNCTION__ ": EnableDebugging starting");
+ WriteTrace(TraceRSPPlugin, TraceInfo, "EnableDebugging starting");
m_RSP->EnableDebugging(bHaveDebugger());
- WriteTrace(TraceRSP, __FUNCTION__ ": EnableDebugging done");
+ WriteTrace(TraceRSPPlugin, TraceInfo, "EnableDebugging done");
}
}
@@ -157,9 +157,9 @@ void CPlugins::DestroyGfxPlugin(void)
{
return;
}
- WriteTrace(TraceGfxPlugin, __FUNCTION__ ": before delete m_Gfx");
+ WriteTrace(TraceGFXPlugin, TraceInfo, "before delete m_Gfx");
delete m_Gfx;
- WriteTrace(TraceGfxPlugin, __FUNCTION__ ": after delete m_Gfx");
+ WriteTrace(TraceGFXPlugin, TraceInfo, "after delete m_Gfx");
m_Gfx = NULL;
// g_Settings->UnknownSetting_GFX = NULL;
DestroyRspPlugin();
@@ -171,15 +171,16 @@ void CPlugins::DestroyAudioPlugin(void)
{
return;
}
- WriteTrace(TraceDebug, __FUNCTION__ ": 5");
+ WriteTrace(TraceAudioPlugin, TraceDebug, "before close");
m_Audio->Close();
- WriteTrace(TraceDebug, __FUNCTION__ ": 6");
+ WriteTrace(TraceAudioPlugin, TraceDebug, "before delete");
delete m_Audio;
- WriteTrace(TraceDebug, __FUNCTION__ ": 7");
+ WriteTrace(TraceAudioPlugin, TraceDebug, "after delete");
m_Audio = NULL;
- WriteTrace(TraceDebug, __FUNCTION__ ": 8");
+ WriteTrace(TraceAudioPlugin, TraceDebug, "before DestroyRspPlugin");
// g_Settings->UnknownSetting_AUDIO = NULL;
DestroyRspPlugin();
+ WriteTrace(TraceAudioPlugin, TraceDebug, "after DestroyRspPlugin");
}
void CPlugins::DestroyRspPlugin(void)
@@ -188,13 +189,12 @@ void CPlugins::DestroyRspPlugin(void)
{
return;
}
- WriteTrace(TraceDebug, __FUNCTION__ ": 9");
+ WriteTrace(TraceRSPPlugin, TraceDebug, "before close");
m_RSP->Close();
- WriteTrace(TraceDebug, __FUNCTION__ ": 10");
+ WriteTrace(TraceRSPPlugin, TraceDebug, "before delete");
delete m_RSP;
- WriteTrace(TraceDebug, __FUNCTION__ ": 11");
m_RSP = NULL;
- WriteTrace(TraceDebug, __FUNCTION__ ": 12");
+ WriteTrace(TraceRSPPlugin, TraceDebug, "after delete");
// g_Settings->UnknownSetting_RSP = NULL;
}
@@ -204,13 +204,12 @@ void CPlugins::DestroyControlPlugin(void)
{
return;
}
- WriteTrace(TraceDebug, __FUNCTION__ ": 13");
+ WriteTrace(TraceControllerPlugin, TraceDebug, "before close");
m_Control->Close();
- WriteTrace(TraceDebug, __FUNCTION__ ": 14");
+ WriteTrace(TraceControllerPlugin, TraceDebug, "before delete");
delete m_Control;
- WriteTrace(TraceDebug, __FUNCTION__ ": 15");
m_Control = NULL;
- WriteTrace(TraceDebug, __FUNCTION__ ": 16");
+ WriteTrace(TraceControllerPlugin, TraceDebug, "after delete");
// g_Settings->UnknownSetting_CTRL = NULL;
}
@@ -238,26 +237,26 @@ void CPlugins::RomClosed(void)
bool CPlugins::Initiate(CN64System * System)
{
- WriteTrace(TraceDebug, __FUNCTION__ ": Start");
+ WriteTrace(TracePlugins, TraceDebug, "Start");
//Check to make sure we have the plugin available to be used
if (m_Gfx == NULL) { return false; }
if (m_Audio == NULL) { return false; }
if (m_RSP == NULL) { return false; }
if (m_Control == NULL) { return false; }
- WriteTrace(TraceGfxPlugin, __FUNCTION__ ": Gfx Initiate Starting");
+ WriteTrace(TraceGFXPlugin, TraceDebug, "Gfx Initiate Starting");
if (!m_Gfx->Initiate(System, m_MainWindow)) { return false; }
- WriteTrace(TraceGfxPlugin, __FUNCTION__ ": Gfx Initiate Done");
- WriteTrace(TraceDebug, __FUNCTION__ ": Audio Initiate Starting");
+ WriteTrace(TraceGFXPlugin, TraceDebug, "Gfx Initiate Done");
+ WriteTrace(TraceAudioPlugin, TraceDebug, "Audio Initiate Starting");
if (!m_Audio->Initiate(System, m_MainWindow)) { return false; }
- WriteTrace(TraceDebug, __FUNCTION__ ": Audio Initiate Done");
- WriteTrace(TraceDebug, __FUNCTION__ ": Control Initiate Starting");
+ WriteTrace(TraceAudioPlugin, TraceDebug, "Audio Initiate Done");
+ WriteTrace(TraceControllerPlugin, TraceDebug, "Control Initiate Starting");
if (!m_Control->Initiate(System, m_MainWindow)) { return false; }
- WriteTrace(TraceDebug, __FUNCTION__ ": Control Initiate Done");
- WriteTrace(TraceRSP, __FUNCTION__ ": RSP Initiate Starting");
+ WriteTrace(TraceControllerPlugin, TraceDebug, "Control Initiate Done");
+ WriteTrace(TraceRSPPlugin, TraceDebug, "RSP Initiate Starting");
if (!m_RSP->Initiate(this, System)) { return false; }
- WriteTrace(TraceRSP, __FUNCTION__ ": RSP Initiate Done");
- WriteTrace(TraceDebug, __FUNCTION__ ": Done");
+ WriteTrace(TraceRSPPlugin, TraceDebug, "RSP Initiate Done");
+ WriteTrace(TracePlugins, TraceDebug, "Done");
return true;
}
@@ -268,7 +267,7 @@ bool CPlugins::ResetInUiThread(CN64System * System)
bool CPlugins::Reset(CN64System * System)
{
- WriteTrace(TraceDebug, __FUNCTION__ ": Start");
+ WriteTrace(TracePlugins, TraceDebug, "Start");
bool bGfxChange = _stricmp(m_GfxFile.c_str(), g_Settings->LoadStringVal(Game_Plugin_Gfx).c_str()) != 0;
bool bAudioChange = _stricmp(m_AudioFile.c_str(), g_Settings->LoadStringVal(Game_Plugin_Audio).c_str()) != 0;
@@ -288,29 +287,29 @@ bool CPlugins::Reset(CN64System * System)
if (m_Gfx && bGfxChange)
{
- WriteTrace(TraceGfxPlugin, __FUNCTION__ ": Gfx Initiate Starting");
+ WriteTrace(TraceGFXPlugin, TraceDebug, "Gfx Initiate Starting");
if (!m_Gfx->Initiate(System, m_MainWindow)) { return false; }
- WriteTrace(TraceGfxPlugin, __FUNCTION__ ": Gfx Initiate Done");
+ WriteTrace(TraceGFXPlugin, TraceDebug, "Gfx Initiate Done");
}
if (m_Audio && bAudioChange)
{
- WriteTrace(TraceDebug, __FUNCTION__ ": Audio Initiate Starting");
+ WriteTrace(TraceAudioPlugin, TraceDebug, "Audio Initiate Starting");
if (!m_Audio->Initiate(System, m_MainWindow)) { return false; }
- WriteTrace(TraceDebug, __FUNCTION__ ": Audio Initiate Done");
+ WriteTrace(TraceAudioPlugin, TraceDebug, "Audio Initiate Done");
}
if (m_Control && bContChange)
{
- WriteTrace(TraceDebug, __FUNCTION__ ": Control Initiate Starting");
+ WriteTrace(TraceControllerPlugin, TraceDebug, "Control Initiate Starting");
if (!m_Control->Initiate(System, m_MainWindow)) { return false; }
- WriteTrace(TraceDebug, __FUNCTION__ ": Control Initiate Done");
+ WriteTrace(TraceControllerPlugin, TraceDebug, "Control Initiate Done");
}
if (m_RSP && bRspChange)
{
- WriteTrace(TraceRSP, __FUNCTION__ ": RSP Initiate Starting");
+ WriteTrace(TraceRSPPlugin, TraceDebug, "RSP Initiate Starting");
if (!m_RSP->Initiate(this, System)) { return false; }
- WriteTrace(TraceRSP, __FUNCTION__ ": RSP Initiate Done");
+ WriteTrace(TraceRSPPlugin, TraceDebug, "RSP Initiate Done");
}
- WriteTrace(TraceDebug, __FUNCTION__ ": Done");
+ WriteTrace(TracePlugins, TraceDebug, "Done");
return true;
}
diff --git a/Source/Project64-core/Project64-core.vcxproj b/Source/Project64-core/Project64-core.vcxproj
index 4433c4ae5..d245d3327 100644
--- a/Source/Project64-core/Project64-core.vcxproj
+++ b/Source/Project64-core/Project64-core.vcxproj
@@ -200,6 +200,7 @@
+
diff --git a/Source/Project64-core/Project64-core.vcxproj.filters b/Source/Project64-core/Project64-core.vcxproj.filters
index 35a23c9d4..b0e507b2a 100644
--- a/Source/Project64-core/Project64-core.vcxproj.filters
+++ b/Source/Project64-core/Project64-core.vcxproj.filters
@@ -452,9 +452,6 @@
Header Files\N64 System
-
- Header Files\N64 System
-
Header Files\N64 System
@@ -563,5 +560,11 @@
Header Files\Settings
+
+ Header Files
+
+
+ Header Files
+
\ No newline at end of file
diff --git a/Source/Project64-core/Settings/SettingType/SettingsType-RDBYesNo.cpp b/Source/Project64-core/Settings/SettingType/SettingsType-RDBYesNo.cpp
index 24d1832d7..f99742d55 100644
--- a/Source/Project64-core/Settings/SettingType/SettingsType-RDBYesNo.cpp
+++ b/Source/Project64-core/Settings/SettingType/SettingsType-RDBYesNo.cpp
@@ -12,13 +12,13 @@
#include "SettingsType-RomDatabase.h"
#include "SettingsType-RDBYesNo.h"
-CSettingTypeRDBYesNo::CSettingTypeRDBYesNo(const char * Name, SettingID DefaultSetting ) :
- CSettingTypeRomDatabase(Name,DefaultSetting)
+CSettingTypeRDBYesNo::CSettingTypeRDBYesNo(const char * Name, SettingID DefaultSetting) :
+CSettingTypeRomDatabase(Name, DefaultSetting)
{
}
-CSettingTypeRDBYesNo::CSettingTypeRDBYesNo(const char * Name, int DefaultValue ) :
- CSettingTypeRomDatabase(Name,DefaultValue)
+CSettingTypeRDBYesNo::CSettingTypeRDBYesNo(const char * Name, int DefaultValue) :
+CSettingTypeRomDatabase(Name, DefaultValue)
{
}
@@ -26,98 +26,99 @@ CSettingTypeRDBYesNo::~CSettingTypeRDBYesNo()
{
}
-bool CSettingTypeRDBYesNo::Load ( int Index, bool & Value ) const
+bool CSettingTypeRDBYesNo::Load(int Index, bool & Value) const
{
stdstr strValue;
- bool bRes = m_SettingsIniFile->GetString(m_SectionIdent->c_str(),m_KeyName.c_str(),m_DefaultStr,strValue);
+ bool bRes = m_SettingsIniFile->GetString(m_SectionIdent->c_str(), m_KeyName.c_str(), m_DefaultStr, strValue);
if (!bRes)
{
- LoadDefault(Index,Value);
+ LoadDefault(Index, Value);
return false;
}
const char * String = strValue.c_str();
- if (_stricmp(String,"Yes") == 0)
+ if (_stricmp(String, "Yes") == 0)
{
Value = true;
}
- else if (_stricmp(String,"No") == 0)
+ else if (_stricmp(String, "No") == 0)
{
Value = false;
}
- else if (_stricmp(String,"default") == 0)
+ else if (_stricmp(String, "default") == 0)
{
- LoadDefault(Index,Value);
+ LoadDefault(Index, Value);
return false;
}
else
{
- WriteTraceF(TraceError,__FUNCTION__ ": Invalid Yes/No setting value (Section: %s Key: %s Value: %s)",m_SectionIdent->c_str(),String,m_KeyName.c_str(),strValue.c_str());
- LoadDefault(Index,Value);
+ WriteTrace(TraceSettings, TraceError, "Invalid Yes/No setting value (Section: %s Key: %s Value: %s)", m_SectionIdent->c_str(), String, m_KeyName.c_str(), strValue.c_str());
+ LoadDefault(Index, Value);
return false;
}
return true;
}
-bool CSettingTypeRDBYesNo::Load ( int /*Index*/, uint32_t & /*Value*/ ) const
+bool CSettingTypeRDBYesNo::Load(int /*Index*/, uint32_t & /*Value*/) const
{
g_Notify->BreakPoint(__FILE__, __LINE__);
return false;
}
-bool CSettingTypeRDBYesNo::Load ( int /*Index*/, stdstr & /*Value*/ ) const
+bool CSettingTypeRDBYesNo::Load(int /*Index*/, stdstr & /*Value*/) const
{
g_Notify->BreakPoint(__FILE__, __LINE__);
return false;
}
//return the default values
-void CSettingTypeRDBYesNo::LoadDefault ( int /*Index*/, bool & Value ) const
+void CSettingTypeRDBYesNo::LoadDefault(int /*Index*/, bool & Value) const
{
if (m_DefaultSetting != Default_None)
{
if (m_DefaultSetting == Default_Constant)
{
Value = m_DefaultValue != 0;
- } else {
- g_Settings->LoadBool(m_DefaultSetting,Value);
+ }
+ else {
+ g_Settings->LoadBool(m_DefaultSetting, Value);
}
}
}
-void CSettingTypeRDBYesNo::LoadDefault ( int /*Index*/, uint32_t & /*Value*/ ) const
+void CSettingTypeRDBYesNo::LoadDefault(int /*Index*/, uint32_t & /*Value*/) const
{
g_Notify->BreakPoint(__FILE__, __LINE__);
}
-void CSettingTypeRDBYesNo::LoadDefault ( int /*Index*/, stdstr & /*Value*/ ) const
+void CSettingTypeRDBYesNo::LoadDefault(int /*Index*/, stdstr & /*Value*/) const
{
g_Notify->BreakPoint(__FILE__, __LINE__);
}
//Update the settings
-void CSettingTypeRDBYesNo::Save ( int /*Index*/, bool Value )
+void CSettingTypeRDBYesNo::Save(int /*Index*/, bool Value)
{
- m_SettingsIniFile->SaveString(m_SectionIdent->c_str(),m_KeyName.c_str(),Value? "Yes" : "No");
+ m_SettingsIniFile->SaveString(m_SectionIdent->c_str(), m_KeyName.c_str(), Value ? "Yes" : "No");
}
-void CSettingTypeRDBYesNo::Save ( int /*Index*/, uint32_t Value )
+void CSettingTypeRDBYesNo::Save(int /*Index*/, uint32_t Value)
{
- m_SettingsIniFile->SaveString(m_SectionIdent->c_str(),m_KeyName.c_str(),Value? "Yes" : "No");
+ m_SettingsIniFile->SaveString(m_SectionIdent->c_str(), m_KeyName.c_str(), Value ? "Yes" : "No");
}
-void CSettingTypeRDBYesNo::Save ( int /*Index*/, const stdstr & /*Value*/ )
+void CSettingTypeRDBYesNo::Save(int /*Index*/, const stdstr & /*Value*/)
{
g_Notify->BreakPoint(__FILE__, __LINE__);
}
-void CSettingTypeRDBYesNo::Save ( int /*Index*/, const char * /*Value*/ )
+void CSettingTypeRDBYesNo::Save(int /*Index*/, const char * /*Value*/)
{
g_Notify->BreakPoint(__FILE__, __LINE__);
}
-void CSettingTypeRDBYesNo::Delete( int /*Index*/ )
+void CSettingTypeRDBYesNo::Delete(int /*Index*/)
{
- m_SettingsIniFile->SaveString(m_SectionIdent->c_str(),m_KeyName.c_str(),NULL);
-}
+ m_SettingsIniFile->SaveString(m_SectionIdent->c_str(), m_KeyName.c_str(), NULL);
+}
\ No newline at end of file
diff --git a/Source/Project64-core/Settings/Settings.h b/Source/Project64-core/Settings/Settings.h
index 5ac6966f5..5962868d3 100644
--- a/Source/Project64-core/Settings/Settings.h
+++ b/Source/Project64-core/Settings/Settings.h
@@ -233,6 +233,26 @@ enum SettingID
Debugger_ShowDListAListCount,
Debugger_ShowRecompMemSize,
+ //Trace
+ Debugger_TraceMD5,
+ Debugger_TraceSettings,
+ Debugger_TraceUnknown,
+ Debugger_TraceAppInit,
+ Debugger_TraceAppCleanup,
+ Debugger_TraceN64System,
+ Debugger_TracePlugins,
+ Debugger_TraceGFXPlugin,
+ Debugger_TraceAudioPlugin,
+ Debugger_TraceControllerPlugin,
+ Debugger_TraceRSPPlugin,
+ Debugger_TraceRSP,
+ Debugger_TraceAudio,
+ Debugger_TraceRegisterCache,
+ Debugger_TraceRecompiler,
+ Debugger_TraceTLB,
+ Debugger_TraceProtectedMEM,
+ Debugger_TraceUserInterface,
+
//Plugins
Plugin_RSP_Current,
Plugin_RSP_CurVer,
diff --git a/Source/Project64-core/Settings/SettingsClass.cpp b/Source/Project64-core/Settings/SettingsClass.cpp
index 89797d716..e719b5137 100644
--- a/Source/Project64-core/Settings/SettingsClass.cpp
+++ b/Source/Project64-core/Settings/SettingsClass.cpp
@@ -31,7 +31,7 @@
#include "SettingType/SettingsType-TempBool.h"
#include "SettingsClass.h"
#include "N64System/N64Types.h"
-#include
+#include
CSettings * g_Settings = NULL;
@@ -308,10 +308,29 @@ void CSettings::AddHowToHandleSetting()
AddHandler(Debugger_ShowRecompMemSize, new CSettingTypeApplication("Debugger", "Show Recompiler Memory size", false));
AddHandler(Debugger_ShowDivByZero, new CSettingTypeApplication("Debugger", "Show Div by zero", false));
AddHandler(Debugger_ProfileCode, new CSettingTypeApplication("Debugger", "Profile Code", (uint32_t)false));
- AddHandler(Debugger_AppLogLevel, new CSettingTypeApplication("Logging", "Log Level", (uint32_t)TraceError));
AddHandler(Debugger_AppLogFlush, new CSettingTypeApplication("Logging", "Log Auto Flush", (uint32_t)false));
AddHandler(Debugger_GenerateLogFiles, new CSettingTypeApplication("Debugger", "Generate Log Files", false));
+ //Logging
+ AddHandler(Debugger_TraceMD5, new CSettingTypeApplication("Logging", "MD5", (uint32_t)g_ModuleLogLevel[TraceMD5]));
+ AddHandler(Debugger_TraceSettings, new CSettingTypeApplication("Logging", "Settings", (uint32_t)g_ModuleLogLevel[TraceSettings]));
+ AddHandler(Debugger_TraceUnknown, new CSettingTypeApplication("Logging", "Unknown", (uint32_t)g_ModuleLogLevel[TraceUnknown]));
+ AddHandler(Debugger_TraceAppInit, new CSettingTypeApplication("Logging", "App Init", (uint32_t)g_ModuleLogLevel[TraceAppInit]));
+ AddHandler(Debugger_TraceAppCleanup, new CSettingTypeApplication("Logging", "App Cleanup", (uint32_t)g_ModuleLogLevel[TraceAppCleanup]));
+ AddHandler(Debugger_TraceN64System, new CSettingTypeApplication("Logging", "N64 System", (uint32_t)g_ModuleLogLevel[TraceN64System]));
+ AddHandler(Debugger_TracePlugins, new CSettingTypeApplication("Logging", "Plugins", (uint32_t)g_ModuleLogLevel[TracePlugins]));
+ AddHandler(Debugger_TraceGFXPlugin, new CSettingTypeApplication("Logging", "GFX Plugin", (uint32_t)g_ModuleLogLevel[TraceGFXPlugin]));
+ AddHandler(Debugger_TraceAudioPlugin, new CSettingTypeApplication("Logging", "Audio Plugin", (uint32_t)g_ModuleLogLevel[TraceAudioPlugin]));
+ AddHandler(Debugger_TraceControllerPlugin, new CSettingTypeApplication("Logging", "Controller Plugin", (uint32_t)g_ModuleLogLevel[TraceControllerPlugin]));
+ AddHandler(Debugger_TraceRSPPlugin, new CSettingTypeApplication("Logging", "RSP Plugin", (uint32_t)g_ModuleLogLevel[TraceRSPPlugin]));
+ AddHandler(Debugger_TraceRSP, new CSettingTypeApplication("Logging", "RSP", (uint32_t)g_ModuleLogLevel[TraceRSP]));
+ AddHandler(Debugger_TraceAudio, new CSettingTypeApplication("Logging", "Audio", (uint32_t)g_ModuleLogLevel[TraceAudio]));
+ AddHandler(Debugger_TraceRegisterCache, new CSettingTypeApplication("Logging", "Register Cache", (uint32_t)g_ModuleLogLevel[TraceRegisterCache]));
+ AddHandler(Debugger_TraceRecompiler, new CSettingTypeApplication("Logging", "Recompiler", (uint32_t)g_ModuleLogLevel[TraceRecompiler]));
+ AddHandler(Debugger_TraceTLB, new CSettingTypeApplication("Logging", "TLB", (uint32_t)g_ModuleLogLevel[TraceTLB]));
+ AddHandler(Debugger_TraceProtectedMEM, new CSettingTypeApplication("Logging", "Protected MEM", (uint32_t)g_ModuleLogLevel[TraceProtectedMem]));
+ AddHandler(Debugger_TraceUserInterface, new CSettingTypeApplication("Logging", "User Interface", (uint32_t)g_ModuleLogLevel[TraceUserInterface]));
+
//Plugin
AddHandler(Plugin_RSP_Current, new CSettingTypeApplication("Plugin", "RSP Dll", "RSP\\RSP 1.7.dll"));
AddHandler(Plugin_GFX_Current, new CSettingTypeApplication("Plugin", "Graphics Dll", "GFX\\Jabo_Direct3D8.dll"));
diff --git a/Source/Project64-core/TraceModulesProject64.h b/Source/Project64-core/TraceModulesProject64.h
new file mode 100644
index 000000000..be3ed753a
--- /dev/null
+++ b/Source/Project64-core/TraceModulesProject64.h
@@ -0,0 +1,24 @@
+#pragma once
+#include
+
+enum TraceModuleProject64
+{
+ TraceSettings = MaxTraceModuleCommon,
+ TraceUnknown,
+ TraceAppInit,
+ TraceAppCleanup,
+ TraceN64System,
+ TracePlugins,
+ TraceGFXPlugin,
+ TraceAudioPlugin,
+ TraceControllerPlugin,
+ TraceRSPPlugin,
+ TraceRSP,
+ TraceAudio,
+ TraceRegisterCache,
+ TraceRecompiler,
+ TraceTLB,
+ TraceProtectedMem,
+ TraceUserInterface,
+ MaxTraceModuleProject64,
+};
\ No newline at end of file
diff --git a/Source/Project64-core/stdafx.h b/Source/Project64-core/stdafx.h
index bad1aa83b..1c8054a33 100644
--- a/Source/Project64-core/stdafx.h
+++ b/Source/Project64-core/stdafx.h
@@ -1,8 +1,9 @@
#include
#include
-#include
+#include
#include "Multilanguage.h"
#include "Notification.h"
#include "version.h"
#include "Settings/SettingsClass.h"
+#include "TraceModulesProject64.h"
diff --git a/Source/Project64/N64System/Debugger/DebugDialog.h b/Source/Project64/N64System/Debugger/DebugDialog.h
index 7e058426e..a64a45c24 100644
--- a/Source/Project64/N64System/Debugger/DebugDialog.h
+++ b/Source/Project64/N64System/Debugger/DebugDialog.h
@@ -47,7 +47,7 @@ public:
{
if (WaitForSingleObject(m_DialogThread, 5000) == WAIT_TIMEOUT)
{
- WriteTrace(TraceError, "CDebugDialog - time out on close");
+ WriteTrace(TraceUserInterface, TraceError, "CDebugDialog - time out on close");
TerminateThread(m_DialogThread, 1);
}
@@ -69,7 +69,7 @@ public:
m_DialogThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)CreateDebuggerWindow, (LPVOID)this, 0, &ThreadID);
if (WaitForSingleObject(m_CreatedEvent, 20000) == WAIT_TIMEOUT)
{
- WriteTrace(TraceError, "Failed to get window create notification");
+ WriteTrace(TraceUserInterface, TraceError, "Failed to get window create notification");
}
}
}
diff --git a/Source/Project64/N64System/Debugger/Debugger-ViewMemory.cpp b/Source/Project64/N64System/Debugger/Debugger-ViewMemory.cpp
index 83d192e79..5efc2e926 100644
--- a/Source/Project64/N64System/Debugger/Debugger-ViewMemory.cpp
+++ b/Source/Project64/N64System/Debugger/Debugger-ViewMemory.cpp
@@ -13,10 +13,10 @@
#include "DebuggerUI.h"
CDebugMemoryView::CDebugMemoryView(CDebuggerUI * debugger) :
- CDebugDialog(debugger),
- m_MemoryList(NULL)
+CDebugDialog(debugger),
+m_MemoryList(NULL)
{
- if (m_MemoryList== NULL)
+ if (m_MemoryList == NULL)
{
m_MemoryList = new CListCtrl;
m_MemoryList->RegisterClass();
@@ -209,14 +209,14 @@ LRESULT CDebugMemoryView::OnMemoryModified(LPNMHDR lpNMHDR)
{
if (!g_MMU->SB_VAddr(m_DataStartLoc + Pos, (BYTE)Value))
{
- WriteTraceF(TraceError, __FUNCTION__ ": failed to store at %X", m_DataStartLoc + Pos);
+ WriteTrace(TraceUserInterface, TraceError, "failed to store at %X", m_DataStartLoc + Pos);
}
}
else
{
if (!g_MMU->SB_PAddr(m_DataStartLoc + Pos, (BYTE)Value))
{
- WriteTraceF(TraceError, __FUNCTION__ ": failed to store at %X", m_DataStartLoc + Pos);
+ WriteTrace(TraceUserInterface, TraceError, "failed to store at %X", m_DataStartLoc + Pos);
}
}
Insert_MemoryLineDump(LineNumber);
@@ -469,4 +469,4 @@ void CDebugMemoryView::RefreshMemory(bool ResetCompare)
{
Insert_MemoryLineDump(count);
}
-}
+}
\ No newline at end of file
diff --git a/Source/Project64/Plugins/PluginList.cpp b/Source/Project64/Plugins/PluginList.cpp
index 3e032aaeb..eed868da0 100644
--- a/Source/Project64/Plugins/PluginList.cpp
+++ b/Source/Project64/Plugins/PluginList.cpp
@@ -42,10 +42,10 @@ const CPluginList::PLUGIN * CPluginList::GetPluginInfo(int indx) const
bool CPluginList::LoadList()
{
- WriteTrace(TraceDebug, __FUNCTION__ ": Start");
+ WriteTrace(TraceUserInterface, TraceDebug, "Start");
m_PluginList.clear();
AddPluginFromDir(m_PluginDir);
- WriteTrace(TraceDebug, __FUNCTION__ ": Done");
+ WriteTrace(TraceUserInterface, TraceDebug, "Done");
return true;
}
@@ -72,14 +72,14 @@ void CPluginList::AddPluginFromDir(CPath Dir)
}
//UINT LastErrorMode = SetErrorMode( SEM_FAILCRITICALERRORS );
- WriteTraceF(TraceDebug, __FUNCTION__ ": loading %s", (LPCSTR)Dir);
+ WriteTrace(TraceUserInterface, TraceDebug, "loading %s", (LPCSTR)Dir);
hLib = LoadLibrary(Dir);
//SetErrorMode(LastErrorMode);
if (hLib == NULL)
{
DWORD LoadError = GetLastError();
- WriteTraceF(TraceDebug, __FUNCTION__ ": failed to loadi %s (error: %d)", (LPCSTR)Dir, LoadError);
+ WriteTrace(TraceUserInterface, TraceDebug, "failed to loadi %s (error: %d)", (LPCSTR)Dir, LoadError);
continue;
}
@@ -114,4 +114,4 @@ void CPluginList::AddPluginFromDir(CPath Dir)
hLib = NULL;
}
}
-}
+}
\ No newline at end of file
diff --git a/Source/Project64/Support.h b/Source/Project64/Support.h
index edcd975fb..c68489dae 100644
--- a/Source/Project64/Support.h
+++ b/Source/Project64/Support.h
@@ -1,12 +1,10 @@
#include
#include
-//#include "Support/CppSeh.h"
#include
#include
#include
#include
-#include
#include
#include
#include
diff --git a/Source/Project64/UserInterface/GuiClass.cpp b/Source/Project64/UserInterface/GuiClass.cpp
index 36c135368..398be121e 100644
--- a/Source/Project64/UserInterface/GuiClass.cpp
+++ b/Source/Project64/UserInterface/GuiClass.cpp
@@ -62,7 +62,7 @@ m_ResetInfo(NULL)
CMainGui::~CMainGui(void)
{
- WriteTrace(TraceDebug, __FUNCTION__ ": Start");
+ WriteTrace(TraceUserInterface, TraceDebug, "Start");
if (m_bMainWindow)
{
g_Settings->UnregisterChangeCB(RomBrowser_Enabled, this, (CSettings::SettingChangedFunc)RomBowserEnabledChanged);
@@ -77,7 +77,7 @@ CMainGui::~CMainGui(void)
{
DestroyWindow(m_hMainWindow);
}
- WriteTrace(TraceDebug, __FUNCTION__ ": Done");
+ WriteTrace(TraceUserInterface, TraceDebug, "Done");
}
bool CMainGui::RegisterWinClass(void)
@@ -198,7 +198,7 @@ void CMainGui::GameLoaded(CMainGui * Gui)
stdstr FileLoc = g_Settings->LoadStringVal(Game_File);
if (FileLoc.length() > 0)
{
- WriteTrace(TraceDebug, __FUNCTION__ ": Add Recent Rom");
+ WriteTrace(TraceUserInterface, TraceDebug, "Add Recent Rom");
Gui->AddRecentRom(FileLoc.c_str());
Gui->SetWindowCaption(g_Settings->LoadStringVal(Game_GoodName).ToUTF16().c_str());
Gui->HideRomList();
@@ -217,7 +217,7 @@ void CMainGui::GameCpuRunning(CMainGui * Gui)
Gui->MakeWindowOnTop(g_Settings->LoadBool(UserInterface_AlwaysOnTop));
if (g_Settings->LoadBool(Setting_AutoFullscreen))
{
- WriteTrace(TraceDebug, __FUNCTION__ " 15");
+ WriteTrace(TraceUserInterface, TraceDebug, "15");
CIniFile RomIniFile(g_Settings->LoadStringVal(SupportFile_RomDatabase).c_str());
stdstr Status = g_Settings->LoadStringVal(Rdb_Status);
@@ -418,7 +418,7 @@ bool CMainGui::ResetPluginsInUiThread(CPlugins * plugins, CN64System * System)
}
else
{
- WriteTrace(TraceError, __FUNCTION__ ": Failed to create event");
+ WriteTrace(TraceUserInterface, TraceError, "Failed to create event");
bRes = false;
}
Notify().RefreshMenu();
@@ -749,9 +749,9 @@ LRESULT CALLBACK CMainGui::MainGui_Proc(HWND hWnd, DWORD uMsg, DWORD wParam, DWO
{
if (g_Plugins->Gfx() && g_Plugins->Gfx()->MoveScreen)
{
- WriteTrace(TraceGfxPlugin, __FUNCTION__ ": Starting");
+ WriteTrace(TraceGFXPlugin, TraceDebug, "Starting");
g_Plugins->Gfx()->MoveScreen((int)(short)LOWORD(lParam), (int)(short)HIWORD(lParam));
- WriteTrace(TraceGfxPlugin, __FUNCTION__ ": Done");
+ WriteTrace(TraceGFXPlugin, TraceDebug, "Done");
}
}
break;
@@ -1029,9 +1029,9 @@ LRESULT CALLBACK CMainGui::MainGui_Proc(HWND hWnd, DWORD uMsg, DWORD wParam, DWO
{
if (g_Plugins->Gfx())
{
- WriteTrace(TraceGfxPlugin, __FUNCTION__ ": Starting");
+ WriteTrace(TraceGFXPlugin, TraceDebug, "Starting");
g_Plugins->Gfx()->ProcessMenuItem(LOWORD(wParam));
- WriteTrace(TraceGfxPlugin, __FUNCTION__ ": Done");
+ WriteTrace(TraceGFXPlugin, TraceDebug, "Done");
}
}
else if (LOWORD(wParam) > 5200 && LOWORD(wParam) <= 5300)
@@ -1046,9 +1046,9 @@ LRESULT CALLBACK CMainGui::MainGui_Proc(HWND hWnd, DWORD uMsg, DWORD wParam, DWO
Rom.SaveRomSettingID(true);
g_Notify->DisplayMessage(0, L"");
BYTE * RomHeader = Rom.GetRomAddress();
- WriteTrace(TraceGfxPlugin, __FUNCTION__ ": OnRomBrowserMenuItem - Starting");
+ WriteTrace(TraceGFXPlugin, TraceDebug, "OnRomBrowserMenuItem - Starting");
g_Plugins->Gfx()->OnRomBrowserMenuItem(LOWORD(wParam), hWnd, RomHeader);
- WriteTrace(TraceGfxPlugin, __FUNCTION__ ": OnRomBrowserMenuItem - Done");
+ WriteTrace(TraceGFXPlugin, TraceDebug, "OnRomBrowserMenuItem - Done");
if (g_Rom)
{
g_Rom->SaveRomSettingID(false);
@@ -1079,7 +1079,7 @@ LRESULT CALLBACK CMainGui::MainGui_Proc(HWND hWnd, DWORD uMsg, DWORD wParam, DWO
}
break;
case WM_DESTROY:
- WriteTrace(TraceDebug, __FUNCTION__ ": WM_DESTROY - start");
+ WriteTrace(TraceUserInterface, TraceDebug, "WM_DESTROY - start");
{
CMainGui * _this = (CMainGui *)GetProp(hWnd, "Class");
if (_this->m_bMainWindow)
@@ -1087,19 +1087,19 @@ LRESULT CALLBACK CMainGui::MainGui_Proc(HWND hWnd, DWORD uMsg, DWORD wParam, DWO
Notify().WindowMode();
}
_this->m_hMainWindow = NULL;
- WriteTrace(TraceDebug, __FUNCTION__ ": WM_DESTROY - 1");
+ WriteTrace(TraceUserInterface, TraceDebug, "WM_DESTROY - 1");
if (_this->m_bMainWindow)
{
_this->SaveRomListColoumnInfo();
- WriteTrace(TraceDebug, __FUNCTION__ ": WM_DESTROY - 2");
+ WriteTrace(TraceUserInterface, TraceDebug, "WM_DESTROY - 2");
_this->SaveWindowLoc();
}
}
- WriteTrace(TraceDebug, __FUNCTION__ ": WM_DESTROY - 3");
+ WriteTrace(TraceUserInterface, TraceDebug, "WM_DESTROY - 3");
RemoveProp(hWnd, "Class");
- WriteTrace(TraceDebug, __FUNCTION__ ": WM_DESTROY - 4");
+ WriteTrace(TraceUserInterface, TraceDebug, "WM_DESTROY - 4");
PostQuitMessage(0);
- WriteTrace(TraceDebug, __FUNCTION__ ": WM_DESTROY - Done");
+ WriteTrace(TraceUserInterface, TraceDebug, "WM_DESTROY - Done");
break;
default:
return DefWindowProc(hWnd, uMsg, wParam, lParam);
diff --git a/Source/Project64/UserInterface/MainMenuClass.cpp b/Source/Project64/UserInterface/MainMenuClass.cpp
index 536c46682..665d88928 100644
--- a/Source/Project64/UserInterface/MainMenuClass.cpp
+++ b/Source/Project64/UserInterface/MainMenuClass.cpp
@@ -27,7 +27,24 @@ m_Gui(hMainWindow)
m_ChangeSettingList.push_back(Debugger_ShowDivByZero);
m_ChangeSettingList.push_back(Debugger_GenerateLogFiles);
m_ChangeSettingList.push_back(Debugger_DisableGameFixes);
- m_ChangeSettingList.push_back(Debugger_AppLogLevel);
+ m_ChangeSettingList.push_back(Debugger_TraceMD5);
+ m_ChangeSettingList.push_back(Debugger_TraceSettings);
+ m_ChangeSettingList.push_back(Debugger_TraceUnknown);
+ m_ChangeSettingList.push_back(Debugger_TraceAppInit);
+ m_ChangeSettingList.push_back(Debugger_TraceAppCleanup);
+ m_ChangeSettingList.push_back(Debugger_TraceN64System);
+ m_ChangeSettingList.push_back(Debugger_TracePlugins);
+ m_ChangeSettingList.push_back(Debugger_TraceGFXPlugin);
+ m_ChangeSettingList.push_back(Debugger_TraceAudioPlugin);
+ m_ChangeSettingList.push_back(Debugger_TraceControllerPlugin);
+ m_ChangeSettingList.push_back(Debugger_TraceRSPPlugin);
+ m_ChangeSettingList.push_back(Debugger_TraceRSP);
+ m_ChangeSettingList.push_back(Debugger_TraceAudio);
+ m_ChangeSettingList.push_back(Debugger_TraceRegisterCache);
+ m_ChangeSettingList.push_back(Debugger_TraceRecompiler);
+ m_ChangeSettingList.push_back(Debugger_TraceTLB);
+ m_ChangeSettingList.push_back(Debugger_TraceProtectedMEM);
+ m_ChangeSettingList.push_back(Debugger_TraceUserInterface);
m_ChangeSettingList.push_back(Debugger_AppLogFlush);
m_ChangeSettingList.push_back(Game_CurrentSaveState);
m_ChangeSettingList.push_back(Setting_CurrentLanguage);
@@ -87,6 +104,12 @@ stdstr CMainMenu::ChooseFileToOpen(HWND hParent)
return stdstr("");
}
+void CMainMenu::SetTraceModuleSetttings(SettingID Type)
+{
+ uint32_t value = g_Settings->LoadDword(Type) == TraceVerbose ? g_Settings->LoadDefaultDword(Type) : TraceVerbose;
+ g_Settings->SaveDword(Type, value);
+}
+
bool CMainMenu::ProcessMessage(HWND hWnd, DWORD /*FromAccelerator*/, DWORD MenuID)
{
switch (MenuID) {
@@ -118,48 +141,48 @@ bool CMainMenu::ProcessMessage(HWND hWnd, DWORD /*FromAccelerator*/, DWORD MenuI
g_BaseSystem->StartEmulation(true);
break;
case ID_FILE_ENDEMULATION:
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_FILE_ENDEMULATION");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_FILE_ENDEMULATION");
CN64System::CloseSystem();
m_Gui->SaveWindowLoc();
break;
case ID_FILE_ROMDIRECTORY:
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_FILE_ROMDIRECTORY 1");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_FILE_ROMDIRECTORY 1");
m_Gui->SelectRomDir();
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_FILE_ROMDIRECTORY 2");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_FILE_ROMDIRECTORY 2");
m_Gui->RefreshMenu();
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_FILE_ROMDIRECTORY 3");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_FILE_ROMDIRECTORY 3");
break;
case ID_FILE_REFRESHROMLIST: m_Gui->RefreshRomBrowser(); break;
case ID_FILE_EXIT: DestroyWindow((HWND)hWnd); break;
case ID_SYSTEM_RESET_SOFT:
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_SYSTEM_RESET_SOFT");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_SYSTEM_RESET_SOFT");
g_BaseSystem->ExternalEvent(SysEvent_ResetCPU_Soft);
break;
case ID_SYSTEM_RESET_HARD:
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_SYSTEM_RESET_HARD");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_SYSTEM_RESET_HARD");
g_BaseSystem->ExternalEvent(SysEvent_ResetCPU_Hard);
break;
case ID_SYSTEM_PAUSE:
m_Gui->SaveWindowLoc();
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_SYSTEM_PAUSE");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_SYSTEM_PAUSE");
g_BaseSystem->ExternalEvent(g_Settings->LoadBool(GameRunning_CPU_Paused) ? SysEvent_ResumeCPU_FromMenu : SysEvent_PauseCPU_FromMenu);
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_SYSTEM_PAUSE 1");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_SYSTEM_PAUSE 1");
break;
case ID_SYSTEM_BITMAP:
{
stdstr Dir(g_Settings->LoadStringVal(Directory_SnapShot));
- WriteTraceF(TraceGfxPlugin, __FUNCTION__ ": CaptureScreen(%s): Starting", Dir.c_str());
+ WriteTrace(TraceGFXPlugin, TraceDebug, "CaptureScreen(%s): Starting", Dir.c_str());
g_Plugins->Gfx()->CaptureScreen(Dir.c_str());
- WriteTrace(TraceGfxPlugin, __FUNCTION__ ": CaptureScreen: Done");
+ WriteTrace(TraceGFXPlugin, TraceDebug, "CaptureScreen: Done");
}
break;
case ID_SYSTEM_LIMITFPS:
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_SYSTEM_LIMITFPS");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_SYSTEM_LIMITFPS");
g_Settings->SaveBool(GameRunning_LimitFPS, !g_Settings->LoadBool(GameRunning_LimitFPS));
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_SYSTEM_LIMITFPS 1");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_SYSTEM_LIMITFPS 1");
break;
case ID_SYSTEM_SAVE:
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_SYSTEM_SAVE");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_SYSTEM_SAVE");
g_BaseSystem->ExternalEvent(SysEvent_SaveMachineState);
break;
case ID_SYSTEM_SAVEAS:
@@ -204,7 +227,7 @@ bool CMainMenu::ProcessMessage(HWND hWnd, DWORD /*FromAccelerator*/, DWORD MenuI
g_BaseSystem->ExternalEvent(SysEvent_ResumeCPU_SaveGame);
}
break;
- case ID_SYSTEM_RESTORE: WriteTrace(TraceDebug, __FUNCTION__ ": ID_SYSTEM_RESTORE"); g_BaseSystem->ExternalEvent(SysEvent_LoadMachineState); break;
+ case ID_SYSTEM_RESTORE: WriteTrace(TraceUserInterface, TraceDebug, "ID_SYSTEM_RESTORE"); g_BaseSystem->ExternalEvent(SysEvent_LoadMachineState); break;
case ID_SYSTEM_LOAD:
{
char Directory[255], SaveFile[255];
@@ -274,12 +297,12 @@ bool CMainMenu::ProcessMessage(HWND hWnd, DWORD /*FromAccelerator*/, DWORD MenuI
case ID_OPTIONS_FULLSCREEN2:
if (g_Settings->LoadBool(UserInterface_InFullScreen))
{
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_OPTIONS_FULLSCREEN a");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_OPTIONS_FULLSCREEN a");
m_Gui->MakeWindowOnTop(false);
Notify().SetGfxPlugin(NULL);
- WriteTrace(TraceGfxPlugin, __FUNCTION__ ": ChangeWindow: Starting");
+ WriteTrace(TraceGFXPlugin, TraceDebug, "ChangeWindow: Starting");
g_Plugins->Gfx()->ChangeWindow();
- WriteTrace(TraceGfxPlugin, __FUNCTION__ ": ChangeWindow: Done");
+ WriteTrace(TraceGFXPlugin, TraceDebug, "ChangeWindow: Done");
ShowCursor(true);
m_Gui->ShowStatusBar(true);
m_Gui->MakeWindowOnTop(g_Settings->LoadBool(UserInterface_AlwaysOnTop));
@@ -287,33 +310,33 @@ bool CMainMenu::ProcessMessage(HWND hWnd, DWORD /*FromAccelerator*/, DWORD MenuI
}
else
{
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_OPTIONS_FULLSCREEN b");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_OPTIONS_FULLSCREEN b");
ShowCursor(false);
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_OPTIONS_FULLSCREEN b 1");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_OPTIONS_FULLSCREEN b 1");
m_Gui->ShowStatusBar(false);
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_OPTIONS_FULLSCREEN b 2");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_OPTIONS_FULLSCREEN b 2");
try
{
- WriteTrace(TraceGfxPlugin, __FUNCTION__ ": ChangeWindow: Starting");
+ WriteTrace(TraceGFXPlugin, TraceDebug, "ChangeWindow: Starting");
g_Plugins->Gfx()->ChangeWindow();
- WriteTrace(TraceGfxPlugin, __FUNCTION__ ": ChangeWindow: Done");
+ WriteTrace(TraceGFXPlugin, TraceDebug, "ChangeWindow: Done");
}
catch (...)
{
- WriteTrace(TraceError, __FUNCTION__ ": Exception when going to full screen");
+ WriteTrace(TraceError, TraceDebug, "Exception when going to full screen");
char Message[600];
sprintf(Message, "Exception caught\nFile: %s\nLine: %d", __FILE__, __LINE__);
MessageBox(NULL, Message, "Exception", MB_OK);
}
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_OPTIONS_FULLSCREEN b 4");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_OPTIONS_FULLSCREEN b 4");
m_Gui->MakeWindowOnTop(false);
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_OPTIONS_FULLSCREEN b 5");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_OPTIONS_FULLSCREEN b 5");
Notify().SetGfxPlugin(g_Plugins->Gfx());
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_OPTIONS_FULLSCREEN b 3");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_OPTIONS_FULLSCREEN b 3");
g_Settings->SaveBool(UserInterface_InFullScreen, true);
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_OPTIONS_FULLSCREEN b 6");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_OPTIONS_FULLSCREEN b 6");
}
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_OPTIONS_FULLSCREEN 1");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_OPTIONS_FULLSCREEN 1");
break;
case ID_OPTIONS_ALWAYSONTOP:
if (g_Settings->LoadDword(UserInterface_AlwaysOnTop))
@@ -328,23 +351,23 @@ bool CMainMenu::ProcessMessage(HWND hWnd, DWORD /*FromAccelerator*/, DWORD MenuI
}
break;
case ID_OPTIONS_CONFIG_RSP:
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_OPTIONS_CONFIG_RSP");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_OPTIONS_CONFIG_RSP");
g_Plugins->ConfigPlugin(hWnd, PLUGIN_TYPE_RSP);
break;
case ID_OPTIONS_CONFIG_GFX:
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_OPTIONS_CONFIG_GFX");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_OPTIONS_CONFIG_GFX");
g_Plugins->ConfigPlugin(hWnd, PLUGIN_TYPE_GFX);
break;
case ID_OPTIONS_CONFIG_AUDIO:
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_OPTIONS_CONFIG_AUDIO");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_OPTIONS_CONFIG_AUDIO");
g_Plugins->ConfigPlugin(hWnd, PLUGIN_TYPE_AUDIO);
break;
case ID_OPTIONS_CONFIG_CONT:
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_OPTIONS_CONFIG_CONT");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_OPTIONS_CONFIG_CONT");
g_Plugins->ConfigPlugin(hWnd, PLUGIN_TYPE_CONTROLLER);
break;
case ID_OPTIONS_CPU_USAGE:
- WriteTrace(TraceDebug, __FUNCTION__ ": ID_OPTIONS_CPU_USAGE");
+ WriteTrace(TraceUserInterface, TraceDebug, "ID_OPTIONS_CPU_USAGE");
if (g_Settings->LoadBool(UserInterface_ShowCPUPer))
{
g_Settings->SaveBool(UserInterface_ShowCPUPer, false);
@@ -393,118 +416,25 @@ bool CMainMenu::ProcessMessage(HWND hWnd, DWORD /*FromAccelerator*/, DWORD MenuI
case ID_DEBUG_DISABLE_GAMEFIX:
g_Settings->SaveBool(Debugger_DisableGameFixes, !g_Settings->LoadBool(Debugger_DisableGameFixes));
break;
- case ID_DEBUGGER_APPLOG_ERRORS:
- {
- DWORD LogLevel = g_Settings->LoadDword(Debugger_AppLogLevel);
- if ((LogLevel & TraceError) != 0)
- {
- LogLevel &= ~TraceError;
- }
- else
- {
- LogLevel |= TraceError;
- }
- g_Settings->SaveDword(Debugger_AppLogLevel, LogLevel);
- }
- break;
- case ID_DEBUGGER_APPLOG_SETTINGS:
- {
- DWORD LogLevel = g_Settings->LoadDword(Debugger_AppLogLevel);
- if ((LogLevel & TraceSettings) != 0)
- {
- LogLevel &= ~TraceSettings;
- }
- else
- {
- LogLevel |= TraceSettings;
- }
- g_Settings->SaveDword(Debugger_AppLogLevel, LogLevel);
- }
- break;
- case ID_DEBUGGER_APPLOG_RECOMPILER:
- {
- DWORD LogLevel = g_Settings->LoadDword(Debugger_AppLogLevel);
- if ((LogLevel & TraceRecompiler) != 0)
- {
- LogLevel &= ~TraceRecompiler;
- }
- else
- {
- LogLevel |= TraceRecompiler;
- }
- g_Settings->SaveDword(Debugger_AppLogLevel, LogLevel);
- }
- break;
- case ID_DEBUGGER_APPLOG_RSP:
- {
- DWORD LogLevel = g_Settings->LoadDword(Debugger_AppLogLevel);
- if ((LogLevel & TraceRSP) != 0)
- {
- LogLevel &= ~TraceRSP;
- }
- else
- {
- LogLevel |= TraceRSP;
- }
- g_Settings->SaveDword(Debugger_AppLogLevel, LogLevel);
- }
- break;
- case ID_DEBUGGER_APPLOG_TLB:
- {
- DWORD LogLevel = g_Settings->LoadDword(Debugger_AppLogLevel);
- if ((LogLevel & TraceTLB) != 0)
- {
- LogLevel &= ~TraceTLB;
- }
- else
- {
- LogLevel |= TraceTLB;
- }
- g_Settings->SaveDword(Debugger_AppLogLevel, LogLevel);
- }
- break;
- case ID_DEBUGGER_APPLOG_GFX_PLUGIN:
- {
- DWORD LogLevel = g_Settings->LoadDword(Debugger_AppLogLevel);
- if ((LogLevel & TraceGfxPlugin) != 0)
- {
- LogLevel &= ~TraceGfxPlugin;
- }
- else
- {
- LogLevel |= TraceGfxPlugin;
- }
- g_Settings->SaveDword(Debugger_AppLogLevel, LogLevel);
- }
- break;
- case ID_DEBUGGER_APPLOG_DEBUG:
- {
- DWORD LogLevel = g_Settings->LoadDword(Debugger_AppLogLevel);
- if ((LogLevel & TraceDebug) != 0)
- {
- LogLevel &= ~TraceDebug;
- }
- else
- {
- LogLevel |= TraceDebug;
- }
- g_Settings->SaveDword(Debugger_AppLogLevel, LogLevel);
- }
- break;
- case ID_DEBUGGER_APPLOG_AUDIO_EMU:
- {
- DWORD LogLevel = g_Settings->LoadDword(Debugger_AppLogLevel);
- if ((LogLevel & TraceAudio) != 0)
- {
- LogLevel &= ~TraceAudio;
- }
- else
- {
- LogLevel |= TraceAudio;
- }
- g_Settings->SaveDword(Debugger_AppLogLevel, LogLevel);
- }
- break;
+ case ID_DEBUGGER_TRACE_MD5: SetTraceModuleSetttings(Debugger_TraceMD5); break;
+ case ID_DEBUGGER_TRACE_SETTINGS: SetTraceModuleSetttings(Debugger_TraceSettings); break;
+ case ID_DEBUGGER_TRACE_UNKNOWN: SetTraceModuleSetttings(Debugger_TraceUnknown); break;
+ case ID_DEBUGGER_TRACE_APPINIT: SetTraceModuleSetttings(Debugger_TraceAppInit); break;
+ case ID_DEBUGGER_TRACE_APPCLEANUP: SetTraceModuleSetttings(Debugger_TraceAppCleanup); break;
+ case ID_DEBUGGER_TRACE_N64SYSTEM: SetTraceModuleSetttings(Debugger_TraceN64System); break;
+ case ID_DEBUGGER_TRACE_PLUGINS: SetTraceModuleSetttings(Debugger_TracePlugins); break;
+ case ID_DEBUGGER_TRACE_GFXPLUGIN: SetTraceModuleSetttings(Debugger_TraceGFXPlugin); break;
+ case ID_DEBUGGER_TRACE_AUDIOPLUGIN: SetTraceModuleSetttings(Debugger_TraceAudioPlugin); break;
+ case ID_DEBUGGER_TRACE_CONTROLLERPLUGIN: SetTraceModuleSetttings(Debugger_TraceControllerPlugin); break;
+ case ID_DEBUGGER_TRACE_RSPPLUGIN: SetTraceModuleSetttings(Debugger_TraceRSPPlugin); break;
+ case ID_DEBUGGER_TRACE_RSP: SetTraceModuleSetttings(Debugger_TraceRSP); break;
+ case ID_DEBUGGER_TRACE_AUDIO: SetTraceModuleSetttings(Debugger_TraceAudio); break;
+ case ID_DEBUGGER_TRACE_REGISTERCACHE: SetTraceModuleSetttings(Debugger_TraceRegisterCache); break;
+ case ID_DEBUGGER_TRACE_RECOMPILER: SetTraceModuleSetttings(Debugger_TraceRecompiler); break;
+ case ID_DEBUGGER_TRACE_TLB: SetTraceModuleSetttings(Debugger_TraceTLB); break;
+ case ID_DEBUGGER_TRACE_PROTECTEDMEM: SetTraceModuleSetttings(Debugger_TraceProtectedMEM); break;
+ case ID_DEBUGGER_TRACE_USERINTERFACE: SetTraceModuleSetttings(Debugger_TraceUserInterface); break;
+
case ID_DEBUGGER_APPLOG_FLUSH:
g_Settings->SaveBool(Debugger_AppLogFlush, !g_Settings->LoadBool(Debugger_AppLogFlush));
break;
@@ -1037,47 +967,83 @@ void CMainMenu::FillOutMenu(HMENU hMenu)
/* Debug - App logging
*******************/
- {
- DWORD LogLevel = g_Settings->LoadDword(Debugger_AppLogLevel);
+ Item.Reset(ID_DEBUGGER_TRACE_MD5, EMPTY_STRING, EMPTY_STDSTR, NULL, L"MD5");
+ Item.SetItemTicked(g_Settings->LoadDword(Debugger_TraceMD5) == TraceVerbose);
+ DebugAppLoggingMenu.push_back(Item);
- Item.Reset(ID_DEBUGGER_APPLOG_ERRORS, EMPTY_STRING, EMPTY_STDSTR, NULL, L"Error Messages");
- if ((LogLevel & TraceError) != 0) { Item.SetItemTicked(true); }
- DebugAppLoggingMenu.push_back(Item);
+ Item.Reset(ID_DEBUGGER_TRACE_SETTINGS, EMPTY_STRING, EMPTY_STDSTR, NULL, L"Settings");
+ Item.SetItemTicked(g_Settings->LoadDword(Debugger_TraceSettings) == TraceVerbose);
+ DebugAppLoggingMenu.push_back(Item);
- Item.Reset(ID_DEBUGGER_APPLOG_SETTINGS, EMPTY_STRING, EMPTY_STDSTR, NULL, L"Settings");
- if ((LogLevel & TraceSettings) != 0) { Item.SetItemTicked(true); }
- DebugAppLoggingMenu.push_back(Item);
+ Item.Reset(ID_DEBUGGER_TRACE_UNKNOWN, EMPTY_STRING, EMPTY_STDSTR, NULL, L"Unknown");
+ Item.SetItemTicked(g_Settings->LoadDword(Debugger_TraceUnknown) == TraceVerbose);
+ DebugAppLoggingMenu.push_back(Item);
- Item.Reset(ID_DEBUGGER_APPLOG_RECOMPILER, EMPTY_STRING, EMPTY_STDSTR, NULL, L"Recompiler");
- if ((LogLevel & TraceRecompiler) != 0) { Item.SetItemTicked(true); }
- DebugAppLoggingMenu.push_back(Item);
+ Item.Reset(ID_DEBUGGER_TRACE_APPINIT, EMPTY_STRING, EMPTY_STDSTR, NULL, L"App Init");
+ Item.SetItemTicked(g_Settings->LoadDword(Debugger_TraceAppInit) == TraceVerbose);
+ DebugAppLoggingMenu.push_back(Item);
- Item.Reset(ID_DEBUGGER_APPLOG_RSP, EMPTY_STRING, EMPTY_STDSTR, NULL, L"RSP");
- if ((LogLevel & TraceRSP) != 0) { Item.SetItemTicked(true); }
- DebugAppLoggingMenu.push_back(Item);
+ Item.Reset(ID_DEBUGGER_TRACE_APPCLEANUP, EMPTY_STRING, EMPTY_STDSTR, NULL, L"App Cleanup");
+ Item.SetItemTicked(g_Settings->LoadDword(Debugger_TraceAppCleanup) == TraceVerbose);
+ DebugAppLoggingMenu.push_back(Item);
- Item.Reset(ID_DEBUGGER_APPLOG_TLB, EMPTY_STRING, EMPTY_STDSTR, NULL, L"TLB");
- if ((LogLevel & TraceTLB) != 0) { Item.SetItemTicked(true); }
- DebugAppLoggingMenu.push_back(Item);
+ Item.Reset(ID_DEBUGGER_TRACE_N64SYSTEM, EMPTY_STRING, EMPTY_STDSTR, NULL, L"N64 System");
+ Item.SetItemTicked(g_Settings->LoadDword(Debugger_TraceN64System) == TraceVerbose);
+ DebugAppLoggingMenu.push_back(Item);
- Item.Reset(ID_DEBUGGER_APPLOG_GFX_PLUGIN, EMPTY_STRING, EMPTY_STDSTR, NULL, L"Gfx Plugin");
- if ((LogLevel & TraceGfxPlugin) != 0) { Item.SetItemTicked(true); }
- DebugAppLoggingMenu.push_back(Item);
+ Item.Reset(ID_DEBUGGER_TRACE_PLUGINS, EMPTY_STRING, EMPTY_STDSTR, NULL, L"Plugins");
+ Item.SetItemTicked(g_Settings->LoadDword(Debugger_TracePlugins) == TraceVerbose);;
+ DebugAppLoggingMenu.push_back(Item);
- Item.Reset(ID_DEBUGGER_APPLOG_AUDIO_EMU, EMPTY_STRING, EMPTY_STDSTR, NULL, L"Audio Emulation");
- if ((LogLevel & TraceAudio) != 0) { Item.SetItemTicked(true); }
- DebugAppLoggingMenu.push_back(Item);
+ Item.Reset(ID_DEBUGGER_TRACE_GFXPLUGIN, EMPTY_STRING, EMPTY_STDSTR, NULL, L"GFX Plugin");
+ Item.SetItemTicked(g_Settings->LoadDword(Debugger_TraceGFXPlugin) == TraceVerbose);
+ DebugAppLoggingMenu.push_back(Item);
- Item.Reset(ID_DEBUGGER_APPLOG_DEBUG, EMPTY_STRING, EMPTY_STDSTR, NULL, L"Debug Messages");
- if ((LogLevel & TraceDebug) != 0) { Item.SetItemTicked(true); }
- DebugAppLoggingMenu.push_back(Item);
+ Item.Reset(ID_DEBUGGER_TRACE_AUDIOPLUGIN, EMPTY_STRING, EMPTY_STDSTR, NULL, L"Audio Plugin");
+ Item.SetItemTicked(g_Settings->LoadDword(Debugger_TraceAudioPlugin) == TraceVerbose);
+ DebugAppLoggingMenu.push_back(Item);
- DebugAppLoggingMenu.push_back(MENU_ITEM(SPLITER));
+ Item.Reset(ID_DEBUGGER_TRACE_CONTROLLERPLUGIN, EMPTY_STRING, EMPTY_STDSTR, NULL, L"Controller Plugin");
+ Item.SetItemTicked(g_Settings->LoadDword(Debugger_TraceControllerPlugin) == TraceVerbose);
+ DebugAppLoggingMenu.push_back(Item);
- Item.Reset(ID_DEBUGGER_APPLOG_FLUSH, EMPTY_STRING, EMPTY_STDSTR, NULL, L"Auto flush file");
- if (g_Settings->LoadBool(Debugger_AppLogFlush)) { Item.SetItemTicked(true); }
- DebugAppLoggingMenu.push_back(Item);
- }
+ Item.Reset(ID_DEBUGGER_TRACE_RSPPLUGIN, EMPTY_STRING, EMPTY_STDSTR, NULL, L"RSP Plugin");
+ Item.SetItemTicked(g_Settings->LoadDword(Debugger_TraceRSPPlugin) == TraceVerbose);;
+ DebugAppLoggingMenu.push_back(Item);
+
+ Item.Reset(ID_DEBUGGER_TRACE_RSP, EMPTY_STRING, EMPTY_STDSTR, NULL, L"RSP");
+ Item.SetItemTicked(g_Settings->LoadDword(Debugger_TraceRSP) == TraceVerbose);
+ DebugAppLoggingMenu.push_back(Item);
+
+ Item.Reset(ID_DEBUGGER_TRACE_AUDIO, EMPTY_STRING, EMPTY_STDSTR, NULL, L"Audio");
+ Item.SetItemTicked(g_Settings->LoadDword(Debugger_TraceAudio) == TraceVerbose);
+ DebugAppLoggingMenu.push_back(Item);
+
+ Item.Reset(ID_DEBUGGER_TRACE_REGISTERCACHE, EMPTY_STRING, EMPTY_STDSTR, NULL, L"Register Cache");
+ Item.SetItemTicked(g_Settings->LoadDword(Debugger_TraceRegisterCache) == TraceVerbose);
+ DebugAppLoggingMenu.push_back(Item);
+
+ Item.Reset(ID_DEBUGGER_TRACE_RECOMPILER, EMPTY_STRING, EMPTY_STDSTR, NULL, L"Recompiler");
+ Item.SetItemTicked(g_Settings->LoadDword(Debugger_TraceRecompiler) == TraceVerbose);
+ DebugAppLoggingMenu.push_back(Item);
+
+ Item.Reset(ID_DEBUGGER_TRACE_TLB, EMPTY_STRING, EMPTY_STDSTR, NULL, L"TLB");
+ Item.SetItemTicked(g_Settings->LoadDword(Debugger_TraceTLB) == TraceVerbose);
+ DebugAppLoggingMenu.push_back(Item);
+
+ Item.Reset(ID_DEBUGGER_TRACE_PROTECTEDMEM, EMPTY_STRING, EMPTY_STDSTR, NULL, L"Protected MEM");
+ Item.SetItemTicked(g_Settings->LoadDword(Debugger_TraceProtectedMEM) == TraceVerbose);
+ DebugAppLoggingMenu.push_back(Item);
+
+ Item.Reset(ID_DEBUGGER_TRACE_USERINTERFACE, EMPTY_STRING, EMPTY_STDSTR, NULL, L"User Interface");
+ Item.SetItemTicked(g_Settings->LoadDword(Debugger_TraceUserInterface) == TraceVerbose);
+ DebugAppLoggingMenu.push_back(Item);
+
+ DebugAppLoggingMenu.push_back(MENU_ITEM(SPLITER));
+
+ Item.Reset(ID_DEBUGGER_APPLOG_FLUSH, EMPTY_STRING, EMPTY_STDSTR, NULL, L"Auto flush file");
+ if (g_Settings->LoadBool(Debugger_AppLogFlush)) { Item.SetItemTicked(true); }
+ DebugAppLoggingMenu.push_back(Item);
/* Debug - Logging
*******************/
@@ -1222,26 +1188,26 @@ void CMainMenu::RebuildAccelerators(void)
CGuard Guard(m_CS);
//Delete the old accel list
- WriteTrace(TraceDebug, __FUNCTION__ ": Start");
+ WriteTrace(TraceUserInterface, TraceDebug, "Start");
HACCEL m_OldAccelTable = (HACCEL)m_AccelTable;
m_AccelTable = m_ShortCuts.GetAcceleratorTable();
if (m_OldAccelTable) {
DestroyAcceleratorTable(m_OldAccelTable);
}
- WriteTrace(TraceDebug, __FUNCTION__ ": Done");
+ WriteTrace(TraceUserInterface, TraceDebug, "Done");
}
void CMainMenu::ResetMenu(void)
{
- WriteTrace(TraceDebug, __FUNCTION__ ": Start");
+ WriteTrace(TraceUserInterface, TraceDebug, "Start");
if (!g_Settings->LoadBool(UserInterface_InFullScreen))
{
//Create a new window with all the items
- WriteTrace(TraceDebug, __FUNCTION__ ": Create Menu");
+ WriteTrace(TraceUserInterface, TraceDebug, "Create Menu");
HMENU hMenu = CreateMenu();
FillOutMenu(hMenu);
- WriteTrace(TraceDebug, __FUNCTION__ ": Create Menu Done");
+ WriteTrace(TraceUserInterface, TraceDebug, "Create Menu Done");
//save old menu to destroy latter
HMENU OldMenuHandle;
@@ -1250,12 +1216,12 @@ void CMainMenu::ResetMenu(void)
OldMenuHandle = m_MenuHandle;
//save handle and re-attach to a window
- WriteTrace(TraceDebug, __FUNCTION__ ": Attach Menu");
+ WriteTrace(TraceUserInterface, TraceDebug, "Attach Menu");
m_MenuHandle = hMenu;
}
m_Gui->SetWindowMenu(this);
- WriteTrace(TraceDebug, __FUNCTION__ ": Remove plugin menu");
+ WriteTrace(TraceUserInterface, TraceDebug, "Remove plugin menu");
if (g_Plugins->Gfx() != NULL && IsMenu((HMENU)g_Plugins->Gfx()->GetDebugMenu()))
{
RemoveMenu((HMENU)OldMenuHandle, (DWORD)g_Plugins->Gfx()->GetDebugMenu(), MF_BYCOMMAND);
@@ -1264,7 +1230,7 @@ void CMainMenu::ResetMenu(void)
{
RemoveMenu((HMENU)OldMenuHandle, (DWORD)g_Plugins->RSP()->GetDebugMenu(), MF_BYCOMMAND);
}
- WriteTrace(TraceDebug, __FUNCTION__ ": Destroy Old Menu");
+ WriteTrace(TraceUserInterface, TraceDebug, "Destroy Old Menu");
//Destroy the old menu
DestroyMenu((HMENU)OldMenuHandle);
@@ -1272,5 +1238,5 @@ void CMainMenu::ResetMenu(void)
ResetAccelerators();
- WriteTrace(TraceDebug, __FUNCTION__ ": Done");
-}
+ WriteTrace(TraceUserInterface, TraceDebug, "Done");
+}
\ No newline at end of file
diff --git a/Source/Project64/UserInterface/MainMenuClass.h b/Source/Project64/UserInterface/MainMenuClass.h
index 48bdeb7cd..dafda79c5 100644
--- a/Source/Project64/UserInterface/MainMenuClass.h
+++ b/Source/Project64/UserInterface/MainMenuClass.h
@@ -41,9 +41,11 @@ enum MainMenuID
ID_DEBUGGER_INTERRUPT_PI, ID_DEBUGGER_INTERRUPT_DP,
// App logging
- ID_DEBUGGER_APPLOG_ERRORS, ID_DEBUGGER_APPLOG_SETTINGS, ID_DEBUGGER_APPLOG_GFX_PLUGIN,
- ID_DEBUGGER_APPLOG_DEBUG, ID_DEBUGGER_APPLOG_FLUSH, ID_DEBUGGER_APPLOG_RECOMPILER,
- ID_DEBUGGER_APPLOG_RSP, ID_DEBUGGER_APPLOG_TLB, ID_DEBUGGER_APPLOG_AUDIO_EMU,
+ ID_DEBUGGER_APPLOG_FLUSH, ID_DEBUGGER_TRACE_MD5, ID_DEBUGGER_TRACE_SETTINGS, ID_DEBUGGER_TRACE_UNKNOWN, ID_DEBUGGER_TRACE_APPINIT,
+ ID_DEBUGGER_TRACE_APPCLEANUP, ID_DEBUGGER_TRACE_N64SYSTEM, ID_DEBUGGER_TRACE_PLUGINS, ID_DEBUGGER_TRACE_GFXPLUGIN,
+ ID_DEBUGGER_TRACE_AUDIOPLUGIN, ID_DEBUGGER_TRACE_CONTROLLERPLUGIN, ID_DEBUGGER_TRACE_RSPPLUGIN, ID_DEBUGGER_TRACE_RSP,
+ ID_DEBUGGER_TRACE_AUDIO, ID_DEBUGGER_TRACE_REGISTERCACHE, ID_DEBUGGER_TRACE_RECOMPILER, ID_DEBUGGER_TRACE_TLB,
+ ID_DEBUGGER_TRACE_PROTECTEDMEM, ID_DEBUGGER_TRACE_USERINTERFACE,
//Profile Menu
ID_PROFILE_PROFILE, ID_PROFILE_RESETCOUNTER, ID_PROFILE_GENERATELOG,
@@ -75,6 +77,7 @@ private:
stdstr GetFileLastMod(stdstr FileName);
void RebuildAccelerators(void);
stdstr ChooseFileToOpen(HWND hParent);
+ void SetTraceModuleSetttings(SettingID Type);
static void SettingsChanged(CMainMenu * _this);
diff --git a/Source/Project64/UserInterface/MenuShortCuts.cpp b/Source/Project64/UserInterface/MenuShortCuts.cpp
index 10c68aa7a..989ffd905 100644
--- a/Source/Project64/UserInterface/MenuShortCuts.cpp
+++ b/Source/Project64/UserInterface/MenuShortCuts.cpp
@@ -496,9 +496,9 @@ HACCEL CShortCuts::GetAcceleratorTable(void)
}
}
- WriteTrace(TraceDebug, __FUNCTION__ ": CreateAcceleratorTable");
+ WriteTrace(TraceUserInterface, TraceDebug, "CreateAcceleratorTable");
HACCEL AccelTable = CreateAcceleratorTable(AccelList, size);
- WriteTrace(TraceDebug, __FUNCTION__ ": Delete accel list");
+ WriteTrace(TraceUserInterface, TraceDebug, "Delete accel list");
delete[] AccelList;
return AccelTable;
}
\ No newline at end of file
diff --git a/Source/Project64/UserInterface/NotificationClass.cpp b/Source/Project64/UserInterface/NotificationClass.cpp
index fde362635..16ac957fd 100644
--- a/Source/Project64/UserInterface/NotificationClass.cpp
+++ b/Source/Project64/UserInterface/NotificationClass.cpp
@@ -59,7 +59,7 @@ void CNotificationImp::DisplayError(const wchar_t * Message) const
stdstr TraceMessage;
TraceMessage.FromUTF16(Message);
- WriteTrace(TraceError, TraceMessage.c_str());
+ WriteTrace(TraceUserInterface, TraceError, TraceMessage.c_str());
WindowMode();
HWND Parent = NULL;
@@ -100,11 +100,11 @@ void CNotificationImp::DisplayMessage(int DisplayTime, const wchar_t * Message)
{
if (m_gfxPlugin && m_gfxPlugin->DrawStatus)
{
- WriteTrace(TraceGfxPlugin, __FUNCTION__ ": DrawStatus - Starting");
+ WriteTrace(TraceGFXPlugin, TraceDebug, "DrawStatus - Starting");
stdstr PluginMessage;
PluginMessage.FromUTF16(Message);
m_gfxPlugin->DrawStatus(PluginMessage.c_str(), FALSE);
- WriteTrace(TraceGfxPlugin, __FUNCTION__ ": DrawStatus - Done");
+ WriteTrace(TraceGFXPlugin, TraceDebug, "DrawStatus - Done");
}
}
else
@@ -124,7 +124,7 @@ bool CNotificationImp::AskYesNoQuestion(const wchar_t * Question) const
{
if (this == NULL) { return false; }
- WriteTrace(TraceError, stdstr().FromUTF16(Question).c_str());
+ WriteTrace(TraceUserInterface, TraceError, stdstr().FromUTF16(Question).c_str());
WindowMode();
HWND Parent = NULL;
diff --git a/Source/Project64/UserInterface/RomBrowserClass.cpp b/Source/Project64/UserInterface/RomBrowserClass.cpp
index 142fd8160..f2695fefd 100644
--- a/Source/Project64/UserInterface/RomBrowserClass.cpp
+++ b/Source/Project64/UserInterface/RomBrowserClass.cpp
@@ -576,7 +576,7 @@ void CRomBrowser::FillRomList(strlist & FileList, const CPath & BaseDirectory, c
CPath SearchPath(BaseDirectory, "*.*");
SearchPath.AppendDirectory(Directory.c_str());
- WriteTraceF(TraceDebug, __FUNCTION__ ": 1 %s", (const char *)SearchPath);
+ WriteTrace(TraceUserInterface, TraceDebug, "1 %s", (const char *)SearchPath);
if (!SearchPath.FindFirst(CPath::_A_ALLFILES))
{
return;
@@ -588,7 +588,7 @@ void CRomBrowser::FillRomList(strlist & FileList, const CPath & BaseDirectory, c
int8_t new_list_entry = 0;
const uint8_t exts = sizeof(ROM_extensions) / sizeof(ROM_extensions[0]);
- WriteTraceF(TraceDebug, __FUNCTION__ ": 2 %s m_StopRefresh = %d", (const char *)SearchPath, m_StopRefresh);
+ WriteTrace(TraceUserInterface, TraceDebug, ": 2 %s m_StopRefresh = %d", (const char *)SearchPath, m_StopRefresh);
if (m_StopRefresh) { break; }
if (SearchPath.IsDirectory())
@@ -633,7 +633,7 @@ void CRomBrowser::FillRomList(strlist & FileList, const CPath & BaseDirectory, c
stdstr_f SectionName("%s-%d", ZipFile.FileName(ZipFileName, sizeof(ZipFileName)), ZipFile.FileSize());
SectionName.ToLower();
- WriteTraceF(TraceDebug, __FUNCTION__ ": 4 %s", SectionName.c_str());
+ WriteTrace(TraceUserInterface, TraceDebug, "4 %s", SectionName.c_str());
for (int32_t i = 0; i < ZipFile.NumFiles(); i++)
{
CSzFileItem * f = ZipFile.FileItem(i);
@@ -651,16 +651,16 @@ void CRomBrowser::FillRomList(strlist & FileList, const CPath & BaseDirectory, c
stdstr FileName;
FileName.FromUTF16(FileNameW.c_str());
- WriteTrace(TraceDebug, __FUNCTION__ ": 5");
+ WriteTrace(TraceUserInterface, TraceDebug, "5");
char drive2[_MAX_DRIVE], dir2[_MAX_DIR], FileName2[MAX_PATH], ext2[_MAX_EXT];
_splitpath(FileName.c_str(), drive2, dir2, FileName2, ext2);
- WriteTraceF(TraceDebug, __FUNCTION__ ": 6 %s", ext2);
+ WriteTrace(TraceUserInterface, TraceDebug, ": 6 %s", ext2);
if (_stricmp(ext2, ".bin") == 0)
{
continue;
}
- WriteTrace(TraceDebug, __FUNCTION__ ": 7");
+ WriteTrace(TraceUserInterface, TraceDebug, "7");
memset(&RomInfo, 0, sizeof(ROM_INFO));
stdstr_f zipFileName("%s?%s", (LPCSTR)SearchPath, FileName.c_str());
ZipFile.SetNotificationCallback((C7zip::LP7ZNOTIFICATION)NotificationCB, this);
@@ -670,7 +670,7 @@ void CRomBrowser::FillRomList(strlist & FileList, const CPath & BaseDirectory, c
strcpy(RomInfo.FileName, strstr(RomInfo.szFullFileName, "?") + 1);
RomInfo.FileFormat = Format_7zip;
- WriteTrace(TraceDebug, __FUNCTION__ ": 8");
+ WriteTrace(TraceUserInterface, TraceDebug, "8");
char szHeader[0x90];
if (m_ZipIniFile->GetString(SectionName.c_str(), FileName.c_str(), "", szHeader, sizeof(szHeader)) == 0)
{
@@ -679,27 +679,27 @@ void CRomBrowser::FillRomList(strlist & FileList, const CPath & BaseDirectory, c
{
continue;
}
- WriteTrace(TraceDebug, __FUNCTION__ ": 9");
+ WriteTrace(TraceUserInterface, TraceDebug, "9");
if (!CN64Rom::IsValidRomImage(RomData)) { continue; }
- WriteTrace(TraceDebug, __FUNCTION__ ": 10");
+ WriteTrace(TraceUserInterface, TraceDebug, "10");
ByteSwapRomData(RomData, sizeof(RomData));
- WriteTrace(TraceDebug, __FUNCTION__ ": 11");
+ WriteTrace(TraceUserInterface, TraceDebug, "11");
stdstr RomHeader;
for (int32_t x = 0; x < 0x40; x += 4)
{
RomHeader += stdstr_f("%08X", *((uint32_t *)&RomData[x]));
}
- WriteTraceF(TraceDebug, __FUNCTION__ ": 11a %s", RomHeader.c_str());
+ WriteTrace(TraceUserInterface, TraceDebug, "11a %s", RomHeader.c_str());
int32_t CicChip = GetCicChipID(RomData);
//save this info
- WriteTrace(TraceDebug, __FUNCTION__ ": 12");
+ WriteTrace(TraceUserInterface, TraceDebug, "12");
m_ZipIniFile->SaveString(SectionName.c_str(), FileName.c_str(), RomHeader.c_str());
m_ZipIniFile->SaveNumber(SectionName.c_str(), stdstr_f("%s-Cic", FileName.c_str()).c_str(), CicChip);
strcpy(szHeader, RomHeader.c_str());
}
- WriteTrace(TraceDebug, __FUNCTION__ ": 13");
+ WriteTrace(TraceUserInterface, TraceDebug, "13");
uint8_t RomData[0x40];
for (int32_t x = 0; x < 0x40; x += 4)
@@ -712,7 +712,7 @@ void CRomBrowser::FillRomList(strlist & FileList, const CPath & BaseDirectory, c
szHeader[2 * x + delimit_offset] = backup_character;
}
- WriteTrace(TraceDebug, __FUNCTION__ ": 14");
+ WriteTrace(TraceUserInterface, TraceDebug, "14");
{
char InternalName[22];
memcpy(InternalName, (void *)(RomData + 0x20), 20);
@@ -730,7 +730,7 @@ void CRomBrowser::FillRomList(strlist & FileList, const CPath & BaseDirectory, c
}
RomInfo.RomSize = (int32_t)f->Size;
- WriteTrace(TraceDebug, __FUNCTION__ ": 15");
+ WriteTrace(TraceUserInterface, TraceDebug, "15");
RomInfo.CartID[0] = *(RomData + 0x3F);
RomInfo.CartID[1] = *(RomData + 0x3E);
RomInfo.CartID[2] = '\0';
@@ -739,7 +739,7 @@ void CRomBrowser::FillRomList(strlist & FileList, const CPath & BaseDirectory, c
RomInfo.CRC1 = *(uint32_t *)(RomData + 0x10);
RomInfo.CRC2 = *(uint32_t *)(RomData + 0x14);
m_ZipIniFile->GetNumber(SectionName.c_str(), stdstr_f("%s-Cic", FileName.c_str()).c_str(), (ULONG)-1, (uint32_t &)RomInfo.CicChip);
- WriteTrace(TraceDebug, __FUNCTION__ ": 16");
+ WriteTrace(TraceUserInterface, TraceDebug, "16");
FillRomExtensionInfo(&RomInfo);
if (RomInfo.SelColor == -1)
@@ -750,13 +750,13 @@ void CRomBrowser::FillRomList(strlist & FileList, const CPath & BaseDirectory, c
{
RomInfo.SelColorBrush = (uint32_t)CreateSolidBrush(RomInfo.SelColor);
}
- WriteTrace(TraceDebug, __FUNCTION__ ": 17");
+ WriteTrace(TraceUserInterface, TraceDebug, "17");
AddRomInfoToList(RomInfo, lpLastRom);
}
}
catch (...)
{
- WriteTraceF(TraceError, __FUNCTION__ "(): execpetion processing %s", (LPCSTR)SearchPath);
+ WriteTrace(TraceUserInterface, TraceError, "execpetion processing %s", (LPCSTR)SearchPath);
}
continue;
}
@@ -781,8 +781,8 @@ int32_t CRomBrowser::GetCicChipID(uint8_t * RomData)
case 0x000000D6497E414B: return CIC_NUS_6103;
case 0x0000011A49F60E96: return CIC_NUS_6105;
case 0x000000D6D5BE5580: return CIC_NUS_6106;
- case 0x000001053BC19870: return CIC_NUS_5167; //64DD CONVERSION CIC
- case 0x000000D2E53EF008: return CIC_NUS_8303; //64DD IPL
+ case 0x000001053BC19870: return CIC_NUS_5167; //64DD CONVERSION CIC
+ case 0x000000D2E53EF008: return CIC_NUS_8303; //64DD IPL
default:
return CIC_UNKNOWN;
}
@@ -930,7 +930,7 @@ void CRomBrowser::ByteSwapRomData(uint8_t * Data, int32_t DataLen)
Data[count + 1] ^= Data[count + 3];
}
break;
- case 0x40072780: //64DD IPL
+ case 0x40072780: //64DD IPL
case 0x40123780:
for (count = 0; count < DataLen; count += 4)
{
@@ -1031,10 +1031,10 @@ void CRomBrowser::RefreshRomBrowser(void)
{
return;
}
- WriteTrace(TraceDebug, __FUNCTION__ ": 1");
+ WriteTrace(TraceUserInterface, TraceDebug, "1");
m_StopRefresh = false;
m_RefreshThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)RefreshRomBrowserStatic, (LPVOID)this, 0, &ThreadID);
- WriteTrace(TraceDebug, __FUNCTION__ ": 2");
+ WriteTrace(TraceUserInterface, TraceDebug, "2");
}
void CRomBrowser::RefreshRomBrowserStatic(CRomBrowser * _this)
@@ -1048,41 +1048,41 @@ void CRomBrowser::RefreshRomBrowserStatic(CRomBrowser * _this)
DeleteFile(CacheFileName.c_str());
//clear all current items
- WriteTrace(TraceDebug, __FUNCTION__ " 1");
+ WriteTrace(TraceUserInterface, TraceDebug, "1");
ListView_DeleteAllItems((HWND)_this->m_hRomList);
_this->DeallocateBrushs();
_this->m_RomInfo.clear();
- WriteTrace(TraceDebug, __FUNCTION__ " 2");
+ WriteTrace(TraceUserInterface, TraceDebug, "2");
InvalidateRect((HWND)_this->m_hRomList, NULL, TRUE);
Sleep(100);
- WriteTrace(TraceDebug, __FUNCTION__ " 3");
+ WriteTrace(TraceUserInterface, TraceDebug, "3");
if (_this->m_WatchRomDir != g_Settings->LoadStringVal(Directory_Game))
{
- WriteTrace(TraceDebug, __FUNCTION__ " 4");
+ WriteTrace(TraceUserInterface, TraceDebug, "4");
_this->WatchThreadStop();
- WriteTrace(TraceDebug, __FUNCTION__ " 5");
+ WriteTrace(TraceUserInterface, TraceDebug, "5");
_this->WatchThreadStart();
- WriteTrace(TraceDebug, __FUNCTION__ " 6");
+ WriteTrace(TraceUserInterface, TraceDebug, "6");
}
- WriteTrace(TraceDebug, __FUNCTION__ " 7");
+ WriteTrace(TraceUserInterface, TraceDebug, "7");
stdstr RomDir = g_Settings->LoadStringVal(Directory_Game);
stdstr LastRom = g_Settings->LoadStringIndex(File_RecentGameFileIndex, 0);
- WriteTrace(TraceDebug, __FUNCTION__ " 8");
+ WriteTrace(TraceUserInterface, TraceDebug, "8");
strlist FileNames;
_this->FillRomList(FileNames, CPath(RomDir), stdstr(""), LastRom.c_str());
- WriteTrace(TraceDebug, __FUNCTION__ " 9");
+ WriteTrace(TraceUserInterface, TraceDebug, "9");
_this->SaveRomList(FileNames);
- WriteTrace(TraceDebug, __FUNCTION__ " 10");
+ WriteTrace(TraceUserInterface, TraceDebug, "10");
CloseHandle(_this->m_RefreshThread);
_this->m_RefreshThread = NULL;
- WriteTrace(TraceDebug, __FUNCTION__ " 11");
+ WriteTrace(TraceUserInterface, TraceDebug, "11");
}
catch (...)
{
- WriteTrace(TraceError, __FUNCTION__ "(): Unhandled Exception ");
+ WriteTrace(TraceUserInterface, TraceError, "Unhandled Exception ");
}
}
@@ -1410,14 +1410,14 @@ void CRomBrowser::RomList_GetDispInfo(uint32_t pnmh)
{
swprintf(lpdi->item.pszText, lpdi->item.cchTextMax / sizeof(wchar_t), L"Unknown CIC Chip");
}
- else if (pRomInfo->CicChip == CIC_NUS_8303)
- {
- swprintf(lpdi->item.pszText, lpdi->item.cchTextMax / sizeof(wchar_t), L"CIC-NUS-8303", pRomInfo->CicChip);
- }
- else if (pRomInfo->CicChip == CIC_NUS_5167)
+ else if (pRomInfo->CicChip == CIC_NUS_8303)
+ {
+ swprintf(lpdi->item.pszText, lpdi->item.cchTextMax / sizeof(wchar_t), L"CIC-NUS-8303", pRomInfo->CicChip);
+ }
+ else if (pRomInfo->CicChip == CIC_NUS_5167)
{
swprintf(lpdi->item.pszText, lpdi->item.cchTextMax / sizeof(wchar_t), L"CIC-NUS-5167", pRomInfo->CicChip);
- }
+ }
else
{
swprintf(lpdi->item.pszText, lpdi->item.cchTextMax / sizeof(wchar_t), L"CIC-NUS-610%d", pRomInfo->CicChip);
@@ -1600,7 +1600,7 @@ void CRomBrowser::SaveRomList(strlist & FileList)
void CRomBrowser::SaveRomListColoumnInfo(void)
{
- WriteTrace(TraceDebug, __FUNCTION__ ": Start");
+ WriteTrace(TraceUserInterface, TraceDebug, "Start");
// if (!RomBrowserVisible()) { return; }
if (g_Settings == NULL) { return; }
@@ -1629,7 +1629,7 @@ void CRomBrowser::SaveRomListColoumnInfo(void)
}
}
}
- WriteTrace(TraceDebug, __FUNCTION__ ": Done");
+ WriteTrace(TraceUserInterface, TraceDebug, "Done");
}
int32_t CALLBACK CRomBrowser::SelectRomDirCallBack(HWND hwnd, uint32_t uMsg, uint32_t /*lp*/, uint32_t lpData)
@@ -1655,7 +1655,7 @@ void CRomBrowser::SelectRomDir(void)
LPITEMIDLIST pidl;
BROWSEINFOW bi;
- WriteTrace(TraceDebug, __FUNCTION__ " 1");
+ WriteTrace(TraceUserInterface, TraceDebug, "1");
stdstr RomDir = g_Settings->LoadStringVal(Directory_Game);
bi.hwndOwner = m_MainWindow;
bi.pidlRoot = NULL;
@@ -1664,28 +1664,28 @@ void CRomBrowser::SelectRomDir(void)
bi.ulFlags = BIF_RETURNFSANCESTORS | BIF_RETURNONLYFSDIRS;
bi.lpfn = (BFFCALLBACK)SelectRomDirCallBack;
bi.lParam = (uint32_t)RomDir.c_str();
- WriteTrace(TraceDebug, __FUNCTION__ " 2");
+ WriteTrace(TraceUserInterface, TraceDebug, "2");
if ((pidl = SHBrowseForFolderW(&bi)) != NULL)
{
- WriteTrace(TraceDebug, __FUNCTION__ " 3");
+ WriteTrace(TraceUserInterface, TraceDebug, "3");
char Directory[_MAX_PATH];
if (SHGetPathFromIDList(pidl, Directory))
{
int32_t len = strlen(Directory);
- WriteTrace(TraceDebug, __FUNCTION__ " 4");
+ WriteTrace(TraceUserInterface, TraceDebug, "4");
if (Directory[len - 1] != '\\')
{
strcat(Directory, "\\");
}
- WriteTrace(TraceDebug, __FUNCTION__ " 5");
- WriteTrace(TraceDebug, __FUNCTION__ " 6");
+ WriteTrace(TraceUserInterface, TraceDebug, "5");
+ WriteTrace(TraceUserInterface, TraceDebug, "6");
g_Settings->SaveString(Directory_Game, Directory);
- WriteTrace(TraceDebug, __FUNCTION__ " 7");
+ WriteTrace(TraceUserInterface, TraceDebug, "7");
Notify().AddRecentDir(Directory);
- WriteTrace(TraceDebug, __FUNCTION__ " 8");
+ WriteTrace(TraceUserInterface, TraceDebug, "8");
RefreshRomBrowser();
- WriteTrace(TraceDebug, __FUNCTION__ " 9");
+ WriteTrace(TraceUserInterface, TraceDebug, "9");
}
}
}
@@ -1844,7 +1844,7 @@ MD5 CRomBrowser::RomListHash(strlist & FileList)
NewFileNames += ";";
}
MD5 md5Hash((const unsigned char *)NewFileNames.c_str(), NewFileNames.length());
- WriteTraceF(TraceDebug, __FUNCTION__ ": %s - %s", md5Hash.hex_digest(), NewFileNames.c_str());
+ WriteTrace(TraceUserInterface, TraceDebug, "%s - %s", md5Hash.hex_digest(), NewFileNames.c_str());
return md5Hash;
}
@@ -1852,58 +1852,58 @@ void CRomBrowser::WatchRomDirChanged(CRomBrowser * _this)
{
try
{
- WriteTrace(TraceDebug, __FUNCTION__ ": 1");
+ WriteTrace(TraceUserInterface, TraceDebug, "1");
_this->m_WatchRomDir = g_Settings->LoadStringVal(Directory_Game);
- WriteTrace(TraceDebug, __FUNCTION__ ": 2");
+ WriteTrace(TraceUserInterface, TraceDebug, "2");
if (_this->RomDirNeedsRefresh())
{
- WriteTrace(TraceDebug, __FUNCTION__ ": 2a");
+ WriteTrace(TraceUserInterface, TraceDebug, "2a");
PostMessage((HWND)_this->m_MainWindow, WM_COMMAND, ID_FILE_REFRESHROMLIST, 0);
}
- WriteTrace(TraceDebug, __FUNCTION__ ": 3");
+ WriteTrace(TraceUserInterface, TraceDebug, "3");
HANDLE hChange[] = {
_this->m_WatchStopEvent,
FindFirstChangeNotification(_this->m_WatchRomDir.c_str(), g_Settings->LoadDword(RomBrowser_Recursive), FILE_NOTIFY_CHANGE_FILE_NAME | FILE_NOTIFY_CHANGE_SIZE),
};
- WriteTrace(TraceDebug, __FUNCTION__ ": 4");
+ WriteTrace(TraceUserInterface, TraceDebug, "4");
for (;;)
{
- WriteTrace(TraceDebug, __FUNCTION__ ": 5");
+ WriteTrace(TraceUserInterface, TraceDebug, "5");
if (WaitForMultipleObjects(sizeof(hChange) / sizeof(hChange[0]), hChange, false, INFINITE) == WAIT_OBJECT_0)
{
- WriteTrace(TraceDebug, __FUNCTION__ ": 5a");
+ WriteTrace(TraceUserInterface, TraceDebug, "5a");
FindCloseChangeNotification(hChange[1]);
return;
}
- WriteTrace(TraceDebug, __FUNCTION__ ": 5b");
+ WriteTrace(TraceUserInterface, TraceDebug, "5b");
if (_this->RomDirNeedsRefresh())
{
PostMessage((HWND)_this->m_MainWindow, WM_COMMAND, ID_FILE_REFRESHROMLIST, 0);
}
- WriteTrace(TraceDebug, __FUNCTION__ ": 5c");
+ WriteTrace(TraceUserInterface, TraceDebug, "5c");
if (!FindNextChangeNotification(hChange[1]))
{
FindCloseChangeNotification(hChange[1]);
return;
}
- WriteTrace(TraceDebug, __FUNCTION__ ": 5d");
+ WriteTrace(TraceUserInterface, TraceDebug, "5d");
}
}
catch (...)
{
- WriteTraceF(TraceError, __FUNCTION__ ": Unhandled Exception");
+ WriteTrace(TraceUserInterface, TraceError, __FUNCTION__ ": Unhandled Exception");
}
}
void CRomBrowser::WatchThreadStart(void)
{
- WriteTrace(TraceDebug, __FUNCTION__ ": 1");
+ WriteTrace(TraceUserInterface, TraceDebug, "1");
WatchThreadStop();
- WriteTrace(TraceDebug, __FUNCTION__ ": 2");
+ WriteTrace(TraceUserInterface, TraceDebug, "2");
m_WatchStopEvent = CreateEvent(NULL, true, false, NULL);
- WriteTrace(TraceDebug, __FUNCTION__ ": 3");
+ WriteTrace(TraceUserInterface, TraceDebug, "3");
m_WatchThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)WatchRomDirChanged, this, 0, &m_WatchThreadID);
- WriteTrace(TraceDebug, __FUNCTION__ ": 4");
+ WriteTrace(TraceUserInterface, TraceDebug, "4");
}
void CRomBrowser::WatchThreadStop(void)
@@ -1912,12 +1912,12 @@ void CRomBrowser::WatchThreadStop(void)
{
return;
}
- WriteTrace(TraceDebug, __FUNCTION__ ": 1");
+ WriteTrace(TraceUserInterface, TraceDebug, "1");
SetEvent(m_WatchStopEvent);
DWORD ExitCode = 0;
for (int32_t count = 0; count < 20; count++)
{
- WriteTrace(TraceDebug, __FUNCTION__ ": 2");
+ WriteTrace(TraceUserInterface, TraceDebug, "2");
GetExitCodeThread(m_WatchThread, &ExitCode);
if (ExitCode != STILL_ACTIVE)
{
@@ -1925,18 +1925,18 @@ void CRomBrowser::WatchThreadStop(void)
}
Sleep(200);
}
- WriteTrace(TraceDebug, __FUNCTION__ ": 3");
+ WriteTrace(TraceUserInterface, TraceDebug, "3");
if (ExitCode == STILL_ACTIVE)
{
- WriteTrace(TraceDebug, __FUNCTION__ ": 3a");
+ WriteTrace(TraceUserInterface, TraceDebug, "3a");
TerminateThread(m_WatchThread, 0);
}
- WriteTrace(TraceDebug, __FUNCTION__ ": 4");
+ WriteTrace(TraceUserInterface, TraceDebug, "4");
CloseHandle(m_WatchThread);
CloseHandle(m_WatchStopEvent);
m_WatchStopEvent = NULL;
m_WatchThread = NULL;
m_WatchThreadID = 0;
- WriteTrace(TraceDebug, __FUNCTION__ ": 5");
-}
+ WriteTrace(TraceUserInterface, TraceDebug, "5");
+}
\ No newline at end of file
diff --git a/Source/Project64/main.cpp b/Source/Project64/main.cpp
index e8437bc3b..2e210ba31 100644
--- a/Source/Project64/main.cpp
+++ b/Source/Project64/main.cpp
@@ -14,7 +14,7 @@ int WINAPI WinMain(HINSTANCE /*hInstance*/, HINSTANCE /*hPrevInstance*/, LPSTR /
}
//Create the main window with Menu
- WriteTrace(TraceDebug, __FUNCTION__ ": Create Main Window");
+ WriteTrace(TraceUserInterface, TraceDebug, "Create Main Window");
CMainGui MainWindow(true, stdstr_f("Project64 %s", VER_FILE_VERSION_STR).c_str()), HiddenWindow(false);
CMainMenu MainMenu(&MainWindow);
g_Plugins->SetRenderWindows(&MainWindow, &HiddenWindow);
@@ -22,7 +22,7 @@ int WINAPI WinMain(HINSTANCE /*hInstance*/, HINSTANCE /*hPrevInstance*/, LPSTR /
if (__argc > 1)
{
- WriteTraceF(TraceDebug, __FUNCTION__ ": Cmd line found \"%s\"", __argv[1]);
+ WriteTrace(TraceUserInterface, TraceDebug, "Cmd line found \"%s\"", __argv[1]);
MainWindow.Show(true); //Show the main window
CN64System::RunFileImage(__argv[1]);
}
@@ -30,22 +30,23 @@ int WINAPI WinMain(HINSTANCE /*hInstance*/, HINSTANCE /*hPrevInstance*/, LPSTR /
{
if (g_Settings->LoadDword(RomBrowser_Enabled))
{
- WriteTrace(TraceDebug, __FUNCTION__ ": Show Rom Browser");
+ WriteTrace(TraceUserInterface, TraceDebug, "Show Rom Browser");
//Display the rom browser
MainWindow.ShowRomList();
MainWindow.Show(true); //Show the main window
MainWindow.HighLightLastRom();
}
- else {
- WriteTrace(TraceDebug, __FUNCTION__ ": Show Main Window");
+ else
+ {
+ WriteTrace(TraceUserInterface, TraceDebug, "Show Main Window");
MainWindow.Show(true); //Show the main window
}
}
//Process Messages till program is closed
- WriteTrace(TraceDebug, __FUNCTION__ ": Entering Message Loop");
+ WriteTrace(TraceUserInterface, TraceDebug, "Entering Message Loop");
MainWindow.ProcessAllMessages();
- WriteTrace(TraceDebug, __FUNCTION__ ": Message Loop Finished");
+ WriteTrace(TraceUserInterface, TraceDebug, "Message Loop Finished");
if (g_BaseSystem)
{
@@ -53,11 +54,11 @@ int WINAPI WinMain(HINSTANCE /*hInstance*/, HINSTANCE /*hPrevInstance*/, LPSTR /
delete g_BaseSystem;
g_BaseSystem = NULL;
}
- WriteTrace(TraceDebug, __FUNCTION__ ": System Closed");
+ WriteTrace(TraceUserInterface, TraceDebug, "System Closed");
}
catch (...)
{
- WriteTraceF(TraceError, __FUNCTION__ ": Exception caught (File: \"%s\" Line: %d)", __FILE__, __LINE__);
+ WriteTrace(TraceUserInterface, TraceError, "Exception caught (File: \"%s\" Line: %d)", __FILE__, __LINE__);
MessageBox(NULL, stdstr_f("Exception caught\nFile: %s\nLine: %d", __FILE__, __LINE__).c_str(), "Exception", MB_OK);
}
AppCleanup();