Merge pull request #4184 from EmptyChaos/wii_ipc-init
WII_IPC_HLE: Fix Reinit
This commit is contained in:
commit
3e0355e7f6
|
@ -119,9 +119,9 @@ std::shared_ptr<T> AddDevice(const char* deviceName)
|
|||
return device;
|
||||
}
|
||||
|
||||
void Init()
|
||||
void Reinit()
|
||||
{
|
||||
_dbg_assert_msg_(WII_IPC_HLE, g_DeviceMap.empty(), "DeviceMap isn't empty on init");
|
||||
_assert_msg_(WII_IPC_HLE, g_DeviceMap.empty(), "Reinit called while already initialized");
|
||||
CWII_IPC_HLE_Device_es::m_ContentFile = "";
|
||||
|
||||
num_devices = 0;
|
||||
|
@ -156,6 +156,11 @@ void Init()
|
|||
#endif
|
||||
AddDevice<CWII_IPC_HLE_Device_stub>("/dev/usb/oh1");
|
||||
AddDevice<IWII_IPC_HLE_Device>("_Unimplemented_Device_");
|
||||
}
|
||||
|
||||
void Init()
|
||||
{
|
||||
Reinit();
|
||||
|
||||
event_enqueue = CoreTiming::RegisterEvent("IPCEvent", EnqueueEvent);
|
||||
event_sdio_notify = CoreTiming::RegisterEvent("SDIO_EventNotify", SDIO_EventNotify_CPUThread);
|
||||
|
|
|
@ -45,6 +45,9 @@ namespace WII_IPC_HLE_Interface
|
|||
// Init
|
||||
void Init();
|
||||
|
||||
// Needs to be called after Reset(true) to recreate the device tree
|
||||
void Reinit();
|
||||
|
||||
// Shutdown
|
||||
void Shutdown();
|
||||
|
||||
|
|
|
@ -1000,7 +1000,7 @@ IPCCommandResult CWII_IPC_HLE_Device_es::IOCtlV(u32 _CommandAddress)
|
|||
wiiMoteConnected[i] = s_Usb->m_WiiMotes[i].IsConnected();
|
||||
|
||||
WII_IPC_HLE_Interface::Reset(true);
|
||||
WII_IPC_HLE_Interface::Init();
|
||||
WII_IPC_HLE_Interface::Reinit();
|
||||
s_Usb = GetUsbPointer();
|
||||
for (unsigned int i = 0; i < s_Usb->m_WiiMotes.size(); i++)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue