2018-11-16 00:31:39 +01:00
|
|
|
/*****************************************************************************\
|
|
|
|
Snes9x - Portable Super Nintendo Entertainment System (TM) emulator.
|
|
|
|
This file is licensed under the Snes9x License.
|
|
|
|
For further information, consult the LICENSE file in the root directory.
|
|
|
|
\*****************************************************************************/
|
2010-09-25 17:46:12 +02:00
|
|
|
|
|
|
|
#ifdef DEBUGGER
|
|
|
|
|
|
|
|
#ifndef _DEBUG_H_
|
|
|
|
#define _DEBUG_H_
|
|
|
|
|
2010-12-02 18:52:23 +01:00
|
|
|
#include <string>
|
|
|
|
|
2010-09-25 17:46:12 +02:00
|
|
|
struct SBreakPoint
|
|
|
|
{
|
|
|
|
bool8 Enabled;
|
|
|
|
uint8 Bank;
|
|
|
|
uint16 Address;
|
|
|
|
};
|
|
|
|
|
2011-01-24 15:27:57 +01:00
|
|
|
#define ENSURE_TRACE_OPEN(fp, file, mode) \
|
|
|
|
if (!fp) \
|
|
|
|
{ \
|
|
|
|
std::string fn = S9xGetDirectory(LOG_DIR); \
|
|
|
|
fn += SLASH_STR file; \
|
|
|
|
fp = fopen(fn.c_str(), mode); \
|
|
|
|
}
|
2010-10-02 00:49:23 +02:00
|
|
|
|
2010-09-25 17:46:12 +02:00
|
|
|
extern struct SBreakPoint S9xBreakpoint[6];
|
|
|
|
|
|
|
|
void S9xDoDebug (void);
|
|
|
|
void S9xTrace (void);
|
|
|
|
void S9xSA1Trace (void);
|
|
|
|
void S9xTraceMessage (const char *);
|
|
|
|
void S9xTraceFormattedMessage (const char *, ...);
|
2011-04-19 16:02:08 +02:00
|
|
|
void S9xPrintHVPosition (char *);
|
2018-05-31 02:20:32 +02:00
|
|
|
void S9xDebugProcessCommand(char *);
|
2010-09-25 17:46:12 +02:00
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif
|