Commit graph

15165 commits

Author SHA1 Message Date
Megamouse 412db758e8 cellRtc: review fixes 2024-04-08 13:50:58 +02:00
Megamouse f617f69be8 cellRtc: remove wrong duplicate pos++
This would have increased pos by one too many.
2024-04-08 13:50:58 +02:00
Megamouse b81d278aee cellRtc: implement Rfc3339 part of cellRtcParseDateTime 2024-04-08 13:50:58 +02:00
Megamouse aee4bfa369 cellRtc: simplify some disassembly code 2024-04-08 13:50:58 +02:00
Megamouse 08837d2cd0 cellGame: add some more error checks 2024-04-05 23:36:37 +02:00
Megamouse 9a4c823366 cellCamera: fix config from_string 2024-04-05 20:22:45 +02:00
Megamouse 7f3ad4fc2c lv2_socket: reset queue after move 2024-04-05 19:41:41 +02:00
Megamouse 9e7b759236 cellGame: Enable disc insert/eject based on disc mount state 2024-04-05 14:45:10 +02:00
Elad Ashkenazi 3dc1dfa4a2
Fix typo in lv2_socket_native 2024-04-04 22:47:01 +02:00
RipleyTom 95e0d1a560 Fix changelog size hack 2024-04-04 22:31:29 +03:00
Eladash 8effbf7e4d Savestates/Network: Feign connection failure on startup 2024-04-04 17:28:46 +03:00
RipleyTom 72ad1abd39 Fix updater message 2024-04-04 07:45:08 +03:00
Eladash 2a89d87fab Savestates/SPU: Fix MFC commands abort 2024-04-03 15:03:39 +03:00
Eladash 33eeee0ff2 SPU Debugger: Implement viewing block hash on request 2024-04-03 15:03:39 +03:00
Eladash 3c46388be5 SPU LLVM: Fix store elimination within common blocks
GPR register barriers were ignored in that case.
2024-04-03 15:03:39 +03:00
Eladash d37b9497a2 Replace some URLs 2024-04-03 15:03:39 +03:00
Eladash 17512f2a28 Updater: Add RPCS3's Patreon link to update dialog 2024-04-02 21:48:08 +03:00
Eladash 597a9f6dd6 PPU Loader: Fix unload of HLEd PRX modules 2024-04-01 12:20:38 +03:00
Eladash e90b399329 PPU LLVM: Fix leak of modules outside dev_flash/sys/internal
Cache path was not matching on removal
2024-03-30 21:58:26 +03:00
Eladash 7c8be662c6 SPU LLVM: Postpone runtime worker threads init
They may not be active at all unless a ps3 application is booted.
2024-03-30 21:58:26 +03:00
Eladash e38b005a8b PPU LLVM: Unify memory limit for PRX and Overlay files 2024-03-30 21:58:26 +03:00
Eladash f0abb4473e PPU LLVM: Fix memory leak on precompilation 2024-03-30 21:58:26 +03:00
oltolm d62e90f5b4 use the pass manager instead of the legacy one 2024-03-30 05:06:29 +03:00
Eladash 4ecf8ecd06 Fix savestate reload functionality 2024-03-29 13:25:51 +03:00
Eladash 9a3b72f762 Savestates/SPU: Partially publicize SPU-Compatible functionality 2024-03-29 13:25:51 +03:00
Eladash 7285af4771 SaveStates: Add error messages on screen 2024-03-29 13:25:51 +03:00
kd-11 ec37e8f0dc rsx: Fix loading mid-draw call savestates 2024-03-29 08:15:38 +03:00
Eladash 41f05f6864 LV2: Silence logging of semaphore 2024-03-28 16:24:47 +02:00
Eladash cc2fa94fa1 PPU: Fix logging of sys_interrupt syscalls 2024-03-28 16:24:47 +02:00
Eladash 2f579311b8 LV2: Silence logging of mutex and cond syscalls 2024-03-28 16:24:47 +02:00
oltolm ac034040ce workaround Clang 18.1 crash 2024-03-28 08:45:20 +01:00
oltolm 59410b9d62 fix compiler warnings 2024-03-28 08:45:20 +01:00
oltolm 6f665da016 main.cpp: remove outdated code for MSVC 19.27 2024-03-28 08:45:20 +01:00
oltolm c567c92d4b fix GCC warnings 2024-03-28 08:45:20 +01:00
oltolm 75b2dfa66d cmake: fix MSVC build 2024-03-28 08:45:20 +01:00
oltolm c40826c140 llvm: update to 18 2024-03-28 08:45:20 +01:00
kd-11 175aa510c8 rsx: Make overlay manager default lock-state exclusive 2024-03-28 08:08:21 +01:00
kd-11 236ac7d062 rsx: Fix race conditions on removals 2024-03-28 08:08:21 +01:00
kd-11 00f1b2bfa7 rsx: Rewrite fragment shader invalidation test 2024-03-28 08:08:21 +01:00
kd-11 a9fad83971 rsx: Fix memory range invalidation 2024-03-28 08:08:21 +01:00
kd-11 1550dc7f1f Fix audit crash in games where hash strategy is heavily used 2024-03-28 08:08:21 +01:00
Megamouse bbb4c109d7 audio: allow to choose channel layouts 2024-03-28 07:17:26 +01:00
Eladash a6fa091ab3 Savestates/RSX: Save pending flip 2024-03-27 19:59:22 +02:00
Eladash 6a1fa88e15 PPU: Fixup savestate prio bit usage 2024-03-27 19:59:22 +02:00
Eladash 787e79c687 util\serialization_ext.cpp: Fixup 2024-03-27 19:59:22 +02:00
Eladash 7468d96c51 Savestates: safe saving while cellSaveData is active 2024-03-27 19:59:22 +02:00
Eladash 9c9ece3d95 SPU LLVM: Fix Forwarding GPR stores savestate safety 2024-03-27 19:59:22 +02:00
Eladash 2023057fbb Savestates: Reduce logging 2024-03-27 19:59:22 +02:00
Eladash 94c048d018 SPU LLVM: Add assert for MFC abort 2024-03-27 19:59:22 +02:00
Eladash e126af63ed Silence cellGemGetState 2024-03-27 19:59:22 +02:00
Eladash 750359d780 Fixup emulation stopping 2024-03-27 19:59:22 +02:00
Eladash 8588b2b11a vm: Fix writer lock leak 2024-03-27 19:59:22 +02:00
kd-11 4594c912a6
rsx: Move SPIRV stuff into common code 2024-03-27 19:20:21 +02:00
Megamouse afcfd81496 GL: fix segfault in GLGSRender::flip 2024-03-27 16:44:52 +01:00
Eladash efbf044ea0 Savestates/PPU: Fix PRX relocations 2024-03-26 21:35:53 +02:00
Eladash 46a1c09abe Savestates: Minor logging message 2024-03-26 21:35:53 +02:00
Eladash 6a3e795d73 Fix shutting down emulation while save-stating 2024-03-26 21:35:53 +02:00
Eladash e0f08cd5c1 SPU: Make STOP a safe return instruction 2024-03-26 21:35:53 +02:00
Eladash a539308545 Savestates: Make locking SPU threads more reasonable
Avoid locking in hopeless cases. Extend waiting time to more than 2 seconds.
2024-03-26 21:35:53 +02:00
Eladash 3364a46139 PPU LLVM: Remove cast to constant 2024-03-26 21:35:53 +02:00
Eladash fb4e64d15e Savestates/SPU: Extend RCHCNT safe returns 2024-03-26 21:35:53 +02:00
Eladash 68349e48cd Savestates: Save PPU running order 2024-03-26 21:35:53 +02:00
Eladash 4dff8b16f1 Silence logging of cellScreenShot 2024-03-26 21:35:53 +02:00
Megamouse 9245565085 cellAudio: log backend channel count 2024-03-26 16:56:17 +01:00
Megamouse 86ca381a3c Qt: Rename Navigation controller to PS Move Navigation 2024-03-26 16:56:17 +01:00
Megamouse a7952e15c7 cellPad: simplify for loops 2024-03-26 16:56:17 +01:00
Megamouse 643f81b5db cellPad: move getters to where they are actually needed 2024-03-26 16:56:17 +01:00
Megamouse cf5a66a204 cellMic: add nullptr check for data in cell_mic_read
Also rename S to Size for readability
2024-03-26 13:50:43 +01:00
Megamouse e05239f3d9 Fix some warnings 2024-03-26 12:26:26 +01:00
Megamouse 59dc5dcd54 Update wolfssl to 5.7.0 2024-03-26 12:26:26 +01:00
Elad Ashkenazi adedc7c667 Savestates/SPU: Add RCHCNT as a safe return in compatiblity mode 2024-03-25 12:05:24 +02:00
Elad Ashkenazi 29ad568791 Fix ppu_thread::serialize_common 2024-03-25 12:05:24 +02:00
Elad Ashkenazi 453a3c4852 Fixup Savestate Segfault 2024-03-25 12:05:24 +02:00
Elad Ashkenazi 2e824827b7 Fixup Savestate Progress 2024-03-24 20:58:51 +02:00
Eladash 3393d13b67 Reduce compression level to 8 for faster compression 2024-03-24 16:19:06 +02:00
Eladash 1da7689526 util\serialization_ext.cpp: Fix queued data with no output 2024-03-24 16:19:06 +02:00
Eladash 806758d06f Fix NPD files decryption in decryption tool 2024-03-24 16:19:06 +02:00
Eladash 580f9bf03a GUI: Progress Dialog On Save State Creation 2024-03-24 16:19:06 +02:00
Eladash 707a648a4c utils: Fix shared_ptr::store/exchange 2024-03-24 16:19:06 +02:00
Eladash 213a19c9f3 Add logging for CallFromMainThread 2024-03-24 16:19:06 +02:00
Elad.Ash e32ed90d21
PPU LLVM: Remove one external symbol resolve for BLR 2024-03-21 15:56:31 +02:00
Eladash 2f822abb47 PPU LLVM: Use symbol resolver function to resolve functions 2024-03-20 12:48:31 +02:00
Eladash 1ca83bc629 PPU DisAsm: Fixup conditional indirect branches disasm 2024-03-20 12:48:31 +02:00
Eladash 40adf4b944 HLE: clear lower bits of Free Disk Space value 2024-03-14 11:10:45 +01:00
Megamouse 2aad5a7f3a Qt: add search bar to save manager 2024-03-13 18:42:42 +01:00
Megamouse 0f29a5be9f Qt: replace refresh progress slot with timer
For some reason setValue crashes in the progressValueChanged slot for no apparent reason
2024-03-13 00:24:42 +01:00
RipleyTom 397c2698ae Fix sceNpScoreGetRankingByNpId 2024-03-12 09:36:31 +02:00
Megamouse 0f00bb77fe Qt: only connect refresh watcher signals once 2024-03-11 23:04:09 +01:00
Megamouse a73303a047 Qt: remove redundant progress dialog code. This already happens in Refresh 2024-03-11 23:04:09 +01:00
Megamouse bb809c865f VS: move libpng, libusb and hidapi lib output to proper build configiguration dir
This allows us to properly build debug and release without having to delete the libs in between
2024-03-11 12:39:39 +01:00
Megamouse 37dd1b3ed0 VS: fix linking XAudio in debug builds 2024-03-11 09:02:01 +01:00
RipleyTom fd583dbbc3 Cleanup and set -Werror=delete-non-virtual-dtor 2024-03-11 02:30:18 +02:00
Megamouse d8d0af2bb3 rsx: Fix invalid iterator comparison (asserts on debug builds)
Also make ranged_map::count const
2024-03-11 00:03:00 +01:00
Megamouse b176085e14 GL: fix debug build: creation of QOffscreenSurface sends signals from wrong thread 2024-03-11 00:03:00 +01:00
Elad.Ash 4cfdb71d3a
LV2: Longer thread creation delay for low prio threads 2024-03-09 23:37:35 +02:00
Megamouse 38590e321e Qt: accept downloader progress dialog instead of closing it
Otherwise we get the canceled signal which is only meant for user interaction
2024-03-09 20:07:37 +01:00
Megamouse a09900a64f Qt: make sure to actually delete the progress dialog when it is closed
Also add some more cleanup code for the gamelist refresh progress dialog
2024-03-09 20:07:37 +01:00
Megamouse 4a7d982a2b Qt: make sure the gamelist refresh progress dialog runs on the main thread 2024-03-09 20:07:37 +01:00
Megamouse ee69468104 Qt: replace sstr with regular toStdString 2024-03-09 20:07:37 +01:00
Megamouse 4739ab58cc Qt: fix weird return value warning on VS 2024-03-09 20:07:37 +01:00
Megamouse be5b982e45 Qt: don't close the progress dialog if it is already being closed anyway
Maybe this fixes some strange crashes that appear for some people.
2024-03-09 15:18:20 +01:00
Megamouse 86ad4ed6c1 Qt: check for updates if the update message is empty
This happens for example if the user canceled the earlier check
after the update was already known, leaving us in a somewhat dirty state.
2024-03-09 15:18:20 +01:00
Megamouse 3056a4db83 Qt: don't deleteLater the progress_dialog
It's already deleted on close by Qt anyway.
Also, remove QObject from curl_handle.
2024-03-09 15:18:20 +01:00
Eladash adc8a360ad SPU LLVM: More compilation threads 2024-03-08 11:40:38 +02:00
Eladash 719dafa679 SPU LLVM: Notify workers prematurely if there is considerable excess 2024-03-08 07:21:48 +02:00
Eladash ecf7d4e59d SPU LLVM: Postpone cache writes until compiled 2024-03-08 07:21:48 +02:00
Eladash 45863bc7c5 SPU analyzer: Detect 'argument passing' block before the function 2024-03-07 18:46:51 +02:00
Eladash ea0545779a SPU: Include BRSL following code in is_exec_code() 2024-03-07 18:46:51 +02:00
Eladash e625bab7eb SPU Analyzer: Detect more tail calls by examining called code 2024-03-07 18:46:51 +02:00
Eladash 2930d609ea SPU: Detect invalid STOP codes (code mining) 2024-03-07 18:46:51 +02:00
Eladash 069ca214ff SPU: Improve compilation message 2024-03-07 18:46:51 +02:00
Eladash d699db2d19 SPU Analyser: Detect invalid relative branches 2024-03-07 18:46:51 +02:00
Eladash 8e15de5c83 sys_tty: Try to avoid logging single newlines to log 2024-03-07 14:31:41 +02:00
Eladash 69a90ef9e7 rsx/cpu_thread: Fix cpu_thread::get_name() for RSX 2024-03-07 14:31:41 +02:00
Eladash d39361705a report_fatal_error: Minor cleanup and improvement 2024-03-06 20:32:22 +02:00
Eladash 4512c10ce5 init_mutex.hpp: More fixes 2024-03-06 20:32:22 +02:00
Ordinary205 64d28ba435 Increase vblank rate 2024-03-06 18:50:51 +02:00
Eladash b64b98490e init_mutex.hpp: Fixup 2024-03-06 16:06:04 +02:00
Eladash f40602cc59 cellGame: Fix PPU deadlocks on concurrent execution 2024-03-06 09:45:37 +02:00
Ani ef8afa7873 rpcs3_version: Bump to 0.0.31 2024-03-05 00:40:22 +01:00
nastys df4fc947ec
Improve macOS < 14.3 Rosetta blocker message (#15258) 2024-03-01 20:01:21 +01:00
InvoxiPlayGames eecfbf3fa6 add Wii Harmonix instruments to whitelist 2024-03-01 19:07:02 +01:00
Elad.Ash cfbe7669b4 Update serialization.hpp 2024-03-01 14:58:48 +02:00
Elad.Ash ccaeb87b01 Update serialization.hpp 2024-03-01 14:58:48 +02:00
Elad.Ash fc98f35ea7 Update serialization.hpp 2024-03-01 14:58:48 +02:00
Elad Ashkenazi 998f867c29 serialization.hpp: Fix HLE serilization 2024-03-01 14:58:48 +02:00
capriots eb8325afcb
cellPamf implementation (#15143) 2024-02-29 21:45:28 +01:00
RipleyTom 7674c29c78 Fix for sceNpScoreGetGameData 2024-02-29 15:12:22 +02:00
RipleyTom 573734fab8 Send initial presence for offline friends. 2024-02-28 17:41:25 +01:00
Megamouse 2cbd983b4c GL: remove unused params 2024-02-28 14:25:20 +01:00
Megamouse 18983f5476 Fix warnings: Remove unused decryption code 2024-02-28 14:25:20 +01:00
Elad.Ash 75ef154c12
SPU LLVM: Improve runtime SPU compilation preferences (#15250) 2024-02-28 08:28:49 +02:00
RipleyTom 414a354511 Improve cellSysutilAvc2SetAttribute logging 2024-02-28 02:14:37 +01:00
RipleyTom 2168511e5b Add check for score transactions being reused 2024-02-28 02:14:37 +01:00
Mrlinkwii f64d6bc687 Misc: Update FW Latest Version 2024-02-27 12:52:53 +01:00
oltolm 3e83729cb2 xaudio2: use system library instead of xaudio2redist 2024-02-27 05:21:32 +02:00
kd-11 83256cdacb Make clang happy 2024-02-26 18:15:06 +03:00
kd-11 f748fe688c gl: Allow selecting FSR1 upscaling from the settings 2024-02-26 18:15:06 +03:00
kd-11 188f5c7c3c gl: FSR1 cleanup, making it functional 2024-02-26 18:15:06 +03:00
kd-11 838346e4f7 gl: Always log the current renderer visibly. 2024-02-26 18:15:06 +03:00
kd-11 12dc03a903 rsx: Improve simple array performance for small objects
- Also adds map/collect transformation
2024-02-26 18:15:06 +03:00
kd-11 e17c2f2397 gl: Fix compilation 2024-02-26 18:15:06 +03:00
kd-11 071baf63b0 rsx: Implement FSR1 integration for OpenGL 2024-02-26 18:15:06 +03:00
kd-11 1795d5bcc9 gl: Rework the upscalers a bit and define the FSR interface 2024-02-26 18:15:06 +03:00
kd-11 27125c6f72 gl: Remove upscaling 'dst' binding and clean up some awful code in GLPresent 2024-02-26 18:15:06 +03:00
kd-11 12694dcf69 gl: Introduce the concept of scaling passes to the backend 2024-02-26 18:15:06 +03:00
kd-11 e7d8ef924f rsx/vk: Refactor FSR integration to support multiple backends 2024-02-26 18:15:06 +03:00
RipleyTom 0f682b7da1 Fix Apple Clang build 2024-02-24 20:54:55 +02:00
nastys 2b385f28f0
Block Rosetta on macOS 14.0, 14.1, and 14.2 (#15237) 2024-02-24 15:15:19 +01:00
RipleyTom ac8e914a25
improves sig_ctx handling, sys_net logging and fixes udpp2p protocol (#15235) 2024-02-24 12:40:53 +01:00
Megamouse 3067c86d65 gui/input: only init and quit SDL once for all instances
Calling SDL_Quit while two handlers are active can cause controllers to disconnect
2024-02-22 19:31:00 +01:00
Megamouse 96afc15fa2 gui/input; fix log message delta type 2024-02-22 19:31:00 +01:00
Megamouse 66f694bb39 gui/input: include Carbon.h on apple 2024-02-22 19:31:00 +01:00
Megamouse 06025cd19d gui/input: let pad handlers know whether they are part of emulation
Also fix unique_ptr vs shared_ptr nonsense in pad_threads
2024-02-22 19:31:00 +01:00
Megamouse fc698a4df2 gui/input: implement pad navigation for maxOs 2024-02-22 19:31:00 +01:00
Megamouse 2cd47c0415 gui/input: use uinput for linux in gui_pad_thread 2024-02-22 19:31:00 +01:00
Megamouse b032f2dd87 gui/input: add gui input with native events 2024-02-22 19:31:00 +01:00
RipleyTom 3acd442c2e sceNpBasicSendMessage fix 2024-02-22 05:33:29 +02:00
Megamouse 6b43e5c80e Qt: add Q_OBJECT macro to midi_creator
This fixes the localization of its strings
2024-02-20 10:06:02 +01:00
Megamouse 183380fe57 Qt: localize default pad names 2024-02-20 10:06:02 +01:00
kd-11 7abc5f3ead vk: Move driver properties to properties section from features section 2024-02-16 18:11:30 +03:00
Eladash f47c7e0ef1 PPU LLVM: Relax MSELF entry name constraints
These names are a hint
2024-02-16 10:42:57 +02:00
Eladash 36ab866c2c SPU Analyzer: forgive invalid code, use interpreter 2024-02-16 10:42:57 +02:00
Eladash f943deb2c3 PPU LLVM: Do not use possible duplicates in MSELF 2024-02-16 10:42:57 +02:00
Eladash 27ea25a999 Add debug info to ENOMEMs 2024-02-16 10:42:57 +02:00
Eladash 989b353fbd Fixup lv2_file::file_view::read() regression 2024-02-16 10:42:57 +02:00
Eladash c1607d14dc Add debug info to sys_fs_lseek 2024-02-16 10:42:57 +02:00
Eladash 85884d14cd PPU LLVM: Add more MSELF file checks
Do not crash on invalid files.
2024-02-16 10:42:57 +02:00
Eladash 08cf275bc8 Fix lv2_file::file_view::size() 2024-02-16 10:42:57 +02:00
Eladash 88ba3c47c2 ELF.h: Avoid using seek operations 2024-02-16 10:42:57 +02:00
Eladash 4aee44b1c0 sys_prx/overlay: Add some debugging steps 2024-02-16 10:42:57 +02:00
Megamouse e3d4c067df raw_mouse: adjust relative mouse position if the window size changed 2024-02-14 21:10:26 +01:00
kd-11 dfc626c99c rsx/vk: Fix WCB/Blit flush deadlock 2024-02-14 21:09:02 +03:00
kd-11 8786516c58 vk: Implement fast RSX release if there is no pending GPU work 2024-02-14 21:09:02 +03:00
Eladash 34e945128f Crypto\EDATA: Optimize decrypt_block to avoid an allocation 2024-02-14 15:11:52 +02:00
Eladash 7db6165b46 Fix lv2_file::file_view::read_at 2024-02-14 15:11:52 +02:00
Eladash 883f2e92ae EDATA: Add more logging 2024-02-14 15:11:52 +02:00
Eladash 3e8b003515 Add logging for cellFsSdataOpenByFd 2024-02-14 15:11:52 +02:00
Eladash ed66e9e9b9 Fix EDATADecrypter::ReadData 2024-02-14 15:11:52 +02:00
Eladash f87e11d16a Savestates/sys_fs: Save NPDRM decryption key 2024-02-14 15:11:52 +02:00
RipleyTom 5a64556fbf Add <optional> to RB3MidiDrums.h 2024-02-14 14:14:09 +02:00
Megamouse d71f4b33d7 raw_mouse: center cursors on init 2024-02-14 01:13:44 +01:00
Megamouse c91bc03532 sys_usbd: silence warning 2024-02-14 01:13:44 +01:00
Megamouse 348fab33a8 overlays: fix raw mouse debug overlay pos type 2024-02-14 01:13:44 +01:00
Megamouse 68f3df4975 input: implement raw_mouse_handler 2024-02-14 01:13:44 +01:00
Megamouse f6f8996aa9 overlays: use signed short for position to allow negative positions 2024-02-14 00:12:55 +01:00
nswarm 8533f962c6
Add limited support for midi drums w/ rockband 3 (#15054)
* add support for midi drums
* rb3drums: use dpad to disambiguate cymbal/drum hits instead of staggering.
* rb3drums: configurable min velocity and hihat up behavior
* rb3drums: configurable combos, combo duration, note overrides
* rb3drums: move config to separate file.
* rb3drums: apply stagger to double cymbal hits
* rb3drums: support midi CC note mapping
* rb3drums: add config to cmakelists. only load rb3drums config once.
* rb3drums: HihatWithPedalUp defaults to yellow cymbal instead of blue
2024-02-13 23:08:22 +01:00
RipleyTom af33c0c69f Revert FM(a*re_accurate) shortcut to relaxed 2024-02-13 20:08:03 +02:00
RipleyTom 50b1402d66 Fixes full fm(a, re_accurate) pattern 2024-02-13 11:37:20 +02:00
RipleyTom cfd5c62386 Improve re_accurate 2024-02-13 11:37:20 +02:00
RipleyTom 569f72c360 Disable updates for local build 2024-02-12 19:02:52 +01:00
kd-11 df74d49f72 vk: Silence compiler warning 2024-02-12 12:28:16 +03:00
xujibbs eac31dfd03 Update skylander_dialog.cpp
Make strings translatable
2024-02-12 09:54:07 +02:00
Megamouse 0b1a7ee346 overlays: localize sendmessage confirmation 2024-02-12 00:04:46 +01:00
Eladash 94239f5526 Fixup HW thread switch delay condition for performance 2024-02-11 23:01:40 +02:00
Elad.Ash 148edc005a Improve cpu_flag::yield handling 2024-02-11 20:09:01 +02:00
Elad Ashkenazi ec59f4d37e PPU/LV2: Implement HW threads switching delay when signaling higher priority threads
In real PS3 (it seems), when a thread with a higher priority than the caller is signaled and that there is available space on the running queue for the other hardware thread to start It prioritizes signaled thread caller's hardware thread switches instantly to the new thread code while signaling to the other hardware thread to execute the caller's code.
Resulting in a delay to the caller after such thread is signaled
2024-02-11 20:09:01 +02:00
kd-11 2c03878c3b vk: Don't panic on encountering the exotic mesa drivers 2024-02-11 17:21:56 +03:00
kd-11 c8c845a659 vk: Emit a strong warning if dozen is detected as the currently loaded driver.
- In most cases, the user does not intend to actually use dozen and has installed a compatibility pack by mistake.
2024-02-11 17:21:56 +03:00
kd-11 a54f1970f1 vk: Make more features "optional"
- This allows some non-conformant drivers to at least finish swapchain creation.
2024-02-11 17:21:56 +03:00
kd-11 7f602937a3 vk: Improve driver detection for dozen and lavapipe 2024-02-11 17:21:56 +03:00
kd-11 c2631c914d rsx: Lower some performance warnings to trace to reduce log spam 2024-02-11 14:24:33 +01:00
kd-11 c572226b0d Stop including x86 intrinsics in other architectures 2024-02-11 14:24:33 +01:00
kd-11 4746ef09cd Fix linux build 2024-02-10 15:15:02 +03:00
kd-11 ed93bbd16d vk: Improve compute->compute barrier before detiling 2024-02-10 15:15:02 +03:00
kd-11 041daab068 vk: Tighten some memory bounds checks 2024-02-10 15:15:02 +03:00
kd-11 e5c831a800 rsx/vk: Fix GPU tile encoding
- Decoding also needs some love, but currently WIP
2024-02-10 15:15:02 +03:00
kd-11 b8ed3eb824 rsx: Fix cpu detiler 2024-02-10 15:15:02 +03:00
kd-11 95f9f04612 rsx: Provide tile alignment utility (align to 64 * pitch blocks) 2024-02-10 15:15:02 +03:00
kd-11 823c72bf27 rsx/vk: Redefine the (de)tiler config interface 2024-02-10 15:15:02 +03:00
RipleyTom 9b387485b5 Avoid modifying any memory on SYS_NET_EINTR cases 2024-02-09 18:07:18 +02:00
RipleyTom 56e27bdd49 Restrict file creation in /dev_hdd0 2024-02-09 16:13:46 +02:00
Elad.Ash 30e8c3e951
SPU LLVM: Allow swapped FMA and multiplications args in match context 2024-02-07 13:45:29 +02:00
RipleyTom 65d93c97ea Add various SPU patterns 2024-02-06 22:08:44 +02:00
RipleyTom a92b8acba7 Accurate FI 2024-02-06 22:08:44 +02:00
Megamouse 85f4c38b4e Update submodules
- Updates SDL to 2.30.0
- Updates curl to 8.6.0
- Updates libusb to 1.0.27
- Updates zlib to 1.3.1
- Updates FAudio to 24.02
2024-02-05 23:47:38 +01:00
Eladash 40c51a1f05 Crypto/unedat.cpp: remove extract_all_data 2024-02-05 21:56:04 +02:00
Eladash a6c2e995af Crypto/PKG installer: Fix potential RAM shortage when extracing EDAT files 2024-02-05 21:56:04 +02:00
Eladash 596e671973 Crypto/sys_fs: Fix potential RAM shortage in NPDRM decryption
Previous code was structured very naively: if 8GB read is requested, it would allocate 8GB of memory. Without considering recycling memory for each block.
2024-02-05 21:56:04 +02:00
Eladash d38b2eb8ef Crypto/sys_fs: Remove some seek operations 2024-02-05 21:56:04 +02:00
RipleyTom bb9444e19a Add sceNpPlus to registered modules 2024-02-05 15:28:38 +01:00
RipleyTom 26d406fec3 RPCN 1.1 2024-02-05 09:44:29 +01:00
Megamouse dda0b8af45 cellGem: Allow to use multiple controllers as fake PS-Move
- Allows to use the last 4 ports/players as PS Move in fake mode
- Should in theory react to re/disconnected controllers
- Should allow to use player 1-3 as normal controller simultaneously
2024-02-03 21:47:40 +01:00
Megamouse d5ce4e0f6b sceNp: fix atomic type 2024-02-03 17:59:19 +01:00
Megamouse e5cfe710fa sceNp: correct type for data attachment 2024-02-03 17:59:19 +01:00
Megamouse 2a0e2ce0a2 sceNp: don't preserve messages in sceNpBasicRecvMessageAttachment 2024-02-03 17:59:19 +01:00
Megamouse ef56433684 overlays: ask for user confirmation before sending an invite
This shows subject and body as well
2024-02-03 17:59:19 +01:00
Megamouse 8bc3a39586 sceNp: implement sceNpBasicAbortGui 2024-02-03 17:59:19 +01:00
Megamouse e13a671f86 sceNp: Implement sceNpBasicRecvMessageAttachment 2024-02-03 17:59:19 +01:00
Megamouse 48f82c75c1 np: fix signed/unsigned warning
who the heck thought returning signed on a counter makes sense...
2024-02-03 17:59:19 +01:00
Megamouse a5955657c5 overlays: add subject and body to recvmessage dialog 2024-02-03 09:45:55 +01:00
RipleyTom 319657e815 Review fixes 2024-02-03 08:45:29 +01:00
RipleyTom c589001dff Add player history 2024-02-03 08:45:29 +01:00
Megamouse c04cd2228e Qt: Show NP ID in rpcn dialogs 2024-02-02 19:05:56 +01:00
Megamouse cba51b4a5e rsx/glsl: use const for left/right 2024-02-02 10:07:23 +01:00
kd-11 8962ddca01 rsx/glsl: Fix typo 2024-02-02 10:07:23 +01:00
kd-11 1808a4373b rsx: Improvements to the video out passes
- Use shared VS for vulkan as well as GL
- Simplify binding model and give control back to the cpp side
2024-02-02 10:07:23 +01:00
kd-11 bb22afb7f1 gl: Vectorize GL_TEMP_IMAGE_SLOT expression 2024-02-02 10:07:23 +01:00
kd-11 ce571cb6ca vk: Allow indexed lookup for sampler and IA binding points in overlay passes 2024-02-02 10:07:23 +01:00
Megamouse ac9afbfede glsl: use fragCoord to decide interlacing 2024-02-02 10:07:23 +01:00
Megamouse 4e8130bd99 glsl: use textureSize instead of height 2024-02-02 10:07:23 +01:00
Megamouse 00c9321b1d glsl: use const in for params 2024-02-02 10:07:23 +01:00
Megamouse 8e8b582747 glsl: move anaglpyh to separate functions 2024-02-02 10:07:23 +01:00
Megamouse 6f2e843193 vk/gl: add amber-blue anaglyph (ColorCode 3D) 2024-02-02 10:07:23 +01:00
Megamouse 7d9460a560 vk/gl: cleanup formatting in glsl, move some common magic numbers to variables 2024-02-02 10:07:23 +01:00
Megamouse 32f2b14429 vk/gl: add interlaced 3D mode 2024-02-02 10:07:23 +01:00
Megamouse 651f8512eb vk/gl: add more anaglyph 3D modes 2024-02-02 10:07:23 +01:00
Megamouse 3dac7d16e7 vk/gl: unite video_out_calibration_pass fragment shader to new glsl 2024-02-02 10:07:23 +01:00
Megamouse 240f80b467 gl: add missing else in calibration pass fragment shader 2024-02-02 10:07:23 +01:00
Megamouse 17b5a36b59 Add update_helper.sh to VS filters 2024-02-02 10:07:23 +01:00
Megamouse ea326a5f29 overlays: clean up includes 2024-01-31 16:33:29 +01:00
Megamouse c271415328 sceNp: decrease some log levels from todo to warning 2024-01-31 16:33:29 +01:00
Megamouse f28c7d029c overlays: use timestamp for fade animations
Fixes jojo when using sceNp dialogs
2024-01-31 16:33:29 +01:00
Megamouse d7f317fa58 Add UI to sceNpBasicSendMessageAttachment and sceNpBasicAddFriend 2024-01-31 16:33:29 +01:00
Megamouse 3f2c34edd2 sceNp: silence some errors 2024-01-31 16:33:29 +01:00
Megamouse 566a8ac5ac scnNp: add ppu wait before opening blocking dialogs 2024-01-31 16:33:29 +01:00
Megamouse 71b5bc4fe6 sceNp: add more error checks 2024-01-31 16:33:29 +01:00
Megamouse a427783bac overlays: remove separators from send/recv dialogs 2024-01-31 16:33:29 +01:00
Megamouse 23dc6a44f6 overlays: implement native sendmessage dialog 2024-01-31 16:33:29 +01:00
Megamouse 9ef5a01de4 overlays: implement native recvmessage dialog 2024-01-31 16:33:29 +01:00
Megamouse cdfe3ee7c8 Name some threads 2024-01-31 16:33:29 +01:00
kd-11 c3c73c7e24 rsx: Allow native UI render even when we have pending draw calls if FIFO queue is empty. 2024-01-30 16:36:58 +03:00
RipleyTom af8d308a69 Terminate RPCN connection cleanly 2024-01-29 13:01:09 +01:00
Florin9doi a7da245656 Don't search games when the dialog is cancelled 2024-01-28 13:18:35 +01:00
RipleyTom e9713f9635 Fix sceNpCommerce2 init 2024-01-28 10:52:26 +01:00
Megamouse 3dbde04d18 sceNpCommerce: add init checks 2024-01-27 08:31:16 +01:00
Megamouse 1611588682 sceNpCommerce2: add some error checks 2024-01-27 08:31:16 +01:00
RipleyTom 93c72822a3 Fix Apple clang 2024-01-26 17:59:53 +01:00
RipleyTom 6f5bcf12c6 Arm version of trigger_write_page_fault 2024-01-26 09:32:15 +02:00
RipleyTom 07dba02897 FreeBSD workaround for libusb 2024-01-26 02:51:41 +01:00
RipleyTom db685879af Return no file to TSS apis 2024-01-26 02:51:41 +01:00
RipleyTom 94e8d6fe13 Mini sceNpCommerce2Init fix 2024-01-25 22:53:21 +01:00
Megamouse 0d1fbfb755 VFS: Fix some potential .back() segfaults 2024-01-25 17:03:58 +01:00
Megamouse 10c52cf569 sys_usbd: add libusb log callback 2024-01-25 17:03:58 +01:00
Steveice10 3ef48cbdd5 rpcs3qt: Add macOS support to the updater. 2024-01-24 09:44:56 +01:00
Megamouse 5fe36872c5 System: don't consider games as registered if they were already in games.yml
Also, show message if nothing was added
2024-01-24 08:18:57 +01:00
RipleyTom d33955c290 Asmjit FI 2024-01-23 12:24:38 +02:00
RipleyTom 606a60e901 Accurate frest and frsqest 2024-01-23 12:24:38 +02:00
Megamouse 93f5154429 Qt: trim whitespace from textinput before writing to config 2024-01-22 22:25:06 +01:00
kd-11 8eae8cb86c rsx: Do not emit rounding code when not needed 2024-01-21 12:30:37 +03:00
kd-11 abe5013f1d rsx: Fix compiling of mixed-precision shaders 2024-01-21 12:30:37 +03:00
kd-11 ca7de4bcb1 rsx: Aesthetic changes 2024-01-21 12:30:37 +03:00
kd-11 9a9b5860df rsx: Forcefully disable writes to channels disabled on host
- Some formats may have dummy channels on host. Never write to them!
- This means that XRGB formats correctly only write 24 bits, not 32.
2024-01-21 12:30:37 +03:00
kd-11 0971636c07 rsx: More pipeine refactoring 2024-01-21 12:30:37 +03:00
Megamouse 8a87dc63b1 Emu: Add more info to BlockingCallFromMainThread 2024-01-21 00:11:16 +01:00
Megamouse efea3aa385 Qt: revert accidental settings_dialog check-in 2024-01-20 21:59:02 +01:00
Megamouse 86bab5b7c3 cellImeJp: fix character deletion after change to cursor 2024-01-20 21:59:02 +01:00
Megamouse 675ed82c0b cellImeJp: fix deadlock 2024-01-20 21:59:02 +01:00
Megamouse 58dd0198dd cellImeJp: add candidate list functions 2024-01-20 21:59:02 +01:00
Megamouse 16f833a516 cellImeJp: add cursor 2024-01-20 21:59:02 +01:00
Megamouse 0392830950 cellImeJp: fix focus area 2024-01-20 21:59:02 +01:00
Megamouse 04efc6b4a4 cellImeJp: static functions to silence annoying VS 2024-01-20 21:59:02 +01:00
Megamouse 8edd7d54cf fs: fix warning. fix size argument in report_fatal_error 2024-01-20 21:59:02 +01:00
Eladash f19744ae88 Savestates: Fix restart when suspend mode is off
Add a new menu button for explicit exit (mostly for debug purposes)
2024-01-20 22:15:07 +02:00
Eladash 01ee119c59 Savestates: Dont patch memory on load 2024-01-20 22:15:07 +02:00
Eladash 4cd60aca22 Savestates: Add some logging for sys_overlay 2024-01-20 22:15:07 +02:00
Eladash 81ba791ee7 Simplify fatal dialog's error a bit 2024-01-20 22:15:07 +02:00
Eladash c7a94a80df Savestates/net: fix P2P socket data saving 2024-01-20 22:15:07 +02:00
Eladash c509226bab Firmware installer: Early protection against disk space shortage complications 2024-01-20 22:15:07 +02:00
Eladash 312b35051d sys_fs: Aggregate safe file reads (optimization) 2024-01-20 22:15:07 +02:00
Eladash e401d85af7 progress dialog: minor fix 2024-01-20 22:15:07 +02:00
Eladash e4c9af176b fixup hdd1 cache 2024-01-20 22:15:07 +02:00
Steveice10 9c354ee269
Utilities: Add support for portable user directory. (#15064) 2024-01-20 10:04:25 +02:00
kd-11 96d880839a rsx: Properly propagate surface properties on surface reuse. 2024-01-19 12:34:31 +03:00
Megamouse e23db7efbd Mac: Update MoltenVk to 1.2.7
Remove deprecated extension VK_MVK_moltenvk
2024-01-16 22:52:57 +01:00
RipleyTom 7d55a85fa6 Replaces page fault triggers with assembly 2024-01-16 12:04:47 +02:00
Megamouse fa7ef870dd sceNp: disable Canonicalize functions for RPCN 2024-01-14 22:55:03 +01:00
Megamouse ecacb874e4 sceNpCommerce: more error checks 2024-01-14 22:55:03 +01:00
Megamouse 0b2e0a1b28 sceNpCommerce: add error constants 2024-01-14 22:55:03 +01:00
Megamouse a08d60fbbe sceNpFriendlist: more checks 2024-01-14 22:55:03 +01:00
Megamouse ef6041c14f sceNpMatching: simplify linked list for loops 2024-01-14 22:55:03 +01:00
Megamouse 25954758d7 sceNpMatching: add error checks 2024-01-14 22:55:03 +01:00
oltolm 0ae1578dce split JIT.cpp and SPURecompiler.cpp 2024-01-14 17:21:39 +01:00
oltolm 2039b85be3 prepare split 2024-01-14 17:21:39 +01:00
oltolm 8eae73dd02 add comments where to split 2024-01-14 17:21:39 +01:00
RipleyTom fe9a24a1b8
RPCN 1.0 (#15045) 2024-01-14 12:36:23 +01:00
Megamouse 2d82e3ef9a Qt: use fs::get_temp_dir during updates
GetTempPathW was falsely using size in bytes instead of string length.
2024-01-14 06:40:35 +01:00
Megamouse faaf644331 Qt/input: show all mmjoy devices with connection in dropdown
This fixes weird issues with disconnected pads while also showing the status.
2024-01-14 02:50:45 +01:00
Megamouse d7aedb439e Qt/Input: Keep configured device name in config when no pad is connected 2024-01-14 02:50:45 +01:00
Megamouse 9c11840e40 input: implement dynamic mmjoy device reconnection 2024-01-14 02:50:45 +01:00
RipleyTom 4c36b80300 Misc NP fixes 2024-01-13 15:44:28 +01:00
Megamouse f7fa5aab70 media_utils: fix segfault when stopping a recording 2024-01-12 19:53:20 +01:00
Megamouse 17aeefe1b0 cellFont: some stubs 2024-01-11 22:35:00 +01:00
Eladash 825ae5b8aa Ensure HDD1 is never damaged or corrupted due to unexpected RPCS3/game termination 2024-01-11 20:24:53 +02:00
Megamouse 3513f6d83c cellMouse: silence some log spam 2024-01-10 22:34:13 +01:00
Megamouse 4ad4badcfe audio_decoder: fix more memleaks and dangling files 2024-01-10 22:34:13 +01:00
Megamouse b67837c0ef cellMusicDecode: fix random pop at the end of a stream
Observed in SSX, which seems to ignore the readSize sometimes
2024-01-10 22:34:13 +01:00
Megamouse b5f3f910f6 cellSearch: fix vfs music and video paths 2024-01-10 22:34:13 +01:00
Megamouse b0a7448394 get_media_info: improve logging 2024-01-10 22:34:13 +01:00
Megamouse bed7763a3b audio_decoder: ignore first invalid data error 2024-01-10 22:34:13 +01:00
Megamouse 572c075a4b audio_decoder: improve logging 2024-01-10 22:34:13 +01:00
Megamouse bad7756af2 audio_decoder: properly free packets 2024-01-10 22:34:13 +01:00
Megamouse 45c89030ac audio_decoder: check for failed av_packet_alloc 2024-01-10 22:34:13 +01:00
Megamouse 7aad4f4253 overlays: decrease log level 2024-01-10 22:34:13 +01:00
Megamouse 9e9385a877 cellVideoExport: export movies to /video/ instead of /movie 2024-01-10 22:34:13 +01:00
Megamouse 431d69ac87 Windows: remove QtCore5Compat dependency 2024-01-10 22:34:13 +01:00
Megamouse c45deb3f87 sdl: log version 2024-01-10 22:34:13 +01:00
brian218 213674511e sys_ss: Corrected sys_ss_update_manager(0x6011) version data format 2024-01-10 12:37:11 +01:00
brian218 6548e3f7d0 sys_fs: Improved get_device_root() path identifying security 2024-01-10 12:37:11 +01:00
brian218 a269ae7e30 sys_fs: Prevented duplicate device mounting 2024-01-10 12:37:11 +01:00
brian218 862295d9f3 sys_fs: Fixed sys_fs_unlink()'s failing to delete files in dev_usbXXX
sys_fs: Fixed get_mp() up for dev_usbXXX
2024-01-10 12:37:11 +01:00
RipleyTom 61e130e68c Honk if you knew memset(nullptr, 0, 0) was UB 2024-01-09 23:06:23 +01:00
RipleyTom 236e32fb3d Fix weird cmp in np_handler.cpp 2024-01-09 23:06:23 +01:00
RipleyTom 067ea68979 Fix games passing invalid npids 2024-01-09 23:06:23 +01:00
Megamouse 7504503d5f sceNp: don't return error if assignedReqId is null 2024-01-09 02:58:00 +01:00
Megamouse 108d0d49ec sceNp: add missing roomPassword check 2024-01-09 02:58:00 +01:00
Megamouse 2c424a0911 sceNp: add missing withPassword check 2024-01-09 02:58:00 +01:00
Megamouse ffe1b287a8 sceNp: add missing check for roomSlotInfo 2024-01-09 02:58:00 +01:00
RipleyTom 485fca34b0 Misc NP fixes 2024-01-08 14:03:15 +01:00
RipleyTom 0b984e9a23 Add -Werror=implicit-fallthrough to cmake build 2024-01-07 17:29:43 +01:00
RipleyTom 74e084c893 Improve sceNpEula 2024-01-07 14:50:45 +01:00
RipleyTom 47ae192cf8 Impl sceNpBasicSendMessage 2024-01-07 13:36:27 +01:00
RipleyTom 80b7fd5f3f Check room event callback has been set before calling it 2024-01-05 22:34:52 +01:00
RipleyTom 0227b16d06 Fix sceNpBasicSetPresence when data is nullptr and size is 0 2024-01-05 22:34:52 +01:00
kd-11 2a1af17f67 vk: Force GPU texture processing if the input is already GPU-resident (Tiled RCB read) 2024-01-05 16:29:53 +03:00
RipleyTom b6e9746198
RPCN 0.9 (#15002) 2024-01-05 09:43:26 +01:00
kd-11 bc141831f7 gl: Implement display output format correction 2024-01-04 13:03:32 +03:00
kd-11 acd3fd0c3e vk: Implement display output format correction 2024-01-04 13:03:32 +03:00
kd-11 2369266b8a rsx: Add an option to force hardware MSAA resolve 2024-01-03 19:32:45 +03:00
Ani e707ff530d rpcs3_version: Bump to 0.0.30 2024-01-02 20:27:18 +00:00
Megamouse 9fe640b187 whitespace and format 2024-01-02 16:46:31 +01:00
Megamouse 750aa163c5 cellSearch: mount paths in /dev_hdd0/.tmp/ instead of /,tmp/ 2024-01-02 16:46:31 +01:00
Megamouse 018b1da2b9 cellSearch: fix mounting of files
Turns out you have to tell vfs::mount whether it's a file or directory.
2024-01-02 16:46:31 +01:00
Eladash 170e268199 Improve Emulator::GetBdvdDir
* Optimize to perform string validation before executing a filesystem check.
* Fix a bug when there is a roaming PS3_DISC.SFB file somewhere in upper directories. (main_dir_name was changed incorrectly)
* Add verbose logging in Emulator::IsValidSfb.
2024-01-02 15:56:06 +02:00
Eladash 5755a94cc1 Savestates: Experimental pads fix 2024-01-02 15:56:06 +02:00
Eladash 4f06024d9f Fix report_fatal_error duplicate messages 2024-01-02 15:56:06 +02:00
Eladash 2a1330083d Fix PPU progress dialog hint 2024-01-02 15:56:06 +02:00
Megamouse d03393ffe9 sys: fix games.yml hdd paths 2024-01-02 10:18:23 +01:00
RipleyTom d6dde225bd Warn on use of privileged port on Linux 2024-01-01 21:23:31 +01:00
kd-11 6c33c38c08 rsx: Fix RSX tiling when using optimized DMA views 2024-01-01 19:44:47 +03:00
Eladash 195e7e185a cellPad LDD fixup 2024-01-01 15:04:39 +02:00
Eladash 87140ab4cc Qt: Add build version, title, emulation state and date to fatal error dialog 2024-01-01 11:58:00 +02:00
Eladash 9aff2d5ee1 cellPad: Fix LDD pads registration 2024-01-01 11:58:00 +02:00
Eladash 858e493b52 Savestates/vm: Improve saving performance 2024-01-01 11:58:00 +02:00
Eladash f0c93ae9dc sys_spu: Fix warning and theoretical bug 2024-01-01 11:58:00 +02:00
Eladash 9455bfe6c2 Savestates: Fix g_fxo->init for types which use a pointer 2024-01-01 11:58:00 +02:00
Eladash 467790c8d8 PPUTranslator: Try to fix a regression 2024-01-01 11:58:00 +02:00
Eladash c2076373e8 Utilities\BitField.h: Try to fix some warnings
Cleanup and make bitfield extraction u32 if possible
2024-01-01 11:58:00 +02:00
Eladash a4ab6126b0 Add more debug info in serial_breathe_and_tag() 2024-01-01 11:58:00 +02:00
Eladash ce5f7bd4ff Savestates: Rename DeferDeserialization, add some asserts 2024-01-01 11:58:00 +02:00
Eladash f5d39ef7f2 Fix a corner case in lv2_timer_thread abort 2024-01-01 11:58:00 +02:00
Eladash 89b8be98d6 Simplify lv2_timer_thread management 2024-01-01 11:58:00 +02:00
Eladash 87fc5e4923 Move initialize_timebased_time call to a safer spot 2024-01-01 11:58:00 +02:00
Eladash e6f1e598a9 Fix pad_state_notify_state_change 2024-01-01 11:58:00 +02:00
Eladash 2398e753bf Savestates/cellPad: Save old controller state 2024-01-01 11:58:00 +02:00
Eladash 847b721558 Compression: Fix infinite loop
Always keep expanding the buffer even if avail_in is 0
2024-01-01 11:58:00 +02:00
Eladash b00fe1d12f Compression: Improve async compression performance 2024-01-01 11:58:00 +02:00
Eladash 6214d0c9a5 Savestates/TAR: Fix huge files handling in TAR serialization 2024-01-01 11:58:00 +02:00
Eladash 4a8beb8588 SPU LLVM: Minor fixup 2024-01-01 11:58:00 +02:00
Elad Ashkenazi dfb163546b
HOTFIX for atomic wait 2023-12-30 22:33:57 +01:00
Megamouse f45cbdd0f7 fixes 2023-12-30 21:14:26 +01:00
Megamouse 7a02787bee fix some more warnings 2023-12-30 21:14:26 +01:00
Megamouse b501953d41 rsx: remove unused param 2023-12-30 19:07:35 +01:00
Megamouse c5836e3525 fix more warnings 2023-12-30 19:07:35 +01:00
Megamouse 59c58aa3cf fix some warnings 2023-12-30 19:07:35 +01:00
Megamouse b1c48e66c9 sceNp: fix size_t data types 2023-12-30 19:07:35 +01:00
kd-11 d4796c46b1 rsx: Fix detiler shader compilation 2023-12-30 12:35:23 +01:00
kd-11 2b9bfc0ec2 rsx: Pick tiler/detiler according to actual block size 2023-12-30 12:35:23 +01:00
kd-11 188eefeeac rsx: Avoid out of bounds write for tiled memory 2023-12-30 12:35:23 +01:00
Alexander Wilms 22d43c25b2 Metainfo: Update number of compatible games 2023-12-30 11:41:52 +01:00
Alexander Wilms a7ae1c3b9c Metainfo: Add German translations and more URLs 2023-12-30 11:41:52 +01:00
Alexander Wilms 42cf8b0bc4 Metainfo: Sort tags with jdAppStreamEdit 2023-12-30 11:41:52 +01:00
Alexander Wilms 42348d6b43 Fix display_length tag and add screenshot caption 2023-12-30 11:41:52 +01:00
Megamouse 2c6f11fc1c msvc/debug: set mainCRTStartup as entry point 2023-12-30 04:51:40 +01:00
Megamouse f0c2f9235e msvc/debug: remove outdated qtmaind.lib dependency 2023-12-30 04:51:40 +01:00
Megamouse 3a73f8f84f msvc/debug: Pass c++ standard to Qt 2023-12-30 04:51:40 +01:00
RipleyTom a96f9d9bfb Fix sceNpManagerGetNetworkTime called before rpcn connection 2023-12-30 02:00:21 +01:00
RipleyTom 03761c5dd4 rpcn 0.8 2023-12-29 19:22:49 +01:00
Megamouse d3298c422b sys/cellGame: Fix hdd game dir name
Some games are installed with other dir names than title_id
2023-12-29 18:10:00 +01:00
Megamouse b0c1684ff3 Qt/input: separate num keys from other keys 2023-12-29 16:33:41 +01:00
Eladash 9f6c5381a1 SPU/Savestates: Remove reservation hack, allow its saving 2023-12-29 11:11:53 +02:00
Eladash e209dc1229 Savestates: Save build version and creation time 2023-12-29 11:11:53 +02:00
Eladash 9df40a9b69 Suggest using SPU Savestates-Compatible Mode on failure to save 2023-12-29 11:11:53 +02:00
Eladash bd687b41d3 SPU LLVM: Fix savestates with LLVM
Sneaky bug: allow invalidation from blocks that do not contain a store but do a gpr-state critical operation.
2023-12-29 11:11:53 +02:00
Eladash 526aaf7302 Fix idm::allocate_id at fixed position 2023-12-29 11:11:53 +02:00
Eladash 72ed2f1d43 Invalidate savestates 2023-12-29 11:11:53 +02:00
Eladash e14cc69441 Savestates/vm: rewrite memory saving for better compression 2023-12-29 11:11:53 +02:00
Eladash d78bbbf69a Savestates: Fix audio_out_configuration initialization 2023-12-29 11:11:53 +02:00
Eladash f696107c90 Add savestate data validity asserts 2023-12-29 11:11:53 +02:00
kd-11 475191cf7f rsx: Fix typo 2023-12-27 21:25:46 +01:00
kd-11 69a463ad02 rsx: Support DMA tiling in the CPU blit path 2023-12-26 18:30:00 +03:00
kd-11 51fc193395 rsx: De-spaghettify nv3089::image_in
- This function was a disaster with random code added in without much thought over a decade.
- Restructures the logic into decode and transfer steps for easier management.
2023-12-26 18:30:00 +03:00
Megamouse 3f5a80d692 Typemap: Set init to false after each individual destructor 2023-12-25 11:14:11 +02:00
RipleyTom 69238bfc23 Remove destructor dependencies on nph 2023-12-24 15:16:56 +02:00
RipleyTom 732d9b83ba Fix nph and nt interderp 2023-12-22 14:34:48 +01:00
Megamouse 50214a6a07 Qt: use default colors for native styles 2023-12-22 10:03:56 +01:00
Megamouse bc9f0fe56c Qt: use initial style as default style 2023-12-22 01:20:14 +01:00
Eladash 40604f6076 Fixup np_handler ctor 2023-12-21 16:12:50 +02:00
Megamouse 3f2c75d920 overlays: move debug overlay to native overlay 2023-12-20 23:33:43 +01:00
Megamouse d08c7a9b96 sceNpDrm: improve error handling of rap files 2023-12-20 22:22:51 +01:00
Eladash 8591529aad Fix sys_fs_fcntl default_sys_fs_container use 2023-12-20 19:58:21 +02:00
Eladash 33d46172a6 Game Settings: Add an option to create game config using default settings
Fix a potential crash on creating global config.
2023-12-20 18:27:47 +02:00
RipleyTom dbd1f27862 Replace condition_variable with atomic_t 2023-12-20 15:28:47 +02:00
Megamouse 2eae0a9d3a Qt: allow to use native styles 2023-12-20 12:53:21 +01:00
Megamouse 8b6fa32d12 Do not allow running RPCS3 from Rar directories 2023-12-19 22:18:57 +01:00
Eladash 90b6f5613e Fix some warnings 2023-12-19 15:34:07 +02:00
Eladash d1527710f9 Fix HLE sys_lwcond_signal_to 2023-12-19 15:34:07 +02:00
Eladash 657af10361 Savestates: Fix pair serialization 2023-12-19 15:34:07 +02:00
Eladash 7e853abc4b Fix tcp_timeout_monitor abort 2023-12-19 15:34:07 +02:00
Eladash 9f0cb9148f vm.h: Cleanup and fix some warnings 2023-12-19 15:34:07 +02:00
Eladash edf74313ef Remove some fxo->need calls 2023-12-19 15:34:07 +02:00
Elad Ashkenazi 14c92efd38 Util/fixed_typemap.hpp: Fix thread-safety issue with init
Now safe as long as no- object is created
2023-12-19 15:34:07 +02:00
Eladash 2190419b83 Util/fixed_typemap.hpp: set unitialiazed data to trap values 2023-12-19 15:34:07 +02:00
Eladash 0c410f8a14 Postpone thread launching on g_fxo->init 2023-12-19 15:34:07 +02:00
Megamouse a4bcba8971 Fix some warnings 2023-12-19 00:50:57 +01:00
Megamouse 763744268d update_manager: replace deprecated LookToRead2_Init nonsense with regular c++ default initializer 2023-12-19 00:50:57 +01:00
kd-11 98b7642232 rsx: Avoid data loss in blit engine when WCB/WDB + RCB/RDB is active 2023-12-18 17:08:33 +03:00
brian218 19d1e4dcc9 sys_usbd: Fix up sys_usbd_get_descriptor() error handling according to hardware test
usb_device_emulated: Allow partial copy of desscriptors
2023-12-17 19:38:40 +02:00
brian218 d18f929faf sys_usbd: Prevent sys_usbd_get_descriptor() from buffer overflow
sys_usbd: Add some more arguments to sys_usbd_attach()'s logging for better debugging
2023-12-16 16:24:55 +02:00
Megamouse f8e0c9e27a Start/Stop IPC when changing the config setting 2023-12-15 18:08:07 +01:00
Megamouse 907e0fa8c8 Fix fxo dependencies 2023-12-15 18:08:07 +01:00
Megamouse 47fcb9562f Trophy Manager: allow to lock/unlock trophies 2023-12-15 00:31:49 +01:00
RipleyTom cee6d03033 Fix initialization order for network_thread 2023-12-14 19:34:14 +01:00
Megamouse 57cc7037f6 input/evdev: handle flatness deadzone value
This may fix issues with sticky axis on evdev.
Also refactors some redundant axis scaling functions.
2023-12-14 15:51:11 +01:00
Megamouse 7c9a38e0f3 rsxaudio: fix ensure order 2023-12-14 15:51:11 +01:00
RipleyTom f709a5747a Force sending a FIN packet on rpcn disconnect 2023-12-13 12:42:38 +02:00
Eladash 75494066ea Qt: Cleanup game-install assistant pull request
Use paths instead of IDs,  disable typemap.
2023-12-12 21:23:33 +02:00
Eladash 60baa49007 sceNp/vm: Fix strings read, implement safe string reader 2023-12-12 21:23:33 +02:00
Megamouse 15cd05cdfb curl: use native CA store instead of deploying cacert.pem 2023-12-12 01:23:05 +01:00
Eladash a6839e823e Qt: Post Game-Installation Assistant 2023-12-11 07:47:52 +02:00
oltolm cb4a688e02 asm.hpp: fix usage of _mm_prefetch 2023-12-11 06:26:40 +02:00
kd-11 ab6bcd32a9 rsx: Improve strict mode check in 308a::color
- The chances that someone is using strict mode is lower than the odds of having default ZCULL
2023-12-09 22:34:02 +03:00
kd-11 67f97b0e15 rsx: Let 308a::color have a synchronization side-effect in strict mode
- Some games use 308a::color to implement custom sync primitives (ETQW).
- When the color data is written, the engine assumes all occlusion reports are ready which can cause severe flickering if we don't flush the pipeline.
2023-12-09 22:34:02 +03:00
Elad Ashkenazi fbeaa1c487 Savestates: Fix compressed serialization handler deadlock 2023-12-05 12:34:52 +02:00
Megamouse 57ee3c6a6d cellRec: Remove outdated frame size check
We are rescaling the images to the desired output format in the encoder.
The frames themselves are not a fixed container anymore.
2023-12-05 08:37:34 +01:00
Megamouse a4011376e0 Qt: only allow double leftclick in screenshot manager 2023-12-05 08:37:34 +01:00
Eladash 69ef9c8a6a PPU/sys_dbg: Implement self-modifying code 2023-12-03 12:57:21 +02:00
Megamouse 8ef844ca53 Qt: Remove default "Unknown" in GameInfo struct
There is no need to initialize these anymore.
The game list already uses its own fallback string constants if needed.
2023-12-03 01:05:28 +01:00
Megamouse a97bad97ae Qt: Properly use ICON1.PAM from game data dir if available
Fixes hover movie for disc games that have game data installed.
2023-12-03 01:05:28 +01:00
Megamouse c245637c38 Qt: force hover event handling for flow widget items
Fixes hover movies for stylesheets that didn't have a game grid item style set for the hover state.
2023-11-30 22:10:32 +01:00
Megamouse 4a4f537ee8 recording: Implement audio recording for rsx audio 2023-11-30 09:55:36 +01:00
Megamouse 44585b98cc audio: fix time stretching regression 2023-11-30 00:34:32 +01:00
Megamouse 4520f7646f recording: use scoped_lock 2023-11-30 00:34:32 +01:00
Megamouse bebac4773a cellRec: only access global video provider if necessary
We do not necessarily use the video provider object in cellRec...
2023-11-30 00:34:32 +01:00
Megamouse 9e76e14a79 recording: optimize access to video recorder
Use separate locks for audio and video
Fix audio mutex usage in cellRec.
Removes can_consume_sample, since we don't do any processing
between can_consume_sample and present_samples.
Use get_system_time for consistency.
Move pts reset to set_video_sink.
Make start time atomic.
Remove frame and sample counts.
Use m_active to early out to reduce mutex locks.
Do not try to present samples if the recording mode is stopped anyway.
2023-11-30 00:34:32 +01:00
Megamouse 4dfda3240c Qt: implement hover pam in game list 2023-11-29 20:11:45 +01:00
Megamouse aae155e954 Qt: use vector for camera video sink buffer 2023-11-29 20:11:45 +01:00
oltolm fdcb481f07 fix Clang warnings 2023-11-29 19:02:34 +01:00
kd-11 1c78584f41 rsx: Remove unnecessary "else" clauses 2023-11-29 19:52:16 +03:00
kd-11 685b3ee41b rsx: Code quality and readability improvements 2023-11-29 19:52:16 +03:00
Eladash b674e332fc SPU: Fixup SPU Cache progress in first game boot 2023-11-29 10:51:32 +02:00
Megamouse 57324f1703 Qt: notify progress dialog cancelation when closing the game window 2023-11-29 00:46:20 +01:00
Megamouse ac869ec855 Qt: fix random segfaults when canceling batch operations
It occasionally happened that the progress_dialog object was deleted before we reached the end of the function.
2023-11-29 00:46:20 +01:00
Eladash b774ba9888 serialization.hpp: Fix some warning 2023-11-28 21:18:18 +02:00
Eladash 54a6f2f51b SPU LLVM: Do not wait for Progress Dialog to clear before starting 2023-11-28 21:18:18 +02:00
Eladash d449420a45 PPU Progress Dialog: Add "Applying PPU Code" stage 2023-11-28 21:18:18 +02:00
Eladash 3bd27d5695 TAR: Improve logging 2023-11-28 16:46:44 +02:00
Eladash 0416f6361c Fix file_view::read_at and file_view::get_stat 2023-11-28 16:46:44 +02:00
Eladash 9abf0b7176 Savestates: Asynchronous compression 2023-11-28 16:46:44 +02:00
Eladash aaf776ddc9 Fixup Firmware install 2023-11-28 16:46:44 +02:00
Eladash 79465334fe Savestates: Add basic statistics in log 2023-11-28 16:46:44 +02:00
Eladash f8ca5cdf56 vm: Minor optimization for memory serialization 2023-11-28 16:46:44 +02:00
Eladash ac19a50f5f Rewrite global zipping buffer function
Take advantage of the new method, remove a method that is not recommended for use.
2023-11-28 16:46:44 +02:00
Eladash fdb2fecd45 Savestates: Add errored state for compressed stream 2023-11-27 12:36:17 +02:00
Eladash a0b521ba8e Savestates: Add TAR and VM assert 2023-11-27 12:36:17 +02:00
Eladash 5dbeb68ed2 Savestates: Fix optional_savestate_state use 2023-11-27 12:36:17 +02:00
Eladash c7c2baae03 Savestates: Implement 'autostart off' mode for debugging 2023-11-27 12:36:17 +02:00
Eladash f60bdbaece Savestates: Compressed state files 2023-11-27 12:36:17 +02:00
Darkhost1999 91dbd92193 Change PPU/SPU Cache
Enable minimizing the LLVM batch creation window and keep modal permissions
2023-11-25 03:20:57 +01:00
Megamouse 099ec16403 Qt: add trophy count column to trophy manager game list 2023-11-25 01:47:32 +01:00
Megamouse 23316d4e1e cellRec: fix pausing and resuming 2023-11-23 21:19:31 +01:00
Megamouse 966def13c5 cellRec: fix downmix 2023-11-23 21:19:31 +01:00
Megamouse 0899723510 recording: add h264/aac, better logging of output formats 2023-11-23 21:19:31 +01:00
Megamouse 434a63a98a recording: rename audio_sample to audio_frame 2023-11-23 21:19:31 +01:00
Megamouse d27d021913 recording: fix subsequent recordings, reset sample counter to 0 2023-11-23 21:19:31 +01:00
Megamouse a84c261ff3 cellRec: fix member reset between recordings 2023-11-23 21:19:31 +01:00
Megamouse ff434f9d38 recording: cleanup audio config members
and fix some annyoing msvc warnings
2023-11-23 21:19:31 +01:00
Megamouse 49f910a56b recording: improve pts accuracy and consistency
Also clean up some logging
2023-11-23 21:19:31 +01:00
Megamouse 90846013c2 cellRec: fix internal video frame ringbuffer pts 2023-11-23 21:19:31 +01:00
Megamouse b2d9da0b4b recording: Fix flush. We want to clear the whole queue... 2023-11-23 21:19:31 +01:00
Megamouse 3cec3b866d cellRec: implement audio mixing 2023-11-23 21:19:31 +01:00
Megamouse 6ba204a259 recording: decrease log spam 2023-11-23 21:19:31 +01:00
Megamouse 51d0df97d3 cellRec: implement audio encoding (no mixing yet) 2023-11-23 21:19:31 +01:00
Megamouse 4c14290694 cellRec: Don't present frames/samples if external audio/video is used 2023-11-23 21:19:31 +01:00
Megamouse 5fa77b04ea recording: remove unused duration member variable 2023-11-23 21:19:31 +01:00
Megamouse dbbf318e1c recording: fix warning 2023-11-23 21:19:31 +01:00
Megamouse 9e3763e6e5 recording: use av_interleaved_write_frame 2023-11-23 21:19:31 +01:00
Megamouse 42cd7df813 recording: fix default sample rate 2023-11-23 21:19:31 +01:00
Megamouse 64529cefa5 cellRec: use constant for block samples 2023-11-23 21:19:31 +01:00
Megamouse 70c35642a4 recording: initial audio recording 2023-11-23 21:19:31 +01:00
kd-11 ebf48800e6 rsx: Always enable ROP output rounding if shader precision is higher than low
- Hardware behavior is inconsistent so let's just emulate this when possible
2023-11-21 13:49:16 +03:00
kd-11 673660d362 gl: Fix static sampler bindings
- VS states come before FS mirrors
2023-11-21 13:49:16 +03:00
kd-11 ab8a12e211 rsx: Fix vertex input validation failure
- We switched from a allocate-per-draw-call to reusing the vertex input data. We need to make sure previous state does not affect validation results.
- Memcpy is too slow at this level of frequency, so just reset the attributes you're using before using them.
- Also changes the validation routine to only check attributes we're actually using.
2023-11-15 20:15:03 +03:00
oltolm 8c0debfe65
Fix file_view::read_at 2023-11-10 18:40:17 +02:00
Megamouse 71f497947e Don't close moved file 2023-11-10 12:58:38 +02:00
Megamouse 06bdaf1fb1 rsx: fix reading zipped captures 2023-11-10 12:58:38 +02:00
Megamouse 840455b872 rsx: zip and unzip rsx captures 2023-11-10 09:05:16 +01:00
Eladash 66d01b688c Savestates: Implement initial RAM ventilation system 2023-11-10 08:45:49 +02:00
Eladash 2db607c716 Replace some fmt::format with fmt::append 2023-11-10 08:45:49 +02:00
kd-11 c41130080d rsx/vp: Emit more efficient code
- Applies more aggressive DCE in the analyser. Dead-code in tails could happen before in some cases.
2023-11-09 21:05:54 +03:00
kd-11 85cefec5a3 rsx: Fix vertex program analyser bug 2023-11-09 21:05:54 +03:00
Megamouse 648bf25557 Midi: improve error handling 2023-11-08 17:10:57 +01:00
Megamouse e26d4e1762 sys_net: fix some warnings
move some data to heap
2023-10-31 15:11:43 +02:00
oltolm b7fe35a2af fix Clang compilation warnings 2023-10-26 09:29:32 +03:00
Megamouse 3c93509471 fix deprecation warning 2023-10-25 21:44:31 +02:00
Megamouse f11c1613bd fix unused parameter warning 2023-10-25 21:44:31 +02:00
Megamouse ecfa77f6e7 unzip: check deflateInit and inflateInit results 2023-10-25 21:44:31 +02:00
kd-11 dfa83314df vk: Add chip detection for INTEL DG2 cards
- No specific optimizations yet, but they're becoming more popular so that may be necessary soon.
2023-10-25 20:06:04 +03:00
kd-11 867153c5ea vk: Drop obsolete ANV workaround 2023-10-25 20:06:04 +03:00
kd-11 0612b52881 rsx: Add note explaining padding behavior in linear-swizzle conversion fallback code. 2023-10-25 20:06:04 +03:00
Megamouse a4d8091625 Reduce log level for missing gamecontrollerdb.txt to warning 2023-10-25 07:13:12 +02:00
Megamouse aa9f364dc6 cellPhotoImport: better log channel name for string search in logs 2023-10-25 07:13:12 +02:00
Megamouse 7cb4521082 overlays/media_list_dialog: Fix path logging 2023-10-25 07:13:12 +02:00
Megamouse 07da8d5e36 cellPhotoDecodeFromFile: allow decoding files inside dev_hdd1 2023-10-25 07:13:12 +02:00
Eladash eb407e3b5c SPU/MFC: Add block has to command history 2023-10-24 22:14:12 +03:00
brian218 23cb67e0a1 [Bugfix] USIO: Fixed switch-kind buttons got released when game window lost focus 2023-10-21 02:24:16 +02:00
Megamouse b3864f2d10 cellSaveData: Fix SAVEDATA_OP_LIST_DELETE
- The savedata parameter checks were missing conditions for SAVEDATA_OP_LIST_DELETE (and the unimplemented import/export functions)
- This caused the 'delete savedata' menu entry in Bonk's Adventure to be inaccessible since we always returned an error no matter the arguments.
- Additionally, the game uses an asterisk as prefix to load the savedata list, which is actually a valid thing to do based on the disassembly for this exact function (and maybe others?). I only report the savedata for the current title ID for now though, since I fear I'll accidentally delete some other savedata.
2023-10-16 21:19:44 +02:00
Elad Ashkenazi 927685fd63 VFS: fix rename 2023-10-16 14:47:50 +03:00
oltolm 50df01d00e llvm: add support for LLVM 17 2023-10-13 14:27:48 +02:00
Megamouse 7bb94227be Qt: allow to use zipped logs in config checker 2023-10-13 09:30:42 +02:00
Megamouse 76629e1b52 Qt: Allow to use .gz files in Log viewer
Log viewer can open .gz files
Log viewer can save log as .gz
Refactored most instances of zip and unzip code to seperate functions
2023-10-13 07:45:16 +02:00
kd-11 e95cff0bde rsx: Detiler improvements
- Detile on blit src read
- Improve blit engine integration
2023-10-12 15:25:47 +03:00
Elad Ashkenazi 9dca70ec9e PPU Loader: Fix relocation offset verification
Kernel aligns segment memory to 256 bytes internally.
2023-10-12 13:53:30 +03:00
Megamouse 982e09a486 Qt: Remember last game window position and visibility
- Remembers the last game window geometry and tries to apply it on boot
- Remembers the last minimized/maximized/windowed/fullscreen state and tries to apply it on boot
- All existing game window settings keep priority
- Should work with multi-monitor setups as well
- Ignored if the user forced a different screen with cli commands
2023-10-09 11:20:21 +02:00
Megamouse 2a0fa53c0d GL: check QOpenGlContext::create result 2023-10-06 08:42:26 +02:00
Megamouse 9fce70809e Input: Fix "," key in keyboard pad handler 2023-10-06 03:12:16 +02:00
Eladash d335d356ca IdManager.h: Savestate fix part 2 2023-10-05 05:07:46 +03:00
Eladash b2e969eb8f Savestates: Fix rsxaudio 2023-10-05 05:07:46 +03:00
Eladash 6db8b84048 Improve savestate version mismatch message 2023-10-05 05:07:46 +03:00
Eladash 0240a7d43d sys_fs: Savestate fixup 2023-10-05 05:07:46 +03:00
Eladash c3f1d39563 Improve vfs::host::rename 2023-10-03 15:50:46 +03:00
Eladash ce3d7f90fd VFS: Fix recursive locking 2023-10-03 05:32:39 +03:00
Eladash 4b827a8d9c sys_fs: Optimize concurrent file reads 2023-10-02 21:18:08 +03:00
Eladash f07e17f6aa sceNp: Cut inactive time of DrmIsAvailable in half 2023-10-02 21:18:08 +03:00
Eladash 257b0f0d69 Improve lv2_file::file_view::read 2023-10-02 15:38:58 +03:00
Eladash dd518fcafb Savestates/sys_fs: Fix file saving 2023-10-02 15:38:58 +03:00
Eladash 020bff1485 Savestates: add sys_rsxaudio 2023-10-02 15:38:58 +03:00
Eladash 96d31cf64e IdManager.h: Savestate fix 2023-10-02 15:38:58 +03:00
Malcolm Jestadt d1bea790f3 SPU LLVM: Optimize GB/GBH/GBB with a GFNI path
- Abuses GFNI to extract bits from bytes, from 5->2 instructions in most cases
2023-10-01 23:05:28 +03:00
Eladash 5baec6cb58 Add Savestate-Compatible mode 2023-10-01 12:00:41 +03:00
Eladash 948ee96f1a SPU LLVM: Fix savestates 2023-10-01 12:00:41 +03:00
Eladash 099c74481d Savestates: Optimize SPU pausing 2023-10-01 12:00:41 +03:00
kd-11 2381e33236 Add config to the UI 2023-09-27 14:52:59 +03:00
kd-11 09476fa6e5 Add the tiling toggle to core 2023-09-27 14:52:59 +03:00
kd-11 061c10ea69 vk: Fix memory initialization order in RCB/RDB path 2023-09-27 14:52:59 +03:00
kd-11 cb21fefbd9 rsx: Fix bpp when working with DMA-only (null) memory sections 2023-09-27 14:52:59 +03:00
kd-11 c1c3be8b4e rsx: Skip CPU optimization if writing to tiled region 2023-09-27 14:52:59 +03:00
kd-11 41ff76a6af msvc: Tabs to spaces 2023-09-27 14:52:59 +03:00
kd-11 a95e87d14d rsx::io_buffer cleanup 2023-09-27 14:52:59 +03:00
kd-11 725bad0963 vk: Revert more debugging code 2023-09-27 14:52:59 +03:00
kd-11 e31859a5ed vk: Remove debug visualization code 2023-09-27 14:52:59 +03:00
kd-11 ab99400f9d vk: Restore CPU fallback on the upload path 2023-09-27 14:52:59 +03:00
kd-11 603e549c85 Fix msvc filters 2023-09-27 14:52:59 +03:00
kd-11 1e09bfca09 Fix linux build 2023-09-27 14:52:59 +03:00
kd-11 59812b947a vk: Load DMA before decode operation 2023-09-27 14:52:59 +03:00
kd-11 ca054644ef rsx/vk: Support ingesting pre-processed GPU data as texture input 2023-09-27 14:52:59 +03:00
kd-11 bef7d793d3 rsx: Make the texture source an io-buffer 2023-09-27 14:52:59 +03:00
kd-11 ffc61e01f7 rsx/vk: Support mismatched pitch (padded) and fix the overscan problem 2023-09-27 14:52:59 +03:00
kd-11 647f7ddeec rsx/vk: Initial hw-accelerated tile decoder 2023-09-27 14:52:59 +03:00
kd-11 6a7386ddb8 rsx: Refactor out more junk from rsx::thread 2023-09-27 14:52:59 +03:00
kd-11 3afc379746 rsx: Import, rebase and clean up the old detiling patches from 2021 2023-09-27 14:52:59 +03:00
Eladash 6908d20128 Debugger/PPU: Add Go-To from function pointer 2023-09-26 11:06:01 +03:00
Eladash 6dc9e9659d Debugger/Logs: Allow to display thread from thread ID on log 2023-09-26 11:06:01 +03:00
Eladash e79fc867c5 Patches: Add savable breakpoints patch type 2023-09-26 11:06:01 +03:00
Darkhost1999 b2c6958750
Add restart option to home menu 2023-09-25 17:59:57 +03:00
Malcolm Jestadt 05b6108c66 SPU LLVM: Optimize remaining rotate instructions which take a twos compliment value as input
ROTQMBYBI looks for -7 for it's twos compliment construction
2023-09-23 08:00:09 +03:00
Megamouse ae786a016d Remove unused variable 2023-09-23 00:02:48 +02:00
Eladash 8e4945ab28 Avoid log spam of CPU usage when Emu is paused 2023-09-22 10:03:51 +03:00
Eladash 167528d70f GUI: Add Patreon Link Button
For continued improvements of RPCS3, please become a part of our Patreon support group!
2023-09-22 10:03:51 +03:00
Eladash ecb45ef6df Welcome Dialog: Add ability to set Dark Theme 2023-09-22 10:03:51 +03:00
Eladash 1e1d6f6437 PPU Analyzer: Fixup 2023-09-22 10:03:51 +03:00
kd-11 fe1bc18ac9 vk: Fix section merge calculations when using a temp resource 2023-09-21 19:52:15 +03:00
Megamouse cf20526f9f cellMic: Improve cellMicGetDeviceAttr 2023-09-21 07:52:00 +02:00
Megamouse f398f1113d Microphone enumeration: warn user if ALC_ENUMERATION_EXT is missing. 2023-09-12 20:55:55 +02:00
Eladash c7c81ed95d PPU: Limit concurrent OVL files processing to 2 2023-09-11 15:44:33 +03:00
Eladash 7a4ee286be Rewrite Utilitis/sema.cpp 2023-09-11 15:44:33 +03:00
Eladash 37ba19776a PPU LLVM: Fixup pdone count 2023-09-10 18:58:34 +03:00
Eladash 4b4ffba080 Fix OVL file preview loading 2023-09-10 18:58:34 +03:00
Eladash 62b880cb78 SPU LLVM: Avoid excess cache threads 2023-09-10 18:58:34 +03:00
Eladash bdceb24fd9 PPU: Try to reduce wait for other threads 2023-09-10 18:58:34 +03:00
Eladash b4fc43d787 PPU LLVM: Re-add multi-threaded overlay module compilation 2023-09-10 18:58:34 +03:00
Eladash d399bd5b6a PPU Analyzer: Another fixup 2023-09-10 18:58:34 +03:00
Eladash 6b05fcf704 vm_ptr.h: Fix warning
/rpcs3/rpcs3/Emu/Cell/../Memory/vm_ptr.h:135:32: warning: invalid application of 'sizeof' to a void type [-Wpointer-arith]
  135 |                         return sizeof(T);
      |                                ^~~~~~~~~
2023-09-10 18:58:34 +03:00
brian218 009d8e13da USIO: Support up to 4 players for Tekken Tag Tournament 2 Pair Play mode 2023-09-06 18:17:06 +02:00
Elad Ashkenazi 52495c17d6
PPU Analyzer: Fixup 2023-09-06 06:53:10 +03:00
Megamouse 055c7db5a4 progress dialog: Fix remaining time 2023-09-05 22:53:44 +02:00
Eladash 6beb421a35 asm.hpp: Compilation fixup 2023-09-05 22:53:44 +02:00
Eladash 44c08c3a73 PPU/Progress Dialog: Improve remaining time calculation 2023-09-05 22:02:47 +03:00
Megamouse 0bb5974ab6 input: try to add tony hawk RIDE Skateboard 2023-09-05 20:41:39 +02:00
Eladash 6dcdf6ec76 Add approximation to remaining compilation time 2023-09-05 14:58:46 +03:00
Eladash ff4485d8ae PPU LLVM: Patch unregistered BLRs
Fixes "Unregistered PPU Function" in "Jak and Daxter Collection"
2023-09-05 06:20:57 +03:00
Eladash eacfa36fe6 SPU/DisAsm: Fix constant propagation with non-GPR-writing instructions 2023-09-05 06:20:57 +03:00
Eladash fdbb0b0e2f PPU LLVM: Optimize branch list 2023-09-05 06:20:57 +03:00
Eladash cf6eb64f0b SPU LLVM: Improve space-filling for function discovery 2023-09-05 06:20:57 +03:00
Eladash 85773ad869 PPU LLVM: Optimize traps a bit 2023-09-05 06:20:57 +03:00
Eladash a02c168a0d PPU Analyzer: Fixup greedy instruction search 2023-09-05 06:20:57 +03:00
Megamouse b5dac0c333 Progress dialog: show analysing... while no files or modules are known yet. 2023-09-03 15:25:19 +02:00
Eladash 1c8f1b2c27 SPU LLVM: Sad workaround for precompilation
Disable progress dialog for when only precompilation is required.
2023-09-02 22:14:53 +03:00
Eladash 8d9e9eaff9 PPU Precompilation: Fixup file counter 2023-09-02 22:14:53 +03:00
Eladash b900c43ceb PPU: Precompile only encrypted executeables
Improve sys_prx_load_module and sys_overlay_load_module error checking.
2023-09-02 22:14:53 +03:00
Eladash d62d6cc852 Progress Dialog: Force-update counter when complete
This confuses both the user and the developer at times.
2023-09-02 22:14:53 +03:00
Eladash 150afecc29 Fixup spu_thread::discover_functions 2023-09-02 22:14:53 +03:00
Elad Ashkenazi ea57984912
SPU LLVM: Fill space between functions using targets (Precompilation)
* Revert "PPU Analyzer: Revert TRAP detection change"
2023-09-02 15:56:34 +03:00
Eladash 11006dac35 sys_rsx: Fix local memory size reported in driver info 2023-09-02 12:55:34 +03:00
Eladash dd4840caf6 SPU LLVM: Add CRC check for cache 2023-09-02 12:31:11 +03:00
Eladash 3f7afb8375 SPU LLVM: Fix crashes on corrupted cache file
* Fix OOM if size is too high.
* Fix out-of-bounds access beyond SPU_LS_SIZE.
2023-09-02 12:31:11 +03:00
Eladash deacf76ca4 PPU Analyzer: Revert TRAP detection change 2023-09-02 12:31:11 +03:00
Eladash 5e110f2844 SPU LLVM: Try to precompile filler-sapce between functions 2023-09-02 12:31:11 +03:00
Eladash 7c0d8fc29c Improve spu_thread::is_exec_code 2023-09-02 12:31:11 +03:00
Eladash a626ccfcad SPU LLVM: Initial precompilation of tail-calls 2023-09-02 12:31:11 +03:00
Eladash a9810ccb72 SPU LLVM: Another fix for Game Collection's precompilation 2023-09-02 12:31:11 +03:00
Eladash 26b3970485 debugger_list: Fix key up/down direction 2023-09-02 12:31:11 +03:00
Eladash 90ad129b83 Debugger: Fix GOTO and intruction stepping 2023-09-02 12:31:11 +03:00
Eladash e851c044b5 SPU: Function discovery fix
Do not detect branch to next.
2023-09-02 12:31:11 +03:00
Megamouse a597368c46 SPU: fix some wierd typos (may be wrong, no idea) 2023-09-02 12:10:36 +03:00
Megamouse d7b2453980 VS: Add scripts to filters 2023-09-02 10:39:25 +02:00
Eladash f9f2657c98 SPU LLVM: Optimize spu_idisable 2023-09-01 18:08:15 +03:00
kd-11 1c793edf7d Fix excluded sections check mismatch 2023-09-01 13:35:20 +03:00
kd-11 133ddb118c rsx/texture-cache: Remove archaic short-circuit during purge-xxxxx routines 2023-08-31 07:23:10 +03:00
Eladash af850dac99 Crypto: Fix endianess, avoid crashing on invalid values 2023-08-31 01:32:28 +02:00
Megamouse f554b444c0 Qt: rename pad profiles to config files 2023-08-31 00:36:48 +02:00
Eladash 02b5cae2ad Precompile PRX/ELF extension 2023-08-30 16:47:45 +03:00
Eladash ba41e466cf Hotfix SPU Cache Spam For Game Collections 2023-08-30 16:47:45 +03:00
Eladash 6d0390bad9 Fixup Create PPU Cache 2023-08-30 08:45:29 +03:00
Eladash ee9477dc21 SPU: support pure SPU code precompilation discovery 2023-08-30 08:45:29 +03:00
Eladash 37212a632c SPU: Refactor function discovery 2023-08-30 08:45:29 +03:00
Elad Ashkenazi 105c5759f3 Add SPU Precompilation to Create PPU Cache 2023-08-30 08:45:29 +03:00
Megamouse 7144e92ce2 Qt: fix pressure intensity deadzone enabled state 2023-08-29 21:11:46 +02:00
Megamouse 452a4654da input: add SDL_GameControllerDB 2023-08-29 03:19:41 +02:00
Ivan Chikish 4acd819478 [DS4] Proper USB/BT detection 2023-08-28 22:51:38 +02:00
Elad Ashkenazi 3d2229ca05 SPU LLVM Precompilation Fixup 2023-08-28 13:33:43 +03:00
Eladash b5faf5800b SPU LLVM Precompilation
Implement function SPU function discovery in images or random SPU code
2023-08-28 09:03:56 +03:00
Malcolm Jestadt 290ff5b839 Zero register optimization for AVX-512-VBMI
- Take advantage of the fact that AVX instructions zero the upper 128 bits for a nice optimization when one input vector is zeroed
2023-08-28 05:09:30 +03:00
Eladash be0a789e7d PPU Analyzer: Fix OPD section validation 2023-08-27 02:11:01 +03:00
Megamouse 75af7dc269 cellPad: fix lost status during cellPad_NotifyStateChange
CELL_PAD_STATUS_CUSTOM_CONTROLLER was lost when setting reported_status.
2023-08-27 00:18:23 +02:00
Megamouse 9d88102520 cellPad: fix potential out of bounds read and u32 warnings 2023-08-27 00:18:23 +02:00
Megamouse 656f971823 cellPad: some readability updates 2023-08-27 00:18:23 +02:00
Megamouse dad07da2e9 Midi: fix data type warnings 2023-08-27 00:18:23 +02:00
Megamouse 08d9cbfe48 cellPad: implement cellPadPeriphGetData default logic and add some comments 2023-08-26 22:10:15 +02:00
Megamouse a101f6490f input: Use pad class instead of index in pad settings dialog
While not a bug, it's not very elegant to use the index as long as
there isn't any gap between the values. So let's use the class instead.
2023-08-26 22:10:15 +02:00
Megamouse b248483841 input: implement pressure intensity deadzone 2023-08-26 14:40:56 +02:00
Megamouse c727795881 input: clamp 0-1 in NormalizeDirectedInput
If you called this function with a value smaller than threshold, you
would get an overflow. This never happened, because we always passed
values bigger than threshold. Let's better fix this anyway.
2023-08-26 14:40:56 +02:00
Megamouse f4c2b4cc7e GHLtar: fix guitar tilt
fixes #14454 🤦
2023-08-25 23:27:15 +02:00
Dark bf8621c921 Update rpcs3/Emu/Io/RB3MidiKeyboard.cpp
Co-authored-by: Megamouse <studienricky89@googlemail.com>
2023-08-25 21:13:06 +02:00
Dark 8bd9a52de3 RB3MidiKeyboard.cpp: fix some note off messages being processed incorrectly
Some keyboards send a note on message with zero velocity instead of a
note off. As the MIDI spec permits this, it needs to be handled here.
2023-08-25 21:13:06 +02:00
Eladash eb61ae37ae rsx: Optimize RET returning to following CALL 2023-08-25 20:36:39 +03:00
Eladash 82c5c4d285 PPU Analyzer: Analyze whole segment 0 when patches are applied
Improve greedy instruction search.
2023-08-25 12:52:02 +03:00
Eladash 68c70dd1b9 Savestates: Fix config_event_entry compatibility 2023-08-25 12:52:02 +03:00
Eladash 5fde96d563 rsx: Discard color mask writes with reserved bits 2023-08-25 05:41:54 +03:00
Megamouse 8772219492 Remove unused variable in PPUThread.cpp 2023-08-23 21:42:59 +02:00
Megamouse 6b7f4cbe17 cellPad: remove unused variables 2023-08-23 21:42:59 +02:00
Megamouse d8af3ea855 overlays: fix some warnings, simplify code, use move and references 2023-08-23 21:42:59 +02:00
Eladash 4794869bd8 sceNpDrm: Slow down sceNpDrmIsAvailable 2023-08-23 10:14:29 +03:00
Eladash 4462b7be5c cellGame: Make cellGameDataCheck slower
* Turns out cellGameBootCheck is actually quite fast.
* cellGameDataCheck is incredibly slow, slower for DISC type.
* Set 0 sizeKB for when RET_NONE is about to be returned.
2023-08-23 10:14:29 +03:00
Eladash 756ab1191e PPU Analyzer: Fix for unaligned sections 2023-08-23 10:14:29 +03:00
Eladash e2d4d400ff rsx: Fixup calculate_required_range 2023-08-22 14:26:14 +03:00
Eladash 2022098b13 Progress Dialog: Fix race when PPU compilation is super fast 2023-08-22 14:26:14 +03:00
Eladash a26b8dff18 rsx: Fix index vertex array range with modulo calculation 2023-08-22 09:41:23 +03:00
Eladash ee3c7f335f Progress Dialog: Avoid PPU compilation pop-up on short linkage 2023-08-22 09:01:15 +03:00
Eladash bf93f9f987 Progress Dialog: Fix race that could lead to ever-inaccurate results 2023-08-22 09:01:15 +03:00
Eladash a001e6ef09 Progress Dialog: Fix race on PPU compilation status 2023-08-22 05:40:53 +03:00
Megamouse 36dce454dd input: fix dance mat PID
It seems this ID was wrong for some reason.
2023-08-21 23:48:56 +02:00
Megamouse e28b705f0d Input: Add PS Move navigation controller
Add the ps move navigation controller to pad types.
Use proper pad class profiles.
2023-08-21 23:48:56 +02:00
Megamouse f3b631fbb4 qt/utils: support full path in get_dir_entries 2023-08-21 22:46:38 +02:00
Eladash 16c8f8c9cd Game List: Add initials-only search 2023-08-21 16:38:41 +03:00
Eladash 1843a27c2a LV2/Loader: Fix kernel regions addresses 2023-08-21 14:36:54 +03:00
Eladash 7a0185dbcc PPU/debugger: Fixup 2023-08-21 14:36:54 +03:00
Eladash 17302a9422 Debugger/PPU: Superior Callstack Detection 2023-08-20 22:43:41 +03:00
nkarl7 78f2d44a0e
CLI - install multiple pkgs from folder (#14516) 2023-08-20 17:51:24 +02:00
oltolm 66aa02a382 xaudio2: enable IID_IXAudio2Extension for mingw-w64 2023-08-19 21:31:19 +02:00
Eladash 8236a0fa2d Fixup cellPadPeriphGetInfo 2023-08-19 17:18:40 +03:00
Eladash 9635417ae5 Replace some utils::bless usages 2023-08-19 17:18:40 +03:00
oltolm 373e502501
Workaround for Clang: move bless to its own header file 2023-08-19 13:30:46 +03:00
Eladash f1d9e89418 Cg Disasm: Fix instruction highlighting patter
Highlighted wrongly the "Loading..." because L is an uppercase letter.
2023-08-19 04:21:37 +03:00
Eladash cd98e84ca5 Debugger/RSX: Add FP/VP hash of current shader 2023-08-19 04:21:37 +03:00
Eladash 730badd378 cellAudio: Move and partially fix _mxr000 hack 2023-08-18 11:37:29 +03:00
Eladash 8b212f2169 PPU: Fix LVRX bad memory access 2023-08-17 17:59:45 +03:00
Eladash c8f8ecc4d6 LV2: Fixup reservation notifications 2023-08-17 13:02:57 +03:00
Eladash dacb0bd87f utils/endian.hpp: Use std::byteswap 2023-08-17 13:02:57 +03:00
Eladash 6adc7f9ee6 SPU: Use usermode waiting for busy GETLLAR loop 2023-08-17 09:02:28 +03:00
Eladash dddd12f66b CELL: Postponed address notifications 2023-08-17 09:02:28 +03:00
Ivan Chikish 384c807d6a Fixup atomic wait (Linux) 2023-08-16 23:29:09 +03:00
oltolm 01a05502e8 cmake: replace add_compile_definitions with target_compile_definitions 2023-08-15 20:56:39 +02:00
oltolm d062fc1d31 sys_net.cpp: fix compiler warning 2023-08-15 20:56:39 +02:00
oltolm a01a7a44cd qt6: fix mingw-w64 build 2023-08-15 20:56:39 +02:00
oltolm d25d5327e5 remove unnecessary defines 2023-08-15 20:56:39 +02:00
Elad Ashkenazi 968762c135 Fix PPU SELF Precompilation 2023-08-14 18:47:20 +03:00
Megamouse 0e23b89352 cellRec: add more encoder options 2023-08-13 21:35:07 +02:00
Elad Ashkenazi 219ee76bf2 cellPad: Fixup sys_config management 2023-08-13 14:20:39 +03:00
Megamouse 39bbf17caf cellRec: fix width of encoder frames
Turns out the pitch was accidentally used as width, leading to an out of bounds read/write.
I kept the pitch in the struct for completeness' sake. It may be needed later, if only for error checks.
2023-08-13 00:37:19 +02:00
Megamouse f40a6d496a home menu: remove non-dynamic SPU Loop Detection 2023-08-12 23:56:26 +02:00
Malcolm Jestadt f2e782f5dd SPU LLVM: Inline timer reads for WrDec and RdDec
- Uses RDTSC to emulate the spu decrementer
2023-08-13 00:16:35 +03:00
Megamouse d760e66fdb VS: Fix compilation on Visual Studio 17.7.0 2023-08-12 13:53:40 +02:00
Malcolm Jestadt 512f0a814c SPU LLVM: Fix for AVX-512 CFLTU path
- vcvvtps2udq doesn't turn negative numbers into 0, fix by using signed integer max with 0 instead of vrangeps
2023-08-12 02:55:08 +03:00
Elad Ashkenazi 5668b1bd7a
PPU Loader: Fixup stack alignment after envp fix 2023-08-12 02:03:24 +03:00
Ivan Chikish c6dcf3f1d3 (Linux) Fixup futex_waitv 2023-08-11 11:54:41 +03:00
Eladash eae1c5afdd PPU Loader: Fix main()'s envp 2023-08-11 05:07:27 +03:00
Eladash 4bbe885f35 LV2/cellPad: Implement priority-based connection updates 2023-08-10 09:31:49 +03:00
Eladash a2416bf7f5 cellPad: Fix max_connect in GetInfo
This value is saved and loaded from cellPadInit as is.
2023-08-10 09:31:49 +03:00
kd-11 58e9e54b7f rsx: Remove unused code (argb<->bgra modifier) and refactor a bit 2023-08-09 00:25:50 +03:00
kd-11 767979ea44 rsx: Implement image copy between 2D -> 3C/CUBE with scaling support. 2023-08-09 00:25:50 +03:00
Eladash bd7715b180 ELF.h: fix warning 2023-08-08 10:22:05 +03:00
Eladash df24305698 PPU/Debugger: Fix op_branch_targets 2023-08-08 10:22:05 +03:00
Eladash cdc0441405 PPU: Fixup interpreter and analyzer 2023-08-08 10:22:05 +03:00
Eladash edf4f7eacc PPU/Patches: Fix CALLOC patch with interpreter 2023-08-07 19:01:38 +03:00
Eladash 8e75e940dd cellSaveData: Fix check 58, implement checks 77 and 76 2023-08-07 19:01:38 +03:00
Eladash d694600146 PPU Loader: Fixup virtual load for non PRX 2023-08-07 19:01:38 +03:00
Eladash 0989f62256 cellGame: Add some LV2 sleep
Those functions are supposed to take a really long time, and in this time the caller PPU waits for VSH.
2023-08-07 10:56:15 +03:00
Eladash 63f045ef2e Add some error checking to sys_fs_chmod 2023-08-07 10:56:15 +03:00
Eladash 91b68f3b45 PPU Analyzer: Fixup verify_func 2023-08-07 06:48:44 +03:00
Eladash 39910885d9 PPU: fix leak when precompiling SELF files 2023-08-06 21:37:10 +03:00
Eladash 506ec0f947 PPU Loader: Fix imports/exports in virtual mode 2023-08-06 21:37:10 +03:00
Eladash c96f3a877f PPU Analyzer: Add more function constraints 2023-08-06 21:37:10 +03:00
Eladash 2a0278fbb1 Fixup SPU/PPU Cache Abortion 2023-08-06 21:37:10 +03:00
Eladash ee869a49f4 PPU Precompilation Fixup 2023-08-06 10:38:40 +03:00
Megamouse 343ba8733b Merge xfloat options 2023-08-06 09:30:53 +03:00
Eladash e6009794ee vm.cpp: Fixup race in range_lock_internal 2023-08-06 08:26:17 +03:00
Eladash 971c12b937 Fixup log message in sys_memory_allocate 2023-08-06 08:26:17 +03:00
Eladash 849af08ee9 System.cpp: Fixup spu.log/tty.log dumping 2023-08-06 08:26:17 +03:00
Eladash 6547fa9cc3 PPU LLVM: Fixup VSH Precompilation 2023-08-06 08:26:17 +03:00
Eladash 4eaa03e9ba PPU: A few more minor bugfixes 2023-08-06 08:26:17 +03:00
Eladash d0b3891002 PPU LLVM Cache Fixup 2023-08-06 08:26:17 +03:00
Eladash e25936c1f1 PPU LLVM/RawSPU: Fixup MMIO crossing-out 2023-08-06 08:26:17 +03:00
Ani 6672499dde vk: Fix detection of RADV on get_driver_vendor()
Since Mesa 22.2.0 (2022-09-21), commit 
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11027/diffs?commit_id=f06da59fd75d7ce7708d159753fcdbc11de16f9e, 
the deviceName property has included the name of the GPU, thus 
invalidating our previous method of detecting RADV as a driver vendor

Before: "AMD RADV NAVY_FLOUNDER"
After: "AMD Radeon RX 6700M (RADV NAVI22)"

Before: "AMD RADV RENOIR"
After: "AMD Radeon Graphics (RADV RENOIR)"
2023-08-06 01:08:06 +02:00
nastys dea24c905b Make experimental build warning modal 2023-08-05 12:40:59 +02:00
Whatcookie d4cf12bc17
LV2: Improve sys_timer_usleep by using CPU usermode waiting
* Linux: set timerslack to minimum value
- Linux delays the wakeup of threads to save power, this feature isn't needed for this application

* Utils: Add detection for waitpkg and monitorx extensions
- These instructions are used for user mode wait instructions

* lv2: Use user mode wait instructions instead of yielding when appropriate
2023-08-05 11:49:30 +03:00
trigger 51a8d2235c osk: ignore input based on ignore_device_events 2023-08-04 21:32:04 +02:00
kd-11 26ecd88074 rsx: Rebuild shader texture state if we detect a silent mismatch 2023-08-04 19:23:06 +03:00
MSuih 65685d4525 Fix current date format 2023-08-04 11:22:44 +03:00
Eladash 744a1528cc Optimize memory usage of ELF loader
Do not duplicate shdr memory when it is present in phdr.
2023-08-03 16:19:55 +03:00
Eladash bb92154145 Auto-dump decrypted binaries if PPU debug is enabled 2023-08-03 16:19:55 +03:00
Eladash 8057773c4f Fix decrypt_binaries_t::done() 2023-08-03 16:19:55 +03:00
Eladash 9f625de51a vm.cpp/Non-TSX: Fixup potential deadlock 2023-08-03 15:04:37 +03:00
Eladash 06c9b95e09 PPU LLVM/SPU/Non-TSX: Obnoxiously responsive and obedient PPU for SPU requests 2023-08-03 15:04:37 +03:00
trigger 0f3dfec7f2 direct return in ppu_check 2023-08-03 12:35:06 +03:00
Ivan Chikish d34287b2cc Linux: use futex_waitv syscall for atomic waiting
In order to make this possible, some unnecessary features were removed.
2023-08-02 21:46:06 +03:00
Megamouse bb2d7063c4 Update ffmpeg 2023-08-02 08:21:47 +02:00
Megamouse ef12da774e rsx: fix register_vertex_printer value func 2023-07-31 23:14:02 +02:00
Ani 6cd5a7eab9 rpcs3_version: Bump to 0.0.29 2023-07-31 20:03:24 +03:00
Megamouse d119cf6e96 Qt6 port 2023-07-31 20:03:24 +03:00
Megamouse 9b3a878c18 cellAudioIn: reduce log spam
Some logs I've seen are 20% filled with this stuff.
2023-07-31 13:19:55 +03:00
Megamouse 365b264656 cellMsgDialogAbort: do not return CELL_MSGDIALOG_ERROR_DIALOG_NOT_OPENED 2023-07-31 13:19:55 +03:00
Eladash b12edf70bb Optimize RSX Debugger 2023-07-31 11:55:31 +03:00
Elad Ashkenazi 53c1da8f94 Qt: Fix elf_memory_dumping_dialog PPU address 2023-07-31 08:53:10 +03:00
Elad Ashkenazi 213b810279 Debugger: Transition to plain text edit 2023-07-31 08:53:10 +03:00
Elad Ashkenazi 8a4617d3c2 Fix color tag of logs/tty 2023-07-31 08:53:10 +03:00
Megamouse c108b31954 Qt: fix data type of find_dialog text edits 2023-07-31 04:10:09 +03:00
Whatcookie fd6829f757
SPU LLVM: AVX-512 optimization for CFLTU (#14384)
- Takes advantage of vrangeps and the new float to uint instructions from AVX-512
- Down from 6 to 3 instructions

TODO: Somehow ensure that this is what llvm outputs using CreateFPToUI?
2023-07-29 09:01:01 +03:00
Talkashie dabb2cc9a0
Fix typos, improve consistency
Fixes typos where spelling or grammar is objectively wrong.
Changes wording and capitalization in some areas to be more consistent with other areas.
2023-07-28 13:09:06 +03:00
Whatcookie 4ecb06c901
SPU LLVM: Optimize common SFI+ROTQMBY pattern 2023-07-28 10:26:40 +03:00
Whatcookie 375bc4cc69
Utils: Add initial AVX10 support
- Adds detection for AVX10 features
- Also adds new bools for 256-wide AVX-512 instructions, indicated by either AVX-512 support, or AVX10
2023-07-28 06:55:20 +03:00
Elad Ashkenazi 9265ff53d0
Include spu.log inside RPCS3.log when SPU Debug is true 2023-07-27 19:15:32 +03:00
Eladash 75ad56338b SPU/Non-TSX: Implement cuncurrent reservations 2023-07-27 02:50:01 +03:00
Eladash db24ce7708 SPU/MFC: Format command more consistently 2023-07-27 02:50:01 +03:00
Eladash 2d45ecff22 cellSaveData: Adjust to non-TSX 2023-07-27 02:50:01 +03:00
Elad Ashkenazi 5d98f3866c Log TTY output after emulation have been stopped 2023-07-26 17:56:44 +03:00
Elad Ashkenazi 106f31db6a sceNpTrophy: Minor UB fixup
id.data[9] is char while isprint should accept u8.
2023-07-26 17:56:44 +03:00
brian218 9a5bdc9b4f sys_fs: Updated sys_fs_fcntl(0xc0000015&0xc000001c)'s error handling according to real hardware testing 2023-07-26 13:10:51 +03:00
brian218 0b829be798 sys_fs: Fixed up sys_fs_fcntl(0xc0000007) aka cellFsArcadeHddSerialNumber according to real hardware testing 2023-07-26 13:10:51 +03:00
Megamouse 94bb75fb7c sceNpTrophy: Check if a trophy configuration file exists before starting the install process 2023-07-25 22:00:19 +02:00
Eladash 7d84d0f83e sceNpTrophy: Initial commSign checking of CreateContext 2023-07-25 21:40:35 +03:00
oltolm bc40b61ef1 rename fs::stat to fs::get_stat 2023-07-25 12:15:08 +03:00
Megamouse 73c3d5fc81 Fix config path in Emu.Restart() 2023-07-25 11:12:16 +03:00
Megamouse 13575029c0 cellSaveData: add some more error logging 2023-07-25 11:12:16 +03:00
brian218 ea016382f2 Fixed Emu.Restart(graceful=false) no longer worked after #14038 2023-07-25 09:48:11 +03:00
Eladash 782344eed8 Debugger: Make break-all non-default 2023-07-24 17:07:15 +03:00
Eladash 9d3e626b55 Minor ppu_initialize fix 2023-07-24 17:07:15 +03:00
Eladash a6e8b9037a ppu: Make install function log message trace 2023-07-24 17:07:15 +03:00
brian218 c9f91ecee9 USIO: Added support for Tekken Tag Tournament 2 Live Monitor edition 2023-07-24 08:39:14 +02:00
oltolm 7cb2d3f143
opengl: fix Qt warnings (#14249) 2023-07-24 07:30:21 +03:00
brian218 a975b4937a USIO: Added support for Tekken Tag Tournament 2 2023-07-23 20:23:00 +02:00
Eladash fce8e0fef0 Savestates: Facilitate multi slots 2023-07-23 17:58:54 +03:00
Eladash 3bbc2c1f4c PPU Analyzer: Fixup get_ptr() 2023-07-23 17:58:54 +03:00
Eladash 99671b754f Add ppu_module::get_ref() to ease debugging 2023-07-23 17:58:54 +03:00
Eladash 9fc5f6271b Update SPU reservation notifier mask 2023-07-23 17:58:54 +03:00
Eladash 4647f3046e Qt: Minor logging change 2023-07-23 17:58:54 +03:00
Eladash c44cddabfa CPUThread.cpp: Fix use of cpu_counter::add
This also fixes a crash when saving savestate because main thread uses cpu_counter::suspend_all which adds cuncurrency.
2023-07-23 17:58:54 +03:00
Eladash 9ff91c29f2 Invalidate Savestates 2023-07-23 17:58:54 +03:00
Eladash e303cc536c Qt: Fix GetBootConfirmation() 2023-07-23 17:06:59 +03:00
Eladash afdfefc9ad Game List: Fix allowance of caches/games to be removed while the game is running! 2023-07-23 17:06:59 +03:00
Eladash 3033914e2d Game List: Implement Remove HDD1 Cache option 2023-07-23 17:06:59 +03:00
brian218 70b124cfa0
USIO: Fixed BACKUP MEMORY ERROR for some games (#14248) 2023-07-23 12:17:49 +03:00
Eladash 38a5313ed2 Fix log data loss on force application shutdown 2023-07-21 12:27:35 +03:00
Eladash 465da5136d Qt: Fix saved log filename 2023-07-21 12:27:35 +03:00
Megamouse 568e7481d8 sys_fs: use path instead of u8path
Japanese PS3 games often use unicode paths which hard crash the std::filesystem::string() method.
wstring() would work in these cases, but I guess we can just use path() instead of u8path().
2023-07-20 07:22:07 +03:00
Darkhost1999 a0297933ce
Create Missing Paths for Dev_USB/HDD0 and mms
In addiytion, fix 2 warnings.
2023-07-19 12:01:44 +03:00
Eladash 50dad6801b SPU LLVM: Use get_known_bits() in SHUFB 2023-07-18 22:27:45 +03:00
Malcolm Jestadt ee7475a9d4 SPU LLVM: Handle SHUFB special cases with a lookup table
- Needs 3 instructions to handle the special cases, since x86 lacks an 8 bit simd shift instruction
2023-07-18 22:27:45 +03:00
Elad Ashkenazi ba988f1d3f
Qt: Exit And Save Log - toolbar action (#14212)
Fixup main_window::IsValidFile
2023-07-18 05:11:53 +03:00
Megamouse db029ed29f Fix default renderer when creating a brand new config 2023-07-17 09:35:26 +02:00
Elad Ashkenazi 41d38975f7 Savestates/sys_fs: Utilize fs::file::get_id to fix an old bug 2023-07-17 08:09:09 +03:00
Eladash eecadab387 Implement fs::file::get_id()
File descripor ID with 2 provided ways to compare between them:
1. is_mirror_of():
 Test if identical:
  For example: when LHS writes one byte to a file at X offset, RHS file be able to read that exact byte at X offset)

2. is_coherent_with():
 Test if both files point to the same file:
  For example: if a file descriptor pointing to the complete file exists and is being truncated to 0 bytes from non-
  -zero size state: this has to affect both RHS and LHS files.
2023-07-17 08:09:09 +03:00
Eladash e27e6c0b2d Implement PPU usleep control setting hack 2023-07-17 07:17:11 +03:00
Eladash 30a5d646ec Qt: Minor fixup 2023-07-16 20:16:20 +02:00
Eladash 882fb3e049 Qt: Cache drag-and-drop result when moving it 2023-07-16 19:49:55 +03:00
Eladash 0423781363 Qt: Restrict file types for drag-and-drop 2023-07-16 17:43:27 +03:00
Megamouse 43cfb3cd10 ecdsa: tiny optimization for key and curve 2023-07-16 09:32:39 +02:00
Megamouse de15c9746f ecdsa: clean up some code 2023-07-16 09:32:39 +02:00
Eladash 1371bf89e0 PPU LLVM: Allow to abort OVL analysis in the middle 2023-07-15 08:26:28 +03:00
Eladash 3b8f8d7fc8 PPU LLVM: Improve precompilation time 2023-07-15 08:26:28 +03:00
Megamouse a828c214b5 Qt/patches: highlight faulty lines in patch creator 2023-07-13 08:40:19 +02:00
Megamouse 482722af0a Patches: fix logging for locations of node iterators 2023-07-13 08:40:19 +02:00
Megamouse e8ee5831d3 Qt: add validator to patch creator offset lineedit 2023-07-13 08:40:19 +02:00
Eladash 083b4f0d3b Patches: Fix potential RPCS3 crashes due to invalid patches 2023-07-13 07:38:46 +03:00
Eladash c0280b43f2 PPU/Debugger: View the currently used CR field content in register panel 2023-07-12 13:22:06 +03:00
Megamouse d153e977a7 Qt: ignore Qt::Key_unknown when parsing key sequences 2023-07-12 09:35:43 +03:00
kd-11 eee7bf0c97 vk: Don't load depth-stencil textures on the transfer queue 2023-07-12 03:20:08 +03:00
oltolm 0c94606fcf
Make compile with msvc, clang and gcc on Windows 2023-07-11 21:40:30 +03:00
kd-11 bff6e0d277 rsx: Don't assert when surface and texture cache overlap lockable memory
- It's not a serious enough problem and the root cause is understood.
2023-07-11 04:09:30 +03:00
kd-11 c325017675 rsx: Preserve the texcoord transform around destructive modifications 2023-07-11 04:09:30 +03:00
Elad Ashkenazi 4b12c9a9fc
Force inherit BDVD/PS3_GAME across game updates (#14159) 2023-07-11 00:30:02 +03:00
kd-11 0d57744efa rsx: Fix AMD shader codegen 2023-07-10 22:44:40 +03:00
Elad Ashkenazi e882d64d8a SPU/PPU Debugger: Add decimal mode to registers panel 2023-07-10 19:06:57 +03:00
Eladash 16f910e350 sys_fs: Fix log levels 2023-07-10 12:39:26 +03:00
Megamouse e2c2ef9788 Write config.yml if it doesn't exist or is empty on boot 2023-07-10 00:50:19 +02:00
kd-11 a98b4adead rsx: Fix projected coordinates calculation again 2023-07-09 19:33:48 +03:00
kd-11 186fe53279 rsx: Fix the default shadow codegen path 2023-07-09 19:33:48 +03:00
kd-11 c9917c826a Fix typo 2023-07-09 19:33:48 +03:00
kd-11 aedebecae2 rsx: Reimplement projected texturing 2023-07-09 19:33:48 +03:00
Eladash 482dd0e8f8 SPU: Remove wrong clamp in MFC_Size
Just crashes real MFC.
2023-07-09 13:33:03 +03:00
Eladash cae2e7de80 LV2: Log allocated guest VM addresses 2023-07-09 13:33:03 +03:00
Eladash e76ce05e29 logs: Add manual set log level with RegEx 2023-07-09 13:33:03 +03:00
Eladash a98174be85 Logs re-enable on Emu.Kill() fixup 2023-07-09 13:33:03 +03:00
Eladash b68cfbf794 Fix spu_thread::dump_callstack_list regression
TODO: Fix in PPU [properly!]
2023-07-09 13:33:03 +03:00
Eladash 17d8f2884e Debug fixes 2023-07-09 13:33:03 +03:00
Megamouse 050b8fa7df Qt: Use detailed text for install message 2023-07-08 20:11:01 +02:00
Megamouse c30c9b2168 Home menu: improve Anisotropic Filter Override value labels 2023-07-08 13:42:05 +02:00
Megamouse 358735a199 Home menu: add optional special label overrides 2023-07-08 13:42:05 +02:00
Megamouse d909bbc297 Home menu: set vblank step size to 30 2023-07-08 13:42:05 +02:00
Megamouse 2adb2f82d7 Home menu: move advanced video options to advanced menu 2023-07-08 13:42:05 +02:00
Elad Ashkenazi 1219e5c244
SPU: Fix static interpreter requirement with interrupts
Removed a wrong condition in PPU LLVM as a fixup.
2023-07-07 22:39:49 +03:00
Megamouse 4aec48c2ca Only silence logging during gameplay 2023-07-07 18:28:34 +02:00
Eladash 8d54ddf426 memory viewer: Add RegEx instruction searching mode 2023-07-07 16:03:08 +03:00
Eladash c21cdb8055 Implement PPU LV2 debug 2023-07-07 16:03:08 +03:00
Eladash 05824e6acd UX: Option to pause emulation when RPCS3 is not focused 2023-07-07 14:38:32 +03:00
Ivan Chikish b3b680f073 [simd.hpp] Fix gv_fmafs 2023-07-07 11:09:55 +03:00
Eladash 598fe85243 PPU LLVM/RawSPU: Implement MMIO violation elimination pass 2023-07-06 19:46:36 +03:00
kd-11 e7ac84fca3 rsx: Fine-tune the subimage view bezel dimensions 2023-07-06 14:06:30 +03:00
kd-11 b9ea6be842 rsx: Fix AA factor calculation 2023-07-06 14:06:30 +03:00
kd-11 d46dbc0fa8 rsx: Fill section dimensions when converting atlas op to copy op 2023-07-06 14:06:30 +03:00
Sanjay Govind 8f178b2c29 sys_usbd: Implement support for Santroller devices 2023-07-05 23:54:37 +02:00
kd-11 d41fe80b8e Clamp MSAA sampling weights to avoid clipping 2023-07-05 02:51:04 +03:00
kd-11 465c421707 rsx: Wrap MSAA coordinates before texelFetch 2023-07-04 23:41:12 +03:00
Elad Ashkenazi f7e9622084 vm_native.cpp: Workaround for rpcs3_vm_sparse.tmp crashes 2023-07-04 20:44:41 +02:00
kd-11 79e000f63d rsx: Fix virtual coordinate clamping 2023-07-04 09:31:51 +03:00
kd-11 10af0e8c93 vk: Disable anisotropy if the anisotropic level is meaningless 2023-07-04 09:31:51 +03:00
kd-11 d13cf0e29a rsx: Fix shader interpreter
- It broke ages ago
2023-07-04 09:31:51 +03:00
kd-11 1671922f7e rsx: Fix shader interpreter compilation 2023-07-04 09:31:51 +03:00
kd-11 c9da795bf3 rsx: Fix vp codegen when unrestricted depth range extension is absent 2023-07-04 09:31:51 +03:00
kd-11 69eb1401a9 vk/gl: Fix debug overlay stats 2023-07-04 09:31:51 +03:00
kd-11 aa06ac119f rsx: Fix sampled descriptor address corruption 2023-07-04 09:31:51 +03:00
kd-11 1afee59c95 rsx: Insert missing texture barrier 2023-07-04 09:31:51 +03:00
kd-11 4decad6f6b rsx: Force compatibility checks when applying fast-path optimizations 2023-07-04 09:31:51 +03:00
kd-11 a37f786a37 rsx: Properly fill in the cyclic ref field for framebuffer references 2023-07-04 09:31:51 +03:00
kd-11 8f98e572e1 rsx: Use designated initializer for the dangerous copy_region_descriptor type
- We need to move more dangerous braced initializations to c++20
- Also adds a base address variable which will come in handy
2023-07-04 09:31:51 +03:00
kd-11 c818f8af82 vk: Fix namespace pollution in sync module 2023-07-04 09:31:51 +03:00
kd-11 fac8bcc20c rsx: Formatting and tidying changes 2023-07-04 09:31:51 +03:00
kd-11 1d004f2788 rsx: Lower single-image-blit to a scaled coordinate fetch 2023-07-04 09:31:51 +03:00
kd-11 cef4ea786a rsx: Trivially detect single-image-blit transfer operations 2023-07-04 09:31:51 +03:00
kd-11 8ebf24d8e7 vk: Do not clear memory if we're going to overwrite it with a copy anyway 2023-07-04 09:31:51 +03:00
kd-11 69b02f7e46 rsx: Implement atlas trivialization pass
- Decompose sequences of copies into the minimally required set.
  This does 2 things:
  a. Reduces GPU workload by doing less transfers
  b. Allows the clipping optimization to kick in and skip a ton of GPU work
2023-07-04 09:31:51 +03:00
kd-11 b788e05396 rsx: Implement GPU copy ellision through coordinate transform
- TODO: Some corner cases still exist where format may not be a match after a cache merge.
2023-07-04 09:31:51 +03:00
kd-11 5dc4e74c98 rsx: Minor optimization to speed up texture state sync a bit given the larger structure in use now 2023-07-04 09:31:51 +03:00
kd-11 436ef1cff6 rsx: Fix shader compilation when texture ops are referenced 2023-07-04 09:31:51 +03:00
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
Megamouse e0e4fa3b3e Input: Add tooltips for button mapping 2023-07-01 08:56:10 +02:00
Megamouse b9dbda5ddc Fix some warning 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 593f850693 Qt: Save UI settings and geometry safely on closeEvent 2023-06-29 14:02:25 +02: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
Megamouse 8e3d0af08e Qt: remove obsolete shortcut 2023-06-26 21:23:48 +02:00
Megamouse 12f2b900ca Qt: use shortcut instead of hardcoded keypress event 2023-06-26 21:23:48 +02:00
Megamouse 6228dff809 welcome_dialog: remove weird window close event 2023-06-26 21:23:48 +02: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
Eladash aff871f127 about_dialog: Add new testers 2023-06-25 20:16:55 +03:00
Eladash 9f00359e17 Qt: Add RPCS3 Discord & Wiki to About Dialog 2023-06-25 20:16:55 +03:00
Eladash 0871436488 settings: Display rendering result of 100% resolution scale 2023-06-25 20:16:55 +03:00
Eladash 6aa598b029 Qt: Add Create RPCS3 shortcuts to Wecome Dialog 2023-06-25 20:16:55 +03:00
Eladash 83e22fa9f0 Qt: Make welcome dialog accessible through F1 or Help menu
Enable window close button after "I have read the Quickstart" is checked.
2023-06-25 20:16:55 +03:00
Eladash a230340578 Qt: Fix memory leak in welcome dialog 2023-06-25 20:16:55 +03:00
Eladash 2da78c6591 Qt: Allow to drop RAP&PKG together 2023-06-25 20:16:55 +03:00
Eladash 46350200d7 Qt: Always set QEvent::isAccepted is drag&drop events 2023-06-25 20:16:55 +03:00
Eladash 00502e94b5 Qt: Do not require to close games when adding new disc game directories 2023-06-25 20:16:55 +03: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 00cca7be69 Utilities/Memory Viewer: Improve image viewer
* Added image scaling with Ctrl+Plus, Ctrl+Minus.
* Added hover position to see which address is being pointed at, when double clicking on it the image viewer is closed and the memory viewer jumps to the clicked memory data.
2023-06-21 22:28:52 +03:00
Eladash 0a43f69e87 Utilities/Memory Viewer: Add G8 and G32MAX image formats 2023-06-21 22:28:52 +03:00
Eladash c84d2d895e Utilities/Memory Viewer: Add PageDown/PageUp scrolling
* F5 for single refresh.
2023-06-21 22:28:52 +03:00
Eladash 87d5f45277 Utilities/Memory Viewer: Fix memory leak 2023-06-21 22:28:52 +03:00
Eladash 137f37cd41 Debugger/RSX: Add shortcut for RSX semaphores 2023-06-21 22:28:52 +03:00
Eladash 18722d7874 Utilities/Memory Viewer: Add auto-refresh mode 2023-06-21 22:28:52 +03:00
Eladash 307e1351df asm.hpp: Fix mul_saturate 2023-06-21 22:28:52 +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
Megamouse a6d8c4343f Windows: silence uncritical performance counter error 2023-06-16 19:36:44 +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 924692bf1c Qt: use shift+click to append the button instead of replacing it 2023-06-15 22:39:30 +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
Megamouse a90858193e Qt/logging: add format function for QString 2023-06-15 19:48:15 +02:00
Ani 6dcf63009e Settings: Move Accurate SPU DMA to Advanced 2023-06-15 01:22: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 44421920b3 Settings: Reorder settings in Debug 2023-06-15 01:22:15 +02:00
Ani 0e79fbda05 Settings: Reorder settings in Emulator 2023-06-15 01:22:15 +02:00
Ani 9ab89c634b Settings: Move Automatically start games after boot to Debug 2023-06-15 01:22:15 +02:00
Ani 0a6f12f448 Settings: Rename to Force GPU Texture Scaling
Before the setting's name was Use GPU Texture Scaling
2023-06-15 01:22:15 +02:00
Ani 8612bdd03d Settings: Rename to Pause emulation after loading savestates
Before the setting's name was Start Savestates Paused
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 deda47f461 Settings: Move Accurate GETLLAR to Advanced
Also includes some minor cleanup to move some code to their right blocks 
in settings_dialog and tooltips
2023-06-15 01:22:15 +02:00
Ani 2751f5e254 Settings: Move Accurate PPU Float Condition Control to Debug 2023-06-15 01:22:15 +02:00
Ani 2ac1ff1d0a Settings: Move Accurate PPU Vector NaN Handling to Debug 2023-06-15 01:22:15 +02:00
Ani 30e8c70055 Settings: Move Accurate PPU Non-Java Mode to Debug 2023-06-15 01:22:15 +02:00
Ani 62600b3be0 Settings: Move Accurate PPU Saturation Bit to Debug 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 b557a7fa16 Settings: Move Start Savestates Paused to Emulator
Under Emulator Settings groupbox, this is not really an Advanced setting 
thus it's more fitting on the Emulator tab
2023-06-15 01:22:15 +02:00
Ani 73e336adfa Settings: Move Disable Vertex Cache to Advanced
Under GPU group box, MTRSX now works with Vertex Cache so the use cases
for this settings are very reduced
2023-06-15 01:22:15 +02:00
Ani 86b27a3088 Settings: Remove Full Width AVX-512 from the UI
This is a very niche setting, so it can remain a config.yml setting only
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
Elad Ashkenazi 59430ee83e
Log Frame: Make clear act clear pending messages (#14004) 2023-06-12 18:46:09 +02:00
Megamouse b436d2a7f4 input: add controller index to SDL controllers 2023-06-12 18:05:34 +02:00
Megamouse 84d2ad70e6 input: add new buttons for Dualsense Edge 2023-06-12 17:29:14 +02:00
Megamouse 1bd9549e45 input: merge some duplicate code 2023-06-12 17:29:14 +02:00
Megamouse 2409a0d04e input: Add dualsense edge PID 2023-06-12 17:29:14 +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 fcfca6efda Qt: add ability to style richtext href links 2023-06-08 22:58:55 +02:00
Megamouse 0ebe832f8e input: fix some warnings 2023-06-08 22:58:55 +02:00
Megamouse 86ed82dcec PSF: improve load readability 2023-06-08 21:15:39 +02:00
Megamouse 769b69999f fix whitespace 2023-06-08 21:15:39 +02:00
Megamouse 91ee066751 Qt: do not set play/pause button texts to 'Resume' on emu stop or ready
Since the states now always seem to match, this makes no sense anymore
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 c0366ba40c Qt: fix start/restart shortcut 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
Megamouse fcd6be71b0 debugger_frame: don't query cpu thread if emulation is stopped anyway 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 3f44ecb77a register_editor_dialog: Improve selection 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
Eladash e75c0dbaa1 debugger(CallStack): Make Return act as double click 2023-06-05 17:39:52 +03:00
Eladash 0c0f63a2a8 debugger: Fix potential null dereference 2023-06-05 17:39:52 +03:00
Eladash c9942aa828 debugger: Fix key events when CallStack is focused 2023-06-05 17:39:52 +03:00
Eladash ca56f0747e debugger: Avoid incorrect update timer restart 2023-06-05 17:39:52 +03:00
Eladash e77c01d00a debugger: Fix use of invalid pointers 2023-06-05 17:39:52 +03: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
Ani 33558d14e5 rpcs3_version: Bump to 0.0.28 2023-06-02 19:54:07 +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
Megamouse ba592070f7 Qt: fix random initial game selection in trophy dir 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
Elad Ashkenazi e0853095e3 Fixup debugger_frame double events 2023-05-30 13:11:03 +02:00
Eladash 5a365506f7 Qt/Debugger: Add Ctrl+F (find thread), Ctrl+C (copy) 2023-05-28 13:53:35 +02: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 7b9614fcf3 Hid: add some logging for initial send_output_report 2023-05-25 23:02:22 +02:00
Megamouse 8e62a0e22d input: remove some outdated comments 2023-05-25 23:02:22 +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 07f458f991 Qt: rename emulated pads menu to usb devices 2023-05-25 20:37:15 +02:00
Megamouse 6180a58d7a Qt: disable emulated pad settings during emulation 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