Commit Graph

19506 Commits

Author SHA1 Message Date
refractionpcsx2 834f12dd55 GS/HW: Update the target width to match source in channel shuffle
Also kill an annoying assert
2024-06-01 02:32:02 +01:00
refractionpcsx2 6d67156707 GS/HW: Favour newer draw on source overlap + improve target overwrite 2024-06-01 02:32:02 +01:00
refractionpcsx2 4faa5f2095 GS/HW: Compensate for edges in complex clamps to reduce upscale garbage 2024-06-01 02:31:20 +01:00
Connor McLaughlin 69c2c53ca7 CI/AppImage: QtNetwork is no longer needed 2024-05-31 13:39:51 +10:00
Stenzek d48f527d6d Common: Tidy up signal handlers
Move MacOS into its own file.
Fix assertion failure crash dumping.
2024-05-31 13:39:36 +10:00
TheLastRar f2e4a5e780 GS: Remove MSVC macro hack 2024-05-30 19:01:23 +01:00
PCSX2 Bot c44659d3ab Qt: Update Base Translation 2024-05-30 11:28:02 +01:00
TheLastRar ee9866b568 DEV9: Prefer C++ string comparison in AdapterUtils 2024-05-30 11:25:02 +01:00
TheLastRar f58ee161c7 DEV9: Use const in AdapterUtils 2024-05-30 11:25:02 +01:00
TheLastRar 0856f3b223 DEV9: Shuffle code in Linux GetAdapter
Giving same flow as Windows code
2024-05-30 11:25:02 +01:00
TheLastRar 3acf898680 DEV9: Use helper method to get the sockaddr address family
This attempts to avoid undefined behaviour with our current assumptions about the socket api
2024-05-30 11:25:02 +01:00
TheLastRar 38f02de318 DEV9: Eliminate c-style casts in AdapterUtils 2024-05-30 11:25:02 +01:00
TheLastRar a6ddbdb879 DEV9: Use correct buffer type in Win32 GetAdapter
Returned data is not sequenced IP_ADAPTER_ADDRESSES entries
We will use implicit object creation avoid UB
2024-05-30 11:25:02 +01:00
TheLastRar 3aff833b5c DEV9: Unify GetAdapter code 2024-05-30 11:25:02 +01:00
TheLastRar 344cf6fffb DEV9: Add general notes regarding sockaddr casting 2024-05-30 11:25:02 +01:00
refractionpcsx2 8f1b804f98 GS/CRC: Improve Street Fighter 3 EX CRC to remove shimmer
(and some potential input lag)
2024-05-30 11:20:38 +01:00
JordanTheToaster 226cf2d21d 3rdparty: Update to VK memory allocator 3.1 2024-05-30 20:19:29 +10:00
Stenzek ecbe239c0b Common: Use Mach VM routines for memory mapping
MacOS does not support an equivalent of MAP_FIXED_NOREPLACE via mmap(),
which means that our usage for allocating PCSX2's memory map is not
thread-safe.
2024-05-30 13:39:07 +10:00
Stenzek 18665b81c4 3rdparty/vixl: Import @ 8eca2b7 2024-05-30 13:38:51 +10:00
TellowKrinkle 525a7c48e9 GS:MTL: Fix inverted UseMipmapFiltering check 2024-05-29 19:13:47 -05:00
TellowKrinkle 521038984a CMake:macOS: Sign with --deep
Fixes complaints about MoltenVK not getting signed
2024-05-29 19:28:34 +10:00
Stenzek 94bd7c96b9 GS/HW: Use valid rect over size in CopyRGBFromDepthToColor()
Avoids a copy.
2024-05-28 12:44:27 +10:00
Stenzek e863da9490 GS/HW: Fix unscaled rect in CopyRGBFromDepthToColor()
Fixes fade transitions when upscaling in GT3.
2024-05-28 12:44:27 +10:00
Stenzek c94282ce5f GS/Vulkan: Purge threaded presentation 2024-05-27 21:10:59 +10:00
Stenzek d94f1dd9a3 GS: Add option to disable mailbox presentation
For those who like terrible frame pacing.
2024-05-27 21:10:59 +10:00
Stenzek 5dc1167fa8 GS/DX11: Don't spin on CPU when GPU results aren't available
Backport of 547587af11
2024-05-27 21:10:59 +10:00
Stenzek 9187e7eb34 InputManager: Fix exit menu button forwarding to game
Backport of a7f2ad37de
2024-05-27 00:18:53 +10:00
refractionpcsx2 2d127039e1 UI: Fix dithering description + make it so 4 lines of description fits 2024-05-25 15:16:42 +01:00
Stenzek 3928014e5c GS/Vulkan: Work around validation layer semaphore error 2024-05-25 14:06:50 +10:00
Stenzek c7a21a60cf GS: Improve vsync mode selection
All games use mailbox/triple buffering. Except when you enable sync to
host refresh, in which case FIFO/double buffering is used.

