rpcsx/rpcs3/rpcs3.cpp

72 lines
1.2 KiB
C++
Raw Normal View History

#include "stdafx.h"
#include "rpcs3.h"
#include "Ini.h"
#include "Emu/System.h"
2014-02-21 17:13:57 +01:00
#ifdef _WIN32
#include <wx/msw/wrapwin.h>
2014-02-21 17:13:57 +01:00
#endif
const wxEventType wxEVT_DBG_COMMAND = wxNewEventType();
IMPLEMENT_APP(Rpcs3App)
Rpcs3App* TheApp;
bool Rpcs3App::OnInit()
{
TheApp = this;
SetAppName(_PRGNAME_);
wxInitAllImageHandlers();
Ini.Load();
m_MainFrame = new MainFrame();
SetTopWindow(m_MainFrame);
Emu.Init();
m_MainFrame->Show();
m_MainFrame->DoSettings(true);
2014-01-19 17:05:27 +01:00
OnArguments();
return true;
}
void Rpcs3App::OnArguments()
{
// Usage:
// rpcs3-*.exe Initializes RPCS3
// rpcs3-*.exe [(S)ELF] Initializes RPCS3, then loads and runs the specified (S)ELF file.
if (Rpcs3App::argc > 1)
{
Emu.SetPath(argv[1]);
Emu.Load();
Emu.Run();
}
}
void Rpcs3App::Exit()
{
Emu.Stop();
Ini.Save();
if(ConLogFrame && !ConLogFrame->IsBeingDeleted()) ConLogFrame->Close();
wxApp::Exit();
}
void Rpcs3App::SendDbgCommand(DbgCommand id, CPUThread* thr)
{
wxCommandEvent event(wxEVT_DBG_COMMAND, id);
event.SetClientData(thr);
AddPendingEvent(event);
}
/*
CPUThread& GetCPU(const u8 core)
{
return Emu.GetCPU().Get(core);
}*/
GameInfo CurGameInfo;