--- hatari/src/debug/log.h 2019/04/09 08:54:20 1.1.1.6 +++ hatari/src/debug/log.h 2019/04/09 08:56:46 1.1.1.8 @@ -25,13 +25,14 @@ #define EXCEPT_CHK (1<<4) #define EXCEPT_TRAPV (1<<5) #define EXCEPT_PRIVILEGE (1<<6) -#define EXCEPT_NOHANDLER (1<<7) +#define EXCEPT_TRACE (1<<7) +#define EXCEPT_NOHANDLER (1<<8) /* DSP exception flags */ -#define EXCEPT_DSP (1<<8) +#define EXCEPT_DSP (1<<9) /* whether to enable exception debugging on autostart */ -#define EXCEPT_AUTOSTART (1<<9) +#define EXCEPT_AUTOSTART (1<<10) /* general flags */ #define EXCEPT_NONE (0) @@ -67,6 +68,7 @@ typedef enum #define __attribute__(foo) #endif +extern void Log_Default(void); extern int Log_Init(void); extern int Log_SetAlertLevel(int level); extern void Log_UnInit(void); @@ -163,6 +165,16 @@ extern char *Log_MatchTrace(const char * #define TRACE_NATFEATS (1ll<<47) +#define TRACE_KEYMAP (1ll<<48) + +#define TRACE_MIDI (1ll<<49) + +#define TRACE_IDE (1ll<<50) + +#define TRACE_OS_BASE (1ll<<51) + +#define TRACE_SCSIDRV (1ll<<52) + #define TRACE_NONE (0) #define TRACE_ALL (~0) @@ -179,7 +191,7 @@ extern char *Log_MatchTrace(const char * #define TRACE_IKBD_ALL ( TRACE_IKBD_CMDS | TRACE_IKBD_ACIA | TRACE_IKBD_EXEC ) -#define TRACE_OS_ALL ( TRACE_OS_BIOS | TRACE_OS_XBIOS | TRACE_OS_GEMDOS | TRACE_OS_AES | TRACE_OS_VDI ) +#define TRACE_OS_ALL ( TRACE_OS_BASE | TRACE_OS_BIOS | TRACE_OS_XBIOS | TRACE_OS_GEMDOS | TRACE_OS_AES | TRACE_OS_VDI ) #define TRACE_IOMEM_ALL ( TRACE_IOMEM_RD | TRACE_IOMEM_WR ) @@ -191,17 +203,15 @@ extern Uint64 LogTraceFlags; #if ENABLE_TRACING -#ifndef _VCWIN_ -#define LOG_TRACE(level, args...) \ - if (unlikely(LogTraceFlags & level)) { fprintf(TraceFile, args); fflush(TraceFile); } -#endif -#define LOG_TRACE_LEVEL( level ) (unlikely(LogTraceFlags & level)) +#define LOG_TRACE(level, ...) \ + if (unlikely(LogTraceFlags & (level))) { fprintf(TraceFile, __VA_ARGS__); fflush(TraceFile); } + +#define LOG_TRACE_LEVEL( level ) (unlikely(LogTraceFlags & (level))) #else /* ENABLE_TRACING */ -#ifndef _VCWIN_ -#define LOG_TRACE(level, args...) {} -#endif +#define LOG_TRACE(level, ...) {} + #define LOG_TRACE_LEVEL( level ) (0) #endif /* ENABLE_TRACING */ @@ -210,9 +220,7 @@ extern Uint64 LogTraceFlags; * In code it's used in such a way that it will be optimized away when tracing * is disabled. */ -#ifndef _VCWIN_ -#define LOG_TRACE_PRINT(args...) fprintf(TraceFile , args) -#endif +#define LOG_TRACE_PRINT(...) fprintf(TraceFile , __VA_ARGS__) #endif /* HATARI_LOG_H */