Megamouse
c3729d06d0
Qt: Replace some instances of QMap, QPair and QList
2024-11-14 20:50:33 +01:00
Elad
2222807624
RSX/GCM: Fix memory unmapping for HLE GCM
2024-11-01 10:43:46 +02:00
Elad
488814bb2d
rsx/vm: Exclude events from VM mutex
...
Fixes a deadlock from a recent pull request, perhaps also some deadlocks with locking both IDM and VM mutex.
2024-11-01 07:37:57 +02:00
Elad Ashkenazi
981a1c56fb
SPU: Disable transfer locking for RSX addresses
2024-08-15 14:05:25 +03:00
Elad Ashkenazi
d0ebba6c5e
CELL: New reservation notifications mechanism
2024-08-14 11:53:00 +03:00
Elad Ashkenazi
6535d461be
Fix vm::reservation_update
2024-08-13 10:56:33 +03:00
Megamouse
b0d4858e42
vm_ptr: return nullptr and add some nullptr deref checks
2024-06-12 06:48:48 +03:00
Elad Ashkenazi
a2dcbb9c13
Replace src_loc with std::soource_location
2024-05-21 14:19:12 +03:00
Megamouse
dfee5b9a6c
threads: replace magic number id_type with thread_class
2024-05-18 16:16:08 +02:00
oltolm
9e9a3262eb
simplify template code like std::is_same<T>::value
2024-04-21 18:15:17 +03:00
Eladash
8588b2b11a
vm: Fix writer lock leak
2024-03-27 19:59:22 +02:00
RipleyTom
7d55a85fa6
Replaces page fault triggers with assembly
2024-01-16 12:04:47 +02:00
Eladash
825ae5b8aa
Ensure HDD1 is never damaged or corrupted due to unexpected RPCS3/game termination
2024-01-11 20:24:53 +02:00
Eladash
858e493b52
Savestates/vm: Improve saving performance
2024-01-01 11:58:00 +02:00
Eladash
c2076373e8
Utilities\BitField.h: Try to fix some warnings
...
Cleanup and make bitfield extraction u32 if possible
2024-01-01 11:58:00 +02:00
Megamouse
f45cbdd0f7
fixes
2023-12-30 21:14:26 +01:00
Megamouse
7a02787bee
fix some more warnings
2023-12-30 21:14:26 +01:00
Eladash
e14cc69441
Savestates/vm: rewrite memory saving for better compression
2023-12-29 11:11:53 +02:00
Eladash
9f0cb9148f
vm.h: Cleanup and fix some warnings
2023-12-19 15:34:07 +02:00
Eladash
60baa49007
sceNp/vm: Fix strings read, implement safe string reader
2023-12-12 21:23:33 +02:00
Eladash
f8ca5cdf56
vm: Minor optimization for memory serialization
2023-11-28 16:46:44 +02:00
Eladash
a0b521ba8e
Savestates: Add TAR and VM assert
2023-11-27 12:36:17 +02:00
Eladash
f60bdbaece
Savestates: Compressed state files
2023-11-27 12:36:17 +02:00
Eladash
6b05fcf704
vm_ptr.h: Fix warning
...
/rpcs3/rpcs3/Emu/Cell/../Memory/vm_ptr.h:135:32: warning: invalid application of 'sizeof' to a void type [-Wpointer-arith]
135 | return sizeof(T);
| ^~~~~~~~~
2023-09-10 18:58:34 +03:00
Eladash
1843a27c2a
LV2/Loader: Fix kernel regions addresses
2023-08-21 14:36:54 +03:00
Eladash
c8f8ecc4d6
LV2: Fixup reservation notifications
2023-08-17 13:02:57 +03:00
Eladash
e6009794ee
vm.cpp: Fixup race in range_lock_internal
2023-08-06 08:26:17 +03:00
Eladash
9f625de51a
vm.cpp/Non-TSX: Fixup potential deadlock
2023-08-03 15:04:37 +03:00
Ivan Chikish
d34287b2cc
Linux: use futex_waitv syscall for atomic waiting
...
In order to make this possible, some unnecessary features were removed.
2023-08-02 21:46:06 +03:00
Eladash
75ad56338b
SPU/Non-TSX: Implement cuncurrent reservations
2023-07-27 02:50:01 +03:00
oltolm
0c94606fcf
Make compile with msvc, clang and gcc on Windows
2023-07-11 21:40:30 +03:00
Megamouse
58140e1d3a
Fix some warnings
2023-05-09 07:55:46 +02:00
Nekotekina
fa74d3e88c
vm: implement lock-free try_access with range locking
2022-11-26 09:30:11 +03:00
Eladash
750e7b73e3
Optimize vm::range_lock a bit
...
Bad conditions led to optimization misses and long-generated code.
2022-10-09 19:27:46 +03:00
Eladash
6a36967e6f
SPU: Inline and batch MFC list transfers
2022-10-09 19:27:46 +03:00
kd-11
0dd9c386ee
Fix running the emulator with AUDIT enabled
2022-10-03 12:57:16 +03:00
Nekotekina
b49a1f27eb
Warning fixes
2022-09-17 16:35:02 +03:00
Elad Ashkenazi
5a0a5d9ff1
vm.cpp: Fix emulation stopping on SPU access violation ( #12586 )
2022-09-01 18:23:18 +03:00
Eladash
ddba30988b
vm: Attempt to not remove cpu_flag::wait flag during access violation
2022-08-21 15:02:01 +03:00
Nekotekina
7bb2d94e53
vm: use sparse files to emulate overcommit memory
...
Fix shm::map_critical page flags.
2022-08-12 13:59:03 +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
cf77bb7cfc
Savestates/MSVC: Replace bugged std::unique (compiler bug)
2022-08-03 15:35:41 +03:00
Eladash
2b3ae8b638
Revert another change
2022-07-20 18:11:52 +03:00
Eladash
314d481dcd
Savestates: Fix typo in page size setting
2022-07-08 12:57:43 +03:00
Eladash
f546e5a8ef
VM/Savestates: Replace bugged read-only block optimization
2022-07-06 19:43:25 +03:00
Eladash
b692108f1e
Savestates: HLE state saving POC in sys_lwmutex
2022-07-06 19:43:25 +03:00
Elad Ashkenazi
fcd297ffb2
Savestates Support For PS3 Emulation ( #10478 )
2022-07-04 16:02:17 +03:00
Eladash
64399d45c1
vm: Make falloc return value bool
...
Allow to check properly for the success of 0 address allocation.
2022-06-22 21:01:37 +03:00
Elad Ashkenazi
1738b38536
vm_native.cpp: Use Windows 10 memory mapping API (the correct API)
2022-06-10 14:27:02 +03:00
Eladash
16381929ba
vm_var.h: Ensure 16-bytes alignment of gvar
...
Some PPU instructions require memory to be aligned otherwise they produce different results. I've already seen their usage in cellSaveData disassembly so may as well ensure it for all.
2022-06-05 20:47:49 +02:00