From 64a6cec068427e066e27e07919763a382aeed3a6 Mon Sep 17 00:00:00 2001 From: zilmar Date: Sun, 25 Sep 2016 06:46:19 +1000 Subject: [PATCH] [Project64] Clean up SystemEvents.cpp --- .../N64System/Mips/SystemEvents.cpp | 364 +++++++++--------- .../N64System/Mips/SystemEvents.h | 32 +- 2 files changed, 198 insertions(+), 198 deletions(-) diff --git a/Source/Project64-core/N64System/Mips/SystemEvents.cpp b/Source/Project64-core/N64System/Mips/SystemEvents.cpp index d66131d4a..be32b8b9a 100644 --- a/Source/Project64-core/N64System/Mips/SystemEvents.cpp +++ b/Source/Project64-core/N64System/Mips/SystemEvents.cpp @@ -26,198 +26,198 @@ CSystemEvents::~CSystemEvents() void CSystemEvents::QueueEvent(SystemEvent action) { - CGuard Guard(m_CS); - for (EventList::const_iterator iter = m_Events.begin(); iter != m_Events.end(); iter++) - { - if (*iter == action) - { - return; - } - } - m_Events.push_back(action); + CGuard Guard(m_CS); + for (EventList::const_iterator iter = m_Events.begin(); iter != m_Events.end(); iter++) + { + if (*iter == action) + { + return; + } + } + m_Events.push_back(action); m_bDoSomething = true; } void CSystemEvents::ExecuteEvents() { - EventList Events; - { - CGuard Guard(m_CS); + EventList Events; + { + CGuard Guard(m_CS); - m_bDoSomething = false; - if (m_Events.size() == 0) - { - return; - } + m_bDoSomething = false; + if (m_Events.size() == 0) + { + return; + } - Events = m_Events; - m_Events.clear(); - } + Events = m_Events; + m_Events.clear(); + } - bool bPause = false, bLoadedSave = false; - for (EventList::const_iterator iter = Events.begin(); !bLoadedSave && iter != Events.end(); iter++) - { - switch (*iter) - { - case SysEvent_CloseCPU: - m_System->m_EndEmulation = true; - break; - case SysEvent_ResetCPU_Soft: - m_System->GameReset(); - break; - case SysEvent_ResetCPU_SoftDone: - m_System->Reset(true, false); - break; - case SysEvent_ResetCPU_Hard: - m_System->Reset(true, true); - break; - case SysEvent_Profile_GenerateLogs: - m_System->m_Profile.GenerateLog(); - break; - case SysEvent_Profile_StartStop: - case SysEvent_Profile_ResetLogs: - m_System->m_Profile.ResetCounters(); - break; - case SysEvent_ExecuteInterrupt: - g_Reg->DoIntrException(false); - break; - case SysEvent_Interrupt_SP: - g_Reg->MI_INTR_REG |= MI_INTR_SP; - g_Reg->DoIntrException(false); - break; - case SysEvent_Interrupt_SI: - g_Reg->MI_INTR_REG |= MI_INTR_SI; - g_Reg->DoIntrException(false); - break; - case SysEvent_Interrupt_AI: - g_Reg->MI_INTR_REG |= MI_INTR_AI; - g_Reg->DoIntrException(false); - break; - case SysEvent_Interrupt_VI: - g_Reg->MI_INTR_REG |= MI_INTR_VI; - g_Reg->DoIntrException(false); - break; - case SysEvent_Interrupt_PI: - g_Reg->MI_INTR_REG |= MI_INTR_PI; - g_Reg->DoIntrException(false); - break; - case SysEvent_Interrupt_DP: - g_Reg->MI_INTR_REG |= MI_INTR_DP; - g_Reg->DoIntrException(false); - break; - case SysEvent_SaveMachineState: - if (!m_System->SaveState()) - { - m_Events.push_back(SysEvent_SaveMachineState); - m_bDoSomething = true; - } - break; - case SysEvent_LoadMachineState: - if (m_System->LoadState()) - { - bLoadedSave = true; - } - break; - case SysEvent_ChangePlugins: - ChangePluginFunc(); - break; - case SysEvent_ChangingFullScreen: - g_Notify->ChangeFullScreen(); - break; - case SysEvent_GSButtonPressed: - if (m_System->HasCheatsSlectionChanged()) - { - m_System->SetCheatsSlectionChanged(false); - m_System->m_Cheats.LoadCheats(false, m_Plugins); - } - m_System->m_Cheats.ApplyGSButton(g_MMU); - break; - case SysEvent_PauseCPU_FromMenu: - if (!g_Settings->LoadBool(GameRunning_CPU_Paused)) - { - g_Settings->SaveBool(GameRunning_CPU_Paused, true); - bPause = true; - } - g_Settings->SaveDword(GameRunning_CPU_PausedType, PauseType_FromMenu); - break; - case SysEvent_PauseCPU_AppLostFocus: - if (!g_Settings->LoadBool(GameRunning_CPU_Paused)) - { - g_Settings->SaveBool(GameRunning_CPU_Paused, true); - g_Settings->SaveDword(GameRunning_CPU_PausedType, PauseType_AppLostFocus); - bPause = true; - } - break; - case SysEvent_PauseCPU_AppLostActive: - if (!g_Settings->LoadBool(GameRunning_CPU_Paused)) - { - g_Settings->SaveBool(GameRunning_CPU_Paused, true); - g_Settings->SaveDword(GameRunning_CPU_PausedType, PauseType_AppLostActive); - bPause = true; - } - break; - case SysEvent_PauseCPU_SaveGame: - if (!g_Settings->LoadBool(GameRunning_CPU_Paused)) - { - g_Settings->SaveBool(GameRunning_CPU_Paused, true); - g_Settings->SaveDword(GameRunning_CPU_PausedType, PauseType_SaveGame); - bPause = true; - } - break; - case SysEvent_PauseCPU_LoadGame: - if (!g_Settings->LoadBool(GameRunning_CPU_Paused)) - { - g_Settings->SaveBool(GameRunning_CPU_Paused, true); - g_Settings->SaveDword(GameRunning_CPU_PausedType, PauseType_LoadGame); - bPause = true; - } - break; - case SysEvent_PauseCPU_DumpMemory: - if (!g_Settings->LoadBool(GameRunning_CPU_Paused)) - { - g_Settings->SaveBool(GameRunning_CPU_Paused, true); - g_Settings->SaveDword(GameRunning_CPU_PausedType, PauseType_DumpMemory); - bPause = true; - } - break; - case SysEvent_PauseCPU_SearchMemory: - if (!g_Settings->LoadBool(GameRunning_CPU_Paused)) - { - g_Settings->SaveBool(GameRunning_CPU_Paused, true); - g_Settings->SaveDword(GameRunning_CPU_PausedType, PauseType_SearchMemory); - bPause = true; - } - break; - case SysEvent_PauseCPU_Settings: - if (!g_Settings->LoadBool(GameRunning_CPU_Paused)) - { - g_Settings->SaveBool(GameRunning_CPU_Paused, true); - g_Settings->SaveDword(GameRunning_CPU_PausedType, PauseType_Settings); - bPause = true; - } - break; - case SysEvent_PauseCPU_Cheats: - if (!g_Settings->LoadBool(GameRunning_CPU_Paused)) - { - g_Settings->SaveBool(GameRunning_CPU_Paused, true); - g_Settings->SaveDword(GameRunning_CPU_PausedType, PauseType_Cheats); - bPause = true; - } - break; - default: - g_Notify->BreakPoint(__FILE__, __LINE__); - break; - } - } + bool bPause = false, bLoadedSave = false; + for (EventList::const_iterator iter = Events.begin(); !bLoadedSave && iter != Events.end(); iter++) + { + switch (*iter) + { + case SysEvent_CloseCPU: + m_System->m_EndEmulation = true; + break; + case SysEvent_ResetCPU_Soft: + m_System->GameReset(); + break; + case SysEvent_ResetCPU_SoftDone: + m_System->Reset(true, false); + break; + case SysEvent_ResetCPU_Hard: + m_System->Reset(true, true); + break; + case SysEvent_Profile_GenerateLogs: + m_System->m_Profile.GenerateLog(); + break; + case SysEvent_Profile_StartStop: + case SysEvent_Profile_ResetLogs: + m_System->m_Profile.ResetCounters(); + break; + case SysEvent_ExecuteInterrupt: + g_Reg->DoIntrException(false); + break; + case SysEvent_Interrupt_SP: + g_Reg->MI_INTR_REG |= MI_INTR_SP; + g_Reg->DoIntrException(false); + break; + case SysEvent_Interrupt_SI: + g_Reg->MI_INTR_REG |= MI_INTR_SI; + g_Reg->DoIntrException(false); + break; + case SysEvent_Interrupt_AI: + g_Reg->MI_INTR_REG |= MI_INTR_AI; + g_Reg->DoIntrException(false); + break; + case SysEvent_Interrupt_VI: + g_Reg->MI_INTR_REG |= MI_INTR_VI; + g_Reg->DoIntrException(false); + break; + case SysEvent_Interrupt_PI: + g_Reg->MI_INTR_REG |= MI_INTR_PI; + g_Reg->DoIntrException(false); + break; + case SysEvent_Interrupt_DP: + g_Reg->MI_INTR_REG |= MI_INTR_DP; + g_Reg->DoIntrException(false); + break; + case SysEvent_SaveMachineState: + if (!m_System->SaveState()) + { + m_Events.push_back(SysEvent_SaveMachineState); + m_bDoSomething = true; + } + break; + case SysEvent_LoadMachineState: + if (m_System->LoadState()) + { + bLoadedSave = true; + } + break; + case SysEvent_ChangePlugins: + ChangePluginFunc(); + break; + case SysEvent_ChangingFullScreen: + g_Notify->ChangeFullScreen(); + break; + case SysEvent_GSButtonPressed: + if (m_System->HasCheatsSlectionChanged()) + { + m_System->SetCheatsSlectionChanged(false); + m_System->m_Cheats.LoadCheats(false, m_Plugins); + } + m_System->m_Cheats.ApplyGSButton(g_MMU); + break; + case SysEvent_PauseCPU_FromMenu: + if (!g_Settings->LoadBool(GameRunning_CPU_Paused)) + { + g_Settings->SaveBool(GameRunning_CPU_Paused, true); + bPause = true; + } + g_Settings->SaveDword(GameRunning_CPU_PausedType, PauseType_FromMenu); + break; + case SysEvent_PauseCPU_AppLostFocus: + if (!g_Settings->LoadBool(GameRunning_CPU_Paused)) + { + g_Settings->SaveBool(GameRunning_CPU_Paused, true); + g_Settings->SaveDword(GameRunning_CPU_PausedType, PauseType_AppLostFocus); + bPause = true; + } + break; + case SysEvent_PauseCPU_AppLostActive: + if (!g_Settings->LoadBool(GameRunning_CPU_Paused)) + { + g_Settings->SaveBool(GameRunning_CPU_Paused, true); + g_Settings->SaveDword(GameRunning_CPU_PausedType, PauseType_AppLostActive); + bPause = true; + } + break; + case SysEvent_PauseCPU_SaveGame: + if (!g_Settings->LoadBool(GameRunning_CPU_Paused)) + { + g_Settings->SaveBool(GameRunning_CPU_Paused, true); + g_Settings->SaveDword(GameRunning_CPU_PausedType, PauseType_SaveGame); + bPause = true; + } + break; + case SysEvent_PauseCPU_LoadGame: + if (!g_Settings->LoadBool(GameRunning_CPU_Paused)) + { + g_Settings->SaveBool(GameRunning_CPU_Paused, true); + g_Settings->SaveDword(GameRunning_CPU_PausedType, PauseType_LoadGame); + bPause = true; + } + break; + case SysEvent_PauseCPU_DumpMemory: + if (!g_Settings->LoadBool(GameRunning_CPU_Paused)) + { + g_Settings->SaveBool(GameRunning_CPU_Paused, true); + g_Settings->SaveDword(GameRunning_CPU_PausedType, PauseType_DumpMemory); + bPause = true; + } + break; + case SysEvent_PauseCPU_SearchMemory: + if (!g_Settings->LoadBool(GameRunning_CPU_Paused)) + { + g_Settings->SaveBool(GameRunning_CPU_Paused, true); + g_Settings->SaveDword(GameRunning_CPU_PausedType, PauseType_SearchMemory); + bPause = true; + } + break; + case SysEvent_PauseCPU_Settings: + if (!g_Settings->LoadBool(GameRunning_CPU_Paused)) + { + g_Settings->SaveBool(GameRunning_CPU_Paused, true); + g_Settings->SaveDword(GameRunning_CPU_PausedType, PauseType_Settings); + bPause = true; + } + break; + case SysEvent_PauseCPU_Cheats: + if (!g_Settings->LoadBool(GameRunning_CPU_Paused)) + { + g_Settings->SaveBool(GameRunning_CPU_Paused, true); + g_Settings->SaveDword(GameRunning_CPU_PausedType, PauseType_Cheats); + bPause = true; + } + break; + default: + g_Notify->BreakPoint(__FILE__, __LINE__); + break; + } + } - if (bPause) - { - m_System->Pause(); - } + if (bPause) + { + m_System->Pause(); + } } void CSystemEvents::ChangePluginFunc() { - g_Notify->DisplayMessage(0, MSG_PLUGIN_INIT); - m_System->PluginReset(); -} + g_Notify->DisplayMessage(0, MSG_PLUGIN_INIT); + m_System->PluginReset(); +} \ No newline at end of file diff --git a/Source/Project64-core/N64System/Mips/SystemEvents.h b/Source/Project64-core/N64System/Mips/SystemEvents.h index a9902b94c..d7f399b22 100644 --- a/Source/Project64-core/N64System/Mips/SystemEvents.h +++ b/Source/Project64-core/N64System/Mips/SystemEvents.h @@ -59,31 +59,31 @@ class CPlugins; class CSystemEvents { - typedef std::vector EventList; + typedef std::vector EventList; protected: - CSystemEvents(CN64System * System, CPlugins * Plugins); - virtual ~CSystemEvents(); + CSystemEvents(CN64System * System, CPlugins * Plugins); + virtual ~CSystemEvents(); public: - void ExecuteEvents(); - void QueueEvent(SystemEvent action); + void ExecuteEvents(); + void QueueEvent(SystemEvent action); const int32_t & DoSomething() const - { - return m_bDoSomething; - } + { + return m_bDoSomething; + } private: - CSystemEvents(); // Disable default constructor - CSystemEvents(const CSystemEvents&); // Disable copy constructor - CSystemEvents& operator=(const CSystemEvents&); // Disable assignment + CSystemEvents(); // Disable default constructor + CSystemEvents(const CSystemEvents&); // Disable copy constructor + CSystemEvents& operator=(const CSystemEvents&); // Disable assignment - void ChangePluginFunc(); + void ChangePluginFunc(); - CN64System * m_System; - CPlugins * m_Plugins; - EventList m_Events; + CN64System * m_System; + CPlugins * m_Plugins; + EventList m_Events; int32_t m_bDoSomething; - CriticalSection m_CS; + CriticalSection m_CS; };