Commit Graph

9585 Commits

Author SHA1 Message Date
KamFretoZ 62c5309b23 Qt: Hide texture directory option per-game 2024-06-14 17:28:51 +10:00
Stenzek 8a18403fea arm64: Add stubs for EE/VU/IOP recs 2024-06-14 17:06:45 +10:00
Stenzek fe9399612d arm64: Add VIF dynarec 2024-06-14 17:06:45 +10:00
Stenzek 0a4c037898 GS: ARM64 compatibility 2024-06-14 17:06:45 +10:00
Stenzek 71036c95a4 Core: ARM64 compatibility 2024-06-14 17:06:45 +10:00
Stenzek 7d098674f2 IPU: ARM64 compatibility 2024-06-14 17:06:45 +10:00
Stenzek 4e0e8cef54 Common: ARM64 compatibility 2024-06-14 17:06:45 +10:00
Stenzek 6ee99d8b81 Build: Add ARM64 configurations 2024-06-14 17:06:45 +10:00
Stenzek 22d929d171 VTLB: Fix unmapping all pages with 16K host 2024-06-14 17:06:45 +10:00
Stenzek 94fc34dd62 GS: Tidy up shifts in GSVector4i 2024-06-14 11:54:17 +10:00
Stenzek 4731c6d290 GS: Fix a couple of non-immediate constant shifts 2024-06-14 11:54:17 +10:00
Stenzek 153b492a79 GS: Remove unordered runion()
We're working with rectangles everywhere.
2024-06-14 11:54:17 +10:00
Stenzek affbcfe135 GS/SW: Zero out texture cache buffers
This _shouldn't_ be necessary, but apparently our texture min/max is wrong
somewhere, and we end up sampling from "random" malloc memory, which breaks
GS dump runs.
2024-06-14 11:54:17 +10:00
Ty Lamontagne bdeb0fcb76 Debugger: Disable pseudo ops 2024-06-13 09:56:58 +01:00
Connor McLaughlin 08e824831b Achievements: Fix incorrect data source for mastery points 2024-06-12 14:44:54 +10:00
JordanTheToaster 0717b1f7c0 FullscreenUI: Fix incorrect padding calculation in pause menu
Fixes scrollbars appearing in menu.
2024-06-12 11:37:17 +10:00
Stenzek 7ad27e6e9d CDVD: Add precaching option 2024-06-11 11:31:28 +10:00
Stenzek e5917fa47a GS/Vulkan: Disable unused-function warning for vk_mem_alloc 2024-06-11 11:30:45 +10:00
Stenzek 226a02a770 MemoryCardFolder: Fix rapidyaml deprecation warnings 2024-06-11 11:30:45 +10:00
Stenzek 8cc7e60138 3rdparty: Move WIL v1.0.240122.1 in-tree
Renamed to winwil, because otherwise you won't be able to easily git
pull these changes.
2024-06-11 11:30:45 +10:00
Stenzek 5c59288b39 3rdparty: Move rapidyaml v0.6.0 in-tree
Also c4core v0.2.0, fast-float v6.1.1.
2024-06-11 11:30:45 +10:00
Stenzek d6c4a9a4d5 3rdparty: Move Vulkan-Headers v1.3.287 in-tree 2024-06-11 11:30:45 +10:00
Stenzek cf475d961a 3rdparty: Move fmt v10.2.1 in-tree 2024-06-11 11:30:45 +10:00
Stenzek cb0f0b65cc DEV9: Add missing RedtapeWindows.h include 2024-06-11 11:30:45 +10:00
Stenzek e2a4d8f1e6 CDVD: Force initialized flag on NVRAM reads
Jak 1 crashes on boot if it's not set.
2024-06-10 12:51:18 +10:00
Stenzek b55ec3ae58 CDVD: Tidy up NVRAM read helpers
Get rid of the janky offsetof.
2024-06-10 12:51:18 +10:00
Stenzek 6220148be7 CDVD: Cache mechacon version 2024-06-10 12:51:18 +10:00
Stenzek 919da4d97a CDVD: Read NVRAM on startup, cache, and save on shutdown 2024-06-10 12:51:18 +10:00
Stenzek 4f5562ad3f GS: Swap to cpuinfo for checking CPU features 2024-06-09 22:18:59 +10:00
TellowKrinkle 58ae9fd355 GS:MTL: Fix handling of tex is depth fb 2024-06-08 18:23:35 -05:00
refractionpcsx2 d34f359621 GS/HW: Correct TEXA behaviour on shuffles 2024-06-08 19:26:35 +01:00
refractionpcsx2 5e858fa1bc GS/HW: Take render target end block for channel shuffles if bigger 2024-06-06 22:59:12 +01:00
refractionpcsx2 0522da2299 GS: Don't be inclusive of textures edges in all cases 2024-06-04 22:07:06 +01:00
TellowKrinkle 8625e30dc6 GS:MTL: Add Intel HD 4000 to the list of GPUs to use PixelFormatView on
No clue why, but apparently this helps them a lot, at least on OCLP Big Sur
2024-06-01 19:08:45 -05:00
refractionpcsx2 7de06e340b GS/HW: Improve some tex in rt handling 2024-06-01 20:03:50 +01:00
refractionpcsx2 4c8e42d801 GS/HW: Improve handling of channel shuffles on new targets 2024-06-01 02:32:02 +01:00
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
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
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
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
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
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
refractionpcsx2 b512162956 GS/HW: Ignore alpha on double half clear if not used 2024-05-21 15:07:51 +02: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 932474a7d6 GameDB: Adjust mipmap and trilinear behavior. 2024-05-21 10:45:02 +02:00
lightningterror 115d83a02e GS/HW: Enable Full mipmap with ps2 trilinear always y default.
Change mipmap config to bool.
2024-05-21 10:45:02 +02:00
Stenzek ff7995f0d6 Deps: Bump to shaderc 2024.1
And use dynamic loading.
2024-05-21 18:34:01 +10:00
Ziemas 086bbf95dc
Misc: Fix building with gcc14 (#11278) 2024-05-21 12:25:11 +10:00
refractionpcsx2 570039f49a GS/HW: Adjust conditions for CPU sprite renderer 2024-05-19 14:15:28 +01:00
refractionpcsx2 c6b55e5aa3 GS/HW: Improve texture shuffle double direction with future draw 2024-05-19 14:13:15 +01:00
KamFretoZ f0b8895350 FSUI: Gate HW Download mode behind per-game settings
Just like how it was on Qt.
2024-05-19 14:45:20 +10:00
Stenzek 31e935d831 GzippedFileReader: Don't clamp chunkID on read 2024-05-18 02:45:26 +10:00
Stenzek 34ae500614 CsoFileReader: Fix devbuild assertion 2024-05-18 02:45:26 +10:00
Stenzek a6f7159537 CDVD: Simplify ISO opening 2024-05-17 11:58:01 +10:00
Stenzek d099f7afd6 CDVD: Purge AsyncFileReader interface
Everything goes through ThreadedFileReader now.
2024-05-17 11:58:01 +10:00
Stenzek 7587bb8a07 CDVD: Use ThreadedFileReader for gzip ISOs 2024-05-17 11:58:01 +10:00
Stenzek 29e9125b15 CDVD: Use ThreadedFileReader for uncompressed ISOs 2024-05-17 11:58:01 +10:00
Stenzek f0ae33d61e CDVD: Use ThreadedFileReader for block dumps 2024-05-17 11:58:01 +10:00
Stenzek 89c4e2c1a4 CDVD: Fix error propagation from ThreadedFileReader 2024-05-17 11:58:01 +10:00
Stenzek 431b8b0df6 CDVD: Purge MultpartFileReader
Nobody should be using this.
2024-05-17 11:58:01 +10:00
Stenzek 55ee8242cc VMManager: Rewrite input profile hotkey priority logic 2024-05-17 11:57:38 +10:00
Stenzek 967a41c035 USB-Eyetoy: Fix unused comprLen warning
But this also has a behavioural change.
2024-05-17 11:57:38 +10:00
Stenzek 75894501ee FullscreenUI: Warning fix 2024-05-17 11:57:38 +10:00
Stenzek 39b29b3542 AudioStream: Vectorize volume application 2024-05-17 11:57:38 +10:00
Stenzek 25bc75a468 InputManager: Add push to toggle for macros
Backport of f0a4ceb909
2024-05-17 11:57:38 +10:00
Stenzek 12a0644315 Misc: Pass most string_views by value instead of reference 2024-05-17 11:57:38 +10:00
Stenzek 9fac941570 GS: Make VSync a boolean toggle
i.e. ditch the old adaptive mode, and always use adaptive if available.
2024-05-17 11:57:38 +10:00
Stenzek 81203d9a15 Config: Remove redundant GS setting macros
Not needed without WX.
2024-05-17 11:57:38 +10:00
Stenzek 5d50cd562f MTGS: Eliminate redundant SynchronousMTGS checks in Release build 2024-05-17 11:57:38 +10:00
Stenzek cfecbf53aa Host: Add plural translation support
Backport of f3aec0c965
2024-05-17 11:57:38 +10:00
Stenzek 0628e8cc87 GS/Vulkan: Simplify loader using DynamicLibrary
Backport of 8e3284d8c6
2024-05-17 11:57:38 +10:00
Stenzek f084e76f36 Qt: Add option to pause when controller is disconnected 2024-05-17 11:57:38 +10:00
Stenzek b9d7b63b32 FullscreenUI: Use native file selector on Flatpak 2024-05-17 11:57:38 +10:00
Stenzek 4d67f71217 FullscreenUI: Add horizontal padding to menu windows
Backport of 37a76a020a
2024-05-17 11:57:38 +10:00
Stenzek 4b1a4fdbb9 FullscreenUI: Fix minimal output latency toggle 2024-05-17 11:57:38 +10:00
Stenzek a0bc8e0ff8 FullscreenUI: Fix gaps between some UI elements
Backport of 4d8ed49b24
69e0c1681c
2024-05-17 11:57:38 +10:00
Stenzek 7166c04ff2 R3000: Serialize IOP->EE ticks carry
[SAVEVERSION+]
2024-05-16 20:08:38 +10:00
refractionpcsx2 454d4c9fa0 IOP: Adjust cycle counts slightly more accurately in some situations 2024-05-15 20:14:08 +01:00
refractionpcsx2 8887930fd5 GS/SW: Don't use fast reciprocal stq calculation, it's too inaccurate 2024-05-15 18:13:46 +01:00
refractionpcsx2 c8047c1a61 Audio: Clamp final output to avoid cracking at high volumes 2024-05-15 11:15:00 +01:00
refractionpcsx2 566ea8ea9b Core: Refactor a lot of timer work and fix a couple of bugs
EE/IOP Timers: improve clock sync, disable v/h sync when SINT enabled.

Some changes based on tests from PS2

[SAVEVERSION+]
2024-05-15 10:54:26 +01:00
Connor McLaughlin 67f1d6e24b
FullscreenUI: Fix deadlock/abort in Graphics Settings
Regression from b9f4a01138.

Closes #11249.
2024-05-15 01:33:28 +10:00
KamFretoZ e520dc2605 Qt/SaveState: Simplify warning message. 2024-05-14 16:09:21 +10:00
KamFretoZ b9f4a01138 FSUI: Automatically hide advanced graphics settings
depending on global advanced settings visibility
2024-05-14 16:08:15 +10:00
JordanTheToaster fc2a750f85 3rdparty: Update LZMA/7zipSDK to 23.01 2024-05-13 14:17:33 +01:00
Biendeo e3ccb500d8 USB: Add d-pad controls to RBDrumKitDevice 2024-05-12 14:49:08 +10:00
Stenzek 0aea297b73 GS/DX12: Fix incorrect resource state of ImGui font 2024-05-12 14:48:51 +10:00
Stenzek 20dbcfd2eb GS/HW: Avoid barriers on second alpha pass when only writing to Z
Completely redundant. We also don't need to use the drawlist.
2024-05-12 11:55:37 +10:00
Stenzek ba7096c9fa GS/Vulkan: Always issue first barrier on RDNA3
It turns out *not* doing this causes GPU resets on RDNA3, specifically
Windows drivers. Despite the layout changing enforcing the execution
dependency between previous draws and the first input attachment read,
it still wants the region/fragment-local barrier...
2024-05-12 11:55:37 +10:00
Connor McLaughlin 4cc4a6561c GS: Fix use-after-free on lost device 2024-05-12 11:54:48 +10:00
Connor McLaughlin 95843dc84a GS/HW: Fix invalid self copy from move in DX renderers 2024-05-12 11:54:48 +10:00
Connor McLaughlin fdb751ed1a GS/HW: Fix possible texture leak on skipped draw 2024-05-12 11:54:48 +10:00
Connor McLaughlin 612c24e0c0 GS/HW: Fix incorrect StretchRect() in double buffer copy 2024-05-11 20:26:18 +10:00
lightningterror da9e3fdc32 GS/HW: Rename alpha_one to alpha_eq_one pxAssert.
It slipped.
2024-05-10 22:17:30 +02:00
lightningterror 58defda298 GS/HW: Better name get alpha values for blend. 2024-05-10 21:23:28 +02:00
lightningterror 8b9b7f7baf GS/HW: Optimize sw/hdr colclip on some blend formulas.
Alpha is either As or Af.
`Cd*Alpha, Cd*(1 - Alpha).`
When Alpha <= 128 we can let hw blend do it's thing as it won't be able to wrap.
2024-05-10 21:23:28 +02:00
lightningterror 8ad08706aa Achievements: Fix function parameter should be passed by const reference warnings.
Codacy.
2024-05-10 20:00:43 +02:00
lightningterror 4035f1c554 Gif: Fix the scope of the variable can be reduced warnings.
Codacy.
2024-05-10 20:00:43 +02:00
lightningterror f0c331e32b IopBios: Fix function parameter should be passed by const reference warnings.
Codacy.
2024-05-10 20:00:43 +02:00
lightningterror 43fb79d669 R5900: Fix the scope of the variable can be reduced warnings.
Codacy.
2024-05-10 20:00:43 +02:00
lightningterror a4cc42c6ad Mdec: Cleanup file.
Constants, initializations.
2024-05-10 20:00:43 +02:00
lightningterror 2e89f6ad4d Mdec: Clang format. 2024-05-10 20:00:43 +02:00
Benjamin Moir 9b03b236fe VMManager: Clear protected pages before changing extra memory mode 2024-05-10 22:33:01 +10:00
refractionpcsx2 052951fbb0 EE: Correct update of EE cycles on low cycle counts when overclocking 2024-05-10 01:39:00 +01:00
TheLastRar e53abb1989 DEV9: Add DHCP logger
Enabled by setting `EthLogDHCP = true` in PCSX2.ini
2024-05-09 15:48:35 +10:00
TheLastRar dc20521b01 DEV9: Fix incorrect cmake entry 2024-05-09 15:48:35 +10:00
Benjamin Moir 4081d07dd8 CDVD: Improve handling of host: paths in cdvdLoadElf 2024-05-09 15:48:03 +10:00
TheLastRar 85888a9a81 DEV9: Better error handling on UDP_FixedPort creation 2024-05-09 15:47:27 +10:00
TheLastRar d7101c3be5 DEV9: Slightly simplify UDP socket closing 2024-05-09 15:47:27 +10:00
TheLastRar b3bb40980e DEV9: Improve support for sending multicast packets 2024-05-09 15:47:27 +10:00
TheLastRar cf3ad3f855 DEV9: Adjust comments in UDP_Session 2024-05-09 15:47:27 +10:00
TheLastRar c6e7e15599 DEV9: Correct capitalisation on UDP log messages 2024-05-09 15:47:27 +10:00
TheLastRar a0f6036337 DEV9: Eliminate some c-style casts in UDP_Session 2024-05-09 15:47:27 +10:00
Benjamin Moir 2fc4d02dd6 SaveState: Reset VM when save state fails to load 2024-05-09 13:45:06 +10:00
Benjamin Moir c6cd6b5eb3 Misc: Remove unused ps macros from Memory.h
The psHu64, psHu128 and psSu64 macros are also unused, but are kept for completeness.
2024-05-09 13:45:06 +10:00
Benjamin Moir 5f7e97c27c [SAVEVERSION+] EE: Expose advanced option for extra memory 2024-05-09 13:45:06 +10:00
Stenzek 9752a037be HostSys: Simplify page fault handler installation
And include whether it was a write or a read access.
2024-05-07 12:41:03 +10:00
xujibbs 11264e6c08 Mark %d ms for translation 2024-05-06 12:25:46 +10:00
Stenzek 89f4ac9b9a Config: Remove unused FrameLimitEnable field 2024-05-05 12:13:20 +10:00
Stenzek 2ab6a3b873 Qt: Clean and remove empty game settings 2024-05-05 12:13:20 +10:00
Stenzek 8d9c89a871 GS/SW: Remove redundant code generator classes
Makes space for ARM64.
2024-05-04 19:02:12 +10:00
Stenzek 0f5e7355ff SPU2: Use AudioStream for output 2024-05-04 14:12:20 +10:00
Stenzek ca091eeea9 Host: Add AudioStream 2024-05-04 14:12:20 +10:00
TheLastRar 8bfcbdebf3 DEV9: Defer deletion of socket sessions 2024-05-04 14:00:59 +10:00
Stenzek b67b555617 GS/HW: Fix blend_mix regression 2024-05-04 13:10:11 +10:00
Ziemas fd81349dab SPU: Only fire IRQ for Reverb reads when FxEnable 2024-05-03 21:35:51 +01:00
refractionpcsx2 3b63445f07 Timers: Fix up some timer behaviour 2024-05-02 09:07:09 +01:00
lightningterror df6a33ef7c GS/HW: Implement dithering on blend second pass on some formulas.
Alpha = As or Af
Cs + Cd*Alpha, Cs - Cd*Alpha.
2024-05-01 14:23:25 +02:00
lightningterror 8f57d8afe0 GS/HW: Make sure when a draw is rta scaled for blend second pass. 2024-05-01 14:23:25 +02:00
lightningterror 4c24d96966 GS/HW: Ger rid of clr_blend1_2 condition.
Prefer sw blend instead when Alpha > 1 on Cd*(Alpha + 1) contitions when there's no overlap
on basic blend.
2024-05-01 14:23:25 +02:00
refractionpcsx2 e46d435d28 EE/JIT: Increase size of jump for FPU MUL 2024-04-30 09:56:15 +01:00
TellowKrinkle c03cffb5c2 CMake: Don't assume all qt utils are in the same place
moc often installs to libexec, while lconvert and macdeployqt go to bin
2024-04-30 16:51:42 +10:00
Stenzek 40c7982dcf GS: Predivide ST by Q on large equal-Q triangles
In addition to sprites.

Fixes intro screen of IndyCar Series, which uses rotated sprites (tris).
Fixes some onscreen sprites in SpongeBob SquarePants - Revenge of the Flying Dutchman.
Fixes menu background in Cold Winter.
Fixes health bars in Biker Mice From Mars.
2024-04-30 16:43:23 +10:00
Stenzek fd0c82c04a GS: Use insertps/blendps instead of shuffles
Faster by one cycle on any CPU we care about these days.
2024-04-30 16:43:23 +10:00
Abel Briggs 8e5b84b097 DEV9: Fix MacOS crash upon receiving an ICMP reply
Apple (old BSD)'s raw IP sockets implementation converts the
`ip_len` field to host byte order, but also subtracts the
IP header length as well.

This caused us to effectively subtract the header length twice
and allocate the return ping in `ICMP_Session::Recv()
with a negative size, crashing PCSX2.
2024-04-30 16:42:58 +10:00
refractionpcsx2 5f7c2b7cd8 EE/IOP Timers: Rewrote most of the gate handling to be better.
[SAVEVERSION+]
2024-04-29 17:25:51 +01:00
refractionpcsx2 4363255234 EE/Timer: Don't reset count on setting gate 2024-04-29 17:25:51 +01:00
TheLastRar 33556c70f2 DEV9: Add const to variables in TCP session 2024-04-28 17:43:57 +02:00
TheLastRar ba16a90290 DEV9: Fix incorrect error check on TCP send 2024-04-28 17:43:57 +02:00
TheLastRar 894f2f145c DEV9: Format comments in TCP session 2024-04-28 17:43:57 +02:00
TheLastRar 56b06a0495 DEV9: Correct capitalisation on log messages
Also reword a few messages
2024-04-28 17:43:57 +02:00
TheLastRar fe4693f158 DEV9: Use reinterpret_cast for sockaddr
This is UB, but is required by the api
2024-04-28 17:43:57 +02:00
TheLastRar f5de7da42f DEV9: Eliminate some c-style casts in TCP_Session 2024-04-28 17:43:57 +02:00
Stenzek 107a3fda44 GS/HW: Rename RTCorrect/Decorrect to ScaleAlpha 2024-04-28 17:40:20 +02:00
Stenzek e734eb415c GS/HW: Allow transition to RTA on full cover draw 2024-04-28 17:40:20 +02:00
Stenzek aa48256010 GS/HW: Round alpha values for indexed sample of RTA 2024-04-28 17:40:20 +02:00
Stenzek 77a03498c1 GS: Round coordinates in PrimitiveCoversWithoutGaps() 2024-04-28 17:40:20 +02:00
refractionpcsx2 1cf8c7c375 GS/HW: Remove shuffle misdetection hack 2024-04-28 16:39:37 +01:00
refractionpcsx2 f5276f13ae GS/HW: Detect shuffles using quads 2024-04-28 16:39:13 +01:00
Francisco Javier Trujillo Mata d63966b071
DEV9: Improve logic for getting MacAddress (#10937)
* Change error to normal message

* DEV9: Improve logic for getting MacAddress
2024-04-28 21:08:31 +10:00
Connor McLaughlin f5c3cd0f87 GS/HW: Ensure valid alpha doesn't get cleared on 24-bit targets 2024-04-27 20:23:17 +10:00
refractionpcsx2 a0e323dae5 GS: Improve Autoflush detection with channel masks 2024-04-26 10:17:52 +01:00
refractionpcsx2 25737a1a46 GS: Improve STQ loggin in draw dumps 2024-04-26 10:17:52 +01:00
refractionpcsx2 6816f640e2 GS/HW: Improve depth deswizzle 2024-04-26 10:17:52 +01:00
Stenzek 9f1483f01b GS/HW: Check for format combinations that make sense for CSBW
True Crime: New York City strikes again...
2024-04-25 11:58:37 +10:00
Stenzek ece89051bd GS/HW: Stretch double buffered targets when scale changes
Otherwise the coordinates are out of range => GPU crash.
2024-04-25 11:58:37 +10:00
Stenzek e768f1c93b MSBuild: Use AVX/AVX2 for 3rdparty as well 2024-04-25 11:55:41 +10:00
Stenzek 56cd7f2259 INISettingsInterface: Fix file descriptor leak on Linux 2024-04-25 11:55:19 +10:00
RedDevilus a14d699f28 Docs: Initial overhaul for stable 2024 (GameIndex)
Adds some new values and more contextual extra info. Needed for having up-to date information. Still need to update other docs like FAQ, Readme and Debugger but that's future work.

Fixed some typos along the way.
2024-04-24 22:18:40 +01:00
lightningterror a2439d120e GS/HW: Optimize medium blend on dx.
Try to prefer blend second pass for Ad cases on medium blend, higher levels will still prefer sw blend.
2024-04-24 10:07:19 +02:00
refractionpcsx2 0ca816d030 CDVD/BIOS: On creating NVM, force setup on next full boot 2024-04-23 15:03:14 +01:00
refractionpcsx2 b44d479921 BIOS/HLE: Improve handling of OSD params when fast booting 2024-04-23 15:03:14 +01:00
refractionpcsx2 6d25c6b1ef GS/HW: Allow preload if FBW = 0 on small draw 2024-04-23 15:00:46 +01:00
Silent e97fc40dec GSLzma: Fix a file handle leak in GSDumpLzma 2024-04-23 13:06:23 +10:00
KamFretoZ e99fc5c3a8 FullscreenUI: Add Save State Backup toggle to BPM 2024-04-23 13:04:58 +10:00
KamFretoZ ccd6f91c66 FullscreenUI: Clean up speed limiter toggle leftover 2024-04-23 13:04:58 +10:00
Stenzek 3d11057177 GS/HW: Clear dirty list on target clear 2024-04-23 11:57:17 +10:00
Stenzek fe0e71f586 GS/Vulkan: Drop feedback loop extension
Apparently this causes GPU crashes on RDNA3, and didn't provide any
tangible benefit for NVIDIA.

I'll replace this at some point with dynamic rendering local reads,
either before or after the GPUDevice transition.
2024-04-23 11:57:05 +10:00
lightningterror d824ae6e0c GS/HW: Extend blend second pass to more blend formulas.
`Cs + Cd*Ad, Cs - Cd*Ad, Cd*(1 - Ad), Cs*(1 + Ad), Cs*(1 - Ad).`
2024-04-23 02:00:02 +02:00
lightningterror 4e06d51a00 GS/HW: Cleanup date and rt alpha min max function.
Always make sure rt is checked for date, no need for individual checks.
Code cleanup.

Some other cleanups.
2024-04-23 01:54:13 +02:00
Stenzek 5a91ecd16a GS: Fix crash and file leak during dump 2024-04-22 23:31:10 +10:00
lightningterror 7dd7345e08 GS/HW: Minor shader optimization.
Use saturate instead of min max, saturate is faster than min max.
2024-04-21 15:10:53 +02:00
JordanTheToaster 7e1900a8a1 VMManager: Add warning for texture dumping
Adds a warning for texture dumping to disk being enabled.
2024-04-21 04:21:49 +01:00
JordanTheToaster b9cc65704e GSHwHack: Purge The Getaway CRC
No longer needed as the fog wall does not appear on basic blending.
2024-04-21 03:57:33 +01:00
TheLastRar bdd0f7e2f4 DEV9: Correct type used to store GetDelta result
Also relocate call
2024-04-21 12:47:45 +10:00
TheLastRar 1e094096c2 DEV9: Improve validation of received sequence numbers 2024-04-21 12:47:45 +10:00
refractionpcsx2 f16ce3bdbe GS/HW: Re-sort the pre-source shuffle check. 2024-04-20 02:46:25 +01:00
refractionpcsx2 a38dd74d0e GS/HW: Improve depth updating on source target match 2024-04-20 02:46:25 +01:00
refractionpcsx2 2a2dad9280 GS/HW: Fix some small errors updating depth in RT targets 2024-04-20 02:46:25 +01:00
TellowKrinkle 0b5a3fa6af GS:Capture: ffmpeg 7 support 2024-04-19 17:54:10 +10:00
Stenzek c0b36a482a Achievements: Fix fullscreen window height 2024-04-19 14:58:38 +10:00
Stenzek a9311142dc Achievements: Fix HC mode activating on reset of non-cheevo game 2024-04-19 14:58:38 +10:00
Stenzek 3c901543bd ImGuiOverlays: Fix possible crash in save state selector 2024-04-18 00:15:19 +10:00
Stenzek 410e950da6 FullscreenUI: Get rid of extra scrollbar in save state selector 2024-04-18 00:15:19 +10:00
TheLastRar 815e5d952d DEV9: Adjustments to HDD logs 2024-04-17 13:36:19 +10:00
KamFretoZ 8723513528 BPM: Small icon tweaks 2024-04-17 13:35:08 +10:00
KamFretoZ 6eab82ecc0 BPM: Make open in file browser exit fullscreen when clicked 2024-04-17 13:35:08 +10:00
Stenzek ed8e1aa6db GS/HW: Cross-reference RT alpha with CLUT for P8H 2024-04-17 13:24:02 +10:00
Stenzek 8e8581cb15 GS: Fix error and OOB access in GSGetRGBA8AlphaMinMax() 2024-04-17 13:24:02 +10:00
lightningterror b5472c1b51 Config/FullscreenUI: Properly disable GPU Palette Conversion. 2024-04-16 18:52:25 +02:00
Benjamin Moir 14b2335c54 VMManager: Log entry point in hexadecimal 2024-04-17 02:45:54 +10:00
lightningterror b94a232b31 GS/HW: Ensure tex shuffles, masking are render target draws.
Fixes Castlevania Curse of Darkness crashing.
2024-04-16 15:33:54 +02:00
refractionpcsx2 79a882d18b GS/HW: Try to keep old targets around without overlap or dirty areas 2024-04-15 19:05:51 +01:00
Stenzek 5351a6a64a FullscreenUI: Fix images in DX11/GL 2024-04-15 22:10:56 +10:00
Stenzek 55907bf310 GS/HW: Fix RTACorrect/Decorrect debug log 2024-04-14 22:29:53 +10:00
Stenzek 83bf215ead GS/HW: Allow creation of known targets via move with offset
Fixes upscaling with subtitles in Devil May Cry.
2024-04-14 22:29:53 +10:00
Stenzek 070068366f GS/Vulkan: Add env var for non-semantic debug info 2024-04-13 13:55:04 +10:00
Stenzek 5219f52130 ImGuiFullscreen: Use popup background for all popups
Backport of 44a4f2703a
and 57f6bda59b
2024-04-13 13:21:17 +10:00
Stenzek 2157a7ed0b FullscreenUI: Redo landing page and add help bar
Backport of bf4e8feb25
2024-04-13 13:21:17 +10:00
Stenzek 888f3d8499 ImGuiManager: Fix double press to activate menu items 2024-04-13 13:21:17 +10:00
Stenzek e027874468 ImGuiManager: Increase key repeat delay 2024-04-13 13:21:17 +10:00
Stenzek a1ec590bf8 FullscreenUI: Avoid per-frame memory allocations with SmallString
Backport of de1a1af908
2024-04-13 13:21:17 +10:00
Stenzek 35525d5304 SettingsInterface: Add SmallString overloads
Backport of 631fca3042
2024-04-13 13:21:17 +10:00
Stenzek 9fa409a1a9 SmallString: Add missing methods
Backport of
79c226efff
2cd747983a
6b7cf6a432
f75a5605eb
2024-04-13 13:21:17 +10:00
Stenzek fbfdf1200d GS/Vulkan: Gate non semantic debug info behind extension 2024-04-13 12:35:22 +10:00
Stenzek 17e0d9fcbe GS/Vulkan: Fix depth not clearing with first colclip draw 2024-04-13 12:33:58 +10:00
KamFretoZ 91b0b16b35 BPM: Light Mode color scheme update 2024-04-10 21:18:05 +10:00
Silent 272c0369f1 Debugger: Untangle the breakpoints data flow to resolve races
Tightens the data flow between the CPU and UI threads
to resolve multiple race conditions, such as:
1. Unbinding a debug interface update CB while it's in use,
    causing a possible use-after-free.
2. Binding breakpoints via the disassembly widget that would read
    a stale local variable, and bind the breakpoint to a bogus address

+ probably more subtle races that are now resolved
2024-04-08 19:54:46 +01:00
Ty Lamontagne c0a6e21599 DebugTools: Properly Mark Addresses < 0xBFC00000 as Invalid
Fixes asserts and possible crashes in release when these addresses are accessed in the debugger.
2024-04-08 19:54:46 +01:00
Silent 6d478021f9 Debugger: Prompt for HC restart on Boot and Debug 2024-04-08 19:54:46 +01:00
Silent 5e1009b4fb Debugger: Unbind the BP UpdateHandler on destructing DebuggerWindow
Prevents an use-after-free on the DebuggerWindow object
2024-04-08 19:54:46 +01:00
TellowKrinkle 82bd9bbd6c Core: Work around GCC bug 2024-04-08 18:16:25 +02:00
TheLastRar 52ddb0efd9 DEV9: Increase allowed number of to be ACKed tcp packets 2024-04-08 18:12:15 +02:00
TheLastRar 7903c7c17e DEV9: Improve tracking of acknowledged data 2024-04-08 18:12:15 +02:00
TheLastRar 8a14552e56 DEV9: Move and fix GetDelta Function 2024-04-08 18:12:15 +02:00
TheLastRar 569b93da51 DEV9: Correct Console Logs 2024-04-08 18:12:15 +02:00
TheLastRar 889af7cf17 DEV9: Increase number of tracked sent SEQ number 2024-04-08 18:12:15 +02:00
lightningterror 9849992cfd GS/HW: Cleanup EmulateBlending a bit more. 2024-04-08 17:53:12 +02:00
refractionpcsx2 30f4e77b31 GS/HW: Rearrange color on shuffle if SW Blend or TFX 2024-04-08 12:09:30 +01:00
lightningterror b1f4f67130 GS/HW: Add support for blend second pass.
Allows us to blend Cd with full alpha range of 0-2 bypassing hw blend limitations.
Not all Cd cases are covered, but it's a good start.

Also allows us to do Ad cases where we can double the blend to get the
proper blend result since Ad range is 0-1 instead of 0-2.
2024-04-07 20:04:50 +02:00