kd-11
d77a78cdf1
rsx: Rework texture coordinate handling to support clamping and a more sane scale-bias setup
2023-07-04 09:31:51 +03:00
kd-11
66cb855db0
rsx: Fix fragment program codegen
2023-07-04 09:31:51 +03:00
kd-11
fb3aa9628d
rsx: Migrate vertex fetch out of the cpp file
2023-07-04 09:31:51 +03:00
kd-11
89c81d9f22
rsx: Switch common codegen to use the glsl scripts
2023-07-04 09:31:51 +03:00
kd-11
cffcfad42a
rsx: Add the glsl files
...
- Generated from inline strings in GLSLCommon.cpp
2023-07-04 09:31:51 +03:00
Eladash
21f5976d35
cellSpurs: Implement ShutdownTaskset and WorkloadFlagReceiver2
2023-07-02 19:01:13 +03:00
Megamouse
44801c50f3
Input: update buttons on pressure button toggle
2023-07-01 08:56:10 +02:00
Megamouse
6a1fb8cb73
Input: fix multibutton mousepress (sticks only)
2023-07-01 08:56:10 +02:00
Megamouse
8e8cefb3f6
Input: fix multibutton mousepress (buttons only)
2023-07-01 08:56:10 +02:00
kd-11
931a2c516f
vk/rsx: Fix build errors and warnings
2023-06-30 18:38:14 +03:00
kd-11
2f9e1cf4df
vk: Get rid of some spammy debug code
2023-06-30 18:38:14 +03:00
kd-11
68d1c38f3b
vk: Minor refactor to make early-exit branches trivial and easier to read
2023-06-30 18:38:14 +03:00
kd-11
c4acea6c82
vk: Fix some regressions in synchronization2 behavior
2023-06-30 18:38:14 +03:00
kd-11
7ebabddfe0
vk: Fix GPU hang
2023-06-30 18:38:14 +03:00
kd-11
a047ddffc0
vk: Restructure gpu labels and add them as an event backend
2023-06-30 18:38:14 +03:00
kd-11
92992a5406
vk: Use pipeline barriers for proper event sync
2023-06-30 18:38:14 +03:00
Eladash
f87db1ac14
System.cpp: Do not hold the watchdog forever for PPU LLVM compilation cancel
...
Protects against the case in which the LLVM workers deadlock themselves.
2023-06-29 12:12:56 +03:00
Eladash
363e498462
Remove overlay hack for PPU LLVM OVL precompilation
2023-06-29 12:12:56 +03:00
Eladash
a03dd44924
Empty kill and init callback before calling them
2023-06-29 12:12:56 +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
7062ead4fd
PPU LLVM: Precompile all disc game data including PRX etc
...
Even if there is no EBOOT.BIN.
2023-06-28 18:34:33 +03:00
Eladash
5f2f084091
Savestate/IDM: Do not save unsavable containers
2023-06-28 18:34:33 +03:00
Eladash
a560121775
Fix Create PPU Cache
2023-06-28 18:34:33 +03:00
Dark
b0a346709e
RB3MidiGuitar.cpp: Support 5-Fret play
...
Rock Band 3 has support for playing the regular guitar mode with the
Pro Guitar. While the real MPA does not support this, the game accepts
it just fine so there's no harm in emulating it.
2023-06-27 20:11:10 +02:00
Megamouse
7b64cd2a8e
input/overlays: add option to lock overlay input to player one
2023-06-27 19:36:05 +02:00
kd-11
9ecfecb83e
Constify
2023-06-27 16:41:30 +03:00
kd-11
ec4565263d
Dump extensions info to the log
2023-06-27 16:41:30 +03:00
kd-11
ed1da364e5
vk: Fix a bunch of corner cases when syncing GPU and host memory
2023-06-27 16:41:30 +03:00
kd-11
942dbbc8fa
vk: Add explicit sync when doing copy_image_to_buffer
2023-06-27 16:41:30 +03:00
kd-11
3e8f9cbbf2
Add flags to handle sync domain with v2 events
2023-06-27 16:41:30 +03:00
kd-11
322b5dac79
Properly enable synchronization2 feature
2023-06-27 16:41:30 +03:00
kd-11
5a85fee3f1
Silence logspam about unused parameter
2023-06-27 16:41:30 +03:00
kd-11
ca472b6750
Silence log spam about copy ellision
2023-06-27 16:41:30 +03:00
Eladash
d34b3190f7
Make stopping emulation not pause or crash UI
...
* Make the UI and main thread available when stopping emulation.
* Make BlockingCallFromMainThread always execute, preventing bugs when it unexpectedly did not.
* Add error code for when starting emulation when Emu.Kill() is in progress.
2023-06-26 20:48:38 +02:00
Eladash
4f5348c7d4
Fix properly RSX replay thread stop bug
2023-06-26 20:48:38 +02:00
brian218
70ce7ee106
sys_fs: Fixed up one of sys_fs_unmount()'s error codes to match real system behavior
2023-06-25 09:08:20 +02:00
brian218
cf4ae38699
sys_fs: Implemented get_normalized_path()
2023-06-25 09:08:20 +02:00
kd-11
0a0ef50caf
Try to fix build
2023-06-23 15:21:17 +03:00
kd-11
e20f1587cd
Workaround for old compilers
...
Xcode is not yet c++20 compliant
2023-06-23 15:21:17 +03:00
kd-11
715e3856f2
vk: Update async compute (fast) to use the new sync API
2023-06-22 14:59:58 +03:00
kd-11
850166eca1
vk: Reimplement events using synchronization2 extension
2023-06-22 14:59:58 +03:00
Eladash
441fbd63bb
Fix PPU debug setting with PPU interpreter
2023-06-20 18:18:24 +03:00
Eladash
073b723c09
Fix Create PPU Cache
2023-06-19 13:59:56 +03:00
RipleyTom
e2bced978e
Move connect workaround to connect interface
2023-06-18 01:04:01 +02:00
kd-11
d5654d64d5
Nicer variable names
2023-06-16 15:29:36 +03:00
kd-11
06459eb37b
vk: Latch query copy requests to reduce number of vulkan commands used
2023-06-16 15:29:36 +03:00
Megamouse
d08fea551e
progress dialog fix
2023-06-16 10:30:27 +02:00
Megamouse
ec9e8916b1
evdev: don't release buttons while other buttons are still pressed
2023-06-15 22:39:30 +02:00
Megamouse
d3be8ee2b7
input: allow multiple key codes per button
2023-06-15 22:39:30 +02:00
Megamouse
16f869fe5a
logging: minor trace optimizations
2023-06-15 19:48:15 +02:00
Ani
5f8f86b5a7
Settings: Add Output Scaling to Home Menu
2023-06-15 01:22:15 +02:00
Ani
a78117e094
Settings: Enable hot-reloading of Output Scaling
2023-06-15 01:22:15 +02:00
Ani
f08d3e12ca
Settings: Remove PPU Interpreter (dynamic)
...
It has been unimplemented for a long while, so no point in displaying
it, it can be added once the feature is implemented again
2023-06-15 01:22:15 +02:00
Ani
57b9130cf7
Settings: Add Show PPU compilation hint
2023-06-15 01:22:15 +02:00
Ani
cce699a465
Settings: Enable Full Width AVX-512 by default
...
It is only known to cause performance hits in old Skylake-X AVX-512 CPUs
as opposed to the other AVX-512 enabled CPUs, so it should be enabled as
default
2023-06-15 01:22:15 +02:00
Megamouse
d662a39a12
PPUAnalyser: fix std::move nonsense
2023-06-14 11:05:00 +03:00
kd-11
49c6c2c529
vk: Do not hard-sync on first sign of fragmentation
...
- It is very likely that the resource would be available if we just waited a while for the GPU queue to clear.
- Instead of also discarding the current work, first check if we can get by without a hard sync.
2023-06-14 01:12:11 +03:00
kd-11
29f3eec957
vk: On pool recovery, rescan the subpool table in case a new pool really cannot be created
2023-06-14 01:12:11 +03:00
kd-11
c1d875d841
vk: Handle VK_ERROR_FRAGMENTATION when allocating descriptor pools
2023-06-14 01:12:11 +03:00
Megamouse
d28e3c4f08
np_handler: fix warning: check socket in discover_ip_address
2023-06-13 18:08:51 +02:00
Megamouse
cedfb95f9b
Loader: remove dead code
2023-06-12 19:35:15 +02:00
Megamouse
b436d2a7f4
input: add controller index to SDL controllers
2023-06-12 18:05:34 +02:00
RipleyTom
5d7e75c5d8
Fix EINVAL returned on connect call to connecting socket
2023-06-11 15:42:22 +02:00
Eladash
c0e97b4e96
Qt: Improve PS3 Binaries Decryption tool
2023-06-11 00:40:14 +02:00
brian218
b2842dcd52
System.cpp: Updated the definition of user-space LV2 CoreOS SELFs
2023-06-10 17:59:02 +02:00
Megamouse
c78c504043
overlays: update progress dialog workaround
2023-06-10 09:09:55 +02:00
kd-11
27349c5c69
vk: Cleaner approach to object lifetime management
2023-06-10 02:54:16 +03:00
kd-11
872aa2b358
vk: Improved OOM handling
...
- Don't aggressively delete surfaces unless we're really crashing
- Release barrier resources before destroying the surface in case of fatal crash
2023-06-10 02:54:16 +03:00
kd-11
72abc0f219
rsx: Minor annotations and refactoring
2023-06-10 01:36:10 +03:00
kd-11
4d565eade6
rsx: Drop format information from the vertex cache and use a simpler model that is much faster
2023-06-10 01:36:10 +03:00
kd-11
2df7e46cb1
rsx: Import robin-hood unordered map which is much faster than std
2023-06-10 01:36:10 +03:00
kd-11
105205312b
rsx: Rewrite the find method to avoid unnecessary allocations
2023-06-10 01:36:10 +03:00
kd-11
97f7461aa9
rsx: Allow the vertex cache to be enabled independently of MTRSX
2023-06-10 01:36:10 +03:00
kd-11
7e2eaf43ca
rsx: Capture stats about vertex cache performance
2023-06-10 01:36:10 +03:00
Eladash
d752ab0151
SPU/Debugger: Add RawSPU debug data
2023-06-09 14:07:37 +03:00
Eladash
c87a7cb2c0
PPU: Fix thread entry detection false positives
2023-06-09 14:07:37 +03:00
Megamouse
6aff2803e5
cellMsgDialog: Fix segfault when closing non-blocking Qt dialogs
2023-06-09 02:03:44 +02:00
Megamouse
0ebe832f8e
input: fix some warnings
2023-06-08 22:58:55 +02:00
Megamouse
769b69999f
fix whitespace
2023-06-08 21:15:39 +02:00
Megamouse
404d08ef6d
Qt: always use last boot path for game boot actions
...
The actual path caused the GUI to try to run elfs directly after booting a game from a loader.
2023-06-08 21:15:39 +02:00
Megamouse
11487cd591
System: fix config path in restore_on_no_boot
2023-06-08 21:15:39 +02:00
Megamouse
51a30977d2
System: use const ref for libs map
2023-06-08 21:15:39 +02:00
Megamouse
3f5bc3464d
Rename ProcureCurrentEmulationCourseInformation to GetEmulationIdentifier
...
This is much easier to understand in my opinion.
The old name just made me scratch my head whenever I read it.
2023-06-08 21:15:39 +02:00
brian218
ad22cf5051
unself.cpp: Always reset the old SELF header information before loading
2023-06-08 18:18:57 +02:00
Megamouse
8f66c50721
input: add pressure intensity toggle mode
2023-06-08 16:41:44 +02:00
kd-11
6f834e99d2
vk: Disable conditional rendering on MacOS
2023-06-06 22:05:54 +03:00
kd-11
86c7b31b6d
Force disable conditional render on macOS
2023-06-06 22:05:54 +03:00
Eladash
6d918b565f
PPU: Sleep after returning from thread entry function
2023-06-06 17:53:09 +02:00
Eladash
52575a44b2
sys_ppu_thread: Optimize joined thread notification
2023-06-06 17:53:09 +02:00
Eladash
d5eebd6ab4
debugger: Fix trailing spaces in PPU register dump
2023-06-06 09:48:27 +02:00
Eladash
9bd4426225
Fix _sys_interrupt_thread_disestablish with lingering thread copies
2023-06-06 09:48:27 +02:00
Eladash
4af0a33f1f
Fix sys_ppu_thread_detach/exit with lingering thread copies
2023-06-06 09:48:27 +02:00
Eladash
636bde6343
Logs: Fix trailing space, nbsp and unintended character
2023-06-06 09:48:27 +02:00
Eladash
16579e0b1f
Fix spu_thread::cleanup()
2023-06-06 09:48:27 +02:00
Megamouse
292d3faa9e
input: fix pad profile override with existing custom pad configs
2023-06-06 08:09:31 +02:00
Megamouse
6d2f7f6e54
sys_fs: fix map entry removal in destructor
2023-06-05 23:14:12 +02:00
brian218
48ffc19193
Update sys_usbd.cpp
2023-06-05 20:15:43 +02:00
brian218
c85775922e
sys_usbd: Implemented sys_usbd_unregister_extra_ldd()
2023-06-05 13:51:54 +03:00
brian218
da0c9c2ce9
sys_usbd: USB VID/PID logging format fixup
2023-06-05 13:51:54 +03:00
brian218
42b388317e
sys_ss: Further implemented Update Manager service for VSH
2023-06-05 13:51:54 +03:00
brian218
6a570ae57e
sys_fs: Implemented sys_fs_mount(prot=1) read-only mounting & fixed up some operation and permission checks
2023-06-05 13:51:54 +03:00
Elad Ashkenazi
2e4bf9ef1b
Update sys_timer.cpp
2023-06-04 01:26:24 +02:00
Elad Ashkenazi
ba9f55679d
Update sys_timer.cpp
2023-06-04 01:26:24 +02:00
Elad Ashkenazi
2c999a550b
Update sys_mutex.h
2023-06-04 01:26:24 +02:00
Elad Ashkenazi
805de248d3
Update sys_lwmutex.h
2023-06-04 01:26:24 +02:00
Elad Ashkenazi
1240874e41
Update sys_lwmutex.h
2023-06-04 01:26:24 +02:00
Elad Ashkenazi
feff50e7e0
Update sys_mutex.h
2023-06-04 01:26:24 +02:00
Eladash
c37fc73a02
PPU LLVM: Invalidate cache for testers
2023-06-02 08:54:46 +03:00
Eladash
d152537e50
sys_lwcond/cond/ppu_thread: Respect scheduler in various syscalls
2023-06-02 08:54:46 +03:00
Eladash
5d4e87373f
LV2: Make _sys_lwcond_destroy wait for lwmutex lock
2023-06-02 08:54:46 +03:00
Eladash
1c36156594
PPU LLVM: Fix LWSYNC according to cellSpursWakeup
2023-06-02 08:54:46 +03:00
Eladash
300701a06b
Make page faults entry enqueue and event atomic
2023-06-02 08:54:46 +03:00
Eladash
a776f15557
SPU: fix event count with ACK and mask write
2023-06-02 08:54:46 +03:00
Eladash
1c89f8a855
LV2/Timer: Fix ENOTCONN check of start timer
2023-06-02 08:54:46 +03:00
Eladash
81e4d9c2ee
LV2/TImer: Fix notification discard
2023-06-02 08:54:46 +03:00
Eladash
49be6be8f4
LV2/Timer: Make timers consistent
2023-06-02 08:54:46 +03:00
Eladash
b861a9c5d0
LV2: Implement set-priority thread requeue
2023-06-02 08:54:46 +03:00
Eladash
9828e6cafc
LV2: Push other-than-this thread to the back on priority set
2023-06-02 08:54:46 +03:00
Eladash
5d13978bbf
sys_lwcond: Implement TIMEOUT on lwmutex lock
2023-06-02 08:54:46 +03:00
Eladash
b844aecb9e
sys_lwmutex/mutex: Fix race on lock timeout
2023-06-02 08:54:46 +03:00
Eladash
f57c8c1c35
LV2: Unconditional Timer Synchronization Fix
2023-06-02 08:54:46 +03:00
kd-11
bbbc5f6e6c
rsx: Write a warning to the log if we decide to collapse surfaces to reduce VRAM usage.
2023-06-01 19:25:50 +03:00
kd-11
ac0c60b740
vk: Rename gc_wrapper_t to gc_callback_t which is more relevant
2023-06-01 19:25:50 +03:00
kd-11
f2f95a20a3
vk: Minor improvement to descriptor and garbage collector interaction
2023-06-01 19:25:50 +03:00
kd-11
12f213ffad
rsx: Trim the number of in-flight invalidated resources (temp cache)
...
- This drastically improves memory allocation behavior.
Holding too many invalidated resources can lead to a cascading overallocation error as old resources hold refs to even older resources and nothing gets deleted.
2023-06-01 19:25:50 +03:00
Megamouse
66e1cf96e2
Qt/Loader: Let users choose which packages to install
2023-06-01 16:34:23 +02:00
Elad Ashkenazi
c3b7229fbb
Extra PS3_EXTRA fix
2023-06-01 06:43:33 +02:00
Megamouse
f96a0ce9d2
Trophies: Add more sanity checks to pugixml backend
2023-05-30 19:11:57 +02:00
kd-11
6a2ea62f82
vk: Minor cleanup
2023-05-30 16:50:08 +03:00
kd-11
6cfd817b5a
vk: Fix descriptor-related crashes
2023-05-30 16:50:08 +03:00
kd-11
c99ef4b09f
vk: Refactor descriptor handling
2023-05-30 16:50:08 +03:00
kd-11
7e131f8fb6
rsx/util: Add some c++ guards around simple_array class
2023-05-30 16:50:08 +03:00
kd-11
10171c19c3
vk: Unify descriptor allocation
...
- Pool management should be a backend implementation detail.
2023-05-30 16:50:08 +03:00
Megamouse
4aee1b378a
overlays: fix media list dialog pad interception
2023-05-28 11:56:49 +02:00
Elad Ashkenazi
9f5e3ecb8c
rsx/overlays: Fix crash on stop
2023-05-26 07:42:29 +02:00
Megamouse
f89d3d5077
cellCamera: don't switch to main thread unless really necessary
2023-05-25 21:30:27 +02:00
Megamouse
145e059cdf
input: allow to remap emulated pads dynamically
2023-05-25 20:37:15 +02:00
Megamouse
22916a7e8d
Qt/input: limit some usb device configs to 2 players
2023-05-25 20:37:15 +02:00
Megamouse
5cc2a7c09e
input: fix emulated pad stick y axis
2023-05-25 20:37:15 +02:00
Megamouse
e584653b72
input: move emulated pad handling to config class
2023-05-25 20:37:15 +02:00
Megamouse
f4b346a6f8
input: fix emulated button map accessors
2023-05-25 20:37:15 +02:00
Megamouse
cb1b71bc57
Qt: fix emulated button reset
2023-05-25 20:37:15 +02:00
Megamouse
95060efb7d
input: add support for multi-assignment in emulated pads
2023-05-25 20:37:15 +02:00
Megamouse
b82dd61a0c
input: add emulated axis configs
2023-05-25 20:37:15 +02:00
Megamouse
d652a81078
Qt/input: add emulated pads settings dialogs
2023-05-25 20:37:15 +02:00
Megamouse
fc76d2df38
input: list actual nodes instead of button ids
2023-05-25 20:37:15 +02:00
Megamouse
1a98682ea0
input: add enum count for enumeration
2023-05-25 20:37:15 +02:00
Megamouse
64437a531b
input: use global configs
2023-05-25 20:37:15 +02:00
Megamouse
4d26170bd6
input: add emulated_pad_config template class
2023-05-25 20:37:15 +02:00
Megamouse
36831a3d6a
input: add gem ds3 config file
...
No sticks yet
2023-05-25 20:37:15 +02:00