Eladash
9fc5f6271b
Update SPU reservation notifier mask
2023-07-23 17:58:54 +03:00
Eladash
9ff91c29f2
Invalidate Savestates
2023-07-23 17:58:54 +03:00
Eladash
083b4f0d3b
Patches: Fix potential RPCS3 crashes due to invalid patches
2023-07-13 07:38:46 +03:00
Eladash
554b27a82a
PPU LLVM: Implement SELF precompilation
...
Do not use PS3 memory for precompilation.
2023-06-28 18:34:33 +03:00
Eladash
b861a9c5d0
LV2: Implement set-priority thread requeue
2023-06-02 08:54:46 +03:00
Elad Ashkenazi
5cf80c05a5
savestates:/sys_spu: Fix join saving
2023-04-28 16:13:15 +03:00
Megamouse
cd9ff08235
Decrease some include madness
2023-04-26 21:37:44 +02:00
Margen67
5bb89328d0
Remove whitespace
2023-02-15 08:58:02 +01:00
Elad Ashkenazi
0946e5945f
VSH Improvements ( #13172 )
...
* sys_prx: Implement PRX LIB register syscall
* VSH: partial log spam fix
* sys_process reboot fix
* Implement sys_memory_container_destroy_parent_with_childs
* sys_net: Implement SO_RCVTIMEO/SO_SENDTIMEO
* VSH: Implement sys_rsx_context_free
* PPU LLVM: distinguish PPU cache exec also by address
Fixes referencing multiple PRX.
* UI: Do not report size of apps inside /dev_flash
2023-01-09 20:03:01 +03:00
Eladash
87797e117e
sys_spu: Some more fixes of wait flag misuse
2022-10-16 20:55:36 +03:00
Elad Ashkenazi
cb743da215
sys_spu: fixup raw spu destroy regression
...
Caused a missed cpu_thread::state notification which is required now.
2022-10-06 12:23:51 +03:00
Eladash
d25d1ecb3a
LV2: Avoid using multi-variable atomic waiting on cpu_thread::state wait
2022-10-04 16:28:34 +03:00
Eladash
194f7375da
SPU/LV2: Fix tiny race conditions
2022-09-21 20:35:34 +03:00
Eladash
cfdc852f03
SPU: Power consumption reduction when using SPU inaccurate reservations
2022-09-13 11:21:01 +03:00
Eladash
48382564d1
SPU: Implement "quintuple" Inbound MBOX storage
2022-09-07 20:42:23 +03:00
Eladash
7698064f5a
SPU: Untangle VM lock to avoid deadlocks
2022-09-07 16:05:56 +03:00
Eladash
34bae90820
LV2: Move nearly all notifications out of all mutex scopes including IDM
2022-08-07 20:23:54 +03:00
Eladash
c7fbc16357
SPU: Postpone notifications to afterward group mutex ownership
2022-08-07 20:23:54 +03:00
Eladash
2eebbd307d
LV2: Minor optimization regarding signal flag
2022-08-07 20:23:54 +03:00
Eladash
12ebf77e22
Savestates: save sys_spu_initialize settings
2022-07-19 10:43:51 +03:00
Eladash
cdd6840826
Savestates/SPU: Complete fix for saving sys_spu_thread_receive_event
2022-07-12 15:15:42 +03:00
Eladash
befd7ceb89
Savestates/sys_spu: Minor fix in saving sys_spu_thread_receive_event
2022-07-10 14:19:59 +03:00
Elad Ashkenazi
fcd297ffb2
Savestates Support For PS3 Emulation ( #10478 )
2022-07-04 16:02:17 +03:00
RipleyTom
da6434a65a
Implements sys_fs_fcntl 0xC0000008 & 0xC000001A ( #11957 )
2022-06-11 13:12:42 +01:00
Eladash
27b28cf6ec
sys_spu: Fix spu_thread_group_terminate deadlock
2022-05-26 18:04:52 +03:00
Eladash
f9a62667cf
SPU/PPU Loader: Implement linker/PS3 compiler executable files loading
2022-05-03 20:47:36 +03:00
Eladash
0ab36ef44d
sys_spu: Implement SPU image segment info checks ( #11211 )
2021-12-02 13:17:10 +03:00
Eladash
c49ebba648
Fixes of PS3 filesystem EDAT/SDAT handling
...
* Return EFSSPEIFIC if encountered corrupted EDAT or an unmatched key in sys_fs_open and sys_fs_read.
* Fix validate_dev_klic() for license-free EDAT.
* Fix EDATADecrypter::ReadData() for when size + pos > file_size but pos < file_size.
* Try to save up to 16 decryption keys. Educated guess based on NPDRM file descriptors count llimit.
* Return LICENCE_NOT_FOUND if needed RAP file is not found in sceNpDrmIsAvailable.
* Check additional sys_fs_open errors for sceNpDrmOpen. (EISDIR, ENOTMOUNTED)
2021-11-04 21:32:15 +03:00
Eladash
dfbc49513d
Debugger/Disasm: Name SPU Syscalls
2021-09-07 01:13:57 +02:00
Eladash
6781373727
Patch cooperate with system SPU group creation ( #10791 )
2021-08-29 22:03:17 +03:00
Eladash
91737b11fe
Fix sys_spu_thread_group_resume
...
Do not remove suspend flag when SPU group state is not SPU_THREAD_GROUP_STATUS_RUNNING after operation!
2021-08-12 22:24:54 +03:00
Eladash
9ecb6c4e34
Fix sys_spu_thread_group_create
2021-08-05 08:12:34 +03:00
Eladash
9f67e00e40
sys_spu: Add one more limiting SPU threads creation condition
2021-08-04 21:39:57 +03:00
Eladash
06f4dfb9f1
SPU: Implement sys_spu_initialize and limit of physical SPU threads
2021-08-04 08:26:32 +03:00
Eladash
8bd58b1ad4
Remove lv2_event_queue::check(weak_ptr)
2021-05-15 00:31:14 +03:00
Eladash
c681395fb2
sys_interrupt: weak_ptr -> shared_ptr
2021-05-15 00:31:14 +03:00
Eladash
47436bd774
sys_spu: weak_ptr -> shared_ptr
2021-05-15 00:31:14 +03:00
Eladash
56471f4ad4
SPU: Optimize SPU ports/queues
2021-05-15 00:31:14 +03:00
Eladash
1e1880893a
sys_interrupt: Save ID of self tag/handler
2021-05-09 10:58:14 +03:00
Eladash
0224c7a9eb
SPU TG: Simplify state of saved SPU image data
...
Save only entry points instead of sys_spu_image structure.
2021-05-01 19:43:00 +03:00
Eladash
daa53b77cf
Simplify named_thread construction
2021-05-01 18:08:03 +03:00
Megamouse
a16d8ba3ea
More random changes
2021-04-11 14:01:51 +03:00
Nekotekina
b3fb6d7d18
Add and fix -Wredundant-decls (GCC)
2021-03-23 22:48:57 +03:00
Eladash
8716ac554f
Fix sys_raw_spu_destroy
2021-03-16 19:31:52 +03:00
Nekotekina
87af905018
Enable -Wunused-parameter
2021-03-06 18:07:08 +03:00
Nekotekina
ea5e837bd6
fixed_typemap.hpp: return reference
2021-03-02 16:08:14 +03:00
Eladash
f43260bd58
Atomic waiting refactoring ( #9208 )
...
* Use atomic waitables instead instead of global thread wait as often as possible.
* Add ::is_stopped() and and ::is_paued() which can be used in atomic loops and with atomic wait. (constexpr cpu flags test functions)
* Fix notification bug of sys_spu_thread_group_exit/terminate. (old bug, enhanced by #9117 )
* Function time statistics at Emu.Stop() restored. (instead of current "X syscall failed with 0x00000000 : 0")
2021-02-13 17:50:07 +03:00
Nekotekina
b7ff2ecffb
Patch system: export some info for future use
...
For now it's just a list of addresses.
For now it's not used (just a stub).
2021-02-07 11:02:31 +03:00
Eladash
f81674232e
Remove SPU and PPU destructors
2021-01-21 18:31:51 +03:00
Eladash
e4c3b1c2bd
vm: Remove vm::dealloc_verbose_nothrow
2021-01-15 17:37:52 +03:00