void main_stop(void) { /* note: this operation is asynchronous. It may be called from a thread other than the main emulator thread, and may return before the emulator is completely stopped */ if (!g_EmulatorRunning) return; DebugMessage(M64MSG_STATUS, "Stopping emulation."); if(l_msgPause) { osd_delete_message(l_msgPause); l_msgPause = NULL; } if(l_msgFF) { osd_delete_message(l_msgFF); l_msgFF = NULL; } if (rompause) { rompause = 0; StateChanged(M64CORE_EMU_STATE, M64EMU_RUNNING); } stop = 1; #ifdef DBG if(g_DebuggerActive) { debugger_step(); } #endif }
EXPORT m64p_error CALL DebugStep(void) { #ifdef DBG if (!g_DebuggerActive) return M64ERR_INVALID_STATE; debugger_step(); /* in debugger/debugger.c */ return M64ERR_SUCCESS; #else return M64ERR_UNSUPPORTED; #endif }
void main_stop(void) { /* note: this operation is asynchronous. It may be called from a thread other than the main emulator thread, and may return before the emulator is completely stopped */ if (!g_EmulatorRunning) return; DebugMessage(M64MSG_STATUS, "Stopping emulation."); stop = 1; #ifdef DBG if(g_DebuggerActive) debugger_step(); #endif r4300_deinit(); }