fix some snes breakpoint bugs

This commit is contained in:
zeromus 2013-11-12 20:35:59 +00:00
parent 6f2bd4eca3
commit e6f4213564
2 changed files with 7 additions and 3 deletions

View File

@ -965,6 +965,7 @@ namespace BizHawk.Emulation.Consoles.Nintendo.SNES
case eMessage.eMessage_snes_cb_hook_exec: case eMessage.eMessage_snes_cb_hook_exec:
{ {
var addr = brPipe.ReadInt32(); var addr = brPipe.ReadInt32();
ExecHook((uint)addr);
break; break;
} }
case eMessage.eMessage_snes_cb_hook_read: case eMessage.eMessage_snes_cb_hook_read:

View File

@ -195,19 +195,22 @@ namespace BizHawk.Emulation.Consoles.Nintendo.SNES
{ {
CoreComm.MemoryCallbackSystem.CallRead(addr); CoreComm.MemoryCallbackSystem.CallRead(addr);
//we RefreshMemoryCallbacks() after the trigger in case the trigger turns itself off at that point //we RefreshMemoryCallbacks() after the trigger in case the trigger turns itself off at that point
RefreshMemoryCallbacks(); //EDIT: for now, theres some IPC re-entrancy problem
//RefreshMemoryCallbacks();
} }
void ExecHook(uint addr) void ExecHook(uint addr)
{ {
CoreComm.MemoryCallbackSystem.CallExecute(addr); CoreComm.MemoryCallbackSystem.CallExecute(addr);
//we RefreshMemoryCallbacks() after the trigger in case the trigger turns itself off at that point //we RefreshMemoryCallbacks() after the trigger in case the trigger turns itself off at that point
RefreshMemoryCallbacks(); //EDIT: for now, theres some IPC re-entrancy problem
//RefreshMemoryCallbacks();
} }
void WriteHook(uint addr, byte val) void WriteHook(uint addr, byte val)
{ {
CoreComm.MemoryCallbackSystem.CallWrite(addr); CoreComm.MemoryCallbackSystem.CallWrite(addr);
//we RefreshMemoryCallbacks() after the trigger in case the trigger turns itself off at that point //we RefreshMemoryCallbacks() after the trigger in case the trigger turns itself off at that point
RefreshMemoryCallbacks(); //EDIT: for now, theres some IPC re-entrancy problem
//RefreshMemoryCallbacks();
} }
LibsnesApi.snes_scanlineStart_t scanlineStart_cb; LibsnesApi.snes_scanlineStart_t scanlineStart_cb;