Commit graph

8089 commits

Author SHA1 Message Date
MSuih cbaa8f3329 Add snapping and limit range for wakeup delay 2020-01-19 09:09:36 +01:00
MSuih 807d6cfea4 Add slider snapping 2020-01-19 09:09:36 +01:00
kd-11 22ca2827de rsx: Improve window border detection and clearing
- Improves logic to detect if the frame requires letterboxing and
properly clears the background appropriately.
2020-01-18 19:52:52 +03:00
kd-11 5e0ca4c0c4 rsx: Fixup for missing visuals when framebuffer is larger than requested
display dimensions.
2020-01-18 19:52:52 +03:00
kd-11 48407752a6 formatting: Unify indentation type in the newly added files to tabs 2020-01-18 19:52:52 +03:00
kd-11 bad4d1ff05 rsx: Improve present image scanning
- Adds support for partial (letterboxed) source images by taking insets
into account.
- Bugfix for potential access violation when capturing screenshot on
vulkan
2020-01-18 19:52:52 +03:00
kd-11 7453e46a7c rsx: Refactor out complex present code into separate files
- Also restructures present code to have image lookup in a separate
re-usable function.
2020-01-18 19:52:52 +03:00
Eladash b07b5c9005 Fix sys_spu_thread_initialize for attr->name_len is 0 and attr->name is not null
If name_len is 0 name is empty, in any other case name is not empty (attr->name == nullptr isn't allowed in this case).
Check name_len and option for invalid values as fw.
2020-01-18 18:46:13 +03:00
Eladash 9d15083c61 Fix sys_ppu_thread_create/rename thread name range 2020-01-18 18:46:13 +03:00
Eladash 14b99d9e8b Write nread/nwrite in cellFsWrite/Read regardless of error checks 2020-01-18 15:56:05 +03:00
kd-11 b36b9e4822 vk: Fixup for total number of combined samplers using the dynamic binding structure 2020-01-18 11:17:19 +03:00
kd-11 0a2b6a290d vk: Fixup
- Scaling is not needed for a direct typeless transfer!
2020-01-17 14:31:14 +03:00
Emmanuel Gil Peyrot ca5bc512ae Optimise the SVG logo with svgcleaner
It still contained Inkscape leftovers, which are of no use for anything.
There are no functional changes.

See https://github.com/razrfalcon/svgcleaner
2020-01-17 08:31:00 +01:00
Megamouse 449cbb7281 Qt: use persistent_settings for playtimes 2020-01-17 07:43:10 +01:00
Nekotekina e2512e78b6 sys_fs: always close locked file in sys_fs_close
Syscall returns EBUSY but succeeds nevertheless.
2020-01-17 00:24:07 +03:00
Nekotekina a005090d3d sys_fs: use constant in sys_fs_disk_free 2020-01-17 00:24:07 +03:00
MSuih 833fbe015e Use floating point pixel ratio 2020-01-16 23:54:47 +03:00
Eladash c9b0f0e734 SPU: Fix FREST 2020-01-16 23:42:50 +03:00
kd-11 9b34f00241 vk: Optimize image transfers
- Adds the same optimization/simplification steps to complex image
transfer routines. Whenever possible, multi-step transfers are collapsed
into a single operation.
2020-01-16 22:29:26 +03:00
kd-11 82af17beb1 gl: Optimize image operations
- Avoid double transfers where a transfer to a temp image is done
without scaling and then a secondary transfer follows. Combines the two
steps into one whenever possible which can significantly alleviate
bandwidth problems at higher resolutions. Significant speedup, upto 90%
in some cases (PDF, PDF2)
2020-01-16 22:29:26 +03:00
kd-11 47b196e9d0 rsx: Fix uninitialized variable 2020-01-16 17:57:31 +03:00
kd-11 db014d8a58 rsx: Fix section length calculations when generating new blit targets. 2020-01-16 17:57:31 +03:00
kd-11 621fab2ad9 vk: Fix D32S8 interpolation by using integer interpolation instead of floating point
- Interpolating floats is not the same as interpolating their bits!
  Use integer format to interpolate linearly for D32F formats instead of using R32F as intermediary
2020-01-16 11:12:08 +03:00
kd-11 086ecf4ba6 vk: Add some missing image memory barriers causing artifacting on AMD cards
- There needs to be a memory barrier after each step.
- TODO: Optimize scale_typeless_safe function
2020-01-16 11:12:08 +03:00
kd-11 309251ce7a rsx: Touch locked dst memory after blit transfer operations in case it is locked by WCB/WDB 2020-01-16 11:12:08 +03:00
Eladash 9084209cfc Update cellVdecSetFrameRate error checking 2020-01-15 23:29:32 +01:00
kd-11 74ad525566 vk: Fixup for cs_scatter job
- Access to the stencil output has to be atomic as each 'word' is shared among 4 adjacent texels
- TODO: Can be optimized using mirrored buffer views
2020-01-15 21:12:51 +03:00
Eladash 05e5e6058f Add description for rsx wake-up delay 2020-01-15 19:54:23 +03:00
MSuih 556ac1cf22 Add wake-up delay to settings 2020-01-15 19:54:23 +03:00
Eladash 85695c8bac rsx: FIFO wake-up pause control 2020-01-15 19:54:23 +03:00
kd-11 2984300385 vk: Fix invocation alignment to support non-power-of-2 alignment 2020-01-15 15:42:36 +03:00
kd-11 ac4cadf538 vk: Fix word index counting for shuffle tasks 2020-01-15 15:42:36 +03:00
kd-11 175f78f5b3 vk: Lower default compute heap size to 64M
- There is no need to guess and use a large memory footprint as the heap is
now dynamic.
2020-01-15 15:42:36 +03:00
kd-11 3d96fe79cc vk: Implement dynamic sized compute heap
- Implements a dynamically sized compute heap to allow growing up the
size if it is too small.
2020-01-15 15:42:36 +03:00
Eladash 1ccb3c4492 rsx: Verify local memory offset 2020-01-15 13:23:56 +03:00
Eladash 01035d35bd sys_process: Fix sys_process_get_id, add error_code (#7246) 2020-01-14 21:32:41 +03:00
kd-11 8bbda3dedb vk: Restructure command queue flushing behavior to avoid deadlock
- Queueing commands on the offloader is a good idea but unfortunately
page faults can still happen causing a cyclic dependency and eventual
deadlock. Characterized by a vk::wait_for_event timed out error
accompanied by severe hitching.

- Drain the fault-able commands before pushing a submit operation to the
queue. If a fault is in progress, bypass the queue system and submit
raw. Technically this is incorrect but there isn't much that can be
done about it right now.
2020-01-14 14:32:40 +03:00
Megamouse 542d2ef8da Qt: smoother batch package installation 2020-01-14 09:27:09 +01:00
Megamouse be2d225d96 sceNpTrophy: deny unlocking of platinum trophies 2020-01-13 22:50:05 +01:00
Eladash 765bd6b6c6 SPU: Optimize gpr reset for MSVC 2020-01-11 22:56:46 +03:00
Nekotekina aeed349a99 sys_fs: adjust permissions for /dev_bdvd
Remove write permissions returned by stat, fstat, etc.
Also make sys_fs_open return CELL_EPERM on write attempt.
2020-01-11 04:48:42 +03:00
Nekotekina 8447d75dda sys_fs: improve sys_fs_lsn_lock
It appears it does nothing only on /dev_hdd0 or /host_root (HOSTFS).
2020-01-11 03:44:52 +03:00
Nekotekina fc6356a74c sys_fs: adjust /dev_bdvd block size
From test.
2020-01-11 03:05:26 +03:00
Nekotekina 41f2ee7b6c VFS: minor change in handling /host_root path 2020-01-11 01:55:36 +03:00
Nekotekina 87cd653c6e sys_fs: improve sys_fs_disk_free
Fix error codes and arg checks.
2020-01-11 01:10:50 +03:00
Nekotekina 7e35fd54a8 sys_fs: improve sys_fs_fcntl(0xc0000002)
Always obtain free space on /dev_hdd0.
2020-01-11 01:09:30 +03:00
Nekotekina 582ee80552 sys_fs: correct block size for /dev_hdd1 2020-01-10 05:24:43 +03:00
Nekotekina 0b4b87f069 sys_fs: fix sys_fs_get_block_size
Don't check file existence on /dev_hdd0.
Relax check on some mountpoints.
Fix CELL_EISDIR error condition.
2020-01-10 05:19:18 +03:00
Nekotekina a8e1afa0af sys_net: fix sys_net_bnet_select arg check (nfds) 2020-01-10 03:21:27 +03:00
Eladash 71df5044fc sys_vm_get_statistics: Write timestamp 2020-01-09 20:43:03 +00:00
kd-11 db5d03c340 vk: Generate dynamic binding table based on the capability of the drivers
- This alleviates constraints imposed on shaders to allow running on some not-so-great platforms.
2020-01-09 15:38:23 +03:00
RipleyTom 4a5559ee65 Add buzz controllers to usb whitelist 2020-01-09 07:51:16 +00:00
Nekotekina 7523416a12 sys_fs: return CELL_ENOTSUP in sys_fs_fcntl(0xc0000006) 2020-01-09 04:15:20 +03:00
Nekotekina 9075208c80 sys_fs: fix logging in sys_fs_get_block_size 2020-01-09 04:15:20 +03:00
Nekotekina d477889763 sys_fs: fix mountpoint detection 2020-01-09 04:15:20 +03:00
kd-11 ef3b0db7d8 vk: Workaround for NVIDIA occlusion query failure
- When using partial results on NVIDIA, a non-zero result is returned even when the draw is fully occluded.
  This, I believe, violates spec which says the partial result shall be between 0 and the final result.
2020-01-08 19:02:45 +03:00
Nekotekina f5cb147f8d sys_fs: improve sys_fs_get_block_size values
Affected other syscalls:
sys_fs_fget_block_size
sys_fs_stat
sys_fs_fstat
sys_fs_fcntl (cellFsGetDirectoryEntries, cellFsGetFreeSize)

For default values:
Return sector_size = 512.
Return 4th arg = 512.
Fod /dev_bdvd:
Sector size = 2048.
Block size = 2048.
2020-01-07 23:16:17 +03:00
Nekotekina 63e669c0cf sys_fs: fix sys_fs_fget_block_size
Return flags via last argument.
2020-01-07 21:55:19 +03:00
Nekotekina 9c54305e10 sys_fs: disable sys_fs_lsn_lock/unlock
According to test, nothing seems to happen.
Disable CELL_EBUSY errors associated with Stream Support API.
2020-01-07 21:55:19 +03:00
Nekotekina f3d52de429 sys_fs: Adjust flags of /app_home mountpoint 2020-01-07 21:55:19 +03:00
kd-11 3f34a0196c overlays/osk: Add linear fade-in/out effect to OSK 2020-01-07 21:31:19 +03:00
kd-11 ecf00be155 rsx: Add color interpolation animation
- Adds color interpolation and modulation pass and refactors the code a
bit. Elements with this pass applied have their color modulated by the
animated color from the pass. Modulation transform is multiplicative.
2020-01-07 21:31:19 +03:00
kd-11 ad845861be video: Remove pointless aspect ratio option
- The auto option is used when requesting the system is works like a
"dont care" specifier to tell the system to use what settings have been
passed in by HDMI EDID or the user TV type setting. Since this option
simulates the "TV type setting", auto makes no sense and is also not
something you can select on a PS3.
- Also adds a few missing checks.
2020-01-07 15:56:54 +03:00
Nekotekina c51779d4d3 Fix format string in log_frame.cpp 2020-01-06 23:44:48 +03:00
Nekotekina 55f9a56e45 Fix sys_tty_write (UTF-8 encoding of literals) 2020-01-06 23:23:04 +03:00
Nick Renieris 5bace118a7 overlays: Redesign animation system (add easing functions, fix bugs)
Instead of speed, direction and distance, the user now specifies
start/end offsets and how much time the transition should take.

Fixes:
- Stuttering caused from framerate estimation.
- An edge case where animations would go over their supposed limit.

Adds:
- The ability to specify arbitrary easing functions for the animations
  - Implemented quadratic ease in and ease out and cubic ease in/out.
- Usage of cubic ease in/out in the trophy notification
2020-01-06 22:42:07 +03:00
Nick Renieris 28770c1580 overlays: Move vertex & vector utility classes to new file 2020-01-06 22:42:07 +03:00
Nick Renieris 192912131e rsx: Update vblank count in LLE mode 2020-01-06 22:42:07 +03:00
Dravonic 94d2f97f27 Multithreaded shader compliation follow-up (#7190)
* Multithreaded load pipeline entries shader compliation stage

Co-authored-by: kd-11 <15904127+kd-11@users.noreply.github.com>
2020-01-06 21:59:59 +03:00
Megamouse 632cc79c54 cellGame: add more checks 2020-01-06 10:47:13 +01:00
Megamouse e7845357e2 sceNpTrophy: unlock platinum trophies 2020-01-05 19:47:31 +01:00
Nekotekina 4450ae0c7a sys_fs: fix CELL_FS_O_APPEND emulation
Don't use fs::append (not capable of).
Fix sys_fs_ftruncate (remove wrong workaround).
2020-01-05 18:15:55 +03:00
Nekotekina 9fc0aec066 sys_fs_stat: fix split file handling
Allow single-file case (consistently with sys_fs_open)
2020-01-05 18:15:55 +03:00
Nekotekina bed2d558a6 sys_fs: implement CELL_EROFS error
Implement lv2_mp_flag::read_only.
Currently only /dev_bdvd is affected.
2020-01-05 18:15:55 +03:00
Nekotekina d5f0957558 Implement lv2_fs_mount_point with mount point flags
Implement some actual mount points
Implement lv2_mp_flag::no_uid_gid
2020-01-05 18:15:43 +03:00
kd-11 7f09def94e rsx/vp: Properly initialize output registers.
- All registers tested on hw show contents to be 0, 0, 0, 1.
  Make default output registers match this pattern.
2020-01-05 18:06:08 +03:00
Silent b88fb43acc Minor cleanup in InstallPkg and InstallPup 2020-01-05 11:01:26 +01:00
Silent e7ddc5187a Add a dialog to Batch PKG Install
Dialog allows users to preview the order in which PKG's will be installed
and allows users to move items around if needed.

Because clicking "Install" on this new dialog acts as a confirmation
and user has a second chance to eyeball what is to be installed,
"Install package X?" dialogs have been removed and instead user
is only notified of success. In case of failure, batch installation
aborts with a descriptive error.
2020-01-05 11:01:26 +01:00
Eladash 872be25ed1 cellFs: Fix cellFsLseek with negative whence 2020-01-04 22:38:53 +03:00
Eladash 9d2c9e5d62 cellFs: Improve cellFsGetDirectoryEntries 2020-01-04 22:38:53 +03:00
Nekotekina 28fb0d1741 Fix lv2_fs_object::name
Recreate path from actual decoded components.
2020-01-04 21:44:03 +03:00
MSuih 5534c9e27c Disable AA for renderers which do not support it 2020-01-04 18:58:33 +01:00
MSuih 049f852a9c Slight cleanup of mousewheel pr
Fixes theoretical uninitialized variable and micro-optimizes scrollwheel stop code
2020-01-04 18:58:33 +01:00
MSuih 69f11d82d1 Change Null microphone to Disabled 2020-01-04 18:58:33 +01:00
Silent f92794360d Qt: Add tooltips to Virtual File System buttons 2020-01-04 17:10:28 +01:00
kd-11 bdb5115c7f rsx/overlays: Improve space usage on trophy dialog
- Slightly increases the size of the trophy dialog and the font size.
  The old dimensions did not work with some libre fonts causing
alignment errors and other problems.
2020-01-04 16:36:49 +03:00
kd-11 3ada97d2d3 rsx/overlays: Implement trophy notification queue
- Allows to display more than one trophy at a time. Trophy notifications
will simply get queued up and displayed at appropriate time.
2020-01-04 16:36:49 +03:00
Nekotekina 691a57a4da Add BOM to sys_tty.cpp 2020-01-04 01:32:21 +03:00
kd-11 31b07fece5 rsx/overlays: Add support for animations
- Adds animation support. This commit adds the base framework and
implements a translate animation used to slide elements around the
screen. This is then used to implement the sliding animation for the
trophy notification.
2020-01-03 20:33:32 +03:00
Megamouse b3ad89cc8b cellSaveData: remove duplicate yield 2020-01-03 14:22:40 +01:00
Megamouse 5e7d25ad35 overlays: refactor shader loading dialogs 2020-01-03 14:22:40 +01:00
Megamouse d94d094a7e overlays: fix non-interactive dialog loops 2020-01-03 14:22:40 +01:00
Megamouse c9aee27d48 VK: remove unused init function declaration 2020-01-03 14:22:40 +01:00
kd-11 d12762414a vk: Change default vertex output value
- Prefer w!=0 to avoid a situation where xyz/w = nan. More of a
theoretical problem, but some calculations break down in such a
situation.
2020-01-03 10:35:53 +03:00
kd-11 7786681954 rsx: Improve MTRSX synchronization
- Properly synchronize DMA transfers when handling RSX pipeline
barriers. Texture read barrier is used to signify completion of DMA
routines and is often used to signal that Cell can overwrite vertex
data!
2020-01-03 10:35:53 +03:00
Megamouse 02ca8f0002 Qt: repaint all related icons for custom configs 2020-01-02 11:35:51 +01:00
Megamouse 7af2ebb6f4 cellSaveData: use errDialog to skip error dialogs 2020-01-02 05:49:03 +01:00
Nekotekina 2c4ecc55af Update ffmpeg 2020-01-02 00:53:22 +03:00
kd-11 c4e59b5115 vk: Clamp depth export in FS
- PS3 matches OGL behavior where writing to the depth export
register results in clamping.
2020-01-01 22:39:20 +03:00
Eladash 4c20881f8f Fixup after #6933 (#7166)
* fixup

* Get rid of obsolute arg in lv2_obj::awake

* nvm ill do this later

* Typo fix of the decade
2020-01-01 17:38:05 +00:00
Ani 341fdf7eb1 rpcs3_version: Bump to 0.0.8 2019-12-31 23:20:49 +00:00
Eladash 7cc6881a57 Implement sceNpTrophyTerm resources deallocation
- Implement sceNpTrophyAbortHandle, if handle is aborted an error code will be returned on its usage.
- Free context & handles in sceNpTrophyTerm.
- Return SCE_NP_TROPHY_ERROR_INVALID_ARGUMENT on invalid context & handles ids.
- Implement id resource shortage error checking.
- Check negative sceNpTrophyGetTrophyInfo trophy id.
- Minor error checking fix for sceNpTrophySetSoundLevel
2019-12-31 22:32:23 +03:00
Eladash 71c4a2a15f Silence some log messages 2019-12-31 22:27:27 +03:00
Eladash 9690854e58 Some cleanup
* Prefer default initializer over std::memset 0 when possible and more readable.
* Use std::format in trophy files name obtaining.
* Use vm::ptr<>::operator bool() instead of comparing vm::ptr to vm::null or using addr().
* Add a few std::memset calls in hle where it matters (or in some places just to document an actual firmware memcpy call).
2019-12-31 22:27:27 +03:00
RipleyTom 5de83e0425 Avoid using vfs::get to let decrypt work on PSN binaries 2019-12-31 22:23:22 +03:00
Eladash c2eb9a583d Implement ps3 application root flags detection 2019-12-31 22:22:06 +03:00
Silent b591633cb9 Fail pkg_install if any files fail to be created
This could happen if eg. paths are too long or some files
could not be overwritten. Until now, installation happily
reported success regardless.
2019-12-31 19:24:19 +03:00
Silent abfa1114bc Add progress_dialog::SignalFailure()
Turns the taskbar progress bar red, commonly used on Windows
in cases like this to signal failure.
2019-12-31 19:24:19 +03:00
Eladash b30be0fbc1 Update cellVoiceCreatePort syntax 2019-12-31 19:05:06 +03:00
Eladash 9958a83d10 Make spu_channel_4_t::clear() atomic
By removing separate value3 write, fixes a rare race introduced by #6917.
2019-12-31 19:05:06 +03:00
Eladash 3257552227 Minor spu_channel_4_t optimization 2019-12-31 19:05:06 +03:00
Eladash ec9622b513 Fix ppu_patch invalid address check 2019-12-31 18:57:14 +03:00
Eladash 8427af8886 Implement runtime PPU executable code modification via Cheat Manager 2019-12-31 18:57:14 +03:00
Megamouse 93a6e9e4e4
Improve cellImeJp (#7014)
* HLE: add error_code and definitions for cellImeJp

* HLE: add function parameters to cellImeJp

* HLE: improve cellImeJp

* HLE: further improve cellImeJp

* HLE: simplify cellImeJp
2019-12-31 16:02:10 +01:00
Megamouse a5c5927468 cellSaveData: only show dialogs in fixed functions 2019-12-31 14:15:43 +01:00
kd-11 915cf0bae8 vk: Do not leak mapped memory 2019-12-31 13:56:14 +03:00
Eladash 3e80727f8e Allow unimplemented HLE functions detection by bot 2019-12-30 23:48:39 +03:00
Eladash b59a825e48 Minor fixup after #6894 2019-12-30 23:46:45 +03:00
Eladash 45cff1219c Allow sys_raw_spu_create_tag to be called more than once 2019-12-30 23:46:45 +03:00
Eladash 923cd7ad72 SPU LLVM: rewrite comparison on non-xfloat path of CFLTU, CFLTS
CFLTU on non-xfloat path is accurate as xfloat path now.
* Also optimize FCTIW like FCTIWZ (PPU)
2019-12-30 22:20:34 +03:00
Nekotekina ef8872c0d7 sys_net: fix sys_net_bnet_connect on Windows
Properly write is_connecting variable.
2019-12-29 21:53:43 +03:00
Nekotekina 01b1b21efd sys_net: add a workaround for WSAPoll with timeout
Don't call WSAPoll with empty socket list.
2019-12-29 21:24:13 +03:00
Megamouse 45dc5d9b02 cellSaveData: improve ppu schedule during dialogs 2019-12-29 14:22:58 +01:00
Megamouse c4b4ce46b8 cellSaveData: don't pause apps during dialogs 2019-12-29 14:22:58 +01:00
MSuih 6cfcb7b4f3 Add support for mousewheel movement 2019-12-29 12:45:03 +01:00
kd-11 1b27ccecf8 settings: Add relaxed zcull toggle to advanced tab 2019-12-29 13:49:46 +03:00
kd-11 24cb48971e vk: Fix cb chunk synchronization deadlock 2019-12-29 13:49:46 +03:00
kd-11 e1b734fd12 rsx: Fix linux build 2019-12-29 13:49:46 +03:00
kd-11 ed2bdb8e0c rsx: Zcull synchronization tuning
- Also fixes a bug where sync_hint would erroneously update the sync tag
  even for old lookups (e.g conditional render using older query)
2019-12-29 13:49:46 +03:00
kd-11 fdb638436f rsx: Add toggle for zcull sync behaviour - Adds a relaxed sync mode where ZCULL reports are lazily nudged into flushing and the main core does not actually wait for the event to finish before proceeding - Can drastically improve performance in cases where the game actually does not utilize the report data 2019-12-29 13:49:46 +03:00
kd-11 9f94a6dc11 vk: Refactoring and optimizations to query handling
- Caches query results when looking up report availability to avoid
  entering driver code twice.
- Minor code restructuring
2019-12-29 13:49:46 +03:00
kd-11 55ad9244c0 vk: Switch occlusion pool to FIFO rather than LIFO to avoid hard stall 2019-12-29 13:49:46 +03:00
kd-11 cdd9c12132 vk: Emulate conditional rendering for AMD 2019-12-29 13:49:46 +03:00
kd-11 93895838c7 vk: Implement hw conditional rendering 2019-12-29 13:49:46 +03:00
kd-11 a51395370e vk: Implement multithreaded command submission
- A few nagging issues remain, specifically that partial command stream
  largely caused by poor synchronization structures for partial CS flush
  and also the fact that occlusion map entries wait on a command buffer
  and not an EID!
2019-12-29 13:49:46 +03:00
kd-11 5be7f08965 rsx: Restructure ZCULL report retirement
- Prefer lazy retire model. Sync commands are sent out and the reports will be
  retired when they are available without forcing.

- To make this work with conditional rendering, hardware support is
  required where the backend will automatically determine visibility by
  itself during rendering.
2019-12-29 13:49:46 +03:00
kd-11 8dfea032f2 rsx: Remove deprecated do_method path that has been superceded by c++ inheritance for many years 2019-12-29 13:49:46 +03:00
Megamouse 0b78404337 cellSaveData: get confirmation if not CELL_SAVEDATA_OPTION_NOCONFIRM 2019-12-29 01:19:04 +01:00
Megamouse ff0089bc6f cellSaveData: add more constants 2019-12-29 01:19:04 +01:00
Megamouse bb7848f6e5 cellSaveData: add error dialog to callback result errors 2019-12-29 01:19:04 +01:00
Megamouse 47da907366 cellSaveData: add confirmation dialog for save data interactions 2019-12-29 01:19:04 +01:00
Megamouse 9f106be36d Qt: apply more specific file filters for cache removal 2019-12-28 22:24:06 +01:00
Megamouse 096a08aca1 Qt: fix removal functions after cache compression 2019-12-28 19:44:45 +01:00
Megamouse ef6f565dbd silence some annoying warnings 2019-12-28 15:40:57 +01:00
Nekotekina 70e26eeb45 LLVM: compress PPU cache
Compress PPU modules to .gz (backward compatible with uncompressed cache)
2019-12-27 23:12:16 +03:00
Megamouse e54438d3a7 Qt: add plaintext log and more log options 2019-12-24 13:06:06 +01:00
Megamouse e83dfedff9 stub cellRemotePlay and cellResc and cellStorage 2019-12-24 11:54:32 +01:00
Nekotekina abe2cc196a sys_net: fixup for race condition
Don't reset is_connecting without checking correctness.
Also cleanup dead WIN32 code.
2019-12-23 22:39:18 +03:00
RipleyTom 90e4fe23c5 WSAPoll workaround 2019-12-23 22:31:09 +03:00
Emmanuel Gil Peyrot 9b77febd10 RSX: Remove two empty cpp files 2019-12-23 00:02:57 +03:00
linkmauve e9c5c6e6bf Move input to its own directory (#7126) 2019-12-22 17:39:42 +01:00
Silent f03cb5c9c0 Qt: Simplify custom titles and notes
By adding some code to notes/titles reading,
it is possible to leverage default value behaviour in QMap value()
which simplifies code a bit.
2019-12-22 15:54:04 +01:00
Eladash c65bb0d267 Avoid shifting by greater/equal than max bits values in ppu_rotate_mask 2019-12-22 04:35:57 +03:00
Markus Stockhausen a36f0497ce Improve approximate xfloat
- Disable denormals for SPU threads
- Add clamping helpers
2019-12-22 01:26:34 +03:00
Nekotekina 3b46c9cb6a SPU LLVM: use FMA with approx xfloat when available
Emulate FMA with double precision if unsupported natively.
2019-12-21 17:53:34 +03:00
Nekotekina 068450d4fe CPUTranslator: detect FMA feature 2019-12-20 21:11:07 +03:00
kd-11 fff1007d9a cmake: Fix vulkan on X11 2019-12-20 16:57:01 +03:00
Eladash db4041e079 Implement rounded_div
Round-to-nearest integral based division, optimized for unsigned integral.
Used in sceNpTrophyGetGameProgress.
Do not allow signed values for aligned_div(), align().
2019-12-20 14:47:04 +03:00
Emmanuel Gil Peyrot e30173a835 rsx: Make X11 optional on Linux
This makes it possible to build rpcs3 on a pure Wayland system, without
the Xlib installed.
2019-12-20 10:48:03 +00:00
Eladash 6dd4003154 Fix cellNetCtlNetStartDialogUnloadAsync 2019-12-20 10:20:32 +01:00
Silent 95f363c174 Qt: Look for custom game titles when filtering via Search 2019-12-20 00:19:13 +01:00
Megamouse 7fcef227af sceNpTrophy: minor optimizations 2019-12-19 18:15:22 +01:00
Megamouse 6388c98073 Qt: add platinum relevance to trophy_manager_dialog 2019-12-18 15:41:15 +01:00
Megamouse 91ad3d371f Qt: minor optimizations in trophy_manager_dialog 2019-12-18 15:41:15 +01:00
Eladash 8d955cfb8c Hotfix sceNpTrophyGetTrophyUnlockState 2019-12-18 13:07:55 +01:00
Eladash e380a8c279 Fix sceNpTrophyGetGameProgress (#7103)
* Fix sceNpTrophyGetGameProgress

Was missing multiplication by 100.

* apply requested changes

* Enforce round-to-nearest rounding mode
2019-12-17 22:43:00 +00:00
Eladash 3efd5f360c PPU DisAsm: Again 2019-12-15 19:55:23 +03:00
Megamouse 725761f282 Qt: move firmware settings to the advanced tab 2019-12-14 15:15:49 +01:00
Megamouse 97fb08935e
Qt: Use QT_ENABLE_HIGHDPI_SCALING starting with Qt 5.14 (#7090)
* Qt: Use QT_ENABLE_HIGHDPI_SCALING starting with Qt 5.14

* Qt: Add QT_SCALE_FACTOR_ROUNDING_POLICY starting with Qt 5.14

* Qt: remove style path for Qt versions below 5.11 (5.11.0 is min version)

* Qt: Fix dpi-rounding cli arg

* Qt: use rounding policy PassThrough as default dpi scaling policy

* Qt: add missing Qt Version check (facepalm)
2019-12-14 12:48:34 +01:00
Jayveer 364ba95d26 Updated sys_net to use WSAPoll on win32 as this fixes connection issues
in Metal Gear Online. Also aligns with implementations on non win32
platforms
2019-12-13 21:52:29 +03:00
Nekotekina 321f7e7197 Fix missing-braces warnings 2019-12-13 03:21:43 +03:00
Nekotekina 69e81da57b Fix some warnings 2019-12-13 02:08:52 +03:00
kd-11 73236efe58
vk: Remove some outdated code (#7060) 2019-12-12 16:29:55 +03:00
Eladash 6a926daee7 rsx: Delay FIFO recovery point creation if is in in_begin_end scope (#7080) 2019-12-12 15:38:56 +03:00
Megamouse 038694ae28 cellGem: add some explanatory comments 2019-12-10 23:20:13 +01:00
Megamouse 691c7cde67 cellGem: cleanup some spacings 2019-12-10 23:20:13 +01:00
Zangetsu38 af8ebc76e2 Modules/cellGem: Implement pos, quat and handle_pos in Gemstate for mouse.
Modules/cellGem: Fix name for gem_image_state.
Modules/cellGem: Implement projectiion(x/y) in gem_image_State for mouse.
Modules/cellGem: Add cross, triangle, circle and start with use middle click for mouse.
Modules/cellGem: Refactor global code.
Modules/cellGem: fix some warning with initializing value.
2019-12-10 23:20:13 +01:00
VelocityRa ac2b0c9752 PSMove: Rudimentary mouse emulation. 2019-12-10 23:20:13 +01:00
Eladash 7260af032e rsx: Ignore or recover from unknown primitives
This also fixes a bug when recovering FIFO or creating such recovery point inside in_begin_end == true scope.
2019-12-11 00:11:12 +03:00
Eladash 6a4ba9d562 Fix warning about truncation 2019-12-07 10:22:11 +01:00
Eladash a5b3b0df40 sceNpBasicAddBlockListEntry: Add connection check 2019-12-07 10:22:11 +01:00
Eladash 963d5fb981 sceNpBasicAddPlayersHistory(Async) fixes
* Check if count == 0.
* u64 typos fixed.
* description won't be checked if null.
* Check each npid provided, not only the first.
2019-12-07 10:22:11 +01:00
Eladash 5142d7c011 Minor fixup after #7068 2019-12-06 19:59:29 +03:00
Eladash 5631382623 sys_spu: Fix SPU Thread Id
* Removed wrong code in sys_spu_thread_group_terminate.
* SPU Thread ID is accurate, including 5th thread id "rule".
* Fixed possible use-after-free access of spu_thread::group member.
* RawSPU ID management simplified.
2019-12-06 19:59:29 +03:00
Eladash e050dcbc52 Move size write in cellGamePatchCheck 2019-12-05 23:31:46 +03:00
Eladash 98970884c8 Make sys_tty accurate in release console mode, message saving in log 2019-12-05 23:31:46 +03:00
Eladash 401813f962 Revert part of #7044
oops.
2019-12-05 23:31:46 +03:00
Eladash a2c69e4a2e sys_spu_thread_group_dis/connect_event Improvements 2019-12-05 23:31:46 +03:00
Nekotekina 835892aa51 C-style cast cleanup VII 2019-12-05 02:10:15 +03:00
Nekotekina d2fd3c6bc4 Commit 377e7d2a73 2019-12-04 21:32:08 +03:00
Nekotekina 377e7d2a73 C-style cast cleanup VI 2019-12-04 17:56:22 +03:00
kd-11 d973835bef ds4: Cleanup
- Simplify helpers to read integers HID feature report buffers. They're
simple LE values.
- Improve calibration format detection by just checking the returned
values and not relying on bluetooth check. PS4 does not seem to do it
this way as it accepts 3rd party controllers with inverted format. The
only other request 0xA3 seems unrelated to device capabilities.
2019-12-04 13:48:39 +03:00
kd-11 6ae8fd0d34 ds4: Add workarounds for some 3rd party controllers 2019-12-04 13:48:39 +03:00
scribam 2eaaf5b132 vk: Add sampleRateShading to the list of device enabled features 2019-12-04 12:59:38 +03:00
Nekotekina 185c067d5b C-style cast cleanup V 2019-12-03 17:23:00 +03:00
Megamouse 46ca39ec4d Add Emu.HasGui() to properly hide Qt dialogs in no-gui mode 2019-12-03 09:12:51 +01:00
Megamouse 84f9911163 Qt: skip in-game Qt dialogs if no-gui was used 2019-12-03 07:59:10 +01:00
Megamouse d73f04da13 cellSaveData: avoid nullptr if there is no dialog 2019-12-03 07:59:10 +01:00
Nekotekina bf11a28fb5 C-style cast cleanup IV 2019-12-01 22:12:33 +03:00
Eladash d45fbc331c Fix error checking of cellGameContentPermit 2019-12-01 21:11:43 +03:00