Commit graph

1341 commits

Author SHA1 Message Date
Eladash 52a0b38379
Workaround segfaults in Vulkan enumeration thread (#9935)
* Workaround segfaults in Vulkan enumeration thread
2021-03-09 13:50:58 +01:00
Megamouse 935e398930 patch_manager: expand first search results 2021-03-08 12:05:00 +01:00
Eladash 2afc7cbaaa
GUI: Implement MSELF extraction tool (#9909)
* MSELF: fix overflow

* GUI: Implement MSELF extraction tool

* VS: fix mself files in vcxproj

* fix

* Update mself.cpp

* fixed
2021-03-07 17:59:37 +01:00
Megamouse 3ae7debc17 Qt: Do not allow updates during emulation 2021-03-07 01:56:25 +03:00
Megamouse dab53f4e41 Cleanup Emu before the update reboot 2021-03-07 01:56:25 +03:00
Megamouse 9da7910fc9 Fix auto updates. Don't pass exe as arg0 to execl 2021-03-07 01:56:25 +03:00
Nekotekina 87af905018 Enable -Wunused-parameter 2021-03-06 18:07:08 +03:00
Megamouse 7205a93751 add some log messages for debugging 2021-03-06 18:06:21 +03:00
Eladash a5d74c5e96 GUI: Improve missing firmware handling
* Install PS3UPDAT.PUP at the spot when booting games whenever firmware is missing. The option to boot games without firmware is still supported when all firmware SPRX are HLEd in firmware settings.
* Pop-up a confirmation dialog in firmware installation if firmware is already installed.
2021-03-06 10:34:49 +01:00
Megamouse bdd94f053c Qt: reset battery progress bar when not supported. 2021-03-06 02:07:02 +01:00
Megamouse f88c3ae417 Qt: fix settings_dialog layout. Add stretches. 2021-03-05 14:46:52 +03:00
Megamouse b09ac19e61 VS 16.9.0 compilation workaround 2021-03-05 14:46:52 +03:00
Megamouse 73ca2119ed perf overlay: add datapoint settings to GUI 2021-03-03 00:33:46 +01:00
Megamouse 038c708a0a perf overlays: add detail level none (hides FPS) 2021-03-03 00:33:46 +01:00
Nekotekina 52fe86b56c fixed_typemap.hpp: make it a bit fool-proof
Require objects to be non-copyable (move is still allowed).
2021-03-02 21:58:49 +03:00
Eladash 004ebfdaee SPU debugger: Implement MFC journal
* Allow to dump up to 1820 commands with up 128 bytes of data each, using key D with the debugger.
2021-03-02 21:57:51 +03:00
Nekotekina ea5e837bd6 fixed_typemap.hpp: return reference 2021-03-02 16:08:14 +03:00
Nekotekina d788b12a8e fixed_typemap.hpp: reduce indirection
Backported some changes from auto_typemap.hpp
Implemented methods init(), reset(), clear()
Disabled recreation support.
2021-03-02 16:08:14 +03:00
Megamouse 805d52987f Qt/Input: set player LED in pad settings 2021-03-01 14:37:49 +01:00
Megamouse c2467b7b38 ds3: add led battery indicators (Linux only atm)
needs testing. maybe doesn't work
2021-03-01 14:37:49 +01:00
Megamouse 0b5c6350ae
cellScreenshot: fix overlay scaling (#9867)
* cellScreenshot: fix overlay scaling
2021-02-28 23:00:49 +00:00
Nekotekina b7c579adf9 Tentative fix for -Wattributes
These warnings enabled conditionally for GCC 10.1+.
2021-03-01 00:22:32 +03:00
Eladash 461fa6a88a
Firmware installation bugfixes (#9855)
* Fix race condition in PUP installation abortion.
* Fix freezes of emulator in case the PUP installation failed due to filesystem errors.
* Use fs::create_path as opposed to fs::create_dir as it is can create upper directories in case they are missing and is better in error handling.
* Report TAR errors on failure to create directories.
* Fix pup_object constructor to not crash on invalid PUP file header. (report an error)
* Fix pup_object::validate_hashes to not crash on invalid PUP file entries. (report an error)
* Do not call Qt functions inside a named_thread because it is wrong.
2021-02-28 22:59:27 +03:00
Florin9doi dfee46604a Buzz settings 2021-02-28 22:36:47 +03:00
Megamouse a7c9827ad4
Improve cellScreenshot (#9851)
* Fix screenshot logging

* Update libpng to 1.6.37

* cellScreenshot: Write text chunks
* cellScreenshot: add overlay image
* screenshot_manager: add /dev_hdd0/photo/

* read_png_file: use deleter instead of manual close

* cellScreenshot: use Qt for overlays
* cellScreenshot: don't apply overlay to regular img
* screenshot_manager: add mount hack for VFS
* cellScreenshot: escape the whole path
2021-02-28 22:05:04 +03:00
Megamouse 7cb32a3680 Qt: set parent for QThread
This may or may not have caused a leak
2021-02-28 18:48:34 +03:00
Eladash 0012f39384 Fix TTY handling of control characters 2021-02-24 16:42:39 +03:00
Megamouse b83cb2dbf5
product_info: add Harmonix Pro-Drum Kit (#9822)
Co-authored-by: DrGeelfood <79338929+DrGeelfood@users.noreply.github.com>
2021-02-23 18:23:53 +03:00
Eladash 112b7f6571 Fix Emulation::CallAfter
Most CallAfter usages were extremely wrong when ordered after Emu.Stop(). could result in anywhere from emulation stopping hangs to even segfaults.
track_emu_state = true is now the default, I haven't found cases which need need it disabled.
2021-02-23 17:55:36 +03:00
Eladash 932f31e37b Atomic PARAM.SFO writes 2021-02-23 11:29:23 +03:00
Megamouse 037586d7bb fix no-gui crash if no firmware was installed
It's a bit mysterious, but the confirmation box doesn't like being called in this mode.
So let's just return false.
2021-02-23 05:03:38 +01:00
Nekotekina 4b858648e5 Add supporters 2021-02-22 19:37:42 +03:00
Megamouse d0cc5c0fc7 DS4: enumerate devices periodically 2021-02-22 10:45:40 +01:00
RipleyTom 5129d0da45 check alcGetString return pointers 2021-02-20 07:39:56 +01:00
Eladash 20eb4352fb
debugger: Fix single stepping (#9793) 2021-02-19 14:53:09 +03:00
Nekotekina 038148bf06 Fix almost all GCC warnings 2021-02-17 22:59:04 +03:00
Nekotekina 1446254a03 Add error on missing 'override'
For consistency.
2021-02-15 20:21:30 +03:00
Nekotekina 8e6e57de86 Enable -Wunused-function warning 2021-02-15 14:39:53 +03:00
Eladash f43260bd58
Atomic waiting refactoring (#9208)
* Use atomic waitables instead instead of global thread wait as often as possible.
* Add ::is_stopped() and and ::is_paued() which can be used in atomic loops and with atomic wait. (constexpr cpu flags test functions)
* Fix notification bug of sys_spu_thread_group_exit/terminate. (old bug, enhanced by #9117)
* Function time statistics at Emu.Stop() restored. (instead of current "X syscall failed with 0x00000000 : 0")
2021-02-13 17:50:07 +03:00
Eladash 5401cb7392 kernel explorer: Display all PRX/OVL segments 2021-02-12 15:27:59 +03:00
Megamouse 8d6504d6e3 GUI: initial log viewer 2021-02-09 22:56:28 +01:00
Ivan 04c187deb5 Revert "Replace GetEmuDir() with GetExeDir() in handle_rpcs3"
This reverts commit f9eb6a31bd.
2021-02-09 22:24:09 +03:00
Megamouse bc938ce630 dualsense: implement player LEDs 2021-02-09 19:21:37 +01:00
Megamouse e5f95a450d dualsense: update description 2021-02-09 19:21:37 +01:00
Megamouse b31d38eef7 LED settings: set modal and add has_battery check 2021-02-09 19:21:37 +01:00
Jordy Vieira f9eb6a31bd Replace GetEmuDir() with GetExeDir() in handle_rpcs3 2021-02-09 20:06:26 +03:00
Eladash 78811b8816 GUI: Always remove manually added fonts in OnChangeStyleSheetRequest() 2021-02-08 21:38:53 +01:00
Eladash e38cd5149a Fix firmware updating/reinstallation 2021-02-08 21:38:53 +01:00
Megamouse dc2a1e270a Qt: Repaint log on stylesheet change 2021-02-08 13:24:07 +03:00
Megamouse 44ab50553d Qt: Replace relative paths in stylesheets instead of changing the working directory 2021-02-07 20:07:58 +03:00