This means vsync enabled will ever tear, but at the same time, never
drop to 30fps on a missed frame due to frame rate differences.

To have the "best of both worlds", you should enable vsync and sync to
host refresh. Previously, this resulted in additional input lag, since
the host vsync would drive the EE frame timing. Now, this behaviour is
disabled by default, unless you enable "Use Host VSync Timing".
2024-05-25 14:06:50 +10:00
Stenzek 82fbf34f5b ImGuiOverlays: Display vsync queue size in OSD 2024-05-25 14:06:50 +10:00
refractionpcsx2 256babd337 GS/HW: Allow forcing Dither to 32bit for 16bit draws 2024-05-25 02:13:33 +01:00
Stenzek 99e38bc458 GS/Vulkan: Prefer mailbox presentation for vsync-on 2024-05-23 11:34:49 +10:00
Stenzek 68bbc2cc92 GS/Vulkan: Log any image acquire error 2024-05-23 11:34:49 +10:00
TheLastRar 63a5a15c37 Common: Provide a MAP_FIXED_NOREPLACE define for FreeBSD 2024-05-23 11:34:06 +10:00
TheLastRar 19d5d5c485 AutoUpdater: Correct type on stub processUpdate() 2024-05-23 11:34:06 +10:00
lightningterror 4fe5064b8c GS/HW: Cleanup RendererHW.
Null pointer dereferences, constants, redefinitions.
2024-05-23 02:21:41 +02:00
refractionpcsx2 0ea98d6edb GS/HW: Restrict CPU Sprite abort to non-opaque draws 2024-05-22 14:22:29 +01:00
Connor McLaughlin 92b707db99
Common: Missed MAP_FIXED -> MAP_FIXED_NOREPLACE 2024-05-22 00:05:24 +10:00
Connor McLaughlin d765f2e15c
Common: Fix Mac build 2024-05-21 23:14:47 +10:00
refractionpcsx2 b512162956 GS/HW: Ignore alpha on double half clear if not used 2024-05-21 15:07:51 +02:00
Stenzek e24d97bbe4 Common: Don't use MAP_FIXED on Linux
MAP_FIXED will clobber any existing memory mapping, and is not safe
to use in a multi-threaded environment. Whether we like it or not,
we are a multi-threaded environment, because Qt initializes before
we get to main(), so it's already too late to safely use MAP_FIXED
by the time we get there.

Use MAP_FIXED_NOREPLACE instead. This is how MAP_FIXED should have
behaved from the beginning.

Obviously this means you'll need Linux 4.17+ and a semi-recent libc
to use PCSX2 now. But if you're running a 6 year old unsupported
kernel, you have bigger problems.

Fixes "random" startup crashes.
2024-05-21 22:44:00 +10:00
refractionpcsx2 fb4aaf5236 GS: Increase sensitivity of texflush but avoid some situations 2024-05-21 14:33:42 +02:00
Mrlinkwii 8d0af30e0e Docs : update configuration guide 2024-05-21 11:45:26 +02:00
lightningterror 06efa93070 Config: Change hw mipmap from enum to bool. 2024-05-21 10:45:02 +02:00
lightningterror 8d3617bb71 VMManager: Remove osd message for hw mipmap. 2024-05-21 10:45:02 +02:00
lightningterror ef2549edb1 Overlays: Update hw mipmap code. 2024-05-21 10:45:02 +02:00
lightningterror c5511d0afa Misc: Update hw mipmap code hotkey. 2024-05-21 10:45:02 +02:00
lightningterror 68eed55490 FullscreenUI: Change hw mipmap to a toggle button. 2024-05-21 10:45:02 +02:00
lightningterror 2d79b89acc Qt: Change hw mipmap to a toggle button. 2024-05-21 10:45:02 +02:00