Fix bug that made it impossible to even try to boot LLE bios (not tested). Also add ability for Patches/ INI files to override dual core and optimizequant.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@94 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
parent
27a141ecca
commit
7894e6c9e9
|
@ -168,7 +168,7 @@ void CBoot::EmulatedBIOS(bool _bDebug)
|
|||
u32 iLength = Memory::ReadUnchecked_U32(0x81300008);
|
||||
u32 iDVDOffset = Memory::ReadUnchecked_U32(0x8130000c);
|
||||
|
||||
LOG(MASTER_LOG, "DVDRead: offset: %08x memOffse: %08x length: %i", iDVDOffset, iRamAddress, iLength);
|
||||
LOG(MASTER_LOG, "DVDRead: offset: %08x memOffset: %08x length: %i", iDVDOffset, iRamAddress, iLength);
|
||||
DVDInterface::DVDRead(iDVDOffset, iRamAddress, iLength);
|
||||
|
||||
} while(PowerPC::ppcState.gpr[3] != 0x00);
|
||||
|
|
|
@ -103,7 +103,6 @@ bool Init(const SCoreStartupParameter _CoreParameter)
|
|||
Host_SetWaitCursor(true);
|
||||
|
||||
g_CoreStartupParameter = _CoreParameter;
|
||||
// Init the Hardware
|
||||
|
||||
// start the thread again
|
||||
_dbg_assert_(HLE, g_pThread == NULL);
|
||||
|
|
|
@ -64,7 +64,7 @@ bool SCoreStartupParameter::AutoSetup(EBootBios _BootBios)
|
|||
PanicAlert("Your GCM/ISO file seems to be invalid, or not a GC/Wii ISO.");
|
||||
return false;
|
||||
}
|
||||
|
||||
m_strUniqueID = pVolume->GetUniqueID();
|
||||
bWii = DiscIO::IsVolumeWiiDisc(*pVolume);
|
||||
|
||||
switch (pVolume->GetCountry())
|
||||
|
|
|
@ -79,12 +79,14 @@ struct SCoreStartupParameter
|
|||
std::string m_strMemoryCardB;
|
||||
std::string m_strSRAM;
|
||||
std::string m_strDefaultGCM;
|
||||
std::string m_strUniqueID;
|
||||
|
||||
//
|
||||
SCoreStartupParameter();
|
||||
|
||||
void LoadDefaults();
|
||||
bool AutoSetup(EBootBios _BootBios);
|
||||
const std::string &GetUniqueID() const { return m_strUniqueID; }
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
|
||||
#include "Globals.h"
|
||||
#include "Common.h"
|
||||
#include "IniFile.h"
|
||||
#include "BootManager.h"
|
||||
#include "ISOFile.h"
|
||||
#include "Volume.h"
|
||||
|
@ -57,11 +58,10 @@ bool BootCore(const std::string& _rFilename)
|
|||
StartUp.bUseDynarec = true;
|
||||
}
|
||||
#ifndef _WIN32
|
||||
StartUp.bUseDynarec = false;//Never use Dynarec in Linux, crashes
|
||||
StartUp.bUseDynarec = false;//Never use Dynarec in Linux, crashes
|
||||
#endif
|
||||
StartUp.m_BootType = SCoreStartupParameter::BOOT_ISO;
|
||||
StartUp.m_strFilename = _rFilename;
|
||||
StartUp.bHLEBios = true;
|
||||
StartUp.bRunCompareClient = false;
|
||||
StartUp.bRunCompareServer = false;
|
||||
StartUp.bEnableDebugging = g_pCodeWindow ? true : false; // RUNNING_DEBUG
|
||||
|
@ -70,8 +70,17 @@ bool BootCore(const std::string& _rFilename)
|
|||
StartUp.hInstance = wxGetInstance();
|
||||
#endif
|
||||
|
||||
//
|
||||
StartUp.AutoSetup(SCoreStartupParameter::BOOT_DEFAULT);
|
||||
|
||||
// Load overrides
|
||||
IniFile ini;
|
||||
std::string unique_id = StartUp.GetUniqueID();
|
||||
if (unique_id.size() == 6 && ini.Load(("Patches/" + unique_id + ".ini").c_str()))
|
||||
{
|
||||
ini.Get("Core", "UseDualCore", &StartUp.bUseDualCore, StartUp.bUseDualCore);
|
||||
ini.Get("Core", "OptimizeQuantizers", &StartUp.bOptimizeQuantizers, StartUp.bOptimizeQuantizers);
|
||||
}
|
||||
|
||||
StartUp.hMainWindow = main_frame->GetRenderHandle();
|
||||
|
||||
// init the core
|
||||
|
|
Loading…
Reference in New Issue