mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-04-21 03:55:32 +00:00
Implemented syscall _sys_spu_image_get_segments
This commit is contained in:
parent
167d6a08f8
commit
90b8346312
4 changed files with 8 additions and 6 deletions
|
@ -133,7 +133,7 @@ extern std::string ppu_get_syscall_name(u64 code)
|
|||
case 156: return "sys_spu_image_open";
|
||||
case 157: return "_sys_spu_image_import";
|
||||
case 158: return "_sys_spu_image_close";
|
||||
case 159: return "_sys_raw_spu_image_load";
|
||||
case 159: return "_sys_spu_image_get_segments";
|
||||
case 160: return "sys_raw_spu_create";
|
||||
case 161: return "sys_raw_spu_destroy";
|
||||
case 163: return "sys_raw_spu_read_puint_mb";
|
||||
|
|
|
@ -206,7 +206,7 @@ const std::array<ppu_function_t, 1024> s_ppu_syscall_table
|
|||
BIND_FUNC(sys_spu_image_open), //156 (0x09C)
|
||||
BIND_FUNC(_sys_spu_image_import), //157 (0x09D)
|
||||
BIND_FUNC(_sys_spu_image_close), //158 (0x09E)
|
||||
BIND_FUNC(_sys_raw_spu_image_load), //159 (0x09F)
|
||||
BIND_FUNC(_sys_spu_image_get_segments), //159 (0x09F)
|
||||
BIND_FUNC(sys_raw_spu_create), //160 (0x0A0)
|
||||
BIND_FUNC(sys_raw_spu_destroy), //161 (0x0A1)
|
||||
null_func, //162 (0x0A2) UNS
|
||||
|
|
|
@ -188,11 +188,13 @@ error_code _sys_spu_image_close(vm::ptr<sys_spu_image> img)
|
|||
return CELL_OK;
|
||||
}
|
||||
|
||||
error_code _sys_raw_spu_image_load(vm::ptr<sys_spu_image> img, u32 ptr, u32 arg3)
|
||||
error_code _sys_spu_image_get_segments(vm::ptr<sys_spu_image> img, vm::ptr<sys_spu_segment> segments, s32 nseg)
|
||||
{
|
||||
sys_spu.todo("_sys_raw_spu_image_load(img=*0x%x, ptr=*0x%x, arg3=0x%x)", img, ptr, arg3);
|
||||
sys_spu.error("_sys_spu_image_get_segments(img=*0x%x, segments=*0x%x, nseg=%d)", img, segments, nseg);
|
||||
|
||||
fmt::throw_exception("Unimlemented syscall: _sys_raw_spu_image_load");
|
||||
// TODO: apply SPU patches
|
||||
std::memcpy(segments.get_ptr(), img->segs.get_ptr(), sizeof(sys_spu_segment) * nseg);
|
||||
return CELL_OK;
|
||||
}
|
||||
|
||||
error_code sys_spu_thread_initialize(vm::ptr<u32> thread, u32 group_id, u32 spu_num, vm::ptr<sys_spu_image> img, vm::ptr<sys_spu_thread_attribute> attr, vm::ptr<sys_spu_thread_argument> arg)
|
||||
|
|
|
@ -290,7 +290,7 @@ error_code _sys_spu_image_get_information(vm::ps3::ptr<sys_spu_image> img, vm::p
|
|||
error_code sys_spu_image_open(vm::ps3::ptr<sys_spu_image> img, vm::ps3::cptr<char> path);
|
||||
error_code _sys_spu_image_import(vm::ps3::ptr<sys_spu_image> img, u32 src, u32 size, u32 arg4);
|
||||
error_code _sys_spu_image_close(vm::ps3::ptr<sys_spu_image> img);
|
||||
error_code _sys_raw_spu_image_load(vm::ps3::ptr<sys_spu_image> img, u32 ptr, u32 arg3);
|
||||
error_code _sys_spu_image_get_segments(vm::ps3::ptr<sys_spu_image> img, vm::ps3::ptr<sys_spu_segment> segments, s32 nseg);
|
||||
error_code sys_spu_thread_initialize(vm::ps3::ptr<u32> thread, u32 group, u32 spu_num, vm::ps3::ptr<sys_spu_image>, vm::ps3::ptr<sys_spu_thread_attribute>, vm::ps3::ptr<sys_spu_thread_argument>);
|
||||
error_code sys_spu_thread_set_argument(u32 id, vm::ps3::ptr<sys_spu_thread_argument> arg);
|
||||
error_code sys_spu_thread_group_create(vm::ps3::ptr<u32> id, u32 num, s32 prio, vm::ps3::ptr<sys_spu_thread_group_attribute> attr);
|
||||
|
|
Loading…
Add table
Reference in a new issue