* cellSysmodule: Register libad modules

Register libad_core, libad_async, libad_billboard_util

* Misc

sys_ss_get_console_open_psid (Called on Project Diva F 2nd),
sys_ss_get_console_id
Stub cellWebBrowserGetUsrdataOnGameExit for Professional Baseball
Spirits 2015
Fix two logs on GcmSys
This commit is contained in:
Ani 2017-04-13 17:30:25 +01:00 committed by Ivan
parent 370c2ecac5
commit 94ab3ae7cf
8 changed files with 68 additions and 7 deletions

View File

@ -1026,7 +1026,7 @@ s32 cellGcmUnmapEaIoAddress(u32 ea)
}
else
{
cellGcmSys.error("cellGcmUnmapEaIoAddress(ea=0x%x): UnmapRealAddress() failed");
cellGcmSys.error("cellGcmUnmapEaIoAddress(ea=0x%x): UnmapRealAddress() failed", ea);
return CELL_GCM_ERROR_FAILURE;
}
@ -1050,7 +1050,7 @@ s32 cellGcmUnmapIoAddress(u32 io)
}
else
{
cellGcmSys.error("cellGcmUnmapIoAddress(io=0x%x): UnmapAddress() failed");
cellGcmSys.error("cellGcmUnmapIoAddress(io=0x%x): UnmapAddress() failed", io);
return CELL_GCM_ERROR_FAILURE;
}

View File

@ -93,6 +93,11 @@ static const char* get_module_name(u16 id)
case 0x0048: return "cellCelp8Enc";
case 0x0049: return "cellSysutilMisc";
case 0x004a: return "cellMusicUtility";
// TODO: Check if those libad are correctly matched.
// They belong to those IDs but actual order is unknown.
case 0x004b: return "libad_core";
case 0x004c: return "libad_async";
case 0x004d: return "libad_billboard_util";
case 0x004e: return "cellScreenShotUtility";
case 0x004f: return "cellMusicDecodeUtility";
case 0x0050: return "cellSpursJq";
@ -211,6 +216,11 @@ static const char* get_module_id(u16 id)
case 0x0048: return "CELL_SYSMODULE_CELP8ENC";
case 0x0049: return "CELL_SYSMODULE_SYSUTIL_LICENSEAREA";
case 0x004a: return "CELL_SYSMODULE_SYSUTIL_MUSIC2";
// TODO: Check if those libad are correctly matched.
// They belong to those IDs but actual order is unknown.
case 0x004b: return "CELL_SYSMODULE_AD_CORE";
case 0x004c: return "CELL_SYSMODULE_AD_ASYNC";
case 0x004d: return "CELL_SYSMODULE_AD_BILLBOARD_UTIL";
case 0x004e: return "CELL_SYSMODULE_SYSUTIL_SCREENSHOT";
case 0x004f: return "CELL_SYSMODULE_SYSUTIL_MUSIC_DECODE";
case 0x0050: return "CELL_SYSMODULE_SPURS_JQ";

View File

@ -190,9 +190,10 @@ s32 cellWebBrowserEstimate2(vm::cptr<CellWebBrowserConfig2> config, vm::ptr<u32>
return CELL_OK;
}
s32 cellWebBrowserGetUsrdataOnGameExit()
s32 cellWebBrowserGetUsrdataOnGameExit(vm::ptr<CellWebBrowserUsrdata> ptr)
{
fmt::throw_exception("Unimplemented" HERE);
cellSysutil.todo("cellWebBrowserGetUsrdataOnGameExit(ptr=*0x%x", ptr);
return CELL_OK;
}
s32 cellWebBrowserInitialize()

View File

