mirror of
https://github.com/hrydgard/ppsspp.git
synced 2026-10-01 14:58:14 +00:00
HLE: split filesystem-dependent initialization
This commit is contained in:
1 parent
2385698f8e
commit
5c80533ee3
4 files changed
+13
-9
No files matched your search
+7
-6
@@ -506,6 +506,10 @@ static bool CPU_Init(FileLoader *fileLoader, IdentifiedFileType type, std::strin
|
||||
|
||||
DisplayHWInit();
|
||||
|
||||
// Initialize the HLE state before mounting filesystems. This includes the module tables and
|
||||
// CoreTiming event needed by savestates, but does not inspect any filesystem paths.
|
||||
HLEInit();
|
||||
|
||||
// TODO: Put this somewhere better?
|
||||
if (!g_CoreParameter.mountIso.empty()) {
|
||||
g_CoreParameter.mountIsoLoader = ConstructFileLoader(g_CoreParameter.mountIso);
|
||||
@@ -518,12 +522,9 @@ static bool CPU_Init(FileLoader *fileLoader, IdentifiedFileType type, std::strin
|
||||
|
||||
MountFileSystems();
|
||||
|
||||
// Init all the HLE modules. After the mount, and after the firmware install above, so that the
|
||||
// checks in HLEInit deciding whether a library can run its real module instead of our HLE can
|
||||
// ask the PSP filesystem the way everything else does - and see a firmware this very boot just
|
||||
// installed off the disc. Nothing between CoreTiming::Init above and here touches HLE, and the
|
||||
// kernel and the game's modules both come later, in the switch below.
|
||||
HLEInit();
|
||||
// The module availability checks need the mounted PSP filesystem and the firmware installed
|
||||
// above. Keep them after the mount, before any kernel or game module can be loaded.
|
||||
HLECheckModuleAvailability();
|
||||
|
||||
// Game-specific settings are load from for example Load_PSP_ISO (which calls g_Config.LoadGameConfig).
|
||||
// We can't do things that depend on these before the below switch. So for example, the adjustment of the GPU core
|
||||
|
||||
Reference in new issue
Block a user