diff --git a/core/log/ConsoleListenerDroid.cpp b/core/log/ConsoleListenerDroid.cpp index 31441f1ec..eb12491c9 100644 --- a/core/log/ConsoleListenerDroid.cpp +++ b/core/log/ConsoleListenerDroid.cpp @@ -1,7 +1,8 @@ // Copyright 2015 Dolphin Emulator Project // Licensed under GPLv2+ // Refer to the license.txt file included. -#ifdef __ANDROID__ +#if defined(__ANDROID__) && !defined(LOG_TO_PTY) + #include diff --git a/core/log/ConsoleListenerNix.cpp b/core/log/ConsoleListenerNix.cpp index 52b04be58..bc860e96b 100644 --- a/core/log/ConsoleListenerNix.cpp +++ b/core/log/ConsoleListenerNix.cpp @@ -1,7 +1,7 @@ // Copyright 2015 Dolphin Emulator Project // Licensed under GPLv2+ // Refer to the license.txt file included. -#if !defined(_WIN32) && !defined(__ANDROID__) +#if (!defined(_WIN32) && !defined(__ANDROID__)) || defined(LOG_TO_PTY) #include #include @@ -14,7 +14,11 @@ ConsoleListener::ConsoleListener() { +#ifdef LOG_TO_PTY + m_use_color = 1; +#else m_use_color = !!isatty(fileno(stderr)); +#endif } ConsoleListener::~ConsoleListener() diff --git a/core/log/ConsoleListenerWin.cpp b/core/log/ConsoleListenerWin.cpp index 188346541..dbf326f0a 100644 --- a/core/log/ConsoleListenerWin.cpp +++ b/core/log/ConsoleListenerWin.cpp @@ -1,7 +1,7 @@ // Copyright 2015 Dolphin Emulator Project // Licensed under GPLv2+ // Refer to the license.txt file included. -#ifdef _WIN32 +#if defined(_WIN32) && !defined(LOG_TO_PTY) #include diff --git a/core/windows/winmain.cpp b/core/windows/winmain.cpp index a9063d18f..d24dd9a7e 100644 --- a/core/windows/winmain.cpp +++ b/core/windows/winmain.cpp @@ -729,6 +729,10 @@ int CALLBACK WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLi char* cmd_line = GetCommandLineA(); char** argv = CommandLineToArgvA(cmd_line, &argc); +#endif + +#if defined(_WIN32) && defined(LOG_TO_PTY) + setbuf(stderr,NULL); #endif LogManager::Init(); @@ -791,7 +795,8 @@ double os_GetSeconds() LARGE_INTEGER time_now; QueryPerformanceCounter(&time_now); - return time_now.QuadPart*qpfd; + static LARGE_INTEGER time_now_base = time_now; + return (time_now.QuadPart - time_now_base.QuadPart)*qpfd; } void os_DebugBreak() diff --git a/shell/linux/Makefile b/shell/linux/Makefile index ea93d8b96..3307b6d48 100644 --- a/shell/linux/Makefile +++ b/shell/linux/Makefile @@ -422,6 +422,11 @@ ifdef ASAN LDFLAGS += -fsanitize=address -static-libasan endif +ifdef LOG_TO_PTY + CFLAGS += -D LOG_TO_PTY +endif + + EXECUTABLE_STRIPPED=nosym-reicast.$(PLATFORM_EXT) DC_PLATFORM=dreamcast EXECUTABLE=reicast.$(PLATFORM_EXT)