@ -31,6 +31,7 @@
#include "sys_fs.h"
#include "sys_dbg.h"
#include "sys_gamepad.h"
#include "sys_ss.h"
LOG_CHANNEL(sys_cond);
LOG_CHANNEL(sys_dbg);
@ -781,9 +782,9 @@ std::array<ppu_function_t, 1024> g_ppu_syscall_table
null_func,//BIND_FUNC(sys_...) //867 ROOT
null_func,//BIND_FUNC(sys_...) //868 ROOT / DBG AUTHID
null_func,//BIND_FUNC(sys_...) //869 ROOT
null_func,//BIND_FUNC(sys_ss_get_console_id), //870 (0x366)
BIND_FUNC(sys_ss_get_console_id), //870 (0x366)
null_func,//BIND_FUNC(sys_ss_access_control_engine), //871 (0x367) DBG
null_func,//BIND_FUNC(sys_ss_get_open_psid), //872 (0x368)
BIND_FUNC(sys_ss_get_open_psid), //872 (0x368)
null_func,//BIND_FUNC(sys_ss_get_cache_of_product_mode), //873 (0x369)
null_func,//BIND_FUNC(sys_ss_get_cache_of_flash_ext_flag), //874 (0x36A)
null_func,//BIND_FUNC(sys_ss_get_boot_device) //875 (0x36B)

View File

@ -0,0 +1,28 @@
#include "stdafx.h"
#include "Emu/Cell/PPUThread.h"
#include "sys_ss.h"
namespace vm { using namespace ps3; }
logs::channel sys_ss("sys_ss", logs::level::notice);
s32 sys_ss_get_console_id(vm::ps3::ptr<u8> buf)
{
sys_ss.todo("sys_ss_get_console_id(buf=*0x%x)", buf);
// TODO: Return some actual IDPS?
*buf = 0;
return CELL_OK;
}
s32 sys_ss_get_open_psid(vm::ps3::ptr<CellSsOpenPSID> psid)
{
sys_ss.warning("sys_ss_get_open_psid(psid=*0x%x)", psid);
psid->high = 0;
psid->low = 0;
return CELL_OK;
}

View File

@ -0,0 +1,13 @@
#pragma once
#include "Emu/Memory/Memory.h"
#include "Emu/Cell/ErrorCodes.h"
struct CellSsOpenPSID
{
be_t<u64> high;
be_t<u64> low;
};
s32 sys_ss_get_console_id(vm::ps3::ptr<u8> buf);
s32 sys_ss_get_open_psid(vm::ps3::ptr<CellSsOpenPSID> ptr);

View File

@ -138,6 +138,7 @@
<ClCompile Include="Emu\Cell\lv2\sys_trace.cpp" />
<ClCompile Include="Emu\Cell\lv2\sys_tty.cpp" />
<ClCompile Include="Emu\Cell\lv2\sys_vm.cpp" />
<ClCompile Include="Emu\Cell\lv2\sys_ss.cpp" />
<ClCompile Include="Emu\Cell\Modules\sys_libc_.cpp" />
<ClCompile Include="Emu\Cell\PPUModule.cpp" />
<ClCompile Include="Emu\Cell\Modules\cellAdec.cpp" />
@ -541,6 +542,7 @@
<ClInclude Include="Emu\Cell\lv2\sys_trace.h" />
<ClInclude Include="Emu\Cell\lv2\sys_tty.h" />
<ClInclude Include="Emu\Cell\lv2\sys_vm.h" />
<ClInclude Include="Emu\Cell\lv2\sys_ss.h" />
<ClInclude Include="Emu\Cell\MFC.h" />
<ClInclude Include="Emu\Cell\PPUModule.h" />
<ClInclude Include="Emu\Cell\Modules\cellAdec.h" />

View File

@ -920,6 +920,9 @@
<ClCompile Include="..\Utilities\bin_patch.cpp">
<Filter>Utilities</Filter>
</ClCompile>
<ClCompile Include="Emu\Cell\lv2\sys_ss.cpp">
<Filter>Emu\Cell\lv2</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="Crypto\aes.h">
@ -1771,5 +1774,8 @@
<ClInclude Include="..\Utilities\bin_patch.h">
<Filter>Utilities</Filter>
</ClInclude>
<ClInclude Include="Emu\Cell\lv2\sys_ss.h">
<Filter>Emu\Cell\lv2</Filter>
</ClInclude>
</ItemGroup>
</Project>
</Project>