elad335
047f71b434
PPU/cellSpurs: MGS4: Fix cellSpursAddUrgentCommand race condition
...
cellSpursAddUrgentCommand searches in 4 slots for an empty slot to put the command at.
At first, it seems to do so unordered.
Meanwhile, on SPU side, it expects an order between all the commands because it pops them it in FIFO manner.
Not keeping track of how many commands are queued in total.
After second observation of cellSpursAddUrgentCommand, something odd comes takes places here.
Usually, reservation loops are individual and are expected to be closed without any changes of the previous loop affected by the proceeding one.
But in this case, after a single failure, the entire operayion is reset, a loop of 4 reservation operations suddenly is reset completely.
This makes one wonder if it the HW expects sometjing else here, perhaps it caches the reservation internally here?
After some adjustments to LDARX and STDCX to cache the reservation between succeeding loops, Metal Gear Solid 4 no longer freezes!
2025-03-28 19:56:54 +03:00
elad335
91b1ec6d5c
SPU LLVM: Dump some funcs
2025-03-28 19:56:54 +03:00
Ani
a7df3cfb40
config: Set default Driver Wake-Up Delay to 0
2025-03-28 18:46:41 +03:00
Megamouse
949a80dc0a
Loader: deny boot if the firmware is too old
2025-03-28 18:18:09 +03:00
Ian Carpenter
095c884331
unpkg: Restore support for PSP/Vita packages
2025-03-28 14:43:38 +03:00
Ani
32a8bcf525
config: Increase max vblank rate to 6000
2025-03-28 10:47:23 +03:00
Megamouse
a469bfd4da
overlays: hide friends list in home menu if rpcn is not configured
2025-03-27 18:08:30 +01:00
Megamouse
b571978f24
Windows/Qt: do not deploy dx and ffmpeg libs
2025-03-27 02:33:32 +01:00
Megamouse
b8236e183c
cellMic: log ALCenum error string
2025-03-27 00:51:15 +01:00
Megamouse
2a7e957c61
Qt: fix custom icons when "Prefer game data icons" is set
2025-03-26 18:33:51 +01:00
Megamouse
467c4ba2cf
Qt: add option to prefer game data icons in the game list
2025-03-26 12:07:59 +01:00
RipleyTom
324af04426
Set PSN to disconnected when net status is disconnected
2025-03-25 21:46:38 +01:00
Megamouse
1b5d9a34df
overlays/rpcn: Create list even if rpcn connection failed
2025-03-25 18:40:25 +01:00
Malcolm Jestadt
c52920755a
SPU LLVM: Don't use vperm2b256to128 outside of CPUTranslator.h
...
- The vperm2b function uses vperm2b256to128 when it's ideal
2025-03-25 10:42:02 +02:00
kd-11
ff135384ef
Fix for GCC builds
2025-03-24 17:00:07 +03:00
kd-11
a51602018e
rsx: Code cleanup and fix fragment texture dirty trigger
2025-03-24 17:00:07 +03:00
kd-11
1616942943
rsx: Always execute pre-draw pipeline analysis regardless of flags
2025-03-24 17:00:07 +03:00
kd-11
ba7b7b65a1
rsx: Bypass sampling cache logic when dealing with host generated textures
2025-03-24 17:00:07 +03:00
RipleyTom
40ff182c31
Fix p2p binding to vport 0
2025-03-23 06:08:09 +01:00
Whatcookie
d9071abd8b
Utils: Remove AVX10-256 detection ( #16904 )
...
- Intel recently removed 256b AVX10 from the AVX10 spec.
2025-03-22 13:28:45 +02:00
Megamouse
b4f453f687
overlays: don't check for hdd dirs if we play a disc game
2025-03-21 20:47:45 +01:00
Megamouse
4c742f7742
Fix typo
2025-03-21 20:47:45 +01:00
Megamouse
fda51920b7
overlays: prefer overlay_picture over content_icon
2025-03-21 20:47:45 +01:00
Megamouse
4905fda371
Qt: Don't fetch ICON0.PNG from game data for disc games
...
ICON0.PNG is not supposed to be updateable, so we can ignore the hdd0 dir for disc games in that case
2025-03-21 20:47:45 +01:00
Megamouse
1ae1288a88
overlays: Look for the overlay in the same dir as the background
2025-03-21 20:47:45 +01:00
Megamouse
6fb0e991ea
overlays: Don't use ICON0.PNG from hdd0 if the game is a disc game
...
ICON0.PNG is not supposed to be updateable, so we can ignore the hdd0 dir for disc games in that case
2025-03-21 20:47:45 +01:00
Megamouse
650176fac7
overlays: Simplify game content search
2025-03-21 20:47:45 +01:00
Megamouse
95aad6ceb5
overlays: adjust size and position of overlay image
2025-03-21 20:47:45 +01:00
Megamouse
7cd5d812d2
overlays: add background overlay image
2025-03-21 20:47:45 +01:00
Megamouse
b2ff24453c
overlays: fix background image logic
...
Also make the path getter more generic
2025-03-21 20:47:45 +01:00
Megamouse
12eacfa67b
overlays: use std::string instead of raw path argument
...
It will be converted to string anyway
2025-03-21 20:47:45 +01:00
Megamouse
76495f07b8
Qt: Remove supporters from translations
2025-03-20 08:52:08 +01:00
Megamouse
ccecd1a627
Qt: only show shortcut confirmation once
2025-03-20 08:52:08 +01:00
Megamouse
8f3eff293d
Remove unnecessary localization
2025-03-20 08:52:08 +01:00
Megamouse
806c9230cd
Fix typo
2025-03-20 08:52:08 +01:00
Megamouse
24b6b6cad5
Qt: fix handler not found in pad settings after changing language
2025-03-20 08:52:08 +01:00
Megamouse
971fd40353
Remove some useless translations
2025-03-20 08:52:08 +01:00
Megamouse
2aba8c639e
Fix typo
2025-03-20 08:52:08 +01:00
Megamouse
1a51ce1e66
SPU: Add Disable SPU GETLLAR Spin Optimization checkbox
2025-03-18 09:30:28 +02:00
Vestral
a45f604cd8
Fix discord-rpc build when ASLR is enabled
2025-03-18 02:32:05 +01:00
Megamouse
ec29650029
Fix warning
2025-03-17 23:11:31 +01:00
Megamouse
ae83c28bc8
Qt: Simplify hover movie code
2025-03-17 14:41:08 +01:00
Megamouse
58327ca23c
Qt/optimization: Don't look for PAM files if the game has a hover gif
2025-03-17 14:41:08 +01:00
Megamouse
5b540aed73
Qt: Do not use gamedata icon if game has custom icon
2025-03-17 14:41:08 +01:00
Megamouse
6e080044a0
Qt: fix code style of some variables
2025-03-17 14:41:08 +01:00
Megamouse
42ba0b6271
Qt: Use localized game icons and titles
2025-03-17 00:47:43 +01:00
kd-11
a1fa8dd701
config: Revert default shader compiler to async with draw-skip
2025-03-16 16:48:20 +01:00
kd-11
aea1efd5f2
rsx: Fix instancing constants lookup layout when running interpreter
2025-03-16 16:33:39 +03:00
kd-11
5ae05e26c4
vk: Implement instancing when running in interpreter mode
2025-03-16 16:33:39 +03:00
kd-11
023221bd3b
gl: Reimplement driver capabilities detection in a more sane way
2025-03-16 16:33:39 +03:00
kd-11
14575f3efd
rsx: Always initialize CC register in FP interpreter
2025-03-16 16:33:39 +03:00
kd-11
9f3eb33d80
gl: Double instancing buffer size to improve frametimes
2025-03-16 16:33:39 +03:00
kd-11
225d0b9482
gl: Support transform instancing in the shader interpreter
2025-03-16 16:33:39 +03:00
kd-11
65c0d3d425
gl: Add support for hardware instancing
2025-03-16 16:33:39 +03:00
kd-11
3d3fc2f3cd
rsx: Fix cache invalidation when instancing state changes
2025-03-16 16:33:39 +03:00
Malcolm Jestadt
f9a72e8d75
SPU LLVM: Preserve sign on inf to NaN conversion in spu_re_acc with vfixupimmps
2025-03-15 10:46:08 +02:00
Attila Fidan
7b212e0e57
sys_usbd: Fix null pointer deref on destruction
2025-03-13 01:36:09 +01:00
Megamouse
ff40128df6
Qt: Detach markup from dialog translations
2025-03-12 18:49:24 +01:00
kd-11
b2ed787c3a
rsx: Invalidate program cache hint if the current vertex or fragment program is re-evaluated
2025-03-12 15:36:29 +03:00
Megamouse
ec5b2bc8d2
Fix missing enum in switch case
2025-03-12 01:08:49 +01:00
Megamouse
3a71da35a9
Fix redundant forward declaration warning
2025-03-12 01:08:49 +01:00
Megamouse
4c788abad1
Use named_thread in gui_pad_thread
2025-03-12 01:08:49 +01:00
Megamouse
3737cc37f6
Qt: Hide interpreter_only unless it is selected or the debug mode is active
2025-03-11 06:58:23 +01:00
Megamouse
d0c2cb7ae1
main: Fix some warning
2025-03-11 06:58:23 +01:00
DH
db945f6aed
android: do not invalidate swapchain on VK_SUBOPTIMAL_KHR
...
Workaround
2025-03-10 21:09:27 +01:00
Megamouse
b3f5ed55a1
Set vulkan to default renderer whenever we have vulkan support
2025-03-10 21:09:27 +01:00
Megamouse
fa5a16e9fc
hid_init: use hid_error in log message
2025-03-10 21:09:27 +01:00
DH
0c233c6578
[android] hid: enumerate by vendor/product ids
2025-03-10 21:09:27 +01:00
DH
8100779512
hid: add support of android devices
2025-03-10 21:09:27 +01:00
DH
d766baef12
fs::file: implement release_handle
...
cleanup
2025-03-10 21:09:27 +01:00
DH
95d0cb18e4
Coding style issues fixes
...
Thanks @Megamouse
2025-03-10 21:09:27 +01:00
DH
976b0a8f1d
cpu stats: do not try parse /proc/stat on android
2025-03-10 21:09:27 +01:00
DH
919cb8e05c
android: atomic: do not test SYS_futex_waitv syscall
2025-03-10 21:09:27 +01:00
DH
cac068dad9
rsx: implement android swapchain
2025-03-10 21:09:27 +01:00
DH
7520c09087
rsx: reduce shaders_cache::unpacked_type size for android
2025-03-10 21:09:27 +01:00
DH
edf096fc13
vm: do not check overcommit_memory on android
2025-03-10 21:09:27 +01:00
DH
2ebf257f84
vm: removed c_page_size, it cannot be used by globals
2025-03-10 21:09:27 +01:00
DH
57e7cee84e
android: cfg: vulkan renderer is default
2025-03-10 21:09:27 +01:00
DH
adaf24310d
add missed include to PUP.h
2025-03-10 21:09:27 +01:00
DH
94f52d6dc0
android: jit: teach fallback_cpu_detection provide meaningful results for aarch64
2025-03-10 21:09:27 +01:00
DH
3080b55d02
cfg: remove string::get()
2025-03-10 21:09:27 +01:00
DH
bbb682a440
unpkg: allow package_reader creation with provided fs::file
2025-03-10 21:09:27 +01:00
DH
5084fb82b8
Android stuff 2
2025-03-10 21:09:27 +01:00
DH
798c194025
android stuff
2025-03-10 21:09:27 +01:00
kd-11
11e214f332
rsx: Handle out-of-bounds read/writes from FIFO register IO
2025-03-10 16:07:26 +03:00
AniLeo
ddd3ac3663
Settings: Move 'Max Shader Compile Threads' next to the equivalent LLVM setting
2025-03-10 08:16:19 +01:00
AniLeo
bacce9bb37
Settings: Move 'Vulkan Queue Scheduler' to Debug
2025-03-10 08:16:19 +01:00
AniLeo
aa819c8b97
Settings: Move 'Disable On-Disk Shader Cache' to Debug
2025-03-10 08:16:19 +01:00
AniLeo
af768d5c22
Settings: Move 'Disable Asynchronous Memory Manager' to Debug
2025-03-10 08:16:19 +01:00
AniLeo
2bf5ae3272
Settings: Move 'SPU Profiler' to Debug
2025-03-10 08:16:19 +01:00
AniLeo
a074b14631
Settings: Move 'PPU Vector NaN Fixup' to Debug
2025-03-10 08:16:19 +01:00
AniLeo
ac7d53cc37
Settings: Specify FSR 1
2025-03-10 08:16:19 +01:00
AniLeo
6d46d45983
Settings: Default 'Shader Mode' to Async with Interpreter
2025-03-10 08:16:19 +01:00
AniLeo
eea2f19d82
Settings: Move 'SPU Block Size' to the middle column
2025-03-10 08:16:19 +01:00
kd-11
2dfbab457a
rsx: Reupload surface if the surface cache denies knowledge of it
2025-03-09 22:01:49 +03:00
Elad
5e4637e15c
SPU LLVM: Subtract Timebase from decrementer
2025-03-09 07:42:59 +02:00
kd-11
e6b3c2061e
rsx: Fix boundary seek logic for FIFO addresses
2025-03-09 01:36:26 +03:00
schm1dtmac
563a3d3587
Target macOS 14 instead of 13 (fixes camera)
2025-03-09 01:02:49 +03:00
kd-11
3be1e0b6ff
rsx: Clean up and simplify texture register manipulation tests
2025-03-08 22:10:55 +03:00
kd-11
93899bf5a9
rsx/FIFO: Reimplement grabbing command args as a contiguous pointer
...
- Allows grabbing indefinite size of buffer as long as the data is contiguously mapped.
2025-03-08 22:10:55 +03:00
kd-11
ec120d1cbb
rsx: Add stubs for FP rehash checks on barrier acquire
2025-03-08 22:10:55 +03:00
kd-11
df7a2ab467
rsx: Unify fragment texture config changes dirty bit tracking
...
- Reverts unnecessary changes to dirty tracking.
- The GPU keeps a separate set of details, so all dirty bits are treated equal.
2025-03-08 22:10:55 +03:00
kd-11
a39a743abe
rsx/prog: Fix compiler warning
2025-03-08 22:10:55 +03:00
kd-11
eca86ad449
rsx: Add program cache lookup ellision rate to overlay
2025-03-08 22:10:55 +03:00
kd-11
a1c8f3a528
rsx/prog: Use a proper cache hint key instead of disjointed counters
2025-03-08 22:10:55 +03:00
Elad
26495a8455
SPU: Fixup
2025-03-08 14:21:57 +02:00
Elad
32df7315be
RSX: Do not invalidate FP analysis on same register writes
2025-03-08 14:21:57 +02:00
Elad
7995181235
RSX: Return FP shader as is if no changes were made
2025-03-08 14:21:57 +02:00
Elad
75dc2a12e2
RSX: Return VP shader as is if no changes were made
2025-03-08 14:21:57 +02:00
Elad
ae39c5b8cb
RSX: Optimize vertex program ucode invalidation
2025-03-08 14:21:57 +02:00
Megamouse
eb43fbbb2a
Update SDL to 3.2.8
2025-03-08 10:03:00 +01:00
Elad
e4ed5c47a3
Fixup
2025-03-08 10:48:21 +02:00
Elad
e4b9a21acc
SPU Analyzer: Fix for value propagation
2025-03-08 10:36:26 +02:00
Whatcookie
bfb9dfea7e
RSX: ProgramStateCache loops optimizations
2025-03-07 09:54:12 +02:00
Elad
8ed2089070
RSX: Fix UB in FIFO_control::get_current_arg_ptr()
2025-03-07 09:41:52 +02:00
JoãoPaulo
583ec5d819
Update FW 4.92 Latest Version ( #16811 )
...
Update FW 4.92 Latest Version
Updates the latest FW version according to: https://www.playstation.com/en-us/support/hardware/ps3/system-software/
List of changes:
This system software update improves system performance.
2025-03-05 15:00:07 +02:00
kd-11
59280a133c
vk: Do not force strict query scopes by default
2025-03-05 14:40:35 +03:00
Megamouse
ba12de867e
static analysis: fix memory leak in decompress
2025-03-05 00:12:30 +01:00
Megamouse
ca3d02fc61
static analysis: ensure is always false
2025-03-05 00:12:30 +01:00
Megamouse
a49c4c7682
static analysis: duplicate assignment
2025-03-05 00:12:30 +01:00
Megamouse
4f52c67566
static analysis: suspicious code
2025-03-05 00:12:30 +01:00
Megamouse
7a6a96254c
static analysis: remove unused overrides
2025-03-05 00:12:30 +01:00
Megamouse
6abb863a54
static analysis: std::move
2025-03-05 00:12:30 +01:00
Megamouse
e8463403f5
static analysis: uninitialized variables
2025-03-05 00:12:30 +01:00
Megamouse
815a4e7dc1
static analysis: less references
2025-03-05 00:12:30 +01:00
Megamouse
df2f68da44
static analysis: more const ref
2025-03-05 00:12:30 +01:00
Megamouse
a8fc3f5f74
static analysis: more const
2025-03-05 00:12:30 +01:00
Megamouse
229734e45f
VS: add some missing filters
2025-03-04 23:44:45 +01:00
RipleyTom
66952fe301
Add memory breakpoints
...
RPCS3 needs to be compiled with -DHAS_MEMORY_BREAKPOINTS=ON for it to be available
2025-03-04 15:41:36 +01:00
Megamouse
cb659474d9
overlays: fix friends/trophy list input on paused emulation
2025-03-03 18:21:35 +01:00
Megamouse
d429776418
Qt/patches: Only consider bootable games
2025-03-03 17:49:31 +01:00
Megamouse
d034f6a77f
Qt/patches: move game list loop to patch manager
...
This deduplicates some code
2025-03-03 17:49:31 +01:00
Malcolm Jestadt
1920aee415
RSX: Fix issue where linux builds could hit illegal instruction on machines without AVX-512
...
- Place avx-512 function attributes in their own functions
2025-03-03 15:58:55 +03:00
Elad
783079266e
Emulator: Implement config CLI args, add barrier for host CLI args
2025-03-03 06:54:00 +02:00
Megamouse
bd41774960
overlays/osk: implement horizontal scroll
2025-03-02 23:44:08 +01:00
Megamouse
4aa25285a3
overlays: use thread local static vector in get_glyph_data
2025-03-02 23:44:08 +01:00
Megamouse
7fd1f5b5d3
Fix some warning
2025-03-02 23:44:08 +01:00
Megamouse
72ee5ed10d
overlays: add ability to hide hidden trophies
2025-03-02 23:02:22 +01:00
Megamouse
048a44cbe5
overlays: add getter for selected entry
2025-03-02 23:02:22 +01:00
Megamouse
6f5f7ece06
overlays: fix and optimize layout exit loops
2025-03-02 23:02:22 +01:00
trigger
1dc3ebf891
SPU Analyzer: A fixup for crash, TODO: proper fix
2025-03-02 10:24:42 +02:00
Malcolm Jestadt
6bd1ab576c
RSX: Use AVX-512-ICL code in get_vertecx_program_ucode_hash and in vertex_program_compare
...
- Code is about 4 times as fast on my zen4 machine
- Should be twice as fast on zen5 machines with full width AVX-512
2025-03-02 09:07:07 +02:00
trigger
8e6272bfee
Qt: Fix boot failed dialog
2025-03-01 20:00:21 +01:00
kd-11
0aca5e222f
vk: Fix MacOS build
2025-03-01 18:02:32 +03:00
kd-11
b8411a90cd
vk/swapchain: Fix WSI swapchain configuration overrides
2025-03-01 18:02:32 +03:00
kd-11
4e9365f76b
vk/swapchain: Consolidate native swapchain implementation for platforms where it is not implemented
...
- NATIVE swapchain only matters in headless scenarios or where we otherwise cannot access WSI properly.
- It is now optional, with a stub provided when WSI is not available.
2025-03-01 18:02:32 +03:00
kd-11
602fe15641
vk/swapchain: Move platform-specific code to appropriate headers
2025-03-01 18:02:32 +03:00
kd-11
8b2e792d31
vk: Refactor swapchain into separate platform headers
2025-03-01 18:02:32 +03:00
kd-11
aca1cdf0b6
vk: Refactor instance management header
2025-03-01 18:02:32 +03:00
trigger
af23df842d
PPU: Report encrypted modules with KLIC in main file, opportunistic compilation at exit-spawn ( #16743 )
2025-03-01 11:45:03 +02:00