Editing Talk:LV2 Functions and Syscalls
Jump to navigation
Jump to search
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 57: | Line 57: | ||
syscall(861,packet_id, r4,r5,r6,r7,r8,r9,r10)<br> | syscall(861,packet_id, r4,r5,r6,r7,r8,r9,r10)<br> | ||
Note: access to this Syscall | Note: access to this Syscall requries 0x40 Root Control Flags, else 0x80010003 | ||
{| class="wikitable FCK__ShowTableBorders" | {| class="wikitable FCK__ShowTableBorders" | ||
Line 129: | Line 129: | ||
syscall(862,packet_id, r4,r5,r6,r7)<br> | syscall(862,packet_id, r4,r5,r6,r7)<br> | ||
Note: access to this Syscall | Note: access to this Syscall requries 0x40 Root Control Flags, else 0x80010003 | ||
{| class="wikitable FCK__ShowTableBorders" | {| class="wikitable FCK__ShowTableBorders" | ||
Line 210: | Line 210: | ||
syscall(863,packet_id, r4,r5,r6,r7,r8,r9) <br> | syscall(863,packet_id, r4,r5,r6,r7,r8,r9) <br> | ||
Note: access to this Syscall | Note: access to this Syscall requries 0x40 Root Control Flags, else 0x80010003 | ||
{| class="wikitable FCK__ShowTableBorders" | {| class="wikitable FCK__ShowTableBorders" | ||
Line 276: | Line 276: | ||
syscall(864,packet_id, r4) <br> | syscall(864,packet_id, r4) <br> | ||
Note: access to this Syscall | Note: access to this Syscall requries at least 0x20 Debug Control Flags, else 0x80010003 | ||
{| class="wikitable FCK__ShowTableBorders" | {| class="wikitable FCK__ShowTableBorders" | ||
Line 344: | Line 344: | ||
syscall(867,packet_id, r4) <br> | syscall(867,packet_id, r4) <br> | ||
Note: access to this Syscall | Note: access to this Syscall requries 0x40 Root Control Flags, else 0x80010003 | ||
{| class="wikitable FCK__ShowTableBorders" | {| class="wikitable FCK__ShowTableBorders" | ||
Line 371: | Line 371: | ||
syscall(868,packet_id, r4,r5,r6,r7) <br> | syscall(868,packet_id, r4,r5,r6,r7) <br> | ||
Note: access to this Syscall | Note: access to this Syscall requries 0x40 Root Control Flags, but allows 0x20 Debug Flags and certain authentication id's for first packet_id | ||
{| class="wikitable FCK__ShowTableBorders" | {| class="wikitable FCK__ShowTableBorders" | ||
Line 452: | Line 452: | ||
syscall(869,packet_id, r4) <br> | syscall(869,packet_id, r4) <br> | ||
Note: access to this Syscall | Note: access to this Syscall requries 0x40 Root Control Flags and possibly restricted to certain authentication id's, else 0x80010003 | ||
{| class="wikitable FCK__ShowTableBorders" | {| class="wikitable FCK__ShowTableBorders" | ||
Line 493: | Line 493: | ||
| 3 | | 3 | ||
| syscall(871,3,sys_pid_t id) | | syscall(871,3,sys_pid_t id) | ||
| this packet_id | | this packet_id requries 0x20 Debug Control Flags, else 0x80010003, but returns 0x8001009 | ||
|} | |} | ||
Line 517: | Line 517: | ||
syscall(877,packet_id, r4,size) <br> | syscall(877,packet_id, r4,size) <br> | ||
Note: access to this Syscall | Note: access to this Syscall requries 0x40 Root Control Flags, else 0x80010003 | ||
{| class="wikitable FCK__ShowTableBorders" | {| class="wikitable FCK__ShowTableBorders" | ||
Line 549: | Line 549: | ||
|- | |- | ||
|} | |} | ||
=== Syscall 879 (0x36F) Media ID === | === Syscall 879 (0x36F) Media ID === | ||
Line 572: | Line 569: | ||
these lv2 syscalls are present, but neither ordinal nor branches are known yet | these lv2 syscalls are present, but neither ordinal nor branches are known yet | ||
sys_usbbtaudio_start_recording_ex | sys_usbbtaudio_start_recording_ex | ||
sys_lwcond_attribute_name_set | |||
sys_lwmutex_attribute_name_set | |||
sys_event_flag_attribute_name_set | |||
sys_semaphore_attribute_name_set | |||
sys_cond_attribute_name_set | |||
sys_mutex_attribute_name_set | |||
sys_raw_spu_mmio_read_ls (no real lv2 syscall, reading mmio address) | sys_raw_spu_mmio_read_ls (no real lv2 syscall, reading mmio address) | ||
sys_raw_spu_mmio_write_ls (no real lv2 syscall, reading mmio address) | sys_raw_spu_mmio_write_ls (no real lv2 syscall, reading mmio address) | ||
sys_raw_spu_mmio_read (no real lv2 syscall, reading mmio address) | sys_raw_spu_mmio_read (no real lv2 syscall, reading mmio address) | ||
sys_raw_spu_mmio_write (no real lv2 syscall, reading mmio address) | sys_raw_spu_mmio_write (no real lv2 syscall, reading mmio address) | ||
sys_event_queue_attribute_name_set | |||
sys_lwcond_signal | |||
sys_lwcond_signal_all | |||
sys_lwcond_signal_to | |||
sys_lwcond_wait | |||
sys_spu_elf_get_segments | sys_spu_elf_get_segments | ||
sys_raw_spu_image_load | sys_raw_spu_image_load | ||
sys_mmapper_allocate_memory | |||
sys_ppu_thread_unregister_atexit | sys_ppu_thread_unregister_atexit | ||
sys_ppu_thread_once | sys_ppu_thread_once | ||
Line 585: | Line 594: | ||
sys_process_atexitspawn | sys_process_atexitspawn | ||
sys_game_process_exitspawn2 | sys_game_process_exitspawn2 | ||
sys_process_is_stack | sys_process_is_stack | ||
debug syscalls | debug syscalls | ||
Line 8,213: | Line 8,222: | ||
https://pastebin.com/aTRaFstS | https://pastebin.com/aTRaFstS | ||
= | === LV2 Syscalls Merged Table === | ||
= | |||
= | |||
{| class="wikitable sortable" | {| class="wikitable sortable" | ||
|- | |- | ||
! | ! Dec | ||
! | ! Hex | ||
! <abbr title="Firmware Type Specific (CEX,DEX,..)">fw_type</abbr> | |||
! <abbr title="Additional Settings/Flags required (Control Flags,Product Mode,..)">needed_flags</abbr> | |||
! Name | |||
! Notes | |||
|- | |- | ||
| | ! colspan="6" id="sys_process Syscalls"|[[#sys_process Syscalls]] (1-31) | ||
|- | |- | ||
| | | 1 | ||
| | | 0x001 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_process_getpid | |||
| sys_pid_t sys_process_getpid(void); | |||
|- | |- | ||
| | | 2 | ||
| | | 0x002 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_process_wait_for_child | |||
| 3 params: sys_pid_t, uint32_t *status, unk=0 | |||
|- | |- | ||
| | | 3 | ||
| | | 0x003 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_process_exit | |||
| int sys_process_exit(int) | |||
|- | |- | ||
| | | 4 | ||
| | | 0x004 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Dbg}} | |||
| sys_process_get_status | |||
| int sys_process_get_status(sys_pid_t pid) | |||
|- | |- | ||
| | | 5 | ||
| | | 0x005 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Dbg}} | |||
| sys_process_detach_child | |||
| 1 param | |||
|- | |- | ||
| | | 6 | ||
| | | 0x006 | ||
| ?? | |||
| ?? | |||
| syscall_sys_process_create_program_segment | |||
| ?? | |||
|- | |- | ||
| | | 7 | ||
| | | 0x007 | ||
| ?? | |||
| ?? | |||
| syscall_sys_process_destroy_program_segment | |||
| ?? | |||
|- | |- | ||
| | | 8 | ||
| | | 0x008 | ||
| ?? | |||
| ?? | |||
| syscall_sys_process_authenticate_program_segment | |||
| ?? | |||
|- | |- | ||
| | | 9 | ||
| | | 0x009 | ||
| ?? | |||
| ?? | |||
| syscall_sys_process_load_program_segment | |||
| ?? | |||
|- | |- | ||
| | | 10 | ||
| | | 0x00A | ||
| ?? | |||
| ?? | |||
| syscall_sys_process_unload_program_segment | |||
| ?? | |||
|- | |- | ||
| | | 11 | ||
| | | 0x00B | ||
| ?? | |||
| ?? | |||
| syscall_sys_process_find_and_load_program_segment | |||
| ?? | |||
|- | |- | ||
| | | 12 | ||
| | | 0x00C | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_process_get_number_of_object | |||
| int sys_process_get_number_of_object(uint32_t object_type, uint32_t* count); | |||
|- | |- | ||
| | | 13 | ||
| | | 0x00D | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_process_get_id | |||
| int sys_process_get_id(uint32_t object, uint32_t * buff, size_t size, size_t * set_size); | |||
|- | |- | ||
| | | 14 | ||
| | | 0x00E | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_process_is_spu_lock_line_reservation_address | |||
| int sys_process_is_spu_lock_line_reservation_address(sys_addr_t addr, uint64_t flags); | |||
|- | |- | ||
| | | 15 | ||
| | | 0x00F | ||
| ?? | |||
| ?? | |||
| syscall_sys_process_create | |||
| ?? | |||
|- | |- | ||
| | | 18 | ||
| | | 0x012 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_process_getppid | |||
| sys_pid_t sys_process_getppid(void); | |||
|- | |- | ||
| | | 19 | ||
| | | 0x013 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_process_kill | |||
| int sys_process_kill(sys_pid_t pid); | |||
|- | |- | ||
| | | 20 | ||
| | | 0x014 | ||
| ?? | |||
| ?? | |||
| syscall_sys_process_create_primary_ppu_thread_tls | |||
| ?? | |||
|- | |- | ||
| | | 21 | ||
| | | 0x015 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Dbg}} | |||
| _sys_process_spawn | |||
| int sys_process_spawn(int *pid, int prio, uint64_t flags, void *stack, int stack_size, int unk1, int unk2) | |||
|- | |- | ||
| | | 22 | ||
| | | 0x016 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_process_exit | |||
| void sys_process_exit(int error_code,0,0) | |||
|- | |- | ||
| | | 23 | ||
| | | 0x017 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Dbg}} | |||
| sys_process_wait_for_child2 | |||
| 6 params | |||
|- | |- | ||
| | | 24 | ||
| | | 0x018 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Dbg}} | |||
| | |||
| 8 params, spawns a self | |||
|- | |- | ||
| | | 25 | ||
| | | 0x019 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_process_get_sdk_version | |||
| 2 params :sys_pid_t pid, uint8_t outbuf[4] | |||
|- | |- | ||
| | | 26 | ||
| | | 0x01A | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| _sys_process_exit as well | |||
| 4 params (calls sys_process_exit) | |||
|- | |- | ||
| | | 27 | ||
| | | 0x01B | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Dbg}} | |||
| | |||
| 8 params, spawns a self | |||
|- | |- | ||
| | | 28 | ||
| | | 0x01C | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| _sys_process_get_number_of_object as well kinda | |||
| int sys_process_get_number_of_object(uint32_t object) | |||
|- | |- | ||
| | | 29 | ||
| | | 0x01D | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_process_get_id as well | |||
| same as syscall13 just with root flag check, same input etc. | |||
|- | |- | ||
| | | 30 | ||
| | | 0x01E | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| _sys_process_get_paramsfo | |||
| int _sys_process_get_paramsfo(uint8_t buffer[0x40]); (more info: [[#sys_process_get_paramsfo]]) | |||
|- | |- | ||
| | | 31 | ||
| | | 0x01F | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_process_get_ppu_guid | |||
| sys_addr_t sys_process_get_ppu_guid(void); | |||
|- | |- | ||
| | ! colspan="6" id="sys_ppu_thread Syscalls"|[[#sys_ppu_thread Syscalls]] (40-58) | ||
|- | |- | ||
| | | 41 | ||
| | | 0x029 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_ppu_thread_exit | |||
| int sys_ppu_thread_exit(int errorcode) | |||
|- | |- | ||
| | | 43 | ||
| | | 0x02B | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_ppu_thread_yield | |||
| void sys_ppu_thread_yield(void); | |||
|- | |- | ||
| | | 44 | ||
| | | 0x02C | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_ppu_thread_join | |||
| int sys_ppu_thread_join(sys_ppu_thread_t thread_id, uint64_t * vptr); | |||
|- | |- | ||
| | | 45 | ||
| | | 0x02D | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_ppu_thread_detach | |||
| int sys_ppu_thread_detach(sys_ppu_thread_t thread_id); | |||
|- | |- | ||
| | | 46 | ||
| | | 0x02E | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_ppu_thread_get_join_state | |||
| void sys_ppu_thread_get_join_state(int *isjoinable); | |||
|- | |- | ||
| | | 47 | ||
| | | 0x02F | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Dbg}} | |||
| sys_ppu_thread_set_priority | |||
| int sys_ppu_thread_set_priority(sys_ppu_thread_t thread_id, int prio); <br> Flags are checked when 3071 > prio < 3199 | |||
|- | |- | ||
| | | 48 | ||
| | | 0x030 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_ppu_thread_get_priority | |||
| int sys_ppu_thread_get_priority(sys_ppu_thread_t thread_id, int *prio); | |||
|- | |- | ||
| | | 49 | ||
| | | 0x031 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_ppu_thread_get_stack_information | |||
| int sys_ppu_thread_get_stack_information(sys_ppu_thread_stack_t * info); | |||
|- | |- | ||
| | | 50 | ||
| | | 0x032 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_ppu_thread_stop | |||
| int sys_ppu_thread_stop(sys_ppu_thread_t thread_id); | |||
|- | |- | ||
| | | 51 | ||
| | | 0x033 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_ppu_thread_restart | |||
| int sys_ppu_thread_restart(void); | |||
|- | |- | ||
| | | 52 | ||
| | | 0x034 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Dbg}} | |||
| sys_ppu_thread_create | |||
| int sys_ppu_thread_create(sys_ppu_thread_t *thread_id, & void (*entry)(uint64_t), uint64_t arg, 0, int prio, size_t stacksize, uint64_t flags, const char *threadname); | |||
|- | |- | ||
| | | 53 | ||
| | | 0x035 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_ppu_thread_start | |||
| int sys_ppu_thread_start(sys_ppu_thread_t thread_id); | |||
|- | |- | ||
| | | 54 | ||
| | | 0x036 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| | |||
| syscall(0x036, 0x109/0x111, out: uint8[4]), pu_thread get (kernel) allocation information | |||
|- | |- | ||
| | | 55 | ||
| | | 0x037 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| | |||
| syscall(0x037, 0x111, 0> int <0x100), pu_thread set (kernel) allocation? information | |||
|- | |- | ||
| | | 56 | ||
| | | 0x038 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_ppu_thread_rename | |||
| int sys_ppu_thread_rename(sys_ppu_thread_t thread_id, const char *name); | |||
|- | |- | ||
| | | 57 | ||
| | | 0x039 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_ppu_thread_recover_page_fault | |||
| int sys_ppu_thread_recover_page_fault(sys_ppu_thread_t thread_id); | |||
|- | |- | ||
| | | 58 | ||
| | | 0x03A | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_ppu_thread_get_page_fault_context | |||
| int sys_ppu_thread_get_page_fault_context(sys_ppu_thread_t thread_id, sys_ppu_thread_icontext_t * ctxp); | |||
|- | |- | ||
| | ! colspan="6" id="sys_trace Syscalls"|[[#sys_trace Syscalls]] (60-69+77) | ||
|- | |- | ||
| | | 60 | ||
| | | 0x03C | ||
| {{DEX}} {{DECR}} | |||
| | |||
| sys_trace_create | |||
| | |||
|- | |- | ||
| | | 61 | ||
| | | 0x03D | ||
| {{DEX}} {{DECR}} | |||
| | |||
| sys_trace_start | |||
| | |||
|- | |- | ||
| | | 62 | ||
| | | 0x03E | ||
| {{DEX}} {{DECR}} | |||
| | |||
| sys_trace_stop | |||
| | |||
|- | |- | ||
| | | 63 | ||
| | | 0x03F | ||
| {{DEX}} {{DECR}} | |||
| | |||
| sys_trace_update_top_index | |||
| | |||
|- | |- | ||
| | | 64 | ||
| | | 0x040 | ||
| {{DEX}} {{DECR}} | |||
| | |||
| sys_trace_destroy | |||
| | |||
|- | |- | ||
| | | 65 | ||
| | | 0x041 | ||
| {{DEX}} {{DECR}} | |||
| | |||
| sys_trace_drain | |||
| | |||
|- | |- | ||
| | | 66 | ||
| | | 0x042 | ||
| {{DEX}} {{DECR}} | |||
| | |||
| sys_trace_attach_process | |||
| | |||
|- | |- | ||
| | | 67 | ||
| | | 0x043 | ||
| {{DEX}} {{DECR}} | |||
| | |||
| sys_trace_allocate_buffer | |||
| | |||
|- | |- | ||
| | | 68 | ||
| | | 0x044 | ||
| {{DEX}} {{DECR}} | |||
| | |||
| sys_trace_free_buffer | |||
| | |||
|- | |- | ||
| | | 69 | ||
| | | 0x045 | ||
| {{DEX}} {{DECR}} | |||
| | |||
| sys_trace_create2 | |||
| | |||
|- | |- | ||
| | ! colspan="6" id="sys_timer Syscalls"|[[#sys_timer Syscalls]] (70-76+141+142) | ||
|- | |- | ||
| | | 70 | ||
| | | 0x046 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_timer_create | |||
| int sys_timer_create(sys_timer_t * timer_id); | |||
|- | |- | ||
| | | 71 | ||
| | | 0x047 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_timer_destroy | |||
| int sys_timer_destroy(sys_timer_t timer_id); | |||
|- | |- | ||
| | | 72 | ||
| | | 0x048 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_timer_get_information | |||
| int sys_timer_get_information(sys_timer_t timer_id, sys_timer_information_t * info); | |||
|- | |- | ||
| | | 73 | ||
| | | 0x049 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_timer_start | |||
| int sys_timer_start(sys_timer_t timer_id, system_time_t base_time, usecond_t period); | |||
|- | |- | ||
| | | 74 | ||
| | | 0x04A | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_timer_stop | |||
| int sys_timer_stop(sys_timer_t timer_id); | |||
|- | |- | ||
| | | 75 | ||
| | | 0x04B | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_timer_connect_event_queue | |||
| int sys_timer_connect_event_queue(sys_timer_t timer_id, sys_event_queue_t queue_id, uint64_t name, uint64_t data1, uint64_t data2); | |||
|- | |- | ||
| | | 76 | ||
| | | 0x04C | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_timer_disconnect_event_queue | |||
| int sys_timer_disconnect_event_queue(sys_timer_t timer_id); | |||
|- | |- | ||
| | ! colspan="6" id="sys_trace Syscalls"|[[#sys_trace Syscalls]] (60-69+77) | ||
|- | |- | ||
| | | 77 | ||
| | | 0x04D | ||
| {{DEX}} {{DECR}} | |||
| | |||
| sys_trace_create2_in_cbepm | |||
| | |||
|- | |- | ||
| | | 78 | ||
| | | 0x04E | ||
| {{DECR}} | |||
| | |||
| sys_trace_ | |||
| | |||
|- | |- | ||
| | ! colspan="6" id="sys_interrupt Syscalls"|[[#sys_interrupt Syscalls]] (80+81+84+88+89) | ||
|- | |- | ||
| | | 80 | ||
| | | 0x050 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_interrupt_tag_create | |||
| int sys_interrupt_tag_create(sys_interrupt_tag_t * intrtag, sys_irqoutlet_id_t irq, sys_hw_thread_t hwthread); | |||
|- | |- | ||
| | | 81 | ||
| | | 0x051 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_interrupt_tag_destroy | |||
| int sys_interrupt_tag_destroy(sys_interrupt_tag_t intrtag); | |||
|- | |- | ||
| | ! colspan="6" id="sys_event Syscalls"|[[#sys_event Syscalls]] (82+83+85-87+118+128-140) | ||
|- | |- | ||
| | | 82 | ||
| | | 0x052 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_event_flag_create | |||
| int sys_event_flag_create(sys_event_flag_t * id, sys_event_flag_attribute_t * attr, uint64_t init); | |||
|- | |- | ||
| | | 83 | ||
| | | 0x053 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_event_flag_destroy | |||
| int sys_event_flag_destroy(sys_event_flag_t id); | |||
|- | |- | ||
| | ! colspan="6" id="sys_interrupt Syscalls"|[[#sys_interrupt Syscalls]] (80+81+84+88+89) | ||
|- | |- | ||
| | | 84 | ||
| | | 0x054 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_interrupt_thread_establish | |||
| int sys_interrupt_thread_establish(sys_interrupt_thread_handle_t * ih, sys_interrupt_tag_t intrtag, uint64_t intrthread, uint64_t arg1, uint64_t arg2); | |||
|- | |- | ||
| | ! colspan="6" id="sys_event Syscalls"|[[#sys_event Syscalls]] (82+83+85-87+118+128-140) | ||
|- | |- | ||
| | | 85 | ||
| | | 0x055 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_event_flag_wait | |||
| int sys_event_flag_wait(sys_event_flag_t id, uint64_t bitptn, uint32_t mode, uint64_t * result, usecond_t timeout); | |||
|- | |- | ||
| | | 86 | ||
| | | 0x056 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_event_flag_trywait | |||
| int sys_event_flag_trywait(sys_event_flag_t id, uint64_t bitptn, uint32_t mode, uint64_t * result); | |||
|- | |- | ||
| | | 87 | ||
| | | 0x057 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_event_flag_set | |||
| int sys_event_flag_set(sys_event_flag_t id, uint64_t bitptn); | |||
|- | |- | ||
| | ! colspan="6" id="sys_interrupt Syscalls"|[[#sys_interrupt Syscalls]] (80+81+84+88+89) | ||
|- | |- | ||
| | | 88 | ||
| | | 0x058 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_interrupt_thread_eoi | |||
| void sys_interrupt_thread_eoi(void); | |||
|- | |- | ||
| | | 89 | ||
| | | 0x059 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_interrupt_thread_disestablish | |||
| int sys_interrupt_thread_disestablish(sys_interrupt_thread_handle_t ih); | |||
|- | |- | ||
| | ! colspan="6" id="sys_semaphore Syscalls"|[[#sys_semaphore Syscalls]] (90-94+114) | ||
|- | |- | ||
| | | 90 | ||
| | | 0x05A | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_semaphore_create | |||
| int sys_semaphore_create(sys_semaphore_t * sem, sys_semaphore_attribute_t * attr, sys_semaphore_value_t initial_val, sys_semaphore_value_t max_val); | |||
|- | |- | ||
| | | 91 | ||
| | | 0x05B | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_semaphore_destroy | |||
| int sys_semaphore_destroy(sys_semaphore_t sem); | |||
|- | |- | ||
| | | 92 | ||
| | | 0x05C | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_semaphore_wait | |||
| int sys_semaphore_wait(sys_semaphore_t sem, usecond_t timeout); | |||
|- | |- | ||
| | | 93 | ||
| | | 0x05D | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_semaphore_trywait | |||
| int sys_semaphore_trywait(sys_semaphore_t sem); | |||
|- | |- | ||
| | | 94 | ||
| | | 0x05E | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_semaphore_post | |||
| int sys_semaphore_post(sys_semaphore_t sem, sys_semaphore_value_t val); | |||
|- | |- | ||
| | ! colspan="6" id="sys_lwmutex Syscalls"|[[#sys_lwmutex Syscalls]] (95-99) | ||
|- | |- | ||
| | | 95 | ||
| | | 0x05F | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_lwmutex_create | |||
| int sys_lwmutex_create(sys_lwmutex_t *lwmutex, sys_lwmutex_attribute_t *attr) | |||
|- | |- | ||
| | | 96 | ||
| | | 0x060 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_lwmutex_destroy | |||
| int sys_lwmutex_destroy(sys_lwmutex_t *lwmutex) | |||
|- | |- | ||
| | | 97 | ||
| | | 0x061 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_lwmutex_lock | |||
| int sys_lwmutex_lock(sys_lwmutex_t *lwmutex, usecond_t timeout) | |||
|- | |- | ||
| | | 98 | ||
| | | 0x062 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_lwmutex_trylock | |||
| int sys_lwmutex_trylock(sys_lwmutex_t *lwmutex) | |||
|- | |- | ||
| | | 99 | ||
| | | 0x063 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_lwmutex_unlock | |||
| int sys_lwmutex_unlock(sys_lwmutex_t *lwmutex) | |||
|- | |- | ||
| | ! colspan="6" id="sys_mutex Syscalls"|[[#sys_mutex Syscalls]] (100-104) | ||
|- | |- | ||
| | | 100 | ||
| | | 0x064 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_mutex_create | |||
| int sys_mutex_create(sys_mutex_t * mutex_id, sys_mutex_attribute_t * attr); | |||
|- | |- | ||
| | | 101 | ||
| | | 0x065 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_mutex_destroy | |||
| int sys_mutex_destroy(sys_mutex_t mutex_id); | |||
|- | |- | ||
| | | 102 | ||
| | | 0x066 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_mutex_lock | |||
| int sys_mutex_lock(sys_mutex_t mutex_id, usecond_t timeout); | |||
|- | |- | ||
| | | 103 | ||
| | | 0x067 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_mutex_trylock | |||
| int sys_mutex_trylock(sys_mutex_t mutex_id); | |||
|- | |- | ||
| | | 104 | ||
| | | 0x068 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_mutex_unlock | |||
| int sys_mutex_unlock(sys_mutex_t mutex_id); | |||
|- | |- | ||
| | ! colspan="6" id="sys_cond Syscalls"|[[#sys_cond Syscalls]] (105-110) | ||
|- | |- | ||
| | | 105 | ||
| | | 0x069 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_cond_create | |||
| int sys_cond_create(sys_cond_t * cond_id, sys_mutex_t mutex_id, sys_cond_attribute_t * attr); | |||
|- | |- | ||
| | | 106 | ||
| | | 0x06A | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_cond_destroy | |||
| int sys_cond_destroy(sys_cond_t cond_id); | |||
|- | |- | ||
| | | 107 | ||
| | | 0x06B | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_cond_wait | |||
| int sys_cond_wait(sys_cond_t cond_id, usecond_t timeout); | |||
|- | |- | ||
| | | 108 | ||
| | | 0x06C | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_cond_signal | |||
| int sys_cond_signal(sys_cond_t cond_id); | |||
|- | |- | ||
| | | 109 | ||
| | | 0x06D | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_cond_signal_all | |||
| int sys_cond_signal_all(sys_cond_t cond_id); | |||
|- | |- | ||
| | | 110 | ||
| | | 0x06E | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_cond_signal_to | |||
| int sys_cond_signal_to(sys_cond_t cond_id, sys_ppu_thread_t thread); | |||
|- | |- | ||
| | ! colspan="6" id="sys_lwcond Syscalls"|[[#sys_lwcond Syscalls]] (111+112) | ||
|- | |- | ||
| | | 111 | ||
| | | 0x06F | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_lwcond_create | |||
| int sys_lwcond_create(sys_lwcond_t *lwcond, sys_lwmutex_t *lwmutex, sys_lwcond_attribute_t *attr) | |||
|- | |- | ||
| | | 112 | ||
| | | 0x070 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_lwcond_destroy | |||
| int sys_lwcond_destroy(sys_lwcond_t *lwcond) | |||
|- | |- | ||
| | | 113 | ||
| | | 0x071 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_lwcond_queue_wait | |||
| 3 params | |||
|- | |- | ||
| | ! colspan="6" id="sys_semaphore Syscalls"|[[#sys_semaphore Syscalls]] (90-94+114) | ||
|- | |- | ||
| | | 114 | ||
| | | 0x072 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_semaphore_get_value | |||
| int sys_semaphore_get_value(sys_semaphore_t sem, sys_semaphore_value_t * val); | |||
|- | |- | ||
| | | 115 | ||
| | | 0x073 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| | |||
| 4 params | |||
|- | |- | ||
| | | 116 | ||
| | | 0x074 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| | |||
| 3 params | |||
|- | |- | ||
| | | 117 | ||
| | | 0x075 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| | |||
| 1 params : sys_lwmutex_t *lwmutex | |||
|- | |- | ||
| | ! colspan="6" id="sys_event Syscalls"|[[#sys_event Syscalls]] (82+83+85-87+118+128-140) | ||
|- | |- | ||
| | | 118 | ||
| | | 0x076 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_event_flag_clear | |||
| int sys_event_flag_clear(sys_event_flag_t id, uint64_t bitptn); | |||
|- | |- | ||
| | | 119 | ||
| | | 0x077 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| | |||
| int syscall(119, uint64_t *real_time_clock); Gets ps3 real time clock value, hvsc232 | |||
|- | |- | ||
| | ! colspan="6" id="sys_rwlock Syscalls"|[[#sys_rwlock Syscalls]] (120-127+148) | ||
|- | |- | ||
| | | 120 | ||
| | | 0x078 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_rwlock_create | |||
| int sys_rwlock_create(sys_rwlock_t * rw_lock_id, sys_rwlock_attribute_t * attr); | |||
|- | |- | ||
| | | 121 | ||
| | | 0x079 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_rwlock_destroy | |||
| int sys_rwlock_destroy(sys_rwlock_t rw_lock_id); | |||
|- | |- | ||
| | | 122 | ||
| | | 0x07A | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_rwlock_rlock | |||
| int sys_rwlock_rlock(sys_rwlock_t rw_lock_id, usecond_t timeout); | |||
|- | |- | ||
| | | 123 | ||
| | | 0x07B | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_rwlock_tryrlock | |||
| int sys_rwlock_tryrlock(sys_rwlock_t rw_lock_id); | |||
|- | |- | ||
| | | 124 | ||
| | | 0x07C | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_rwlock_runlock | |||
| int sys_rwlock_runlock(sys_rwlock_t rw_lock_id); | |||
|- | |- | ||
| | | 125 | ||
| | | 0x07D | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_rwlock_wlock | |||
| int sys_rwlock_wlock(sys_rwlock_t rw_lock_id, usecond_t timeout); | |||
|- | |- | ||
| | | 126 | ||
| | | 0x07E | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_rwlock_trywlock | |||
| int sys_rwlock_trywlock(sys_rwlock_t rw_lock_id); | |||
|- | |- | ||
| | | 127 | ||
| | | 0x07F | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_rwlock_wunlock | |||
| int sys_rwlock_wunlock(sys_rwlock_t rw_lock_id); | |||
|- | |- | ||
| | ! colspan="6" id="sys_event Syscalls"|[[#sys_event Syscalls]] (82+83+85-87+118+128-140) | ||
|- | |- | ||
| | | 128 | ||
| | | 0x080 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_event_queue_create | |||
| int sys_event_queue_create(sys_event_queue_t * equeue_id, sys_event_queue_attribute_t * attr, sys_ipc_key_t event_queue_key, int size); | |||
|- | |- | ||
| | | 129 | ||
| | | 0x081 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_event_queue_destroy | |||
| int sys_event_queue_destroy(sys_event_queue_t equeue_id, int mode); | |||
|- | |- | ||
| | | 130 | ||
| | | 0x082 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_event_queue_receive | |||
| int sys_event_queue_receive(sys_event_queue_t equeue_id, sys_event_t * event, usecond_t timeout); | |||
|- | |- | ||
| | | 131 | ||
| | | 0x083 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_event_queue_tryreceive | |||
| int sys_event_queue_tryreceive(sys_event_queue_t equeue_id, sys_event_t * event_array, int size, int *number); | |||
|- | |- | ||
| | | 132 | ||
| | | 0x084 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_event_flag_cancel | |||
| int sys_event_flag_cancel(sys_event_flag_t id, int *num); | |||
|- | |- | ||
| | | 133 | ||
| | | 0x085 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_event_queue_drain | |||
| int sys_event_queue_drain(sys_event_queue_t equeue_id); | |||
|- | |- | ||
| | | 134 | ||
| | | 0x086 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_event_port_create | |||
| int sys_event_port_create(sys_event_port_t * eport_id, int port_type, uint64_t name); | |||
|- | |- | ||
| | | 135 | ||
| | | 0x087 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_event_port_destroy | |||
| int sys_event_port_destroy(sys_event_port_t eport_id); | |||
|- | |- | ||
| | | 136 | ||
| | | 0x088 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_event_port_connect_local | |||
| int sys_event_port_connect_local(sys_event_port_t event_port_id, sys_event_queue_t event_queue_id); | |||
|- | |- | ||
| | | 137 | ||
| | | 0x089 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_event_port_disconnect | |||
| int sys_event_port_disconnect(sys_event_port_t event_port_id); | |||
|- | |- | ||
| | | 138 | ||
| | | 0x08A | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_event_port_send | |||
| int sys_event_port_send(sys_event_port_t eport_id, unint64_t data1, uint64_t data2, uint64_t data3); | |||
|- | |- | ||
| | | 139 | ||
| | | 0x08B | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_event_flag_get | |||
| int sys_event_flag_get(sys_event_flag_t id, uint64_t * bitptn); | |||
|- | |- | ||
| | | 140 | ||
| | | 0x08C | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_event_port_connect_ipc | |||
| int sys_event_port_connect_ipc(sys_event_port_t eport_id, sys_ipc_key_t event_queue_key); | |||
|- | |- | ||
| | ! colspan="6" id="sys_timer Syscalls"|[[#sys_timer Syscalls]] (70-76+141+142) | ||
|- | |- | ||
| | | 141 | ||
| | | 0x08D | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_timer_usleep | |||
| int sys_timer_usleep(usecond_t sleep_time); | |||
|- | |- | ||
| | | 142 | ||
| | | 0x08E | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_timer_sleep | |||
| int sys_timer_sleep(second_t sleep_time); | |||
|- | |- | ||
| | ! colspan="6" id="sys_time Syscalls"|[[#sys_time Syscalls]] (143-147) | ||
|- | |- | ||
| | | 143 | ||
| | | 0x08F | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_time_set_timezone | |||
| int sys_time_set_timezone(int timezone, int summertime) | |||
|- | |- | ||
| | | 144 | ||
| | | 0x090 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_time_get_timezone | |||
| int sys_time_get_timezone(int *timezone, int *summertime) | |||
|- | |- | ||
| | | 145 | ||
| | | 0x091 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_time_get_current_time | |||
| int sys_time_get_current_time(sys_time_sec_t * sec, sys_time_nsec_t * nsec); | |||
|- | |- | ||
| | | 146 | ||
| | | 0x092 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_time_set_current_time | |||
| int sys_time_set_current_time(uint64_t sec, uint64_t nsec); | |||
|- | |- | ||
| | | 147 | ||
| | | 0x093 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_time_get_timebase_frequency | |||
| uint64_t sys_time_get_timebase_frequency(void); | |||
|- | |- | ||
| | ! colspan="6" id="sys_rwlock Syscalls"|[[#sys_rwlock Syscalls]] (120-127+148) | ||
|- | |- | ||
| | | 148 | ||
| | | 0x094 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_rwlock_trywlock | |||
| int sys_rwlock_trywlock(sys_rwlock_t rw_lock_id); | |||
|- | |- | ||
| | ! colspan="6" id="sys_spu/sys_raw_spu Syscalls"|[[#sys_spu/sys_raw_spu Syscalls]] (150-260) | ||
|- | |- | ||
| | | 150 | ||
| | | 0x096 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_raw_spu_create_interrupt_tag | |||
| int sys_raw_spu_create_interrupt_tag(sys_raw_spu_t id,sys_class_id_t class_id, sys_hw_thread_t hwthread, sys_interrupt_tag_t *intrtag) | |||
|- | |- | ||
| | | 151 | ||
| | | 0x097 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_raw_spu_set_int_mask | |||
| int sys_raw_spu_set_int_mask(sys_raw_spu_t id, sys_class_id_t class_id, uint64_t mask) | |||
|- | |- | ||
| | | 152 | ||
| | | 0x098 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_raw_spu_get_int_mask | |||
| int sys_raw_spu_get_int_mask(sys_raw_spu_t id, sys_class_id_t class_id, uint64_t *mask) | |||
|- | |- | ||
| | | 153 | ||
| | | 0x099 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_raw_spu_set_int_stat | |||
| int sys_raw_spu_set_int_stat(sys_raw_spu_t id, sys_class_id_t class_id, uint64_t stat) | |||
|- | |- | ||
| | | 154 | ||
| | | 0x09A | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_raw_spu_get_int_stat | |||
| int sys_raw_spu_get_int_stat(sys_raw_spu_t id, sys_class_id_t class_id, uint64_t *stat) | |||
|- | |- | ||
| | | 155 | ||
| | | 0x09B | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_image_get_information? | |||
| int sys_spu_image_get_information?(sys_spu_image_t *img, out:uint[4],out:uint[4]) | |||
|- | |- | ||
| | | 156 | ||
| | | 0x09C | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_image_open | |||
| int sys_spu_image_open(sys_spu_image_t *img, const char *path) | |||
|- | |- | ||
| | | 157 | ||
| | | 0x09D | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_image_import | |||
| int sys_spu_image_import(sys_spu_image_t *img, const void *src, uint32_t type) | |||
|- | |- | ||
| | | 158 | ||
| | | 0x09E | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_image_close | |||
| int sys_spu_image_close(sys_spu_image_t *img); | |||
|- | |- | ||
| | | 159 | ||
| | | 0x09F | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_raw_spu_load | |||
| 3 Params ( sys_spu_image_t * img, sys_addr_t alloc_addr, int size? ), needs much more proper information | |||
|- | |- | ||
| | | 160 | ||
| | | 0x0A0 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_raw_spu_create | |||
| int sys_raw_spu_create(sys_raw_spu_t *id, sys_raw_spu_attribute_t *attr) | |||
|- | |- | ||
| | | 161 | ||
| | | 0x0A1 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_raw_spu_destroy | |||
| int sys_raw_spu_destroy(sys_raw_spu_t id) | |||
|- | |- | ||
| | | 163 | ||
| | | 0x0A3 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_raw_spu_read_puint_mb | |||
| int sys_raw_spu_read_puint_mb(sys_raw_spu_t id, uint32_t *value) | |||
|- | |- | ||
| | | 165 | ||
| | | 0x0A5 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_get_exit_status | |||
| int sys_spu_thread_get_exit_status(sys_spu_thread_t id, int *status) | |||
|- | |- | ||
| | | 166 | ||
| | | 0x0A6 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_set_argument | |||
| int sys_spu_thread_set_argument(sys_spu_thread_t id, sys_spu_thread_argument_t *arg) | |||
|- | |- | ||
| | | 167 | ||
| | | 0x0A7 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_group_start_on_exit | |||
| | |||
|- | |- | ||
| | | 169 | ||
| | | 0x0A9 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_initialize | |||
| int sys_spu_initialize(unsigned int max_usable_spu, unsigned int max_raw_spu) | |||
|- | |- | ||
| | | 170 | ||
| | | 0x0AA | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_group_create | |||
| int sys_spu_thread_group_create(sys_spu_thread_group_t *id, unsigned int num, int prio, sys_spu_thread_group_attribute_t *attr) | |||
|- | |- | ||
| | | 171 | ||
| | | 0x0AB | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_group_destroy | |||
| int sys_spu_thread_group_destroy(sys_spu_thread_group_t id) | |||
|- | |- | ||
| | | 172 | ||
| | | 0x0AC | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_initialize | |||
| int sys_spu_thread_initialize(sys_spu_thread_t *thread,sys_spu_thread_group_t group,uint spu_num,sys_spu_image_t *img,sys_spu_thread_attribute_t *attr,sys_spu_thread_argument_t *arg) | |||
|- | |- | ||
| | | 173 | ||
| | | 0x0AD | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_group_start | |||
| int sys_spu_thread_group_start(sys_spu_thread_group_t id) | |||
|- | |- | ||
| | | 174 | ||
| | | 0x0AE | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_group_suspend | |||
| int sys_spu_thread_group_suspend(sys_spu_thread_group_t id) | |||
|- | |- | ||
| | | 175 | ||
| | | 0x0AF | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_group_resume | |||
| int sys_spu_thread_group_resume(sys_spu_thread_group_t id) | |||
|- | |- | ||
| | | 176 | ||
| | | 0x0B0 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_group_yield | |||
| int sys_spu_thread_group_yield(sys_spu_thread_group_t id) | |||
|- | |- | ||
| | | 177 | ||
| | | 0x0B1 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_group_terminate | |||
| int sys_spu_thread_group_terminate(sys_spu_thread_group_t id, int value) | |||
|- | |- | ||
| | | 178 | ||
| | | 0x0B2 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_group_join | |||
| int sys_spu_thread_group_join(sys_spu_thread_group_t gid, int *cause, int *status) | |||
|- | |- | ||
| | | 179 | ||
| | | 0x0B3 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_group_set_priority | |||
| int sys_spu_thread_group_set_priority(sys_spu_thread_group_t id, int priority) | |||
|- | |- | ||
| | | 180 | ||
| | | 0x0B4 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_group_get_priority | |||
| int sys_spu_thread_group_get_priority(sys_spu_thread_group_t id, int *priority) | |||
|- | |- | ||
| | | 181 | ||
| | | 0x0B5 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_write_ls | |||
| int sys_spu_thread_write_ls(sys_spu_thread_t id, uint32_t address, uint64_t value, size_t type) | |||
|- | |- | ||
| | | 182 | ||
| | | 0x0B6 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_read_ls | |||
| int sys_spu_thread_read_ls(sys_spu_thread_t id, uint32_t address, uint64_t *value, size_t type) | |||
|- | |- | ||
| | | 184 | ||
| | | 0x0B8 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_write_snr | |||
| int sys_spu_thread_write_snr(sys_spu_thread_t id, int number, uint32_t value) | |||
|- | |- | ||
| | | 185 | ||
| | | 0x0B9 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_group_connect_event | |||
| int sys_spu_thread_group_connect_event(sys_spu_thread_group_t id, sys_event_queue_t eq, sys_event_type_t et) | |||
|- | |- | ||
| | | 186 | ||
| | | 0x0BA | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_group_disconnect_event | |||
| int sys_spu_thread_group_disconnect_event(sys_spu_thread_group_t id, sys_event_type_t et) | |||
|- | |- | ||
| | | 187 | ||
| | | 0x0BB | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_set_spu_cfg | |||
| int sys_spu_thread_set_spu_cfg(sys_spu_thread_t id, uint64_t value) | |||
|- | |- | ||
| | | 188 | ||
| | | 0x0BC | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_get_spu_cfg | |||
| int sys_spu_thread_get_spu_cfg(sys_spu_thread_t id, uint64_t *value) | |||
|- | |- | ||
| | | 190 | ||
| | | 0x0BE | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_write_spu_mb | |||
| int sys_spu_thread_write_spu_mb(sys_spu_thread_t id, uint32_t value); | |||
|- | |- | ||
| | | 191 | ||
| | | 0x0BF | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_connect_event | |||
| int sys_spu_thread_connect_event(sys_spu_thread_t id, sys_event_queue_t eq, sys_event_type_t et, uint8_t spup) | |||
|- | |- | ||
| | | 192 | ||
| | | 0x0C0 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_disconnect_event | |||
| int sys_spu_thread_disconnect_event(sys_spu_thread_t id, sys_event_type_t et, uint8_t spup) | |||
|- | |- | ||
| | | 193 | ||
| | | 0x0C1 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_bind_queue | |||
| int sys_spu_thread_bind_queue(sys_spu_thread_t id,sys_event_queue_t spuq,uint32_t spuq_num) | |||
|- | |- | ||
| | | 194 | ||
| | | 0x0C2 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_unbind_queue | |||
| int sys_spu_thread_unbind_queue(sys_spu_thread_t id, uint32_t spuq_num) | |||
|- | |- | ||
| | | 196 | ||
| | | 0x0C4 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_raw_spu_set_spu_cfg | |||
| int sys_raw_spu_set_spu_cfg(sys_raw_spu_t id, uint32_t value) | |||
|- | |- | ||
| | | 197 | ||
| | | 0x0C5 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_raw_spu_get_spu_cfg | |||
| int sys_raw_spu_get_spu_cfg(sys_raw_spu_t id, uint32_t *value) | |||
|- | |- | ||
|} | | 198 | ||
| 0x0C6 | |||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_recover_page_fault | |||
| int sys_spu_thread_recover_page_fault(sys_spu_thread_t id) | |||
|- | |- | ||
| | | 199 | ||
| | | 0x0C7 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_raw_spu_recover_page_fault | |||
| int sys_raw_spu_recover_page_fault(sys_raw_spu_t id) | |||
|- | |- | ||
| | | 200 | ||
| | | 0x0C8 | ||
| ?? | |||
| ?? | |||
| syscall_console_putc | |||
| ?? | |||
|- | |- | ||
| | | 201 | ||
| | | 0x0C9 | ||
| ?? | |||
| ?? | |||
| syscall_console_getc | |||
| ?? | |||
|- | |- | ||
| | | 202 | ||
| | | 0x0CA | ||
| ?? | |||
| ?? | |||
| syscall_event_create_port | |||
| ?? | |||
|- | |- | ||
| | | 203 | ||
| | | 0x0CB | ||
| ?? | |||
| ?? | |||
| syscall_event_send_locally | |||
| ?? | |||
|- | |- | ||
| | | 209 | ||
| | | 0x0D1 | ||
| ?? | |||
| ?? | |||
| syscall_sys_pseudo_fs_read | |||
| ?? | |||
|- | |- | ||
| | | 210 | ||
| | | 0x0D2 | ||
| ?? | |||
| ?? | |||
| syscall_sys_pseudo_fs_write | |||
| ?? | |||
|- | |- | ||
| | | 211 | ||
| | | 0x0D3 | ||
| ?? | |||
| ?? | |||
| syscall_sys_pseudo_fs_append | |||
| ?? | |||
|- | |- | ||
| | | 212 | ||
| | | 0x0D4 | ||
| ?? | |||
| ?? | |||
| syscall_start_debug | |||
| ?? | |||
|- | |- | ||
| | | 213 | ||
| | | 0x0D5 | ||
| ?? | |||
| ?? | |||
| syscall_console_write | |||
| ?? | |||
|- | |- | ||
| | | 214 | ||
| | | 0x0D6 | ||
| ?? | |||
| ?? | |||
| syscall_sys_pseudo_fs_get_file_size | |||
| ?? | |||
|- | |- | ||
| | | 215 | ||
| | | 0x0D7 | ||
| {{DEX}} {{DECR}} | |||
| | |||
| sys_dbg_mat_set_condition | |||
| int sys_dbg_mat_set_condition(sys_addr_t,int) | |||
|- | |- | ||
| | | 216 | ||
| | | 0x0D8 | ||
| {{DEX}} {{DECR}} | |||
| | |||
| sys_dbg_mat_get_condition | |||
| int sys_dbg_mat_get_condition(sys_addr_t,int*) | |||
|- | |- | ||
| | | 217 | ||
| | | 0x0D9 | ||
| ?? | |||
| ?? | |||
| syscall_logical_console_getc | |||
| ?? | |||
|- | |- | ||
| | | 218 | ||
| | | 0x0DA | ||
| ?? | |||
| ?? | |||
| syscall_logical_console_putc | |||
| ?? | |||
|- | |- | ||
| | | 219 | ||
| | | 0x0DB | ||
| ?? | |||
| ?? | |||
| syscall_logical_console_flush | |||
| ?? | |||
|- | |- | ||
| | | 226 | ||
| | | 0x0E2 | ||
| ?? | |||
| ?? | |||
| syscall_get_logical_partition_id | |||
| ?? | |||
|- | |- | ||
| | | 230 | ||
| | | 0x0E6 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_isolated_spu_create | |||
| int sys_isolated_spu_create(sys_raw_spu_t *id, uint8_t *source_spe, in?: args?,0,0,0) | |||
|- | |- | ||
| | | 231 | ||
| | | 0x0E7 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_isolated_spu_destroy | |||
| int sys_isolated_spu_destroy(sys_raw_spu_t id) | |||
|- | |- | ||
| | | 232 | ||
| | | 0x0E8 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_isolated_spu_start | |||
| int sys_isolated_spu_start(sys_raw_spu_t id) | |||
|- | |- | ||
| | | 233 | ||
| | | 0x0E9 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_isolated_spu_create_interrupt_tag | |||
| int sys_isolated_spu_create_interrupt_tag(sys_raw_spu_t id, uint32_t class_id, uint32_t hwthread, sys_interrupt_tag_t *intrtag) | |||
|- | |- | ||
| | | 234 | ||
| | | 0x0EA | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_isolated_spu_set_int_mask | |||
| int sys_isolated_spu_set_int_mask(sys_raw_spu_t id, uint32_t class_id, uint64_t mask) | |||
|- | |- | ||
| | | 235 | ||
| | | 0x0EB | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_isolated_spu_get_int_mask | |||
| int sys_isolated_spu_get_int_mask(sys_raw_spu_t id, uint32_t class_id, uint64_t *mask) | |||
|- | |- | ||
| | | 236 | ||
| | | 0x0EC | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_isolated_spu_set_int_stat | |||
| int sys_isolated_spu_set_int_stat(sys_raw_spu_t id, uint32_t class_id, uint64_t stat) | |||
|- | |- | ||
| | | 237 | ||
| | | 0x0ED | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_isolated_spu_get_int_stat | |||
| int sys_isolated_spu_get_int_stat(sys_raw_spu_t id, uint32_t class_id, uint64_t * stat) | |||
|- | |- | ||
| | | 238 | ||
| | | 0x0EE | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_isolated_spu_set_spu_cfg | |||
| int sys_isolated_spu_set_spu_cfg(sys_spu_thread_t id, uint64_t value) | |||
|- | |- | ||
| | | 239 | ||
| | | 0x0EF | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_isolated_spu_get_spu_cfg | |||
| int sys_isolated_spu_get_spu_cfg(sys_spu_thread_t id, uint64_t * value) | |||
|- | |- | ||
| | | 240 | ||
| | | 0x0F0 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_isolated_spu_read_puint_mb | |||
| int sys_isolated_spu_read_puint_mb(sys_raw_spu_t id, uint32_t * value) | |||
|- | |- | ||
| | | 244 | ||
| | | 0x0F4 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_spu_thread_group_system_set_next_group | |||
| int sys_spu_thread_group_system_set_next_group(void) | |||
|- | |- | ||
| | | 245 | ||
| | | 0x0F5 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_spu_thread_group_system_unset_next_group | |||
| int sys_spu_thread_group_system_unset_next_group(void) | |||
|- | |- | ||
| | | 246 | ||
| | | 0x0F6 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_spu_thread_group_system_set_switch_group | |||
| int sys_spu_thread_group_system_set_switch_group(void) | |||
|- | |- | ||
| | | 247 | ||
| | | 0x0F7 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_spu_thread_group_system_unset_switch_group | |||
| int sys_spu_thread_group_system_unset_switch_group(void) | |||
|- | |- | ||
| | | 248 | ||
| | | 0x0F8 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_spu_thread_group.... | |||
| 5 Params: sys_spu_thread_group_t group,..... | |||
|- | |- | ||
| | | 249 | ||
| | | 0x0F9 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_spu_thread_group.... | |||
| int sc249(sys_spu_thread_group_t group) | |||
|- | |- | ||
| | | 250 | ||
| | | 0x0FA | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_group_set_cooperative_victims | |||
| 2 Params | |||
|- | |- | ||
| | | 251 | ||
| | | 0x0FB | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_group_connect_event_all_threads | |||
| int sys_spu_thread_group_connect_event_all_threads(sys_spu_thread_group_t id, sys_event_queue_t eq, uint64_t req, uint8_t *spup) | |||
|- | |- | ||
| | | 252 | ||
| | | 0x0FC | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_group_disconnect_event_all_threads | |||
| int sys_spu_thread_group_disconnect_event_all_threads(sys_spu_thread_group_t id, uint8_t spup) | |||
|- | |- | ||
| | | 253 | ||
| | | 0x0FD | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_group.. | |||
| 2 Params( sys_spu_thread_group_t id, out:uint8[0x40]) | |||
|- | |- | ||
| | | 254 | ||
| | | 0x0FE | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_thread_group_log | |||
| int sys_spu_thread_group_log(int command, int *stat) | |||
|- | |- | ||
| | | 256 | ||
| | | 0x100 | ||
| ?? | |||
| ?? | |||
| syscall_create_repository_node | |||
| ?? | |||
|- | |- | ||
| | | 257 | ||
| | | 0x101 | ||
| ?? | |||
| ?? | |||
| syscall_get_repository_node_value | |||
| ?? | |||
|- | |- | ||
| | | 258 | ||
| | | 0x102 | ||
| ?? | |||
| ?? | |||
| syscall_modify_repository_node_value | |||
| ?? | |||
|- | |- | ||
| | | 259 | ||
| | | 0x103 | ||
| ?? | |||
| ?? | |||
| syscall_remove_repository_node | |||
| ?? | |||
|- | |- | ||
| | | 260 | ||
| | | 0x104 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_spu_image_open_by_fd | |||
| int sys_spu_image_open_by_fd(sys_spu_image_t *img, int fd, off64_t offset) | |||
|- | |- | ||
| | ! colspan="6" id="sys_vm/sys_memory/sys_mmapper Syscalls"|[[#sys_vm/sys_memory/sys_mmapper Syscalls]] (300-352) | ||
|- | |- | ||
| | | 275 | ||
| | | 0x113 | ||
| ?? | |||
| ?? | |||
| syscall_set_vsync_schedule | |||
| ?? | |||
|- | |- | ||
| | | 290 | ||
| | | 0x122 | ||
| ?? | |||
| ?? | |||
| syscall_set_l2_cache_replacement_mode | |||
| ?? | |||
|- | |- | ||
| | | 291 | ||
| | | 0x123 | ||
| ?? | |||
| ?? | |||
| syscall_change_l2_cache_state_all | |||
| ?? | |||
|- | |- | ||
| | | 292 | ||
| | | 0x124 | ||
| ?? | |||
| ?? | |||
| syscall_invalidate_i_cache_blocks_related_kernel | |||
| ?? | |||
|- | |- | ||
| | | 294 | ||
| | | 0x126 | ||
| ?? | |||
| ?? | |||
| syscall_proc_get_filename | |||
| ?? | |||
|- | |- | ||
| | | 295 | ||
| | | 0x127 | ||
| ?? | |||
| ?? | |||
| syscall_sys_pseudo_fs_truncate | |||
| ?? | |||
|- | |- | ||
| | | 296 | ||
| | | 0x128 | ||
| ?? | |||
| ?? | |||
| syscall_sys_pseudo_fs_get_dents | |||
| ?? | |||
|- | |- | ||
| | | 300 | ||
| | | 0x12C | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_vm_memory_map | |||
| int sys_vm_memory_map(size_t vsize, size_t psize, sys_memory_container_t container, uint64_t flag, uint64_t policy, sys_addr_t * addr); | |||
|- | |- | ||
| | | 301 | ||
| | | 0x12D | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_vm_unmap | |||
| int sys_vm_unmap(sys_addr_t addr); | |||
|- | |- | ||
| | | 302 | ||
| | | 0x12E | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_vm_append_memory | |||
| int sys_vm_append_memory(sys_addr_t addr, size_t size); | |||
|- | |- | ||
| | | 303 | ||
| | | 0x12F | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_vm_return_memory | |||
| int sys_vm_return_memory(sys_addr_t addr, size_t size); | |||
|- | |- | ||
| | | 304 | ||
| | | 0x130 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_vm_lock | |||
| int sys_vm_lock(sys_addr_t addr, size_t size); | |||
|- | |- | ||
| | | 305 | ||
| | | 0x131 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_vm_unlock | |||
| int sys_vm_unlock(sys_addr_t addr, size_t size); | |||
|- | |- | ||
| | | 306 | ||
| | | 0x132 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_vm_touch | |||
| int sys_vm_touch(sys_addr_t addr, size_t size); | |||
|- | |- | ||
| | | 307 | ||
| | | 0x133 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_vm_flush | |||
| int sys_vm_flush(sys_addr_t addr, size_t size); | |||
|- | |- | ||
| | | 308 | ||
| | | 0x134 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_vm_invalidate | |||
| int sys_vm_invalidate(sys_addr_t addr, size_t size); | |||
|- | |- | ||
| | | 309 | ||
| | | 0x135 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_vm_store | |||
| int sys_vm_store(sys_addr_t addr, size_t size); | |||
|- | |- | ||
| | | 310 | ||
| | | 0x136 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_vm_sync | |||
| int sys_vm_sync(sys_addr_t addr, size_t size); | |||
|- | |- | ||
| | | 311 | ||
| | | 0x137 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_vm_test | |||
| int sys_vm_test(sys_addr_t addr, size_t size, uint64_t * result); | |||
|- | |- | ||
| | | 312 | ||
| | | 0x138 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_vm_get_statistics | |||
| int sys_vm_get_statistics(sys_addr_t addr, sys_vm_statistics_t * stat); | |||
|- | |- | ||
| | | 313 | ||
| | | 0x139 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| diff sys_vm_memory_map | |||
| same Params (size_t vsize, size_t psize, sys_memory_container_t container, uint64_t flag, uint64_t policy, sys_addr_t * addr); apperently maps different vm memory area | |||
|- | |- | ||
| | | 314 | ||
| | | 0x13A | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| syscall_finalize_user_kernel_shared_memory | |||
| 2 Params | |||
|- | |- | ||
| | | 315 | ||
| | | 0x13B | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| syscall_import_user_kernel_shared_memory | |||
| 1 Param | |||
|- | |- | ||
| | | 316 | ||
| | | 0x13C | ||
| ?? | |||
| ?? | |||
| syscall_unimport_user_kernel_shared_memory | |||
| ?? | |||
|- | |- | ||
| | | 324 | ||
| | | 0x144 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{dbg}} | |||
| sys_memory_container_create | |||
| int sys_memory_container_create(sys_memory_container_t * cid, size_t yield_size); | |||
|- | |- | ||
| | | 325 | ||
| | | 0x145 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{dbg}} | |||
| sys_memory_container_destroy | |||
| int sys_memory_container_destroy(sys_memory_container_t cid); | |||
|- | |- | ||
| | | 326 | ||
| | | 0x146 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_mmapper_allocate_fixed_address | |||
| int sys_mmapper_allocate_fixed_address(void); | |||
|- | |- | ||
| | | 327 | ||
| | | 0x147 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_mmapper_enable_page_fault_notification | |||
| int sys_mmapper_enable_page_fault_notification(sys_addr_t start_addr, sys_event_queue_t queue_id); | |||
|- | |- | ||
| | | 328 | ||
| | | 0x148 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| | |||
| 7 Params | |||
|- | |- | ||
| | | 329 | ||
| | | 0x149 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_mmapper_free_shared_memory | |||
| int sys_mmapper_free_shared_memory(sys_addr_t start_addr); | |||
|- | |- | ||
| | | 330 | ||
| | | 0x14A | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_mmapper_allocate_address | |||
| int sys_mmapper_allocate_address(size_t size, uint64_t flags, size_t alignment, sys_addr_t * alloc_addr); | |||
|- | |- | ||
| | | 331 | ||
| | | 0x14B | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_mmapper_free_address | |||
| int sys_mmapper_free_address(sys_addr_t start_addr); | |||
|- | |- | ||
| | | 332 | ||
| | | 0x14C | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_mmapper_allocate_shared_memory | |||
| 4 Params: (uint32_t id? ('UMEM'), size_t size, size_t alignment, sys_memory_t * mem_id) | |||
|- | |- | ||
| | | 333 | ||
| | | 0x14D | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_mmapper_set_shared_memory_flag | |||
| int sys_mmapper_set_shared_memory_flag(sys_addr_t, flags) ?; | |||
|- | |- | ||
| | | 334 | ||
| | | 0x14E | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_mmapper_map_shared_memory | |||
| 3 Params: (sys_addr_t start_addr, sys_memory_t mem_id, uint64_t flags) ? | |||
|- | |- | ||
| | | 335 | ||
| | | 0x14F | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_mmapper_unmap_shared_memory | |||
| 2 Params: (sys_addr_t start_addr,sys_memory_t *mem_id ) ? | |||
|- | |- | ||
| | | 336 | ||
| | | 0x150 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_mmapper_change_address_access_right | |||
| int sys_mmapper_change_address_access_right(sys_addr_t start_addr, uint64_t flags); | |||
|- | |- | ||
| | | 337 | ||
| | | 0x151 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_mmapper_search_and_map | |||
| int sys_mmapper_search_and_map(sys_addr_t start_addr, sys_memory_t mem_id, uint64_t flags, sys_addr_t * alloc_addr); | |||
|- | |- | ||
| | | 338 | ||
| | | 0x152 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_mmapper_get_shared_memory_attribute | |||
| 2 Params: | |||
|- | |- | ||
| | | 339 | ||
| | | 0x153 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| | |||
| 5 Params | |||
|- | |- | ||
| | | 340 | ||
| | | 0x154 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| | |||
| 2 Params | |||
|- | |- | ||
| | | 341 | ||
| | | 0x155 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| _sys_memory_container_create2 ? | |||
| int _sys_memory_container_create2(sys_memory_container_t * cid, size_t yield_size); | |||
|- | |- | ||
| | | 342 | ||
| | | 0x156 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_memory_container_destroy? | |||
| int sys_memory_container_destroy? (sys_memory_container_t cid); | |||
|- | |- | ||
| | | 343 | ||
| | | 0x157 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_memory_container_get_size | |||
| int sys_memory_container_get_size(sys_memory_info_t * mem_info, sys_memory_container_t cid); | |||
|- | |- | ||
| | | 344 | ||
| | | 0x158 | ||
| | |||
| | |||
| sys_memory_budget_set | |||
| | |||
|- | |- | ||
| | | 345 | ||
| | | 0x159 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| | |||
| 3 Params, a variation of sys_memory_container_destroy (sys_memory_container_t cid, int, &out) | |||
|- | |- | ||
| | | 346 | ||
| | | 0x15A | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| | |||
| | |||
|- | |- | ||
| | | 348 | ||
| | | 0x15C | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_memory_allocate | |||
| int sys_memory_allocate(size_t size, uint64_t flags, sys_addr_t * alloc_addr); | |||
|- | |- | ||
| | | 349 | ||
| | | 0x15D | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_memory_free | |||
| int sys_memory_free(sys_addr_t start_addr); | |||
|- | |- | ||
| | | 350 | ||
| | | 0x15E | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_memory_allocate_from_container | |||
| int sys_memory_allocate_from_container(size_t size, sys_memory_container_t container, uint64_t flags, sys_addr_t * alloc_addr); | |||
|- | |- | ||
| | | 351 | ||
| | | 0x15F | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_memory_get_page_attribute | |||
| int sys_memory_get_page_attribute(sys_addr_t addr, sys_page_attr_t * attr); | |||
|- | |- | ||
| | | 352 | ||
| | | 0x160 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_memory_get_user_memory_size | |||
| int sys_memory_get_user_memory_size(sys_memory_info_t * mem_info); | |||
|- | |- | ||
| | | 353 | ||
| | | 0x161 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_memory_get_user_memory_stat | |||
| int sys_memory_get_user_memory_stat(out:uint8[0x1C]) | |||
|- | |- | ||
| | | 354 | ||
| | | 0x162 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| | |||
| 3 Params | |||
|- | |- | ||
| | | 355 | ||
| | | 0x163 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| | |||
| 2 Param: uint32_t *, uint32_t * (set 0, reset memory stats?) | |||
|- | |- | ||
| | | 356 | ||
| | | 0x164 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_memory_allocate_colored | |||
| 4 Params | |||
|- | |- | ||
| | | 357 | ||
| | | 0x165 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| | |||
| 2 Params | |||
|- | |- | ||
| | | 358 | ||
| | | 0x166 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| | |||
| 5 Params | |||
|- | |- | ||
| | | 359 | ||
| | | 0x167 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| | |||
| 2 Params | |||
|- | |- | ||
| | | 360 | ||
| | | 0x168 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| | |||
| 7 Params | |||
|- | |- | ||
| | | 361 | ||
| | | 0x169 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_memory_allocate_from_container_colored | |||
| 5 Params | |||
|- | |- | ||
| | | 362 | ||
| | | 0x16A | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_mmapper_allocate_memory_from_container | |||
| sys_mmapper_allocate_memory_from_container(size_t size, sys_memory_container_t container, uint64_t flags, sys_memory_t *mem_id) | |||
|- | |- | ||
| | | 363 | ||
| | | 0x16B | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| | |||
| 6 Params | |||
|- | |- | ||
| | | 364 | ||
| | | 0x16C | ||
| {{DECR}} | |||
| | |||
| | |||
| | |||
|- | |- | ||
| | ! colspan="6" id="sys_uart Syscalls"|[[#sys_uart Syscalls]] (367-370) | ||
|- | |- | ||
| | | 367 | ||
| | | 0x16F | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_uart_initialize | |||
| syscall(367, void) | |||
|- | |- | ||
| | | 368 | ||
| | | 0x170 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_uart_receive | |||
| sys_uart_receive(out: uint8_t buffer[SizeToReceive], int SizeToReceive (0x400/0x800), 0/1) | |||
|- | |- | ||
| | | 369 | ||
| | | 0x171 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_uart_send | |||
| sys_uart_send(const void *buf, uint64_t size, uint64_t flags)<!--///* | |||
* lv2_av_send | |||
*/ | |||
static inline int lv2_av_send(const void *buf, uint64_t size, uint64_t flags) | |||
{ | |||
return Lv2Syscall3(369, (uint64_t) buf, size, flags); | |||
}//--> | |||
|- | |- | ||
| | | 370 | ||
| | | 0x172 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_uart_get_params | |||
| int sys_uart_get_params(out:buffer[0x10]) | |||
|- | |- | ||
| | ! colspan="6" id="sys_game Syscalls"|[[#sys_game Syscalls]] (372-376+410-412) | ||
|- | |- | ||
| | | 372 | ||
| | | 0x174 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_game_watchdog_start | |||
| 1 param: int time(r) | |||
|- | |- | ||
| | | 373 | ||
| | | 0x175 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_game_watchdog_stop | |||
| int sys_game_watchdog_stop(void) | |||
|- | |- | ||
| | | 374 | ||
| | | 0x176 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_game_watchdog_clear | |||
| int sys_game_watchdog_clear(void) | |||
|- | |- | ||
| | | 375 | ||
| | | 0x177 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_game_set_system_sw_version | |||
| int sys_game_set_system_sw_version(uint64_t version) | |||
|- | |- | ||
| | | 376 | ||
| | | 0x178 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_game_get_system_sw_version | |||
| int sys_game_get_system_sw_version(void) | |||
|- | |- | ||
| | ! colspan="6" id="sys_sm/sys_ctrl Syscalls"|[[#sys_sm/sys_ctrl Syscalls]] (378-396) | ||
|- | |- | ||
| | | 377 | ||
| | | 0x179 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_sm_set_shop_mode | |||
| int sys_sm_set_shop_mode(int mode (0/1)) ( HV System Manager access - ServiceID 39 (SET_SHOP_DEMO_MODE)) | |||
|- | |- | ||
| | | 378 | ||
| | | 0x17A | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_sm_get_ext_event2 | |||
| 4 Param, sc378(uint64_t * v1,uint64_t * v2, uint64_t * v3, 0=receive buffer/1=get queuing events), v1==7 -> yesHOT | |||
|- | |- | ||
| | | 379 | ||
| | | 0x17B | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_sm_shutdown | |||
| int sys_sm_shutdown(uint16_t op, const void * lpar_parameter, uint64_t parameter_size ) | |||
0x1100/0x100 = turn off, | |||
0x1200 = Lv2 Hard Reboot, | |||
0x200 = Lv2 Soft Reboot, | |||
0x8201 = load lpar id 1 | |||
0x8202 = load lpar id 2 | |||
0x8204 = load lpar id 3 (PS2_NETEMU) | |||
HV System Manager access - ServiceID 1 (REQUEST)+ 10 (DELIVER INTER LPAR PARAMETER) | |||
|- | |- | ||
| | | 380 | ||
| | | 0x17C | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Dbg}} | |||
| sys_sm_get_params | |||
| alias sys_get_system_parameter, 4 Params: uint64_t * unknown1, uint64_t * unknown2, uint64_t * unknown3, uint64_t * bootparam? (more info: [[#Boot_Parameter]]) | |||
|- | |- | ||
| | | 381 | ||
| | | 0x17D | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_sm_get_inter_lpar_parameter? | |||
| 2Params: syscall(381,uint8_t lpar_parameter[param_size], int param_size (0x600)); | |||
|- | |- | ||
| | | 382 | ||
| | | 0x17E | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_sm_ | |||
| int syscall(382, void); - prevents ps3 lpar shutdown ? | |||
|- | |- | ||
| | | 383 | ||
| | | 0x17F | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_game_get_temperature | |||
| int sys_game_get_temperature(0=CELL/1=RSX,uint32_t *temperature) ( HV System Manager access - ServiceID 13 (TEMPERATURE)) | |||
2nd Byte conversion: r.shift (second_byte * 0x64 ) by 8<br> | |||
Example: 195 = 0xC3 -> 0xC3 * 0x64 -> 0x4C2C ->> shift -> 0x4C -> XX.76°C | |||
|- | |- | ||
| | | 384 | ||
| | | 0x180 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_sm_get_tzpb | |||
| 1 Param: syscall(384,uint64_t *tzpb); (uint8_t [0x20]) Get TimeZone Presence <br> HV System Manager access - ServiceID 15 | |||
|- | |- | ||
| | | 385 | ||
| | | 0x181 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_sm_request_led | |||
| int sys_sm_request_led( int led_id(1=power,2=status or 3=disk), out:uint8_t led_action[1] ) HV System Manager access - ServiceID 17 | |||
|- | |- | ||
| | | 386 | ||
| | | 0x182 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_sm_control_led | |||
| int sys_sm_control_led(uint8_t led_id, uint8_t led_action)<br> led_id = 0,1 (STATUS),2 (POWER)(red, green, red+green combined: looks like yellow);<br> led_action = 0,1,2,3 (off,on,blink fast, blink slow) | |||
|- | |- | ||
| | | 387 | ||
| | | 0x183 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Dbg}} | |||
| sys_sm_get_platform_info? | |||
| syscall(387, uint8_t platform_info[0x18]) / OS Version, Revision, System Software Version? <!--///* | |||
* lv2_get_platform_info | |||
*/ | |||
static inline int lv2_get_platform_info(struct platform_info *info) | |||
{ | |||
return Lv2Syscall1(387, (uint64_t) info); | |||
}//--> | |||
|- | |- | ||
| | | 388 | ||
| | | 0x184 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_sm_ring_buzzer_too | |||
| 2 Params,HV System Manager access - ServiceID 21 (RING_BUZZER) | |||
|- | |- | ||
| | | 389 | ||
| | | 0x185 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Productmode}} | |||
| sys_sm_set_fan_policy | |||
| int sys_sm_set_fan_policy (in:uint8, in:uint8, in:uint8)<!--// int sys_sm_set_fan_policy(u8 arg0, u8 arg1, u8 arg2) //--> | |||
|- | |- | ||
| | | 390 | ||
| | | 0x186 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_sm_request_error_log | |||
| 4 Params, uint8_t offset (0-0x20), uint8_t *, uint32_t *, uint32_t * | |||
HV System Manager access - ServiceID 26 (REQUEST_ERROR_LOG) | |||
|- | |- | ||
| | | 391 | ||
| | | 0x187 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_sm_request_be_count | |||
| 4 Params | |||
uint8_t *, | |||
uint32_t* total_time_in_seconds, | |||
uint32_t* power_on_counter, | |||
uint32_t* power_off_counter | |||
HV System Manager access - ServiceID 28 (REQUEST_BE_COUNT): | |||
|- | |- | ||
| | | 392 | ||
| | | 0x188 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_sm_ring_buzzer | |||
| 3 Params: PacketID=0x1004, field2, field4 [[Hypervisor_Reverse_Engineering#Parameters_6 Parameters]]<!--///* | |||
* lv2_sm_ring_buzzer | |||
*/ | |||
static inline int lv2_sm_ring_buzzer(uint64_t unknown1, uint8_t unknown2, uint32_t unknown3) | |||
{ | |||
return Lv2Syscall3(392, unknown1, unknown2, unknown3); | |||
}//--> | |||
|- | |- | ||
| | | 393 | ||
| | | 0x189 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_sm_get_hw_config | |||
| gets hardware configuration: syscall(393,uint8_t * res, uint64_t * hw_config) <!--///* | |||
* lv2_get_sys_hw_config | |||
*/ | |||
static inline int lv2_get_sys_hw_config(uint8_t *res, uint64_t *val) | |||
{ | |||
return Lv2Syscall2(393, (uint64_t) res, (uint64_t) val); | |||
}//--> | |||
|- | |- | ||
| | | 394 | ||
| | | 0x18A | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_sm_request_scversion | |||
| uint8_t SoftID[8],old_PatchID[8],new_PatchID[8]; lv2syscall3(394, (uint64_t)SoftID, (uint64_t)old_PatchID, (uint64_t)new_PatchID);<br />HV System Manager access - ServiceID 30 (REQUEST_SC_VERSION) [[System_Controller_Firmware#.27info0.27 SC Firmware]] | |||
|- | |- | ||
| | | 395 | ||
| | | 0x18B | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Productmode}} | |||
| sys_sm_request_system_event_log | |||
| int sys_sm_request_system_event_log(int offset(0 - 5),uint64_t *out,uint64_t *out,uint64_t *out,uint8_t buf[0x20], int flag ), 6 Params, HV System Manager access - ServiceID 32 (REQUEST_SYSTEM_EVENT_LOG) | |||
|- | |- | ||
| | | 396 | ||
| | | 0x18C | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_sm_set_rtc_alarm | |||
| int sys_sm_set_rtc_alarm(CellRtcTick *pTick), HV System Manager access - ServiceID 34+38 (RTC_ALARM) | |||
|- | |- | ||
| | | 397 | ||
| | | 0x18D | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_sm_get_rtc_alarm | |||
| 1 Param, HV System Manager access - ServiceID 36 | |||
|- | |- | ||
| | | 398 | ||
| | | 0x18E | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| sys_console_write | |||
| int sys_console_write(const char *s, unsigned int len)(lv2,lv1::console::write_async <!--///* | |||
* lv2_lv1_log_write | |||
*/ | |||
static inline int lv2_lv1_log_write(const char *s, unsigned int len) | |||
{ | |||
return Lv2Syscall2(398, (uint64_t) s, len); | |||
}//--> | |||
|- | |- | ||
| | | 400 | ||
| | | 0x190 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Productmode}} | |||
| | |||
| int sys_request_system_event_log(int offset(0 - 5),uint64_t *out, int flag ) , HV System Manager access - ServiceID 32 (REQUEST_SYSTEM_EVENT_LOG) <br> sys_sm_request_system_event_log too | |||
|- | |- | ||
| | | 401 | ||
| | | 0x191 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| | |||
| 2 Params: uint64_t param,uint8_t * st (status?/state?) | |||
HV System Manager access - ServiceID 40 (BOOT_PARAMETER) | |||
also sends the param to syscon | |||
related to 404 | |||
|- | |- | ||
| | ! colspan="6" id="sys_tty Syscalls"|[[#sys_tty Syscalls]] (402-403) | ||
|- | |- | ||
| | | 402 | ||
| | | 0x192 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_tty_read | |||
| int sys_tty_read(unsigned int ch, void *buf, unsigned int len, unsigned int *preadlen); | |||
|- | |- | ||
| | | 403 | ||
| | | 0x193 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_tty_write | |||
| int sys_tty_write(unsigned int ch, const void *buf, unsigned int len, unsigned int *pwritelen); | |||
|- | |- | ||
| | | 404 | ||
| | | 0x194 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| | |||
| 2 Params: uint64_t * param, uint8_t * st | |||
HV System Manager access - ServiceID 42 (BOOT_PARAMETER) | |||
[Network Settings for Debug] related, returns single/dual setting flag? | |||
|- | |- | ||
| | | 405 | ||
| | | 0x195 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Productmode}} | |||
| | |||
| 2 Params: uint16_t * comp?, uint8_t * st (status?/state?) | |||
HV System Manager access - ServiceID 44 | |||
factory_process_comp (0,0), dbg_printf comp value | |||
|- | |- | ||
| | | 406 | ||
| | | 0x196 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Productmode}} | |||
| | |||
| 2 Params: uint32_t comp? ,uint8_t * st | |||
comp? = 0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x100 | |||
HV System Manager access - ServiceID 46 | |||
factory_process_comp (1,x) -> OR-Operation with comp | |||
|- | |- | ||
| | | 407 | ||
| | | 0x197 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Productmode}} | |||
| | |||
| 1 Param: uint8_t * st | |||
HV System Manager access - ServiceID 48 | |||
factory_process_comp (2,0) -> ANDC-Operation with comp=0 | |||
|- | |- | ||
| | | 408 | ||
| | | 0x198 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Productmode}} | |||
| sys_sm_get_tzpb too | |||
| 1 Param: out:uint8_t [0x20] <br> same as 384 just requires PM | |||
|- | |- | ||
| | | 409 | ||
| | | 0x199 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Productmode}} | |||
| sys_sm_get_fan_policy | |||
| int sys_sm_get_fan_policy(uint8_t id, uint8_t *st (status? state?), uint8_t *policy (mode), uint8_t * mode (speed), uint8_t *duty) | |||
|- | |- | ||
| | ! colspan="6" id="sys_game Syscalls"|[[#sys_game Syscalls]] (372-376+410-412) | ||
|- | |- | ||
| | | 410 | ||
| | | 0x19A | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_game_board_storage_read | |||
| 2 Params,out:uint8_t[0x10], uint8_t[1], HV System Manager access - ServiceID 54 | |||
|- | |- | ||
| | | 411 | ||
| | | 0x19B | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_game_board_storage_write | |||
| 2 Params,in:uint8_t[0x10],uint8_t[1], HV System Manager access - ServiceID 52 | |||
|- | |- | ||
| | | 412 | ||
| | | 0x19C | ||
| {{DEX}} {{DECR}} | |||
| | |||
| sys_game_get_rtc_status | |||
| | |||
|- | |- | ||
| | | 413 | ||
| | | 0x19D | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| | |||
| 3 Params, HV System Manager access - ServiceID 56: out:uint8_t[1],out:uint8_t[1],out:uint8_t[1] | |||
|- | |- | ||
| | | 414 | ||
| | | 0x19E | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| | |||
| 3 Params,in:packetid ,in:uint8_t[0x20],out:uint8_t[1], HV System Manager access - ServiceID 58 | |||
|- | |- | ||
| | | 415 | ||
| | | 0x19F | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| | |||
| 3 Params,in:packetid,out:uint8_t[0x20],out:uint8_t[1], HV System Manager access - ServiceID 60 | |||
|- | |- | ||
| | ! colspan="6" id="sys_overlay Syscalls"|[[#sys_overlay Syscalls]] (450-457) | ||
|- | |- | ||
| | | 450 | ||
| | | 0x1C2 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_overlay_load_module | |||
| int sys_overlay_load_module(sys_overlay_t * ovlmid, const char *path, uint64_t flags, sys_addr_t * entry) | |||
|- | |- | ||
| | | 451 | ||
| | | 0x1C3 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_overlay_unload_module | |||
| int sys_overlay_unload_module(sys_overlay_t ovlmid) | |||
|- | |- | ||
| | | 452 | ||
| | | 0x1C4 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_overlay_get_module_list | |||
| int sys_overlay_get_module_list(sys_pid_t pid, size_t ovlmids_num, sys_overlay_t * ovlmids, size_t * num_of_modules) | |||
|- | |- | ||
| | | 453 | ||
| | | 0x1C5 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_overlay_get_module_info | |||
| int sys_overlay_get_module_info(sys_pid_t pid,sys_overlay_t ovlmid, sys_overlay_module_info_t * info) | |||
|- | |- | ||
| | | 454 | ||
| | | 0x1C6 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_overlay_load_module_by_fd | |||
| int sys_overlay_load_module_by_fd(sys_overlay_t * ovlmid, int fd, off64_t offset, uint64_t flags, sys_addr_t * entry) | |||
|- | |- | ||
| | | 455 | ||
| | | 0x1C7 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_overlay_get_module_info2 | |||
| int sys_overlay_get_module_info2(sys_pid_t pid, sys_overlay_t ovlmid, sys_overlay_module_info2_t * info) | |||
|- | |- | ||
| | | 456 | ||
| | | 0x1C8 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_overlay_get_sdk_version | |||
| 2 Params | |||
|- | |- | ||
| | | 457 | ||
| | | 0x1C9 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_overlay_get_module_dbg_info | |||
| 3 Params: (sys_pid_t pid, sys_overlay_t ovlmid, sys_overlay_module_dbg_t * info) ? | |||
|- | |- | ||
| | | 458 | ||
| | | 0x1CA | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_overlay_get_module_dbg_info too | |||
| 3 Params: | |||
|- | |- | ||
| | ! colspan="6" id="sys_prx Syscalls"|[[#sys_prx Syscalls]] (460-499) | ||
|- | |- | ||
| | | 460 | ||
| | | 0x1CC | ||
| {{DEX}} {{DECR}} | |||
| {{Root}} | |||
| sys_prx_dbg_get_module_id_list | |||
| sys_prx_dbg_get_module_id_list(sys_pid_t pid, sys_prx_dbg_get_module_list_t *pInfo) | |||
|- | |- | ||
| | | 461 | ||
| | | 0x1CD | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_prx_get_module_id_by_address | |||
| sys_prx_id_t sys_prx_get_module_id_by_address(void* addr) | |||
|- | |- | ||
| | | 462 | ||
| | | 0x1CE | ||
| {{DEX}}{{DECR}} | |||
| | |||
| | |||
| 1 Param: uint8_t [0x50] | |||
|- | |- | ||
| | | 463 | ||
| | | 0x1CF | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_prx_load_module_by_fd | |||
| sys_prx_id_t sys_prx_load_module_by_fd(int fd, off64_t offset, sys_prx_flags_t flags, sys_prx_load_module_option_t pOpt) | |||
|- | |- | ||
| | | 464 | ||
| | | 0x1D0 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_prx_load_module_on_memcontainer_by_fd | |||
| sys_prx_id_t sys_prx_load_module_on_memcontainer_by_fd(int fd,off64_t offset,sys_memory_container_t mem_container,sys_prx_flags_t flags,sys_prx_load_module_option_t pOpt) | |||
|- | |- | ||
| | | 465 | ||
| | | 0x1D1 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_prx_load_module_list | |||
| int sys_prx_load_module_list(int n, const char **path_list, uint64_t flags, sys_prx_load_module_list_option_t * pOpt, sys_prx_id_t * idlist) | |||
|- | |- | ||
| | | 466 | ||
| | | 0x1D2 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_prx_load_module_list_on_memcontainer | |||
| sys_prx_id_t sys_prx_load_module_by_fd(int fd, off64_t offset, uint64_t flags, sys_prx_load_module_option_t * pOpt) | |||
|- | |- | ||
| | | 467 | ||
| | | 0x1D3 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_prx_get_ppu_guid | |||
| sys_addr_t sys_prx_get_ppu_guid(sys_prx_id_t id) | |||
|- | |- | ||
| | | 468 | ||
| | | 0x1D4 | ||
| {{DEX}} {{DECR}} | |||
| {{Root}} | |||
| | |||
| | |||
|- | |- | ||
| | | 470 | ||
| | | 0x1D6 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| | |||
| int syscall 470 (uint32_t type?, void* npd? [0x60]) | |||
|- | |- | ||
| | | 471 | ||
| | | 0x1D7 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| | |||
| int syscall_471(uint32_t type, char* titleID, void* klicensee, uint8_t* actdat, uint8_t* rif, int32_t licenseType, uint8_t* magicVersion);<!--//The function has different parameters depending if the content is debug, free or paid: | |||
FREE: syscall471(npd.type, &npd.titleID, freeklicensee, NULL, NULL, npd.license, &npd); | |||
PAID: syscall471(npd.type, &npd.titleID, NULL, &actdat.keyTable[rif.actDatIndex], &rif.key, npd.license, &npd);//--> | |||
|- | |- | ||
| | | 472 | ||
| | | 0x1D8 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| | |||
| 2 Params: | |||
|- | |- | ||
| | | 473 | ||
| | | 0x1D9 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| | |||
| | |||
|- | |- | ||
| | | 474 | ||
| | | 0x1DA | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| | |||
| | |||
|- | |- | ||
| | | 475 | ||
| | | 0x1DB | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| | |||
| int syscall_475(uint32_t type, void* npd?, void* klicensee, uint8_t* actdat, uint8_t* rif, uint8_t magicVersion) | |||
|- | |- | ||
| | | 476 | ||
| | | 0x1DC | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Root}} | |||
| | |||
| can only be either syscall476 (1,0) or syscall476 (0,1) | |||
|- | |- | ||
| | | 480 | ||
| | | 0x1E0 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_prx_load_module | |||
| sys_prx_id_t sys_prx_load_module(const char* path, sys_prx_flags_t flags, sys_prx_load_module_option_t* pOpt) | |||
|- | |- | ||
| | | 481 | ||
| | | 0x1E1 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_prx_start_module | |||
| int sys_prx_start_module(sys_prx_id_t id, sys_prx_flags_t flags, sys_prx_start_t* pOpt) | |||
|- | |- | ||
| | | 482 | ||
| | | 0x1E2 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_prx_stop_module | |||
| int sys_prx_stop_module(sys_prx_id_t id, size_t args, void *argp, int *modres, sys_prx_flags_t flags, sys_prx_stop_module_option_t pOpt) | |||
|- | |- | ||
| | | 483 | ||
| | | 0x1E3 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_prx_unload_module | |||
| int sys_prx_unload_module(sys_prx_id_t id, sys_prx_flags_t flags, sys_prx_unload_module_option_t pOpt); | |||
|- | |- | ||
| | | 484 | ||
| | | 0x1E4 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_prx_register_module | |||
| int sys_prx_register_module(char * name, const sys_prx_register_module_option_t * pOpt) | |||
|- | |- | ||
| | | 485 | ||
| | | 0x1E5 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_prx_query_module | |||
| int sys_prx_query_module(void) // only returns 0 | |||
|- | |- | ||
| | | 486 | ||
| | | 0x1E6 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_prx_register_library | |||
| int sys_prx_register_library(void* library) | |||
|- | |- | ||
| | | 487 | ||
| | | 0x1E7 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_prx_unregister_library | |||
| int sys_prx_unregister_library(void* library) // only returns 0 | |||
|- | |- | ||
| | | 488 | ||
| | | 0x1E8 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_prx_link_library | |||
| int sys_prx_link_library(void) // only returns 0 | |||
|- | |- | ||
| | | 489 | ||
| | | 0x1E9 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_prx_unlink_library | |||
| int sys_prx_unlink_library(void) // only returns 0 | |||
|- | |- | ||
| | | 490 | ||
| | | 0x1EA | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_prx_query_library | |||
| int sys_prx_query_library(void) // only returns 0 | |||
|- | |- | ||
| | | 492 | ||
| | | 0x1EC | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Dbg}} | |||
| | |||
| 4 Params: | |||
|- | |- | ||
| | | 493 | ||
| | | 0x1ED | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| {{Dbg}} | |||
| sys_prx_dbg_get_module_info | |||
| int sys_prx_dbg_get_module_info(sys_pid_t pid, sys_prx_id_t id, sys_prx_dbg_module_info* info) | |||
|- | |- | ||
| | | 494 | ||
| | | 0x1EE | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_prx_get_module_list | |||
| int sys_prx_get_module_list(sys_prx_flags_t flags, sys_prx_get_module_list_t *pInfo); | |||
|- | |- | ||
| | | 495 | ||
| | | 0x1EF | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_prx_get_module_info | |||
| int sys_prx_get_module_info(sys_prx_id_t id, sys_prx_flags_t flags, sys_prx_module_info_t *pInfo) | |||
|- | |- | ||
| | | 496 | ||
| | | 0x1F0 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_prx_get_module_id_by_name | |||
| sys_prx_id_t sys_prx_get_module_id_by_name(const char* name, sys_prx_flags_t flags, sys_prx_get_module_id_by_name_option_t *pOpt) | |||
|- | |- | ||
| | | 497 | ||
| | | 0x1F1 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_prx_load_module_on_memcontainer | |||
| sys_prx_id_t sys_prx_load_module_on_memcontainer(const char* path, sys_memory_container_t mem_container, sys_prx_flags_t flags, sys_prx_load_module_option_t pOpt) | |||
|- | |- | ||
| | | 498 | ||
| | | 0x1F2 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_prx_start | |||
| int sys_prx_start (void) // only returns 0 | |||
|- | |- | ||
| | | 499 | ||
| | | 0x1F3 | ||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_prx_stop | |||
| int sys_prx_stop(void) | |||
|- | |- | ||
| | ! colspan="6" id="sys_hid_manager Syscalls"|[[#sys_hid_manager Syscalls]] | ||
|- | |- | ||
| 500 | |||
| 0x1F4 | |||
| {{CEX}}{{DEX}}{{DECR}} | |||
| | |||
| sys_hid_manager_open | |||
| 2 Params | |||
|} | |} |