sm64/include/debug.h

66 lines
2.0 KiB
C

/********************************************************************************
debug.h: Mario Brothers 64 system header
January 14, 1997
********************************************************************************/
#ifndef DEBUG_H
#define DEBUG_H
/********************************************************************************/
/* */
/* */
/* */
/* */
/* Debug thread. */
/* */
/* */
/* */
/* */
/********************************************************************************/
#define DEBUG_THREAD_ID 2
#define DEBUG_NMESSAGES 1
#define DEBUG_STACKSIZE 0x800
#define DEBUG_STACKSIZE64 (DEBUG_STACKSIZE/8)
typedef struct DebugThread {
OSThread thread; /* Debug thread record */
u64 stack[DEBUG_STACKSIZE64]; /* Debug thread stack memory */
OSMesgQueue mesgque; /* Debug thread message queue */
OSMesg mesgbuf[DEBUG_NMESSAGES]; /* Debug thread message buffer */
u16 * framebuf; /* pointer to the frame buffer */
u16 width; /* screen width */
u16 depth; /* screen depth (8 or 16 or 32) */
} DebugThread;
extern void DbStartDebugger(void);
extern void DbSetFrameBuffer(u16 *framebuf, u16 width, u16 depth);
/********************************************************************************/
/* */
/* */
/* */
/* */
/* Watch register */
/* */
/* */
/* */
/* */
/********************************************************************************/
#define DEBUG_WATCH_NO 0x00000000
#define DEBUG_WATCH_WO 0x00000001
#define DEBUG_WATCH_RO 0x00000002
#define DEBUG_WATCH_RW 0x00000003
#define WatchAddress(addr,flag) SetWatch(((u32)(addr)&0xfffffff8)|(flag))
extern void SetWatch(u32 watch);
#endif