From 12d8e0ef38c353786c01cadb6632c39e6d5f78b9 Mon Sep 17 00:00:00 2001 From: DHrpcs3 Date: Sat, 29 Nov 2014 23:59:16 +0200 Subject: [PATCH 1/2] Fixed path to param.sfo --- rpcs3/Emu/SysCalls/Modules/cellGame.cpp | 8 ++++---- rpcs3/Emu/SysCalls/Modules/sceNpTrophy.cpp | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/rpcs3/Emu/SysCalls/Modules/cellGame.cpp b/rpcs3/Emu/SysCalls/Modules/cellGame.cpp index e8b8ee0cb6..8f1e997069 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellGame.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellGame.cpp @@ -30,7 +30,7 @@ int cellGameBootCheck(vm::ptr type, vm::ptr attributes, vm::ptrsysSizeKB = 0; } - vfsFile f("/app_home/PARAM.SFO"); + vfsFile f("/app_home/../PARAM.SFO"); if (!f.IsOpened()) { cellGame->Error("cellGameBootCheck(): CELL_GAME_ERROR_ACCESS_ERROR (cannot open PARAM.SFO)"); @@ -100,7 +100,7 @@ int cellGamePatchCheck(vm::ptr size, u32 reserved_addr) size->sysSizeKB = 0; } - vfsFile f("/app_home/PARAM.SFO"); + vfsFile f("/app_home/../PARAM.SFO"); if (!f.IsOpened()) { cellGame->Error("cellGamePatchCheck(): CELL_GAME_ERROR_ACCESS_ERROR (cannot open PARAM.SFO)"); @@ -336,7 +336,7 @@ int cellGameGetParamInt(u32 id, vm::ptr value) cellGame->Warning("cellGameGetParamInt(id=%d, value_addr=0x%x)", id, value.addr()); // TODO: Access through cellGame***Check functions - vfsFile f("/app_home/PARAM.SFO"); + vfsFile f("/app_home/../PARAM.SFO"); PSFLoader psf(f); if(!psf.Load(false)) return CELL_GAME_ERROR_FAILURE; @@ -359,7 +359,7 @@ int cellGameGetParamString(u32 id, vm::ptr buf, u32 bufsize) cellGame->Warning("cellGameGetParamString(id=%d, buf_addr=0x%x, bufsize=%d)", id, buf.addr(), bufsize); // TODO: Access through cellGame***Check functions - vfsFile f("/app_home/PARAM.SFO"); + vfsFile f("/app_home/../PARAM.SFO"); PSFLoader psf(f); if(!psf.Load(false)) return CELL_GAME_ERROR_FAILURE; diff --git a/rpcs3/Emu/SysCalls/Modules/sceNpTrophy.cpp b/rpcs3/Emu/SysCalls/Modules/sceNpTrophy.cpp index 375a830aa3..32fd4ad76a 100644 --- a/rpcs3/Emu/SysCalls/Modules/sceNpTrophy.cpp +++ b/rpcs3/Emu/SysCalls/Modules/sceNpTrophy.cpp @@ -96,7 +96,7 @@ int sceNpTrophyCreateContext(vm::ptr context, vm::ptr // TODO: There are other possible errors // TODO: Is the TROPHY.TRP file necessarily located in this path? - vfsDir dir("/app_home/TROPDIR/"); + vfsDir dir("/app_home/../TROPDIR/"); if(!dir.IsOpened()) return SCE_NP_TROPHY_ERROR_CONF_DOES_NOT_EXIST; From ebae8dad0a1b8d044a7804c075a9a0dfb1e5d175 Mon Sep 17 00:00:00 2001 From: DHrpcs3 Date: Sun, 30 Nov 2014 00:03:29 +0200 Subject: [PATCH 2/2] Minor fixes --- rpcs3/Emu/FS/vfsDir.cpp | 2 +- rpcs3/Emu/SysCalls/Modules/sceNpTrophy.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/rpcs3/Emu/FS/vfsDir.cpp b/rpcs3/Emu/FS/vfsDir.cpp index 4dac75d851..7d483d8b3d 100644 --- a/rpcs3/Emu/FS/vfsDir.cpp +++ b/rpcs3/Emu/FS/vfsDir.cpp @@ -46,7 +46,7 @@ bool vfsDir::Open(const std::string& path) for (size_t i = 0; i < blocks.size(); ++i) { - if (stricmp(dev_blocks[i].c_str(), blocks[i].c_str())) + if (strcmp(dev_blocks[i].c_str(), blocks[i].c_str())) { is_ok = false; break; diff --git a/rpcs3/Emu/SysCalls/Modules/sceNpTrophy.cpp b/rpcs3/Emu/SysCalls/Modules/sceNpTrophy.cpp index 32fd4ad76a..c8c95a187f 100644 --- a/rpcs3/Emu/SysCalls/Modules/sceNpTrophy.cpp +++ b/rpcs3/Emu/SysCalls/Modules/sceNpTrophy.cpp @@ -105,7 +105,7 @@ int sceNpTrophyCreateContext(vm::ptr context, vm::ptr { if (entry->flags & DirEntry_TypeDir) { - vfsStream* stream = Emu.GetVFS().OpenFile("/app_home/TROPDIR/" + entry->name + "/TROPHY.TRP", vfsRead); + vfsStream* stream = Emu.GetVFS().OpenFile("/app_home/../TROPDIR/" + entry->name + "/TROPHY.TRP", vfsRead); if (stream && stream->IsOpened()) {