This commit is contained in:
Paul 2000-09-15 17:20:48 +00:00
parent 4b45133ed3
commit 1f82dd3054
2 changed files with 39 additions and 32 deletions

View File

@ -18,7 +18,9 @@ void MemRemoveNode(sLList *LList,u_short Node);
sLList MainRam;
int MemNodeCount=0;
#ifdef __VERSION_DEBUG__
#define USE_MEM_GUARDS
#endif
#ifdef USE_MEM_GUARDS
static const unsigned int HEAD_GUARD_FILL_PATTERN =0x3c3c3c3c;

View File

@ -40,33 +40,38 @@
Tyepdefs && Defines
------------------- */
/*
Available options are:
DBG_OUTPUT_TO_DEBUGGER Send output to the debug console
DBG_OUTPUT_TO_LOG Send output to an internal log
DBG_MAX_MESSAGE_LENGTH chars Length of entries in this log
DBG_LOG_LINES lines Number of lines in the log buffer
DBG_SHOW_MESSAGE_ORIGIN Prepend file and linenumber to messages
DBG_FILENAME_LENGTH chars This many chars of the filename are shown
DBG_DEFAULT_CHANNEL channelflags Channels to listen to by default
*/
#ifdef __USER_charles__
#define DBG_OUTPUT_TO_DEBUGGER // Send output to the debugger console
#define DBG_OUTPUT_TO_LOG // Allow logging of messages
#define DBG_MAX_MESSAGE_LENGTH 256 // Max length of a message in the log
#define DBG_LOG_LINES 10 // Number of lines to log
#define DBG_SHOW_MESSAGE_ORIGIN // Pre-pend filename and line number to messages
#define DBG_FILENAME_LENGTH 16 // This many chars of the filename are used
#define DBG_DEFAULT_CHANNEL DC_CHARLES|DC_ALL_SYSTEM // Default channels to listen to
#define DBG_OUTPUT_TO_DEBUGGER
#define DBG_SHOW_MESSAGE_ORIGIN
#define DBG_FILENAME_LENGTH 16
#define DBG_DEFAULT_CHANNEL DC_CHARLES|DC_ALL_SYSTEM
#elif __USER_dave__
#define DBG_OUTPUT_TO_DEBUGGER // Send output to the debugger console
#define DBG_OUTPUT_TO_LOG // Allow logging of messages
#define DBG_MAX_MESSAGE_LENGTH 256 // Max length of a message in the log
#define DBG_LOG_LINES 10 // Number of lines to log
#define DBG_SHOW_MESSAGE_ORIGIN // Pre-pend filename and line number to messages
#define DBG_FILENAME_LENGTH 16 // This many chars of the filename are used
#define DBG_DEFAULT_CHANNEL DC_DAVE|DC_ALL_SYSTEM // Default channels to listen to
#define DBG_OUTPUT_TO_DEBUGGER
#define DBG_SHOW_MESSAGE_ORIGIN
#define DBG_FILENAME_LENGTH 16
#define DBG_DEFAULT_CHANNEL DC_DAVE|DC_ALL_SYSTEM
#elif __USER_paul__
#define DBG_OUTPUT_TO_DEBUGGER // Send output to the debugger console
#define DBG_OUTPUT_TO_LOG // Allow logging of messages
#define DBG_MAX_MESSAGE_LENGTH 256 // Max length of a message in the log
#define DBG_LOG_LINES 10 // Number of lines to log
#define DBG_SHOW_MESSAGE_ORIGIN // Pre-pend filename and line number to messages
#define DBG_FILENAME_LENGTH 16 // This many chars of the filename are used
#define DBG_DEFAULT_CHANNEL DC_PAUL|DC_ALL_SYSTEM // Default channels to listen to
#define DBG_OUTPUT_TO_DEBUGGER
#define DBG_OUTPUT_TO_LOG
#define DBG_MAX_MESSAGE_LENGTH 256
#define DBG_LOG_LINES 10
#define DBG_SHOW_MESSAGE_ORIGIN
#define DBG_FILENAME_LENGTH 16
#define DBG_DEFAULT_CHANNEL DC_PAUL|DC_ALL_SYSTEM
#else
#define DBG_OUTPUT_TO_DEBUGGER // Send output to the debugger console
#define DBG_DEFAULT_CHANNEL DC_ALL // Default channels to listen to
#define DBG_OUTPUT_TO_DEBUGGER
#define DBG_DEFAULT_CHANNEL DC_ALL
#endif
@ -85,9 +90,9 @@
static DEBUG_CHANNEL_FLAG s_activeChannelFlags=(DEBUG_CHANNEL_FLAG)(DBG_DEFAULT_CHANNEL);
static int s_dbgChannelFlags=DC_NONE;
static char s_dbgFilename[DBG_FILENAME_LENGTH+1]="\0";
static int s_dbgLine=0;
static int s_dbgTransientChannelFlags=DC_NONE;
static char s_dbgTransientFilename[DBG_FILENAME_LENGTH+1]="\0";
static int s_dbgTransientLine=0;
#ifdef DBG_OUTPUT_TO_LOG
static char s_logLines[DBG_LOG_LINES][DBG_MAX_MESSAGE_LENGTH];
@ -128,7 +133,7 @@ DEBUG_CHANNEL_FLAG __getActiveDbgChannels()
---------------------------------------------------------------------- */
void __setDbgChannels(DEBUG_CHANNEL_FLAG _channelFlags)
{
s_dbgChannelFlags=_channelFlags;
s_dbgTransientChannelFlags=_channelFlags;
}
@ -146,7 +151,7 @@ void __setDbgFilenameAndLine(const char *_filename,int _line)
if(filenameLength<DBG_FILENAME_LENGTH)
{
for(int i=0;i<DBG_FILENAME_LENGTH-filenameLength;i++)
s_dbgFilename[i]=' ';
s_dbgTransientFilename[i]=' ';
start=0;
len=filenameLength;
}
@ -156,8 +161,8 @@ void __setDbgFilenameAndLine(const char *_filename,int _line)
len=DBG_FILENAME_LENGTH;
}
strncpy(s_dbgFilename+DBG_FILENAME_LENGTH-len,_filename+start,len);
s_dbgLine=_line;
strncpy(s_dbgTransientFilename+DBG_FILENAME_LENGTH-len,_filename+start,len);
s_dbgTransientLine=_line;
}
@ -169,7 +174,7 @@ void __setDbgFilenameAndLine(const char *_filename,int _line)
---------------------------------------------------------------------- */
void __writeDbgMessage(const char *_format,...)
{
if(s_dbgChannelFlags&s_activeChannelFlags)
if(s_dbgTransientChannelFlags&s_activeChannelFlags)
{
char messageBuffer[DBG_MAX_MESSAGE_LENGTH+1];
__va_list va;
@ -177,7 +182,7 @@ void __writeDbgMessage(const char *_format,...)
__va_start(va,_format);
#ifdef DBG_SHOW_MESSAGE_ORIGIN
sprintf(messageBuffer,"%s:%04d ",s_dbgFilename,s_dbgLine);
sprintf(messageBuffer,"%s:%04d ",s_dbgTransientFilename,s_dbgTransientLine);
start=strlen(messageBuffer);
// len=DBG_MAX_MESSAGE_LENGTH-start;
#else