Megamouse
22e3075c64
cellSaveData: always log setList and setBuf
...
For debugging
2021-11-20 08:43:46 +01:00
Megamouse
09ead539a5
improvise CELL_SAVEDATA_ERRDIALOG_NOREPEAT
2021-11-20 08:43:46 +01:00
Megamouse
7eee9e7b05
overlays: simplify backup icon copy procedure
2021-11-20 08:43:46 +01:00
RipleyTom
22910c02a9
Implement sceNpManagerGetPsHandle ( #11164 )
2021-11-17 18:02:01 +00:00
Megamouse
0f7534c755
VK: fix NVIDIA driverVersion check
2021-11-16 09:31:16 +01:00
Megamouse
4d0330bf82
rsx: fix possible segfault
2021-11-16 09:31:16 +01:00
Megamouse
026efd96b2
cellKbCnvRawCode: use proper constants
...
and comment out unreachable code
2021-11-16 09:31:16 +01:00
Megamouse
f6af5ff13a
cellRtcGetDaysInMonth: fix param check
2021-11-16 09:31:16 +01:00
Megamouse
0d7b7585a8
Some typo/warning fixes
2021-11-16 09:31:16 +01:00
Megamouse
f6e04ffdd2
overlays: add stick input to native dialogs
2021-11-16 01:38:33 +01:00
Megamouse
44b42f68fd
overlays: add R3, L3 and PS buttons
...
Unused at the moment
2021-11-16 01:38:33 +01:00
Megamouse
56241838c0
input: add made up CELL_PAD_CTRL_PS enum
...
And remove useless comment about 0x0 buttons. It's a bitmap, so 0x0 is literally useless.
2021-11-16 01:38:33 +01:00
Megamouse
26475f8f40
cellGem: add comment about hack
2021-11-16 01:38:33 +01:00
Megamouse
ff5e31f396
overlays: add system sounds
2021-11-15 23:03:30 +01:00
kd-11
59b1c324a9
rsx: Properly implement immediate mode rendering
...
- Treat the draw commands as being consumed on-the-fly with ATTR0 as provoking attribute
- Analysing streams sent to RSX and the results implies they are consumed fully inline.
This only makes sense if a provoking attribute is present. The 'static' register is truly the immediate register for the draw.
2021-11-15 18:14:15 +03:00
kd-11
1f627caa81
rsx: Clear some leaking register state between runs
2021-11-15 18:14:15 +03:00
Megamouse
7dc3a50ddf
Fix headless mode
2021-11-14 17:07:18 +01:00
Eladash
cfe08de951
Account empty EDAT ( #11146 )
...
* Improve sys_fs_open logging
2021-11-14 02:15:27 +03:00
Eladash
48ad959697
sys_event: Fix PPU queue forced uproot of waiters ( #11147 )
2021-11-13 20:22:54 +03:00
陈俊嘉
05881ffa62
Disable vulkan in Windows build when HAVE_VULKAN is off and other cmake build fixes. ( #11118 )
...
* Make WolfSSL build support multi-config generator.
Fix a build error in Windows when using QT's moc.
Disable vulkan in Windows build when HAVE_VULKAN is off.
* add WIN32_LEAN_AND_MEAN definition to VS project.
add HAVE_VULKAN definition to VS project.
Define NTSTATUS in main.cpp.
2021-11-13 16:11:49 +01:00
Malcolm Jestadt
3fde455932
SPU LLVM: Optimize branch following ORX
...
- test the input of ORX directly for zeroes, instead of the result
2021-11-11 12:58:38 +03:00
RipleyTom
ba727e13ae
Fixes rpcn_client.h func ptr comparison warning
2021-11-11 08:11:14 +01:00
RipleyTom
b736691bde
Special nullptr optParam->cbFunc case fix
2021-11-10 20:03:11 +01:00
RipleyTom
50bf528f3f
NP: add signaling_handler wakeup on connect queue
2021-11-10 12:43:45 +01:00
kd-11
7e3eab9915
rsx: Fix texture state propagation between unrelated draw calls
...
- Older games can load all textures before a draw sequence and then swap shaders for different draws.
- Optimizations in texture state streaming make it so that only referenced data is carried forward.
2021-11-09 12:39:49 +03:00
RipleyTom
dc0793b731
NP: Implement sceNpMatching2DeleteServerContext
2021-11-08 13:10:40 +03:00
RipleyTom
c194804fec
NP: Implement sceNpBasicGetFriendListEntry
2021-11-08 13:10:40 +03:00
RipleyTom
d41e405420
NP: Cache Manager + improvements
2021-11-08 13:10:40 +03:00
RipleyTom
516cb959cb
rpcn: new allocator + refactoring of np_handler
2021-11-08 13:10:40 +03:00
RipleyTom
704e74b904
rpcn: extra changes
2021-11-08 13:10:40 +03:00
Nick Renieris
b70f08d850
The Velocity Improvements: RoomData/RoomMemberData commands & fixes
...
modules/np2: Correct some SceNpMaching2 ptr type endianness
np/handler: Use STL .contains() method
Ignore USECRYPTO & USESIGNATURE in recvfrom/sendto
Implement RoomData/RoomMemberData commands
2021-11-08 13:10:40 +03:00
Malcolm Jestadt
7573d7289b
SPU LLVM: Hook up 128 bit spu verification
...
- Also fix FMA enablement for sapphirerapids
2021-11-06 21:12:12 +03:00
Megamouse
f9abe40494
Qt: fix initial TSX selection
2021-11-06 13:47:43 +01:00
Megamouse
88bb26afb4
vk: make upscaler dynamic
...
The config option was marked as dynamic, but was never actually changed ingame
2021-11-06 01:02:54 +01:00
kd-11
f7eacf70ec
rsx: Restore shader disassembler to working state
2021-11-05 23:55:07 +03:00
Megamouse
af3ef02ca0
fix npDrmIsAvailable
2021-11-04 21:41:07 +01: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
kd-11
933d96af5f
vk: Do not clip region using renderpass renderarea, we have scissor for that
2021-11-04 21:05:15 +03:00
Whatcookie
bf6044fced
SPU/SYSINFO: Disable TSX by default for TSX-FA cpus ( #11105 )
...
- Also detect the new RTM_ALWAYS_ABORT bit in cpuid
- This new bit indicates that RTM is disabled in the microcode
- On cpus with RTM_ALWAYS_ABORT TSX can be renabled by writing 0x4 to the msr 0x0000010F
2021-11-04 16:44:25 +00:00
Ani
1a0392bf15
CPUTranslator: Enable FMA for alderlake CPUs ( #11106 )
2021-11-03 19:31:46 +00:00
kd-11
ad00c44231
rsx: Configure pitch correctly for pitch-zero textures (1D)
2021-11-03 16:58:30 +03:00
Nekotekina
69f321a471
LLVM 13
2021-11-02 20:11:08 +03:00
Malcolm Jestadt
37383f4217
SPU ASMJIT: Disable 512 wide spu verification
...
- Apparantly this crashes every game.
2021-11-01 20:04:26 +03:00
Eladash
b84e95d768
rsx: Fixate time stamp of VBLANK
2021-11-01 10:04:53 +01:00
Eladash
4369fb234e
rsx: Fix typo in VBLANK processing regarding emulation pause
2021-11-01 10:04:53 +01:00
Eladash
58040d478a
rsx: Implement NTSC fixup mode, improve VBLANK accuracy
2021-11-01 10:04:53 +01:00
kd-11
5b0ef401f7
rsx: Fix sampling in X when 0 pitch is given
...
- A pitch of 0 still allows 1-dimensional addressing.
2021-10-31 14:32:42 +03:00
Megamouse
1650dd1c7d
overlays: fix graph offset error after applying new config
...
I already had this figured out last time but forgot the dynamic config use case.
2021-10-31 10:14:08 +01:00
Megamouse
84f123041a
overlays: fix offset of right edge oriented graphs when detail level is none
2021-10-31 10:14:08 +01:00
Megamouse
f258ae795c
Add more logging for Emulator Stop events
...
This should give us more insight into the conditions that cause emulation stops.
This may also help find false issue reports.
2021-10-31 04:12:47 +01:00
Megamouse
33e80a733d
overlays: fix trophy notification sound in queue
2021-10-30 22:44:30 +02:00
Eladash
646ad3eed4
SPU DisAsm: Force decimal point insertion for constant floats
2021-10-30 21:33:06 +02:00
Eladash
edcc2a9e0d
PS3 String Searcher: Implement instruction searching in embedded SPU images
2021-10-30 21:33:06 +02:00
Megamouse
0e20acdf55
overlays: add optional sound to trophy popup
2021-10-30 17:16:45 +02:00
Megamouse
f262e77fbd
overlays: add fade to trophy notification pop-ups
2021-10-30 17:16:45 +02:00
Megamouse
244aa6879a
overlays: fix trophy notification pop-up locations
2021-10-30 17:16:45 +02:00
Megamouse
e9fe90244f
Emu: Move VFS mount to Init
2021-10-29 19:46:11 +02:00
Eladash
a90376a7c4
SPU DisAsm: Print SPU floats
2021-10-29 19:15:21 +02:00
kd-11
78bcb0fd53
rsx: Do not reuse/destroy sections that have references held
...
- Avoids a situation where blit-dst and blit-src have overlapping ranges. Uploading blit-dst destroys blit-src and vice-versa.
This is not the end of the world, but blit-src should be kept around until the operation is completed to avoid stale references!
2021-10-27 12:30:43 +03:00
kd-11
c733e794de
gl: Use real image dimensions when decoding compressed textures
...
- Image size is already correctly calculated using block dimensions
2021-10-27 12:30:43 +03:00
kd-11
99fc90648b
gl: Disable shader interpreter if hardware does not support bindless textures
2021-10-27 12:30:43 +03:00
kd-11
2587545eed
gl: Fix decoding of wide, swizzled textures
...
- Handle pre-byteswapped data (swizzled usually) in the compute-safe path
2021-10-27 12:30:43 +03:00
capriots
ac300c7356
Correct channel order
...
Documentation says the order is Front L, Front R, Center, LFE, Surround L, Surround R, Rear L, Rear R
2021-10-27 10:24:02 +03:00
Megamouse
2af2db2cbf
Lower some log spam
...
These functions probably aren't perfect, but they spam a lot of unnecessary log messages.
2021-10-27 00:25:27 +02:00
Megamouse
be972f04ac
cellGem: hook up camera
2021-10-24 15:01:43 +02:00
Megamouse
e51656e070
Qt: Add camera settings dialog
2021-10-24 11:32:35 +02:00
Megamouse
e67cf68321
cellCamera: fix compilation on linux
2021-10-24 11:32:35 +02:00
Megamouse
f66b29f043
cellCamera: Implement dynamic camera selection
2021-10-24 11:32:35 +02:00
Megamouse
77f6db2543
cellCamera: fix some typos (fixes camera attachment in Kung Fu Live)
2021-10-24 11:32:35 +02:00
Megamouse
5eabe9aa33
cellCamera: silence some log errors
2021-10-24 11:32:35 +02:00
Megamouse
67ba381dfe
cellCamera: fix qt camera handler format
2021-10-24 11:32:35 +02:00
Megamouse
9a6285942b
cellCamera: fix buffer allocation
2021-10-24 11:32:35 +02:00
Megamouse
214c1ccc7e
cellCamera: move camera handler interaction to seperate functions
2021-10-24 11:32:35 +02:00
Megamouse
263b7854c1
cellCamera: sprinkle some mutexes and handle disconnected cameras during open phase
2021-10-24 11:32:35 +02:00
Megamouse
843aed228e
cellCamera: fix camera interaction
2021-10-24 11:32:35 +02:00
Megamouse
bf71b1fcf7
cellCamera: fix buffer size for YUV
2021-10-24 11:32:35 +02:00
Megamouse
81c216f330
cellCamera: add error handling to qt camera
2021-10-24 11:32:35 +02:00
Megamouse
e4b242955c
cellCamera: implement CELL_CAMERA_READ_DIRECT
2021-10-24 11:32:35 +02:00
Megamouse
3fac832567
cellCamera: fix qt camera width and height for non-default resolutions
2021-10-24 11:32:35 +02:00
Megamouse
08011e9b78
cellCamera: Add qt camera handler
2021-10-24 11:32:35 +02:00
Eladash
ee7ed1fdc3
Allow booting any ELF inside disc directory, not just ones at 'PS3_GAME/USRDIR/'
2021-10-24 11:03:51 +02:00
shockdude
590483b81f
Add emulated Guitar Hero Live guitar controller in Settings I/O tab
2021-10-24 03:04:07 +02:00
RipleyTom
962e140cea
fix: cleanup basic handler in np term
2021-10-23 08:31:59 +02:00
Eladash
c0c52c33b9
SPU: Implement interrupts handling for remaining events
2021-10-20 15:46:50 +03:00
kd-11
4ed92f4155
vk: Fully allow CB change in emit_geometry
...
- upload_vertex_data can trigger a flush to CELL which will result in CB flush.
Ensure CB state is correctly reloaded in such a situation.
2021-10-20 12:05:39 +03:00
Eladash
12efd29121
SPU/PPU DisAsm: Implement more constant formation patterns
2021-10-17 12:15:58 +02:00
Eladash
a4bd1755cf
PPUDisAsm: Fix MFSPR/MTSPR disassembly
2021-10-16 15:03:52 +02:00
RipleyTom
683c061e60
sys_net: getsockname on unbound p2p socket fix
2021-10-16 11:41:20 +02:00
RipleyTom
0e625e193e
sys_net: redirects 0.0.0.0 packets on windows
2021-10-16 11:41:20 +02:00
Eladash
43302f937c
PPUDisAsm: Fixup SC printing, support LV1 syscalls
2021-10-16 10:56:31 +02:00
Megamouse
1584aba387
sceNpDrmIsAvailable: fix error check
...
No idea where I saw this check. Probably looked at the wrong function
2021-10-14 22:06:12 +02:00
RipleyTom
caea340985
RPCN: Set error state on empty login/password
2021-10-14 19:28:20 +02:00
RipleyTom
ab6c74b3c1
Enables resend token button
2021-10-13 21:18:29 +02:00
Malcolm Jestadt
f06c8b22e8
PPU/SPU LLVM: Emulate VPERM2B with a 256 bit wide VPERMB
...
- Save 1 uop by using 256 wide VPERMB instead of VPERM2B. (Compiles down to a vinserti128 and vpermb)
2021-10-13 17:51:54 +03:00
RipleyTom
68fdc49528
Defaults to 127.0.0.1 when failing to discover IP
2021-10-13 08:17:29 +02:00
shockdude
cd73d738e5
Add emulated DJ Hero turntable controller in Settings I/O tab
2021-10-12 23:29:19 +02:00
Eladash
ab50e5483e
GUI Utilities: Implement instruction search, PPU/SPU disasm improvements ( #10968 )
...
* GUI Utilities: Implement instruction search in PS3 memory
* String Searcher: Case insensitive search
* PPU DisAsm: Comment constants with ORI
* PPU DisAsm: Add 64-bit constant support
* SPU/PPU DisAsm: Print CELL errors in disasm
* PPU DisAsm: Constant comparison support
2021-10-12 23:12:30 +03:00
RipleyTom
8a72bdb422
rpcn: wait for signal before connect
2021-10-12 20:20:32 +02:00
RipleyTom
df39bd39b0
Fix rpcn create/login not returning proper error
2021-10-12 17:30:46 +02:00
kd-11
d58df667b9
rsx: Fix some texture decode instructions
...
- Fix TEX1D_PROJ definition
- Make TEX3D_PROJ cubemap-compatible
2021-10-12 13:47:08 +03:00
Megamouse
3832d4fa1c
sceNpFriendlist: some improvements
2021-10-12 00:40:27 +02:00
Megamouse
8f328b2624
sceNpCustomMenu: improvements
2021-10-12 00:40:27 +02:00
Megamouse
80ef348600
sceNp: more error checks
2021-10-12 00:40:27 +02:00
Megamouse
e2a9c0a8f3
sceNpInit: fix error check order
2021-10-12 00:40:27 +02:00
Megamouse
780a234467
sceNpDrmIsAvailable: add param checks
2021-10-12 00:40:27 +02:00
RipleyTom
ea9dc9317d
rpcn v0.4.0
2021-10-11 22:20:20 +02:00
Eladash
15af1bca69
PPU DisAsm: Fix CMPLI disassembly
2021-10-11 19:34:01 +03:00
kd-11
479150b214
rsx: Fix decoding of linear cubemaps
...
- 128-byte boundary is not observed in linear tiling. Verified in hw.
2021-10-10 16:15:28 +03:00
kd-11
e1d1d16227
gl: Alias register binding points a bit
...
- While aliasing is easy to break, it allows outdated hw to run
2021-10-10 16:15:28 +03:00
Eladash
75e66ab5e0
Make pad and patches config savinng atomic
2021-10-10 09:34:50 +02:00
kd-11
b3725baf5a
rsx: Rewrite shader decompiler texture dispatch
2021-10-09 15:10:36 +03:00
kd-11
f1d9a014c0
vk: Silence compiler warning
2021-10-09 15:10:36 +03:00
Megamouse
eb850681ee
cellKb: implement key repeat
...
- Implements key repeat functionality
- Fixes an issue where games registered keys repeatedly even though we weren't actually setting multiple key presses.
2021-10-07 09:49:53 +02:00
Megamouse
c7e5a62909
Add missing cpu_flag formatting
2021-10-05 20:16:11 +02:00
Megamouse
f72d148d37
Fix config mode reset
2021-10-05 20:16:11 +02:00
Megamouse
d8435163bb
input: increase mouse acceleration maximum
2021-10-04 21:21:32 +02:00
Megamouse
af11546b1e
Overlays: fix small performance overlay font sizes
2021-10-04 19:57:57 +02:00
Eladash
63f16d7a46
GUI Utilities: Implement PS3 SDAT/EDAT decryption
2021-10-02 11:29:01 +02:00
Eladash
71b15c1fa6
Suggest tweaking the setting "Stub PPU Traps" after PPU trap ( #10921 )
2021-09-30 21:33:55 +03:00
Nekotekina
55ec4808f1
SPU LLVM Fixup for VDBPSADBW
...
Fixes #10947
2021-09-30 17:53:47 +03:00
Malcolm Jestadt
2cfa5406e7
LLVM DSL: reimplement vdbpsadbw
2021-09-30 13:22:35 +03:00
Malcolm Jestadt
86716dc37b
SPU LLVM: Optimize branches following byteswaps
...
- The first element can be extracted via vmovd rather than vpextrd, which saves 1 uop.
2021-09-30 13:22:35 +03:00
Malcolm Jestadt
f9ab077908
SPU LLVM: Use VDBPSADBW in SUMB
...
- This instruction can be used to sum bytes horrizontally if the second input vector is all zeroes.
2021-09-30 13:22:35 +03:00
kd-11
f90bf2dd40
vk: Use a dynamic number of descriptor allocations
2021-09-29 01:20:32 +03:00
kd-11
dc8fc9fc79
vk: Clean up around vkQueueSubmit handling
...
- Explicitly declare one version for CB flush and the other for Async flush
- Always flush descriptors on CB flush in case of page fault handling.
Other threads other than offloader can also enter the method and require normal flow.
- Fix overlapping interrupt IDs.
- Minor formatting fixes
2021-09-28 23:18:26 +03:00
kd-11
3d49976b3c
vk: Add deregister event for sets
...
- Unused in practice, but this is more for peace of mind.
2021-09-28 17:43:15 +03:00
kd-11
eed38e1bbc
vk: Make the new descriptor system spec compliant
2021-09-28 17:43:15 +03:00
kd-11
9595297a3a
Whitespace fix
2021-09-28 17:43:15 +03:00
kd-11
7c5b5d25e3
vk: Implement descriptor allocation batching
2021-09-28 17:43:15 +03:00
kd-11
2e22a0d9bb
rsx: Optimize thread self-tests
2021-09-28 17:43:15 +03:00
kd-11
ba2a8ebf2e
vk: Enable deferred descriptor updates via descriptor-indexing
2021-09-28 17:43:15 +03:00
kd-11
381c7544fa
Optimize basic descriptor batching
2021-09-28 17:43:15 +03:00
kd-11
4752c4014b
vk: Implement basic descriptor updates batching
2021-09-28 17:43:15 +03:00
kd-11
24642a4c18
vk: Refactor descriptors a bit
2021-09-28 17:43:15 +03:00
kd-11
62979c7bd9
vk: Enable descriptor indexing extension if supported
2021-09-28 17:43:15 +03:00
kd-11
7b9fb7ad9c
rsx: refactor rsx_utils a bit
...
- Move obviously standalone things to their own utility files
2021-09-28 17:43:15 +03:00
kd-11
7f830d555d
vk: Simplify texture cache OOM tracking a bit
2021-09-28 17:43:15 +03:00
kd-11
9aafd8c09f
rsx: Avoid get_system_time for simple draw ordering
2021-09-28 17:43:15 +03:00
kd-11
6781eb7c76
rsx: Avoid calling get_system_time() every draw call
2021-09-28 17:43:15 +03:00
kd-11
3e09b97f58
rsx: Minor optimization; avoid preparing unused vertex streams
...
- Also discards unused program state variables
2021-09-28 17:43:15 +03:00
Eladash
e7b9513d4a
Bugfix after recent PPU patches pr
2021-09-28 12:12:12 +03:00
Eladash
34c36c73ee
Debugger/Disasm: Name PPU Syscalls
2021-09-28 12:12:12 +03:00
Megamouse
2821eb7397
Remove some lwmutex log spam
...
I don't know if there's a reason for the warning message.
So I'll just change it and see how many developers throw insults at me :)
2021-09-26 21:28:17 +03:00
Eladash
65c9cd99cd
Patches/PPU: Implement HLE/LLE/With-TOC function call patches
...
Example patches:
[ jumpf, 0x12340, "cellGcmSys:cellGcmSetFlip"] // Places a call to cellGcmSetFlip at 0x12340
[ jumpf, 0x12340, "cellGcmSys:0xDC09357E"] // Same, using FNID
[ jumpf, 0x12340, 0x2345678 ] # Function OPD based call eading OPD at 0x2345678
2021-09-26 20:49:57 +03:00
Ani
df96be199b
config: Remove Lower SPU Priority setting
2021-09-26 00:29:21 +01:00
Ani
e58911cc95
config: Disable SPU loop detection by default
2021-09-26 00:29:21 +01:00
Megamouse
269c4604aa
VFS: move VFS settings to seperate file
2021-09-25 19:21:59 +03:00
Megamouse
8f1dc7a2d4
Fix VFS regression
...
Implements cfg_mode
2021-09-25 19:21:59 +03:00
Megamouse
da91a841b7
VFS: add logging to mount
2021-09-25 19:21:59 +03:00
Megamouse
4323ca4a01
Remove unused lambda
2021-09-25 19:21:59 +03:00
kd-11
e4aff539b0
vk: Fix scanning for upload heap types.
...
- HOST_CACHED support must be prioritized, but is not a mandate.
- Scan for that flag explicitly and fall back to uncached if it is not supported.
- Uncached memory is too slow for our requirements to contend with cached memory.
2021-09-23 01:45:37 +03:00
Eladash
d0e31f4ec3
sys_fs: Add write log messages for SDATA/EDATA
2021-09-22 14:57:16 +03:00
Eladash
3e06446297
sys_fs: Fix sys_fs_read/write when nbytes is 0
2021-09-22 14:57:16 +03:00
Eladash
5ae7dbf77c
Fix cellFsSdataOpenByFd flags
2021-09-22 14:57:16 +03:00
Megamouse
f1037f75d9
perf_overlay: fix initial graph positions with detail level none
2021-09-22 08:06:58 +02:00
Megamouse
a7cb513a89
cellOsk: partially implement continuous mode
2021-09-21 23:22:26 +02:00
Megamouse
e3ec71c683
cellOsk: partially implement cellOskDialogExtUpdateInputText
2021-09-21 23:22:26 +02:00
Megamouse
f7870d4968
cellOsk: do not notify INPUT_ENTERED on each input
...
Apparently the event is only sent when a user confirms the dialog during any continuous mode with seperate windows.
2021-09-21 23:22:26 +02:00
Megamouse
80ef0ce9b5
cellOsk: reset options after unload
2021-09-21 23:22:26 +02:00
Megamouse
696a3c4a42
cellOsk: stub some settings
2021-09-21 23:22:26 +02:00
Megamouse
81a01134bb
cellOsk: fix dialog abort w/o user interaction
2021-09-21 23:22:26 +02:00
Megamouse
70c291753c
cellOsk: dont send INPUT_ENTERED unless continuous
2021-09-21 23:22:26 +02:00
kd-11
3c7ada8e83
rsx: Fix 3D texture decode
...
- 3D mipmaps are shrunk in all 3 axes, they are not 2D array textures.
- Fixes mip1-mipN for all situations
2021-09-21 19:53:46 +03:00
kd-11
46b3027981
rsx: Invariably clear the texture state if referenced.
2021-09-21 19:53:46 +03:00
kd-11
334999f639
vk: Enable sampler mirror-clamped-to-edge as an extension
2021-09-21 19:53:46 +03:00
kd-11
dabfce5c82
rsx: Rework how depth/stencil initialization+clear works
2021-09-21 19:53:46 +03:00
kd-11
0a8d9a12ab
vk: Rewrite memory initialization
2021-09-21 19:53:46 +03:00
kd-11
19b2da2590
Enable stencil export extension when required
2021-09-21 19:53:46 +03:00
Eladash
17a074e1ac
Fix memory leak in cellOskDialog ( #10895 )
2021-09-21 11:29:32 +03:00
Eladash
38d5f688b3
cellAudio fix
2021-09-20 07:59:34 +02:00
Megamouse
a50e22a11f
Overlays: Fix position of centered perf-overlay
2021-09-19 20:30:02 +02:00
AniLeo
c995505023
edat: Check for the correct directory
2021-09-18 18:20:55 +01:00
Eladash
e10c6cbaf7
SPU: cpu_work() fixup, fix recursion in AV handler
2021-09-18 19:43:55 +03:00
Eladash
5870da0b55
SPU MFC: Add shuffling in steps setting
2021-09-18 19:43:55 +03:00
Eladash
5f729d4dbf
GUI Settings: Add MFC Delay Command checkbox
...
Limited control over "MFC Commands Shuffling Limit" setting.
2021-09-18 19:43:55 +03:00
Megamouse
14a425e487
rsx: wait when emulation is paused
...
This decreases my cpu usage by to <1% during Emu.Pause()
2021-09-17 23:13:24 +02:00
Megamouse
1f1d1da87b
silence some warnings
2021-09-17 23:13:24 +02:00
Megamouse
129ade2f73
System: only init fxo objects if a game is started
...
The progress_dialog and patch system aren't needed unless a game is started.
Before, they were both initialized everytime we added a single game to the game list or even when simply started RPCS3.
This both means that a thread was needlessly idling all the time and even worse: The patch.yml was read countless times when we didn't need it.
2021-09-17 22:45:14 +02:00
Eladash
c37c6fb6de
System.cpp: Remove outdated and bugged code-block
2021-09-17 22:15:48 +02:00
Eladash
5736fa3351
Fix Emulator::IsPathInsideDir
2021-09-17 22:15:48 +02:00
Eladash
1f3b1e1c99
Implement Emulator::GetFakeCat()
...
I still have nightmares about that cat.
2021-09-17 22:15:48 +02:00
Eladash
73bdf7481e
Emu: Fix disc game move from hdd0/game
2021-09-17 22:15:48 +02:00
kd-11
c2ab3c664c
rsx: Fix stupid overflow
2021-09-17 20:12:08 +03:00
Eladash
ddec5d6908
CPUThread: Prevent recursive check_state calls
2021-09-17 14:02:22 +03:00
Eladash
975aae1d13
SPU MFC: Implement MFC commands execution shuffling
2021-09-17 11:38:10 +03:00
Nekotekina
9e62ca562b
SPU LLVM: implement SQRT and DIV pattern detection (xf)
2021-09-17 10:23:43 +03:00
Nekotekina
d28b0ba2fa
SPU LLVM: implement spu_re, spu_rsqrte
...
Improve matching with peek_through_bitcasts() helper.
Implement erase_stores() helper.
2021-09-17 10:23:43 +03:00
Nekotekina
aba332d4c4
SPU LLVM: make intrinsics for most xfloat instructions
2021-09-17 10:23:43 +03:00
Nekotekina
543fb7a9cb
LLVM DSL / SPU LLVM: implement infinite precision shifts
...
Remove old make_*** helpers in favor of matcheable expressions.
2021-09-17 10:23:43 +03:00
Nekotekina
67b3fc70f8
LLVM DSL: implement absd and match helpers
...
Matcheable expression absd(a, b) (absolute difference).
2021-09-17 10:23:43 +03:00
Nekotekina
2268aa9093
LLVM DSL: reimplement fre, frsqe, fmax, fmin
2021-09-17 10:23:43 +03:00
Nekotekina
4b8ee85995
LLVM DSL: reimplement pshufb, add 'calli'
...
Implement postponed custom intrinsic replacement.
Make bitcast operator static like other ones.
2021-09-17 10:23:43 +03:00
Nekotekina
86ead1b93b
SPU LLVM: implement FI instruction
...
Use approximate reciprocal in FRSQEST.
2021-09-17 10:23:43 +03:00
Nekotekina
7ec7f261b1
LLVM DSL: implement fpcast
2021-09-17 10:23:43 +03:00
Nekotekina
1685769bd9
LLVM DSL: reimplement fmuladd, force hw fma if present
2021-09-17 10:23:43 +03:00
Nekotekina
2acb6ed60d
SPU LLVM: optimize SHUFB for permutation-only shuffles
...
Drop constant generation when unused.
2021-09-17 10:23:43 +03:00
Nekotekina
144244e902
SPU LLVM: implement missing constant mask handling in SHUFB
2021-09-17 10:23:43 +03:00
Nekotekina
7cf9d1380b
LLVM DSL: add line number in get_const_vector automatically
2021-09-17 10:23:43 +03:00
Nekotekina
f188019244
LLVM DSL: reimpelement fsqrt, fabs
2021-09-17 10:23:43 +03:00
Nekotekina
38dfc88e8d
LLVM DSL: reimplement avg
2021-09-17 10:23:43 +03:00
Nekotekina
95c36221fa
LLVM DSL: reimplement ctlz, ctpop
2021-09-17 10:23:43 +03:00
NicknineTheEagle
4fcc1c0f31
Fully implement sceNpDrmVerifyUpgradeLicense
2021-09-16 23:54:53 +02:00
Megamouse
1a2fad4eac
cellSearch: more stubs and implementations ( #10578 )
2021-09-16 22:05:29 +01:00
Megamouse
da4f4dafbd
overlays: Show feedback while stopping ppu compilation
2021-09-16 22:18:43 +02:00
Eladash
e5876b3a1b
Fix BDVD path setting
2021-09-16 21:28:52 +03:00
Eladash
9c2d94ca1a
sys_prx: Improve sys_prx_get_module_info error checking
2021-09-16 19:09:18 +03:00
Eladash
ae4f837f57
sys_prx: Implement sys_prx_get_module_id_by_address
2021-09-16 19:09:18 +03:00
xddxd
bcda172ae7
Switch from r16ui to r16
2021-09-16 14:09:21 +03:00
xddxd
d511e76a63
Enable the precise occlusion query feature
2021-09-16 14:09:21 +03:00
Megamouse
6378e16fdf
Emu.Load: add more logging
2021-09-15 21:43:29 +02:00
Eladash
8b48fd95fe
Fix sys_prx_start/stop_module for older firmware
...
The old structure is only 32 bytes long, not containing prologue/epilogue functions.
2021-09-15 18:08:58 +03:00
Eladash
5600430a05
Fix user_interface::alloc_thread_bit() usage
2021-09-13 22:36:53 +03:00
Eladash
50ad7ba1f6
vm: Fix vm::unmap
...
* Make vm::unmap atomic, squash the memory unmapping process inside this function while still using the same VM mutex ownership.
* Make vm::unmap not fail due to random vm::get calls, shared_ptr reference count is no longer a condition.
* Fix sys_mmapper_free_address spuriously failing with EBUSY due to random vm::get calls.
* Fix sys_vm_unmap race condition due to non-atomic vm::unmap.
* Add an optional verification block ptr arg to vm::unmap, used by patches.
2021-09-13 20:53:34 +03:00
Eladash
fe6cb4774e
Fixup default config-path ( #10863 )
...
Fixes #10862
2021-09-12 21:28:48 +03:00
Eladash
91fefd4671
Fix vm::try_alloc regression
2021-09-12 19:05:26 +03:00
Eladash
677d5f09ce
Add debugging info for when sys_tty_write is executed
2021-09-12 19:05:26 +03:00
Eladash
c7f5475b56
Improve sys_fs_close logging
2021-09-12 19:05:26 +03:00
Eladash
f98595bee5
Patches/PPU: Add jump_link patch type
2021-09-10 11:46:39 +03:00
Eladash
fafefb2cf5
Fixup No.3 after #10779
2021-09-10 11:46:39 +03:00
Eladash
1cbcf7e1ad
Reimplement config selection for game startup
...
* Implement manual selection of config file.
* Implement default config option.
* Fix bug which led to 'force global config' to not work in some games. (any game using process relaunch such most game collections, RDR, MGS4 etc)
* Relax CLI config purpose - instead the emulator forever ignoring any other config except for the one provided in arg, use it only for the CLI-booted game.
2021-09-09 21:56:50 +02:00
Eladash
df080fbc53
Ensure frozen emulation for special executables inspection modes
2021-09-09 19:30:54 +02:00
Eladash
bd66dfedc9
Do not allow to unpause after fatal error occured in emulation
...
* Plus fix #10590
2021-09-09 19:30:54 +02:00
Megamouse
69faf14a79
System: remove deprecated custom config location
2021-09-08 21:56:50 +02:00
Megamouse
29256df5b1
input: make pad_thread a named_thread
2021-09-08 20:15:28 +02:00
Eladash
6a340afb8a
Log emulation pause/unpause events
2021-09-07 08:51:59 +02:00
Eladash
dfbc49513d
Debugger/Disasm: Name SPU Syscalls
2021-09-07 01:13:57 +02:00
Megamouse
7bb830a228
Enable PPU java mode handling by default ( #10825 )
...
I don't remember if we had decided to do this, so I'll just make a PR and Ani or Neko can merge if needed.
2021-09-06 20:26:23 +01:00
kd-11
b3f002f68f
Add enums for zcull precision control
2021-09-06 20:04:03 +03:00
kd-11
ea949a5f28
Add ZCULL control options to the GUI
2021-09-06 20:04:03 +03:00
kd-11
53457262d4
rsx: Implement ZPASS results scaling for precise stats
2021-09-06 20:04:03 +03:00
kd-11
472efc08eb
rsx: Implement precise ZCULL stats
2021-09-06 20:04:03 +03:00
Megamouse
0525070898
remove deprecated avcodec_register_all
...
We already use newer avcodec code anyway.
2021-09-06 10:00:34 +02:00
Megamouse
aca9884e76
input: fix custom pad config loading
2021-09-05 10:16:25 +02:00
Eladash
fe0c164de2
sys_net: Anti-log spam enhancement
2021-09-04 11:58:59 +02:00
Eladash
ea2c5294df
cellCamera: Anti-Log spam enhancement
2021-09-04 11:58:59 +02:00
Megamouse
0debcfed0a
Silence some warnings
2021-09-02 19:39:42 +02:00
Nekotekina
06f733a7f2
Fixup No.2 for #10779
2021-09-01 16:56:38 +03:00
Nekotekina
ad6a72e369
Fixup for #10779
2021-09-01 14:38:20 +03:00
Eladash
b40ed5bdb7
Patches/PPU: Extend and improve patching capabilities (code allocations, jumps to any address) ( #10779 )
...
* Patches/PPU: Implement dynamic code allocation + Any-Address jump patches
Also fix deallocation path of fixed allocation patches.
2021-09-01 13:38:17 +03:00
Malcolm Jestadt
43cc62d267
SPU LLVM: Add m_use_vnni
...
- Alderlake and Sapphirerapids will require an update to the llvm fork before they can be detected
2021-08-31 14:02:05 +03:00
Malcolm Jestadt
d304b52391
SPU LLVM: Add VNNI optimized variant of sumb
...
- Uses vpdpbusd to horrizontally add values, for some reason this is much faster than the normal horizontal add instructions.
2021-08-31 14:02:05 +03:00
Malcolm Jestadt
a86b278115
SPU LLVM: Expand byteswap elimination to more instructions
2021-08-31 14:02:05 +03:00
kd-11
b5dcfb3431
rsx: Rework gamma override mask from RGBA to ARGB to match other per-channel mask registers
2021-08-30 11:41:19 +03:00
kd-11
a5e455d8ed
rsx/fp: Handle signed operator precedence
...
This was marked TODO for a long time
- Unsigned remap seems to be overriden by gamma mask (Resistance 3)
- We already know sign mask overrides gamma mask from UE3 titles
2021-08-30 11:41:19 +03:00
Eladash
6781373727
Patch cooperate with system SPU group creation ( #10791 )
2021-08-29 22:03:17 +03:00
Megamouse
b07960d3bc
input: move pressure sensitivity to the handlers
...
This removes a data race where the button was kept pressed but the values ingame could vary
2021-08-29 10:41:22 +02:00
Megamouse
977d729ee0
input: use buffers during button translation
...
This should reduce some random noise by assgning the values once instead of twice
2021-08-29 10:41:22 +02:00
Megamouse
2eb0d19a75
input: rename some variables
2021-08-29 10:41:22 +02:00
kd-11
3ab9e04db7
rsx: Fix surface access bit flags
...
- The previous enumeration was a holdover from older access management.
- A bitflag of 0 seriously messes up the mask tests
2021-08-29 11:10:30 +03:00
Eladash
f185aba5fc
Mark "Disable Logging", add explanatory log message
2021-08-28 20:35:30 +02:00
Eladash
ddb042148d
Patches/LLVM: Implement Complex Patches Support
2021-08-26 23:04:32 +03:00
Eladash
2d9929059f
vm: Fix an overflow at vm::alloc, fix vm::find_map ( #10760 )
...
* The statement addr += align could have overflowed resulting in either infinite loop or allocating memory outside of the region (illegal).
Add a check checking if it's the last iteration of the loop, then break without adding.
* vm::find_map condition didn't consider the size of the map to be allocated, allowing illegal occupation of [<=0xB000'0000]-0xCFFF'FFFF. (0xC000'0000-0xCFFF'FFFF is reserved for RSX)
2021-08-26 18:14:08 +03:00
kd-11
b0e352c44e
Add missing const
2021-08-26 13:55:00 +03:00
kd-11
2ff407ac6a
rsx/fp: Fix perspective correction handling
...
- Perspective correction flag multiplies VP output by HPOS.w.
NOTE: Not the same as division by w when it comes to NaN/Inf problems!!
- Restructure indexed loads a bit to avoid re-initializing registers unnecessarily
2021-08-26 13:55:00 +03:00
kd-11
b0e5de4c9c
rsx: Texcoord control mask affects decompiler output!
2021-08-26 13:55:00 +03:00
Megamouse
72f0637efe
Windows/Audio: add listener for device change
...
For some reason XAudio2 doesn't automatically change the device anymore.
So let's just listen for the OnDefaultDeviceChanged event and update the cell audio thread if necessary.
2021-08-25 22:44:16 +02:00
Eladash
4e139ee080
vm: Fix vm::page_protect error checking
2021-08-24 18:52:01 +03:00
kd-11
57b9acec62
rsx: Implement indexed dynamic attribute load
2021-08-24 16:52:18 +03:00
kd-11
c1f31d37f5
fsr: Mark output images explicitly as nonreadable
2021-08-24 15:30:46 +03:00
Whatcookie
d0451932bf
Offset get_timebased_time at game boot ( #10744 )
...
- Avoids game bugs in the case where games convert the value read from the clock to a float before performing delta time calculations
2021-08-23 13:06:02 +01:00
kd-11
92749f011e
vk: Experimental workaround to just disable compression
...
Applies some flags to disable aggressive optimizations on some hw.
Currently applies to AMD cards which will avoid compression if mutable
format is enabled.
This is a temporary workaround.
2021-08-23 09:34:56 +03:00
kd-11
9080d09583
vk: Add support for other formats as FSR output
2021-08-23 09:34:56 +03:00
kd-11
afc71341a5
vk: Add RADV to list of drivers with unreliable 'OUT_OF_DATE' notification when window size changes
2021-08-23 09:34:56 +03:00
Ani
1cdb2c6a26
vk: Register newer Navi GPUs ( #10740 )
2021-08-22 13:18:38 +01:00
Whatcookie
c62deeefd4
SPU LLVM: Add approximate FCEQ/FCMEQ ( #8729 )
...
- It's 100% accurate, but will sit under approx xfloat anyways
- Attempts to use a single instruction when 1 value is constant
2021-08-22 10:13:34 +03:00
Marco
5c0bf14554
Whitelist Kamen Rider Summonride Portal sys_usbd ( #10722 )
...
Co-authored-by: Megamouse <studienricky89@googlemail.com>
2021-08-21 11:08:56 +03:00
kd-11
3eb37344cd
rsx/fp: Fix indexed TEX[n] loads
2021-08-20 11:59:05 +03:00
Eladash
fcfeac818f
Loader: Improve just-in-time installation of disc game files ( #10719 )
...
* rsx: Indexed access to surface attributes
2021-08-19 08:49:59 +03:00
Justin Lewis
c13a46b07b
Fix warnings about using deprecated inet_ntoa function ( #10698 )
...
* Replaced inet_ntoa with inet_ntop.
The warning in question is: "Warning C4996 'inet_ntoa': Use
inet_ntop() or InetNtop() instead or define
_WINSOCK_DEPRECATED_NO_WARNINGS"
2021-08-18 07:16:38 +03:00
kd-11
705693ecf8
rsx: Fixup image-in data length calculations
2021-08-17 23:10:42 +03:00
kd-11
8848dc6673
vk: Improve driver compatibility
...
- Add workarounds to disable compression on mesa drivers
- Separate intel proprietary vs mesa into two enumerants
2021-08-17 20:19:45 +03:00
Nick Renieris
47e784d5d0
gl/vk: Scale line width & point size by resolution scaling
2021-08-17 19:29:46 +03:00
Eladash
a346767a72
rsx: Improve rsx::recover_fifo() to take a hint from driver wake-up delay
2021-08-17 16:40:41 +03:00
Eladash
107641626a
rsx: Implement crash-proofing for image_in dst/src formats
2021-08-17 16:40:41 +03:00
Eladash
83624e1f68
rsx: Implement crash-proofing for src/dst image_in address
2021-08-17 16:40:41 +03:00
Eladash
2ce164be09
rsx: Implement crash-proofing for 308A_COLOR dst address
2021-08-17 16:40:41 +03:00
Megamouse
ac986c7c61
fix some warnings
2021-08-15 21:02:38 +02:00
Megamouse
cad96cef72
input: redesign pad profiles
2021-08-15 08:24:35 +02:00
Eladash
62beaf299f
Remove old RSX instructions viewer ( #10710 )
2021-08-14 21:20:11 +03:00
kd-11
b928cb0223
vk: Fix unused variable error
2021-08-13 22:46:36 +03:00
kd-11
4b2562d02a
vk: Silence maybe-uninitialized warnings
2021-08-13 22:46:36 +03:00
kd-11
b5faa8f83c
vk: Properly calculate cubemap memory size
2021-08-13 22:46:36 +03:00
Megamouse
53bfc6fa59
cellGem: fix floating point warning
2021-08-13 20:45:18 +02:00
Eladash
063df64108
SPU/event queue: Implement protocol for SPU queue
2021-08-13 08:58:09 +03:00
Eladash
f1f93b8f81
SPU: Remove outdated assertation
2021-08-13 08:58:09 +03:00
Eladash
5784ffc972
Fixup PPU breakpoints
2021-08-12 22:24:54 +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
bf61c826d5
SPU/event queue: Atomically resume SPU group
2021-08-12 22:24:54 +03:00
Megamouse
5816505e61
input: fix player id if handler has 2 or more pads
2021-08-10 21:31:29 +02:00
kd-11
c9afb3daaa
rsx: Significantly reduce the applied subpixel bias when handling unnormalized access
...
- If a large value is set (e.g 0.5) rounding will sample 'up' and we can read the wrong texel
2021-08-10 12:02:19 +03:00
Megamouse
f0d51899c1
input: fix minor data race
...
While usually not exposed to the user, there was a slight chance that user input was read in a dirty state.
This became apparent during usage of the new pressure sensitivity button
2021-08-09 11:29:46 +02:00
Megamouse
2b18813115
input: fix pressure sensitivity button
2021-08-09 01:05:15 +02:00
Megamouse
430fd759fe
sys_net: add missing range checks
2021-08-08 21:06:07 +02:00
Megamouse
d4802cc766
input: Add pressure sensitivity button
2021-08-07 21:03:34 +02:00
kd-11
0031c41630
rsx: Check all attachments when generating pipeline hash key
2021-08-07 19:38:39 +03:00
kd-11
f745971cc8
rsx: Fix coordinate scaling for shadow access ( #10668 )
...
- For shadow2DProj the 3rd coordinate is actually the depth value, do not scale
2021-08-06 22:49:50 +01:00
kd-11
456b649b19
vk: Do not force check for successful texture cache load
...
The following set of conditions can fail
1. We hit a RTT owned texture
2. The texture is invalidated (failed memory integrity test) and set to write/read-through
In this situation, RTT overlap check will skip this surface, and a match can be found in texture cache if WCB/WDB is enabled.
The incoming hit however has no managed payload. This is expected behavior, the search should load from CPU.
2021-08-06 22:07:23 +03:00
kd-11
dff5707e19
Formatting fix
2021-08-06 17:18:48 +03:00
kd-11
0f5603a4bc
Disable warnings around 3rdparty header
2021-08-06 17:18:48 +03:00
kd-11
a4c1fcb59a
Fix 3rdparty imports for case-sensitive platforms (fixes *NIX build)
2021-08-06 17:18:48 +03:00
kd-11
d0a824996b
vk: Add basic support for FSR 1.0
...
- Only implemented for image upscaling.
- Disabled by default. Emulators cannot ensure upscalers are injected at the right rendering step.
- GUI integration not implemented.
2021-08-06 17:18:48 +03:00
kd-11
69b34693f0
vk: Simplify compute job cleanup on exit
...
- Just call destroy automatically on object destruct
2021-08-06 17:18:48 +03:00
kd-11
9a63ed6c50
vk: Unbind global renderer if it is destroyed
2021-08-06 17:18:48 +03:00
kd-11
6f6eda6413
vk/device: Formatting fixes only (EOL)
2021-08-06 17:18:48 +03:00
Nekotekina
86d2316089
sys_net/NP: set some init dependencies
...
Ensure finalization order of network threads.
This should prevent some crashes.
2021-08-06 10:41:40 +03:00
Nekotekina
064fc81697
Fix warnings
2021-08-06 10:41:40 +03:00
Megamouse
a146aabcaf
cellGem: Disable Alignment Checks
2021-08-05 13:10:08 +02:00
Eladash
9ecb6c4e34
Fix sys_spu_thread_group_create
2021-08-05 08:12:34 +03:00
Megamouse
3ccfb86e1b
cellGem: use existing constant for sphere radius
2021-08-05 02:26:20 +02:00
Megamouse
9c21f43df6
cellGem: fix Deadstorm Pirates regression
2021-08-05 02:02:34 +02:00
Megamouse
87c07679e1
cellGem: add calibration logic with 0.5 second delay
2021-08-05 02:02:34 +02:00
Megamouse
6de4c27b32
cellGem: fix controller connection check
2021-08-05 02:02:34 +02:00
Megamouse
995e9b5f9f
cellGem: reset struct on controller reset
2021-08-05 02:02:34 +02:00
Megamouse
e03f323fdd
cellGem: add some more checks
2021-08-05 02:02:34 +02:00
Megamouse
f2bca2ef67
cellGem: set cellGemGetCameraState values
2021-08-05 02:02:34 +02:00
Megamouse
0b88d5f077
cellGem: implement cellGemHSVtoRGB
2021-08-05 02:02:34 +02:00
Eladash
9f67e00e40
sys_spu: Add one more limiting SPU threads creation condition
2021-08-04 21:39:57 +03:00
Eladash
9d71369b2c
Fixup HLE lwmutex
2021-08-04 21:39:57 +03:00
Megamouse
2dd0f488a1
cellGem: cellGemPrepareVideoConvert update
2021-08-04 20:28:34 +02:00
Megamouse
dd7f24b20e
cellGem: fix mouse positions
2021-08-04 20:28:34 +02:00
Megamouse
ccb7531289
cellGem: update cellGemGetState
2021-08-04 20:28:34 +02:00
Megamouse
4d0179174a
cellGem: add more mouse buttons
2021-08-04 20:28:34 +02:00
Megamouse
3ddcf60a11
cellGem: add some more error checks
2021-08-04 20:28:34 +02:00
Megamouse
3b581aaf94
cellGem: disable tracking in cellGemForceRGB
2021-08-04 20:28:34 +02:00
Megamouse
0c68a6afdd
cellGem: improve hue handling
2021-08-04 20:28:34 +02:00
Megamouse
fd29382290
cellGem: fix fake move calibration status flag
...
Apparently OCCURRED means that there are flags to be checked, while SUCCEEDED means that everything went smoothly.
2021-08-04 20:28:34 +02:00
Megamouse
1d3f91a1b8
cellGem: add ext_id and SHARP_SHOOTER_DEVICE_ID
2021-08-04 20:28:34 +02:00
Megamouse
999252a806
cellGem: fix typos, add some comments and reorder
2021-08-04 20:28:34 +02:00
kd-11
da3c9948e6
rsx: Revert use of std::has_single_bit
...
- Zero is not a power of 2 in this situation, and we do not want to treat it as such
2021-08-04 20:28:25 +03:00
kd-11
daa8265a47
rsx: Fix interpreter texture fetch
2021-08-04 20:28:25 +03:00
Eladash
f807ebf9ba
PPU: Improve accuracy of "Accurate PPU 128 reservations" mode
2021-08-04 18:18:59 +03:00
Eladash
8c3a4c260e
Bugfix of sys_lwmutex_destroy
2021-08-04 09:03:17 +03:00
Eladash
06f4dfb9f1
SPU: Implement sys_spu_initialize and limit of physical SPU threads
2021-08-04 08:26:32 +03:00
Megamouse
af89eb5404
ppu compilation: fix facepalm (double increase)
2021-08-03 08:39:57 +02:00
Megamouse
dc0a086400
sys_prx_unload_module: fix log message
2021-08-03 08:39:57 +02:00
kd-11
8aec943093
Use c++20 has_single_bit for POT test
2021-08-03 00:36:04 +03:00
kd-11
99b6963fab
rsx: Improve unnormalized coordinate sampling
...
- Improve rounding when sampling nearest neighbour. This is mostly a problem with NVIDIA
- Implement unnormalized 3D sampling
2021-08-03 00:36:04 +03:00
kd-11
b3c65b7bca
rsx: Implement vtc encoding for NVIDIA OpenGL support
2021-08-03 00:36:04 +03:00
kd-11
0ec526c5f1
rsx: Do not use VTC tiling on NPOT textures
...
- Seems to be ignored for 'normal' textures. Mostly verified through games.
2021-08-03 00:36:04 +03:00
Nekotekina
05d1b3605e
Fixup for SPU Debug mode (bad SHA1)
...
Should fix crashes due to read out of bounds.
2021-08-01 10:12:08 +03:00
Nekotekina
286e154d05
SPU Profiler: adjust accumulation logic
...
Don't append trampoline time to verification time.
2021-08-01 09:59:00 +03:00
Eladash
a0c1b250b6
Fix HLE LWMutex setting - Implement dynamic initialization of HLE functions
2021-07-31 21:47:22 +03:00
Megamouse
6527eef655
System: add progress update on existing modules
...
This could cause dialogs to seemingly finish at e.g. 50/100 modules because the existing modules weren't accounted for.
2021-07-31 16:06:18 +02:00
Eladash
f39a0a5fbe
Debugger: Add some error pop-ups for invalid operations
...
* Show error window when setting breakpoints on these conditions:
- SPU/RSX are selected. (not supported)
- When using non-interpreters decoders.
- Non-executable memory is specified.
* Do not allow instruction stepping for non-interpreters decoders.
* Clear breakpoints when the game is stopped.
* Fix setting breakpoints on HLE functions.
2021-07-31 15:27:30 +02:00
Eladash
a06a93d5ba
Fix sys_storage_read
2021-07-30 17:22:43 +03:00
kd-11
f6e4cc14a2
vk: Fix a few incorrectly calculated scratch buffer sizes
2021-07-30 12:43:21 +03:00
Nekotekina
658b4f70ef
Fix some warnings
2021-07-30 09:31:36 +03:00
Nekotekina
fc5840cda6
SPU Cache: allow to dump cache upon startup
...
Print also some stats (if SPU Debug is enabled).
2021-07-30 09:21:11 +03:00
Nekotekina
2f6db5802f
Fix CPU Profiler regression
2021-07-30 09:21:11 +03:00
Eladash
d85bb3f4eb
vm_ptr.h: Improve try_read() ( #10627 )
2021-07-29 21:14:29 +03:00
Megamouse
7aca2785b6
Qt: abort batch PPU compilation on dialog cancel
2021-07-29 10:18:20 +02:00
Megamouse
2efc4812d7
Qt/System: reset boot path after directory scan
...
This should fix the "Play" Button after batch compiling PPU caches.
Previously you would start the last compiled game, which was kinda weird.
2021-07-29 10:18:20 +02:00
Megamouse
bb9c063e80
Remove unused ppu_initialize declaration
2021-07-29 10:18:20 +02:00
Megamouse
22e51e1615
System: add vsh.self when scanning vsh/module
2021-07-29 10:18:20 +02:00
Megamouse
03a46a499e
System: make IsPathInsideDir a member function
2021-07-29 10:18:20 +02:00
Megamouse
0a7a12bbff
RSX: fix 'Working buffer not big enough'
2021-07-27 23:59:12 +02:00
kd-11
ace187cdd0
vk: Fix scratch allocation when doing GPU deswizzle
...
- We have to use double the memory because the transformation does not occur in-place like normal bswap
2021-07-27 19:56:31 +03:00
kd-11
c54ddabe0b
vk: Handle out of memory errors that are deferred during texture binding
...
- Set out-of-memory flag if we have a failure to build a subresource.
- Mark textures as requiring reload in case of references to invalid data.
- TODO: This is overly complicated and can be handled better with a smart restructure.
2021-07-27 10:52:21 +03:00
kd-11
e5029c532b
vk: Fix comparison between composite memory types
2021-07-27 10:52:21 +03:00
kd-11
a4cd9e022a
vk: Force explicit minimum size declaration for scratch buffers
2021-07-27 10:52:21 +03:00
kd-11
99bbcd15e1
vk: Fix undefined format class for typeless helpers
2021-07-27 10:52:21 +03:00
kd-11
9d11c8cbb5
vk: Allow creating temporary subresources to fail if we run out of memory.
2021-07-27 10:52:21 +03:00
kd-11
92d1534917
rsx: Set composite images upload context based on their actual contents
2021-07-27 10:52:21 +03:00
kd-11
abd8bbd6ef
vk: Allocate enough scratch memory for GPU deswizzle
...
- Forgot to take alignment into account.
2021-07-27 10:52:21 +03:00
kd-11
13abe785a9
vk: Try to spread memory usage evenly across compatible types if possible
...
- Avoids running into budget constraints if you just dump everything into one heap
2021-07-27 10:52:21 +03:00
kd-11
6a9d1edee1
vk: Fix use-after-free hazard by checking if we're faulting from within the texture cache
...
- If we're using the texture cache, DO NOT delete resources.
2021-07-25 20:55:09 +03:00
kd-11
69bdbe97a8
vk: Make use of multi-pool memory types
2021-07-25 20:55:09 +03:00
kd-11
de7ed1cbe9
vk: Scrap minimum scratch buffer size and just allocate what is requested.
2021-07-25 20:55:09 +03:00
kd-11
7d3bbd3cf7
vk: Dynamically select panic boundaries based on resolution scale
2021-07-25 20:55:09 +03:00
kd-11
59e7379010
vk: Implement heap aggregation
...
- Aggregate heaps of same type under one object and allow allocator to try each matching type.
2021-07-25 20:55:09 +03:00
Eladash
be9be6e5c9
Make sys_prx_unload_module use success type logging
2021-07-24 14:23:47 +03:00
kd-11
0502f7881f
vk: Disable async texture streaming on all NVIDIA cards
2021-07-20 23:00:00 +03:00
Megamouse
50354253c8
replace some random Emu.Pause with fatal errors
2021-07-20 19:47:00 +02:00
Eladash
c84e5489f2
vsh.self: Fix execution on default settings ( #10586 )
2021-07-20 00:36:32 +02:00
Ilya Oleinik
e51d16aa37
Initial implementation of sys_uart
2021-07-19 19:20:43 +03:00
Eladash
98e40d12ef
sys_ppu: Implement sys_ppu_thread_rename
2021-07-19 12:37:33 +02:00
Eladash
e6e0210e73
Extend ppu_thread::call_history_t formatter
2021-07-19 09:28:46 +02:00
Eladash
83a2f06e3a
PPU debugger: Make calling history detect common LLE functions trampolines
2021-07-19 09:28:46 +02:00
Eladash
a5c3c7d2e5
cellSaveData/UNIX: Optimize IO ( #10574 )
2021-07-18 21:08:04 +02:00
clienthax
65b2a0d538
stub rsxaudio
2021-07-18 21:08:03 +03:00
clienthax
d099148961
sys_hid vsh
2021-07-18 14:20:33 +02:00
Eladash
6f901636bf
rsx: Fix vertical windows' clip
2021-07-18 13:44:23 +02:00
Eladash
b087d79a08
PPU debugger: Implement function names at the starting instruction
2021-07-18 13:23:18 +02:00
Eladash
6f6503ee32
cellSaveData: Fixup funcDone result check
2021-07-17 23:30:26 +02:00
clienthax
441713d959
sys_storage vsh implementation ( #10559 )
...
Co-authored-by: Eladash <elad3356p@gmail.com>
2021-07-17 22:06:40 +02:00
clienthax
e75e437a4a
sys_ss vsh stubs
2021-07-17 21:35:47 +02:00
kd-11
0d87d909c6
vk: Fix double-spill for invalidated resources
2021-07-17 21:28:11 +03:00
kd-11
2d4df57d87
vk: Fix nul deref in spill code
...
- Restores code lost in a rebase
2021-07-17 21:28:11 +03:00
kd-11
b7df539871
vk: Fix null deref in texture cache when dumping temporary storage
2021-07-17 21:28:11 +03:00
kd-11
d53f2f10fb
rsx/vk: Improve recovery during OOM situations
...
- Do not spill when running on IGP with only one heap as it will just crash anyway.
- Do not handle collapse operations when OOM. This will likely just crash and there are better ways to handle old surfaces.
- Spill or remove everything not in the current working set
- TODO: MSAA spill without VRAM allocations
2021-07-17 21:28:11 +03:00
Eladash
9a392d2b5c
vm_ptr.h: Do not allow dereferencing for void ptr
...
Do not create vm::ref from it as well.
2021-07-17 20:02:21 +02:00
Eladash
a981c65d2f
Minor fixup of vm::ptr
...
const pointers shouldn't disable reading, they should disable writing.
2021-07-17 20:02:21 +02:00
Eladash
81805945ce
LV2: Fix IPC key reading from attributes
2021-07-17 20:02:21 +02:00
clienthax
7fe15f5f8d
Stub sys_fs mount functions for vsh ( #10561 )
...
Co-authored-by: Eladash <elad3356p@gmail.com>
2021-07-17 19:19:13 +02:00
clienthax
9c5c4457b6
Stub libfs_utility_init to bypass FSCK checks by vsh.
2021-07-17 18:56:07 +02:00
clienthax
1e605de31e
sys_sm_get_ext_event2 stub
2021-07-17 18:35:26 +02:00
Eladash
1e9afdc289
Formatting Library: Implement byte arrays formatting
2021-07-17 18:10:43 +02:00
Eladash
8e2c34a003
PPU debugger: Implement PPU calling history
2021-07-17 17:28:23 +02:00
clienthax
c2f0fbcd82
Stub sys_io for vsh.
2021-07-17 17:06:57 +02:00
clienthax
85b33e9cae
Hack for msmw2.sprx timeout.
2021-07-17 14:39:36 +02:00
kd-11
aaac4c1bde
Clang workaround for c++20 non-compliance
2021-07-15 18:05:35 +03:00
kd-11
974a3c8807
Fix linux build
2021-07-15 18:05:35 +03:00
kd-11
369f1132f3
Formatting fixes
...
- Non-functional stuff, move along
2021-07-15 18:05:35 +03:00
kd-11
2524c35638
vk: Improve handling of texture cache temporary resources
...
- Temp resources from the texture cache are used to hold composite objects being sent to the GPU and can waste a lot of memory.
- Remove them if we run out of memory as they can linger around for a long time.
2021-07-15 18:05:35 +03:00
kd-11
d906ccc77e
vk: Switch on the new VRAM management system
2021-07-15 18:05:35 +03:00
kd-11
a2f93b0696
rsx: Implement a simple cache eviction routine
...
- Can remove all non-essential textures from the cache except those passed as an exclusion list
2021-07-15 18:05:35 +03:00
kd-11
77c9dff054
vk: Minor whitespace fix
...
- Non-functional formatting and warning fixes
2021-07-15 18:05:35 +03:00
kd-11
09f9f21261
vk: Add overallocation quota for texture cache
2021-07-15 18:05:35 +03:00
kd-11
5f6d1644cf
vk: Refactor VkTextureCache by moving most of the code to cpp file
...
- Makes adding next set of changes easier
2021-07-15 18:05:35 +03:00
kd-11
c18e5e07cc
vk: Implement VRAM spilling
...
- The idea is to shift memory to "shared graphics memory" when VRAM is running out
2021-07-15 18:05:35 +03:00
kd-11
000414c47d
vk: Refactor surface cache by moving code to cpp file
2021-07-15 18:05:35 +03:00
kd-11
2ffa8f4623
vk: Rename rsx::vk_render_targets to vk::surface_cache
...
- Makes some changes much easier going forward to pull in vk-specific stuff into vk namespace.
- TODO: The same thing needs to happen with GL
2021-07-15 18:05:35 +03:00
kd-11
53c9fb3e00
vk: Improve memory load balancing and reporting
...
- Track pool usage
- Take allocation percentages into account when making decisions on whether there is overloading or not
2021-07-15 18:05:35 +03:00
kd-11
342b25d00e
vk: Expose memory heap sizes to the runtime.
...
- This will help to make decisions regarding VRAM utilization instead of relying on budget blindly
2021-07-15 18:05:35 +03:00
kd-11
88abf3a6ba
vk: Introduce the concept of VRAM allocation pools
...
- Each buffer or image has to declare which pool it belongs to. This will aid with memory management down the line.
2021-07-15 18:05:35 +03:00
kd-11
71a5e5333a
rsx: Fix invalid reference when purging unlocked sections
2021-07-15 18:05:35 +03:00
RipleyTom
a34201ebff
Fix deref in sceNpMatching2CreateContext ( #10539 )
2021-07-14 00:11:14 +01:00
Eladash
6a7324ab3e
kernel_explorer: Atomic PPU state updates
2021-07-10 22:20:37 +03:00
Megamouse
fcbacf8afd
sys_usbd: add PlayTV SCEH-0036
2021-07-08 22:06:48 +02:00
Megamouse
e75de44907
cellGame: treat media apps as CELL_GAME_GAMETYPE_HDD
...
This is kinda hacky but it fixes some errors in PlayTv
2021-07-08 22:06:48 +02:00
Megamouse
161fa95066
cellGame: improve logging
2021-07-08 22:06:48 +02:00
Megamouse
8f8605ab2f
Mount bdvd_dir regardless of patch category
2021-07-08 22:06:48 +02:00
polar
285b9dad83
Refactor faudio submodule ( #10397 )
...
* updated bad header import
* added faudio shared library option
2021-07-08 21:31:45 +02:00
Megamouse
e212f16962
sceNp: fix invalid ctx dereference
...
Fixes "Buzz! Quiz Player" Offline Gameplay
2021-07-01 23:09:23 +02:00
kd-11
194bfc54d1
rsx: Implement dynamic vertex offset updates
...
- Vertex offsets can be updated mid-draw to dynamically render different meshes without breaking up draws
2021-06-30 10:07:33 +03:00
Eladash
9b050a33e4
Fix HLE callbacks within context of HLE PPU stack variables
2021-06-28 14:31:28 +03:00
Eladash
b6fccee6a4
Improve ppu_thread::stack_push
...
Save actual stack memory allocation size locally. (not in PS3 memory)
2021-06-28 14:09:24 +03:00
Eladash
23468a2d07
vm_ptr.h: Use concepts
2021-06-28 14:01:58 +03:00
kd-11
2c7c1c501d
rsx: Implement support for extended vertex programs
...
- Some games are kinda pushing it with RSX register space and spilling VP data into adjacent unused space.
2021-06-28 10:52:05 +03:00
Eladash
dcb2e8cd9e
rsx: Improve VBLANK accuracy
2021-06-27 16:39:08 +03:00
Nekotekina
571bdfc828
Fixup for #10490
...
Restore explicit signaling of RSX thread for now.
2021-06-27 14:02:32 +03:00
Eladash
0aed00a758
Improve thread aborting mechanism ( #10490 )
...
Call pseudo-virtual operator=(thread_state) of thread context.
2021-06-27 11:43:48 +03:00
Eladash
58847fa2ca
sys_fs: Fix ENOTMOUNTED of open
2021-06-26 14:53:22 +03:00
Kilowog01
d59707bc4b
Trophy notification improvements ( #10482 )
...
* Makes the text more similar to the original PS3 trophy notification.
2021-06-25 16:25:44 +03:00
kd-11
926fa73fee
vk: Remove unused input from attachment clear pass
2021-06-25 14:45:36 +03:00
kd-11
cd8cb9cced
rsx: Don't leak data during partial clears
...
- Partial clears either in active clear channels or scissor region must get barrier inserts to load previous data.
- Fixes some incorrectly discarded data during clear where data in untouched/uninitialized channels is lost.
2021-06-25 14:45:36 +03:00
Megamouse
b6128c5dfa
cellSearch: extend media_info for video files
2021-06-25 09:41:32 +03:00
Megamouse
68a1da31a0
cellSearch: move audio info to separate util file
2021-06-25 09:41:32 +03:00
Megamouse
7e0f2f9b12
sceNp: add some more constants
2021-06-25 09:41:32 +03:00
Eladash
50be3bd2e5
kernel-explorer: devirtualize lv2_fs_object and print more information ( #10487 )
...
* Make lv2_fs_object an "abstract" structure with protected constructor.
* Improve kernel-explorer information for filesystem objects.
2021-06-24 16:47:14 +03:00
Nekotekina
3c614d95b8
fs: alternative fs::pending_file implementation (Win32)
...
Use MOVEFILE_WRITE_THROUGH instead of sync() on commit().
2021-06-20 22:08:24 +03:00
Eladash
aaa20c0ff0
cellCamera/cellGem: Fix time stretching setting ( #10476 )
2021-06-20 21:25:13 +03:00
Eladash
0531b3d801
rsx: Fix emulation stopping in cpu_thread::is_paused poll ( #10475 )
...
Ignore pause flags if thread is stopped.
2021-06-20 20:00:12 +03:00
Eladash
bbaa93c846
RSX Cache: Prevent crash on failure to obtain cache directory ( #10474 )
2021-06-19 16:57:07 +03:00
Nekotekina
72680c7707
sys_fs: improve sys_fs_open accuracy for /dev_bdvd
...
Based on software test.
2021-06-18 17:47:49 +03:00
Eladash
039ca6e839
Fix cellMouse/Keyboard initialization
2021-06-17 20:43:43 +02:00
kd-11
9fadd48ea3
vk: Ensure async scheduler thread is never auto-spawned by fxo
...
- This thread is a resource hog for design reasons.
2021-06-17 00:43:20 +03:00
kd-11
4bf9700562
rsx: Remove unused variable leftover from refactoring
2021-06-17 00:43:20 +03:00
kd-11
966aec7ad7
rsx: Resync excluded memory regions to avoid memory tests failing after flush events
...
- This is a mostly correct fix, but a corner case exists that can leak old data to the surface cache
2021-06-15 15:42:16 +03:00
kd-11
78972cd611
rsx: Refactor surface inheritance logic
2021-06-15 15:42:16 +03:00
Eladash
24e4a43ec4
lv2_timer: manage timers by separate thread ( #10445 )
...
Substitutes missing abort op for lv2_obj manager.
2021-06-15 15:04:51 +03:00
kd-11
c3415bcff2
rsx: Fixup for byte order when passing data via vertex registers that are not inline arrays (register vertex data and push buffers)
2021-06-14 23:20:35 +03:00
kd-11
d3ff67ffb5
rsx: Pass vertex attributes streamed via register write in PS3-correct format
...
- TODO: Optimize this, we can avoid the double bswap in FIFO and then in attribute push
Not very important since nobody is doing register push in high-performance path.
2021-06-14 10:24:03 +03:00
Eladash
cb0929d933
Logs: Prevent minor race in Emu.Run() regarding logging levels
2021-06-12 13:14:04 +03:00
Eladash
76bfe54c7e
Improve bitwise serialization trait
2021-06-11 16:54:17 +03:00
Eladash
0628a5d931
serialization.hpp: Fixes
2021-06-11 08:59:02 +03:00
kd-11
cd6552d344
vk: Properly destroy renderpass cache
2021-06-09 22:35:50 +03:00
kd-11
20bd723e7c
rsx: Add floor workaround for GPUs with rounding issues
...
- Mainly affects nvidia where x/w * w can sometimes return a value smaller than x.
In such conditions, floor(x) will return x-1 if x is an integer which is horribly wrong and exaggerates minor precision drift to great proportions.
2021-06-09 10:55:55 +03:00
Nekotekina
2d3fe7ce1c
fixed_typemap.hpp: add range iterator
...
Remove recently added functions.
2021-06-09 00:07:15 +03:00
Eladash
c918f395b9
Make rsx::simple_array compatible with serialization
2021-06-08 19:29:46 +03:00
Eladash
4a4f318e24
System.cpp: Move some Emu.Stop() code to a more strategic placement
2021-06-08 19:29:46 +03:00
Eladash
76bf720adf
Improve emulation stopping speed
...
Split phases of signalling threads and joining them.
2021-06-08 18:26:14 +03:00
Eladash
2169e8d935
Implement serialization.hpp, remove cereal submodule
...
Bump RSX capture version, use new serializer.
2021-06-07 16:28:42 +03:00
kd-11
ddbe496097
rsx: Fix depth/color mismatch resolve in texture cache
...
- Sometimes we need a depth texture but only a color texture is available.
2021-06-07 01:03:49 +03:00
kd-11
3f80d0b7d8
rsx: Fix surface deduplication crash
2021-06-07 01:03:49 +03:00
kd-11
568af756cc
rsx: Fix expired sampler descriptors
...
- Rebuilding when strict mode is enabled was incomplete.
The copy has to be redone if the source has been updated.
2021-06-06 15:37:47 +03:00
xddxd
b5f1f50a16
Get rid of mobile Kepler class and add some missing GPUs
2021-06-06 08:07:43 +02:00
kd-11
6ac9e6f9c4
gl: Add some debug visualization to internally verify consistency
2021-06-05 21:02:14 +03:00
kd-11
39815801aa
rsx: Implement proper decoding for some obscure fragment instructions
...
PK4UBG and UP4UBG were dropped from the NV_fragment_program spec in 2002.
Not much information about them remains but seems pretty straightforward.
2021-06-05 21:02:14 +03:00
Eladash
11ab9b7fa9
Fix sys_event_flag_wait result set ( #10404 )
...
Set result upon syscall exit, not at the beginning.
2021-06-05 16:41:02 +03:00
Eladash
a7f1e788e6
Fix missing game licence logging ( #10402 )
2021-06-04 20:06:04 +02:00
Nekotekina
f2d6b52561
Fix span copy after refactoring
...
- Add range check at fast path.
- Fix typo in element by element copying.
Should fix #10385
2021-06-01 21:18:25 +03:00
kd-11
98f534b1bd
vk: Rewrite partial clear shader
...
- Completely removes the feedback loop and replaces with hardware channel masking
2021-06-01 12:54:10 +03:00
kd-11
f85881c18c
vk: Enable use of input attachments
2021-06-01 12:54:10 +03:00
Megamouse
ac83871214
impressive typo fix
2021-05-31 23:01:13 +03:00
Nekotekina
a1608b636f
span: implement as_span workarounds as utils::bless
...
Minor cleanup.
2021-05-31 15:46:34 +03:00
Nekotekina
d862817485
vm::ref: remove erroneous default constructor
2021-05-31 15:31:20 +03:00
kd-11
4a32b70aec
vk: Validate pipeline state before compiling in case of shader cache moved between GPUs/drivers
2021-05-30 22:35:34 +03:00
kd-11
9199b1b1d8
vk: Improve compatibility with sub-par drivers and hardware
...
- Adds workarounds for INTEL + MSAA
- Adds support for younger drivers where all features may not be
implemented.
Things that won't out-right break the emulation can be
disabled.
2021-05-30 22:35:34 +03:00
Ani
a49446c9e9
Replace gsl::span for std::span (c++20) ( #7531 )
...
* Replace gsl::span for std::span (c++20)
* Replace gsl::byte with std::byte
Co-authored-by: Bevan Weiss <bevan.weiss@gmail.com>
2021-05-30 17:10:46 +03:00
Eladash
d81a5b1423
SPU LLVM: Add missing WRCH PC updates
2021-05-29 15:26:52 +03:00
Megamouse
a2da525064
cellVdec: silence "Unsupported time_base" error log spam
2021-05-29 12:46:21 +02:00
Malcolm Jestadt
7c2b08b9b6
SPU LLVM: Expand branch optimizations for more instructions
2021-05-29 13:07:35 +03:00
Megamouse
99af70ae59
Include limits.h
2021-05-29 10:09:56 +02:00
Megamouse
5a0b93742c
overlays: move more code to cpp
2021-05-29 10:09:56 +02:00
Megamouse
f18e80e899
fix some warning spam
2021-05-29 08:17:30 +02:00
Megamouse
210999b874
perf_overlay: fix guide line locations
...
The guide lines falsely started from the top and not from the bottom, as all datapoints do.
2021-05-29 08:17:30 +02:00
Megamouse
046d029e89
try to fix pad interception
2021-05-29 07:43:09 +02:00
Eladash
7d89938624
cellPad: do not use recusrive mutex
2021-05-28 20:25:16 +03:00
Eladash
6ff9aab2ca
Fix cpu_thread::check_state() cpu_flag::temp support
2021-05-28 20:25:16 +03:00
Eladash
5f47730fc0
Fix reservations handling in logs
...
Remove reservation cb.
2021-05-28 20:25:16 +03:00
kd-11
9e62e98f79
rsx: Minor refactoring ( #10358 )
...
- Fix some misnomers.
- Allow finer grained control over texture section creation routines.
2021-05-27 23:44:07 +01:00
kd-11
763828837b
vk: Forcefully unmap DMA blocks before destroying them ( #10359 )
...
- While the vulkan spec explicitly allows destroying mapped blocks, GPUOpen vma_alloc does not.
- Strangely, this issue does not afflict linux users, only windows.
2021-05-27 23:03:46 +01:00
kd-11
f9d9d12f11
vk: Fix slow bo upload + copy when using RADV
...
- This reverts commit dbcf1b5a03bfef18f404aa6827515af319abd744.
- Avoid unmapping buffers used for GPU upload/download. It is very slow
on some platforms.
2021-05-27 22:49:13 +03:00
kd-11
56f7359da4
vk: Workaround for slow bo transfer (pinned<->VRAM) when using RADV
...
- perf shows extremely high number of cycles wasted in memmove glibc method
2021-05-27 01:27:15 +03:00
Megamouse
6fed80333c
perf_overlays: only calculate metrics on update
...
This should give a significant performance boost
2021-05-26 23:26:12 +02:00
Megamouse
befd38d9ae
perf_overlays: only compile dirty graphs
...
This should give a small performance boost
2021-05-26 23:26:12 +02:00
Megamouse
98b668b3a8
perf_overlays: add avg and 1p high/low
2021-05-26 23:26:12 +02:00
Eladash
f103004aa0
sys_prx/overlay: Fix disambiguator of module names opened by FD ( #10340 )
...
Don't append zero offset.
2021-05-26 23:38:17 +03:00
Megamouse
83d3658ef0
scale debug overlay based on current dpi settings
...
Depending on the dpi settings, the debug overlay was almost unreadable.
I also took the liberty to refactor some redundant client size calls and to add some margin to the left of the debug text.
2021-05-26 20:31:29 +02:00