Expose apu debugger status; win32: expose apu debugger, add missing type

This commit is contained in:
OV2 2011-04-20 19:23:39 +02:00
parent c9cb2724d9
commit 2644641713
5 changed files with 12 additions and 1 deletions

View File

@ -124,6 +124,7 @@ public:
#ifdef DEBUGGER #ifdef DEBUGGER
void debug_toggle_trace( void ); void debug_toggle_trace( void );
bool debug_is_enabled( void );
void debug_do_trace( int, int, int, uint8_t const *, uint8_t *, int, int, int, int ); void debug_do_trace( int, int, int, uint8_t const *, uint8_t *, int, int, int, int );
void debug_op_print( char *, int, int, int, uint8_t const *, uint8_t *, int, int, int, int ); void debug_op_print( char *, int, int, int, uint8_t const *, uint8_t *, int, int, int, int );
void debug_io_print( char * ); void debug_io_print( char * );

View File

@ -443,6 +443,8 @@ void SNES_SPC::debug_toggle_trace( void )
} }
} }
bool SNES_SPC::debug_is_enabled( void ) { return debug_trace; }
void SNES_SPC::debug_do_trace( int a, int x, int y, uint8_t const *pc, uint8_t *sp, int psw, int c, int nz, int dp ) void SNES_SPC::debug_do_trace( int a, int x, int y, uint8_t const *pc, uint8_t *sp, int psw, int c, int nz, int dp )
{ {
char msg[512]; char msg[512];

1
port.h
View File

@ -249,6 +249,7 @@ typedef signed int int32;
typedef unsigned int uint32; typedef unsigned int uint32;
#endif #endif
typedef unsigned char uint8_t; typedef unsigned char uint8_t;
typedef signed char int8_t;
typedef signed __int64 int64; typedef signed __int64 int64;
typedef unsigned __int64 uint64; typedef unsigned __int64 uint64;
typedef int socklen_t; typedef int socklen_t;

View File

@ -484,13 +484,14 @@
#define ID_WINDOW_SIZE_2X 40170 #define ID_WINDOW_SIZE_2X 40170
#define ID_WINDOW_SIZE_3X 40171 #define ID_WINDOW_SIZE_3X 40171
#define ID_WINDOW_SIZE_4X 40172 #define ID_WINDOW_SIZE_4X 40172
#define ID_DEBUG_APU_TRACE 40173
// Next default values for new objects // Next default values for new objects
// //
#ifdef APSTUDIO_INVOKED #ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS #ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 151 #define _APS_NEXT_RESOURCE_VALUE 151
#define _APS_NEXT_COMMAND_VALUE 40173 #define _APS_NEXT_COMMAND_VALUE 40174
#define _APS_NEXT_CONTROL_VALUE 3018 #define _APS_NEXT_CONTROL_VALUE 3018
#define _APS_NEXT_SYMED_VALUE 101 #define _APS_NEXT_SYMED_VALUE 101
#endif #endif

View File

@ -2232,6 +2232,9 @@ LRESULT CALLBACK WinProc(
ICPU.FrameAdvanceCount = 1; ICPU.FrameAdvanceCount = 1;
Settings.Paused = FALSE; Settings.Paused = FALSE;
break; break;
case ID_DEBUG_APU_TRACE:
spc_core->debug_toggle_trace();
break;
#endif #endif
case IDM_ROM_INFO: case IDM_ROM_INFO:
RestoreGUIDisplay (); RestoreGUIDisplay ();
@ -2579,6 +2582,7 @@ BOOL WinInit( HINSTANCE hInstance)
if(GUI.hMenu) { if(GUI.hMenu) {
InsertMenu(GUI.hMenu,ID_OPTIONS_SETTINGS,MF_BYCOMMAND | MF_STRING | MF_ENABLED,ID_DEBUG_FRAME_ADVANCE,TEXT("&Debug Frame Advance")); InsertMenu(GUI.hMenu,ID_OPTIONS_SETTINGS,MF_BYCOMMAND | MF_STRING | MF_ENABLED,ID_DEBUG_FRAME_ADVANCE,TEXT("&Debug Frame Advance"));
InsertMenu(GUI.hMenu,ID_OPTIONS_SETTINGS,MF_BYCOMMAND | MF_STRING | MF_ENABLED,ID_DEBUG_TRACE,TEXT("&Trace")); InsertMenu(GUI.hMenu,ID_OPTIONS_SETTINGS,MF_BYCOMMAND | MF_STRING | MF_ENABLED,ID_DEBUG_TRACE,TEXT("&Trace"));
InsertMenu(GUI.hMenu,ID_OPTIONS_SETTINGS,MF_BYCOMMAND | MF_STRING | MF_ENABLED,ID_DEBUG_APU_TRACE,TEXT("&APU Trace"));
InsertMenu(GUI.hMenu,ID_OPTIONS_SETTINGS,MF_BYCOMMAND | MF_SEPARATOR | MF_ENABLED,NULL,NULL); InsertMenu(GUI.hMenu,ID_OPTIONS_SETTINGS,MF_BYCOMMAND | MF_SEPARATOR | MF_ENABLED,NULL,NULL);
} }
#endif #endif
@ -3756,6 +3760,8 @@ static void CheckMenuStates ()
#ifdef DEBUGGER #ifdef DEBUGGER
mii.fState = (CPU.Flags & TRACE_FLAG) ? MFS_CHECKED : MFS_UNCHECKED; mii.fState = (CPU.Flags & TRACE_FLAG) ? MFS_CHECKED : MFS_UNCHECKED;
SetMenuItemInfo (GUI.hMenu, ID_DEBUG_TRACE, FALSE, &mii); SetMenuItemInfo (GUI.hMenu, ID_DEBUG_TRACE, FALSE, &mii);
mii.fState = (spc_core->debug_is_enabled()) ? MFS_CHECKED : MFS_UNCHECKED;
SetMenuItemInfo (GUI.hMenu, ID_DEBUG_APU_TRACE, FALSE, &mii);
#endif #endif
mii.fState = (!Settings.StopEmulation) ? MFS_ENABLED : MFS_DISABLED; mii.fState = (!Settings.StopEmulation) ? MFS_ENABLED : MFS_DISABLED;