diff --git a/src/engine/engine.cpp b/src/engine/engine.cpp index 3a9563295..6a01ab758 100644 --- a/src/engine/engine.cpp +++ b/src/engine/engine.cpp @@ -757,6 +757,7 @@ bool DivEngine::init() { dispatch=new DivPlatformPCE; break; default: + logW("this system is not supported yet! using dummy platform.\n"); dispatch=new DivPlatformDummy; break; } diff --git a/src/log.cpp b/src/log.cpp index ff0f222ad..20942b959 100644 --- a/src/log.cpp +++ b/src/log.cpp @@ -1,5 +1,7 @@ #include "ta-log.h" +int logLevel=LOGLEVEL_INFO; + int logD(const char* format, ...) { va_list va; int ret; diff --git a/src/main.cpp b/src/main.cpp index 43310e763..a3d2eba92 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -54,6 +54,22 @@ bool pView(String val) { return true; } +bool pLogLevel(String val) { + if (val=="debug") { + logLevel=LOGLEVEL_DEBUG; + } else if (val=="info") { + logLevel=LOGLEVEL_INFO; + } else if (val=="warning") { + logLevel=LOGLEVEL_WARN; + } else if (val=="error") { + logLevel=LOGLEVEL_ERROR; + } else { + logE("invalid value for loglevel! valid values are: debug, info, warning, error.\n"); + return false; + } + return true; +} + bool pVersion(String) { printf("Furnace version " DIV_VERSION ".\n\n"); printf("developed by tildearrow. copyright (C) 2021.\n"); @@ -95,6 +111,7 @@ void initParams() { params.push_back(TAParam("h","help",false,pHelp,"","display this help")); params.push_back(TAParam("a","audio",true,pAudio,"jack|sdl","set audio engine (SDL by default)")); + params.push_back(TAParam("L","loglevel",true,pLogLevel,"debug|info|warning|error","set the log level (info by default)")); params.push_back(TAParam("v","view",true,pView,"pattern|commands|nothing","set visualization (pattern by default)")); params.push_back(TAParam("V","version",false,pVersion,"","view information about Furnace.")); diff --git a/src/ta-log.h b/src/ta-log.h index ee5a23b90..a33a7f996 100644 --- a/src/ta-log.h +++ b/src/ta-log.h @@ -8,7 +8,7 @@ #define LOGLEVEL_INFO 2 #define LOGLEVEL_DEBUG 3 -#define logLevel 3 +extern int logLevel; int logD(const char* format, ...); int logI(const char* format, ...);