Compare commits

...

43 Commits

Author SHA1 Message Date
refractionpcsx2
bd20651605 GS/TC: Correct some preload behaviour on merging targets 2026-01-18 20:55:11 +00:00
refractionpcsx2
edb2b37a92 GS/HW: Use old hazard copy method when there's no multidraw or barriers 2026-01-17 19:48:01 +01:00
refractionpcsx2
4462b3f91d GS/HW: Add detection for continuous possible vertical shuffles 2026-01-17 19:48:01 +01:00
refractionpcsx2
57ded8a022 GS/HW: Support offsetting for channel shuffle instead of copying 2026-01-17 19:48:01 +01:00
refractionpcsx2
304a7f9d30 GameDB: Add necessary fixes for MotoGP 2026-01-17 18:18:00 +01:00
refractionpcsx2
73a09ffe6c GS/HW: Improve channel shuffle detection and use on 24bit sources 2026-01-17 18:18:00 +01:00
refractionpcsx2
4e5d7bd407 GS/TC: Delete empty target after height adjust 2026-01-17 16:58:37 +01:00
refractionpcsx2
2a3452a489 GameDB: Remove Preload Frame from PachiPara as it just causes problems 2026-01-17 16:52:27 +01:00
refractionpcsx2
2e7f951399 GS/HW: Fix up iRem CRC hack to be more accurate 2026-01-17 16:52:27 +01:00
refractionpcsx2
efb66c1d37 GS/TC: Small optimization to local memory invalidation 2026-01-17 16:32:10 +01:00
refractionpcsx2
6fc88a4499 GS/HW: Improve fog modulation accuracy in HW renderers 2026-01-17 16:32:10 +01:00
refractionpcsx2
238b29836e GS/TC: Only bilinearly scale render target if preserve_scale is not set 2026-01-17 15:53:08 +01:00
refractionpcsx2
58cbb61aac GS/TC: Only bilinear filter depth scales 2026-01-17 15:53:08 +01:00
refractionpcsx2
2c7a168029 GS/HW: Properly scale depth up if required when native scaling is in use 2026-01-17 15:53:08 +01:00
JordanTheToaster
bb4ee5f0fb GS/HW: Optimize source sizes when using CLAMP_CLAMP 2026-01-16 14:37:22 -05:00
RedPanda4552
1940fdb3d3 Revert "Qt: Patch for distinguishing left and right variants of shift/alt/ctrl keys"
This reverts commit 3871d1bd5d.
2026-01-16 12:55:41 -05:00
RedPanda4552
bf269e1295 Revert "PAD: Fix hotkeys to differentiate between left and right keyboard keys"
This reverts commit 3e87bec0c0.
2026-01-16 12:55:41 -05:00
KamFretoZ
262bbdae9f Translations: Fix BPM crash on Chinese Traditional 2026-01-16 16:14:18 +01:00
lightningterror
6e5c228980 GS/DX12: Adjust partial depth copies.
Check if depth copies are supported first.

If depth copies aren't supported fallback to doing full depth copies, also make sure source and destination rects match.
2026-01-16 03:45:06 +01:00
lightningterror
62d46797ca GS/DX11: Make sure source and destination rect matches for depth copies. 2026-01-16 03:45:06 +01:00
lightningterror
3b561be221 GS/TC: Do a shader copy/blit for depth textures when doing tc moves.
dx11 doesn't support partial depth copies.
dx12 supports depth copies with Programmable Sample Positions tier 1 and up.
Add missing osd copy counts for moves.

We can just do blit for all since performance is the same.
2026-01-16 03:45:06 +01:00
PCSX2 Bot
d1e1e59059 [ci skip] Qt: Update Base Translation. 2026-01-15 02:23:51 +01:00
SternXD
d983b2b066 Copyright: Change year from 2002-2025 to 2002-2026 2026-01-15 00:22:32 +01:00
TheLastRar
82e5f80f11 GS/DX: Fix exclusive fullscreen potentially using wrong resolution 2026-01-15 00:20:58 +01:00
TheLastRar
44ba9e283e Qt: Fix exclusive fullscreen sometimes appearing on wrong screen 2026-01-15 00:20:58 +01:00
refractionpcsx2
0244cde98d GS: Correct GS to GS direction check and simplify 2026-01-15 00:19:25 +01:00
TheLastRar
d75612e4c9 GS/VK: Fixes to queue creation 2026-01-15 00:19:11 +01:00
SternXD
cbfc838aab FullscreenUI: Remove unnecessary menu scrollbars, standardize dialogs, and improve textboxes 2026-01-14 03:34:20 +01:00
TheLastRar
6a760e05a8 GS/VK: Use the compute queues for present 2026-01-13 19:41:36 -05:00
oltolm
5278477de9 GS: remove unused function BitCast 2026-01-13 19:41:05 -05:00
oltolm
0da84c2c69 Misc: use concepts instead of SFINAE 2026-01-13 19:41:05 -05:00
Ziemas
ad6d0f7a6b EE JIT: Fix LUT weirdness 2026-01-13 19:37:18 -05:00
SternXD
3e87bec0c0 PAD: Fix hotkeys to differentiate between left and right keyboard keys 2026-01-13 19:35:57 -05:00
PCSX2 Bot
860921dab9 [ci skip] Qt: Update Base Translation. 2026-01-14 01:21:16 +01:00
Mrlinkwii
18c9f00b53 GameDB: add patch for Street Mahjong Trans-Asakami 2 2026-01-14 01:20:43 +01:00
refractionpcsx2
eec3951315 GS/TC: Check format matches on invalidation rect translation 2026-01-14 01:20:08 +01:00
lightningterror
e5119e8ef2 Qt/FSUI: Mark DX11 as Legacy. 2026-01-14 01:19:38 +01:00
refractionpcsx2
4e6b6904cb GS: Improve PCRTC offset wrapping and simplify some deinterlacing 2026-01-13 07:54:37 +01:00
refractionpcsx2
4e1975ec80 GS: Fix copy/paste typo in TextureMinMax calculation, clean up code 2026-01-13 04:11:49 +01:00
PCSX2 Bot
43453b6f22 [ci skip] PAD: Update to latest controller database. 2026-01-13 02:27:22 +01:00
PCSX2 Bot
2e12b2ee0a [ci skip] Qt: Update Base Translation. 2026-01-13 02:26:57 +01:00
refractionpcsx2
be5e98b47f GS/HW: Small improvement to texture shuffle heuristics 2026-01-12 13:49:15 +01:00
JordanTheToaster
293b60a85c Deps: Update SDL3 to v3.4.0 2026-01-12 12:17:03 +01:00
1063 changed files with 5047 additions and 4526 deletions

View File

@@ -26,7 +26,7 @@ LIBJPEGTURBO=3.1.2
LIBPNG=1.6.53
LIBWEBP=1.6.0
NVENC=11.1.5.3
SDL=SDL3-3.2.26
SDL=SDL3-3.4.0
QT=6.10.1
QTAPNG=1.3.0
LZ4=1.10.0
@@ -54,7 +54,7 @@ fd6f417fe9e3a071cf1424a5152d926a34c4a3c5070745470be6cf12a404ed79 $LIBBACKTRACE.
8f0012234b464ce50890c490f18194f913a7b1f4e6a03d6644179fa0f867d0cf libjpeg-turbo-$LIBJPEGTURBO.tar.gz
1d3fb8ccc2932d04aa3663e22ef5ef490244370f4e568d7850165068778d98d4 libpng-$LIBPNG.tar.xz
e4ab7009bf0629fd11982d4c2aa83964cf244cffba7347ecd39019a9e38c4564 libwebp-$LIBWEBP.tar.gz
dad488474a51a0b01d547cd2834893d6299328d2e30f479a3564088b5476bae2 $SDL.tar.gz
082cbf5f429e0d80820f68dc2b507a94d4cc1b4e70817b119bbb8ec6a69584b8 $SDL.tar.gz
452a1a290bd0cf18737fad0057dc17b7fdf10a73eda2d6d4f31ba04fda25ef2c libpng-$LIBPNG-apng.patch.gz
537512904744b35e232912055ccf8ec66d768639ff3abe5788d90d792ec5f48b lz4-$LZ4.tar.gz
2974b91062197e0527dffa3aadd8fe3bfa6681ae45f5ff9181bc0ca6479abd59 nv-codec-headers-$NVENC.tar.gz
@@ -231,7 +231,7 @@ echo "Building SDL..."
rm -fr "$SDL"
tar xf "$SDL.tar.gz"
cd "$SDL"
cmake -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH="$INSTALLDIR" -DCMAKE_INSTALL_PREFIX="$INSTALLDIR" -DBUILD_SHARED_LIBS=ON -DSDL_SHARED=ON -DSDL_STATIC=OFF -G Ninja
cmake -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH="$INSTALLDIR" -DCMAKE_INSTALL_PREFIX="$INSTALLDIR" -DBUILD_SHARED_LIBS=ON -DSDL_SHARED=ON -DSDL_STATIC=OFF -DSDL_X11_XSCRNSAVER=OFF -DSDL_TESTS=OFF -G Ninja
cmake --build build --parallel
ninja -C build install
cd ..

View File

@@ -14,8 +14,8 @@
"sources": [
{
"type": "archive",
"url": "https://libsdl.org/release/SDL3-3.2.26.tar.gz",
"sha256": "dad488474a51a0b01d547cd2834893d6299328d2e30f479a3564088b5476bae2"
"url": "https://libsdl.org/release/SDL3-3.4.0.tar.gz",
"sha256": "082cbf5f429e0d80820f68dc2b507a94d4cc1b4e70817b119bbb8ec6a69584b8"
}
],
"cleanup": [

View File

@@ -40,7 +40,7 @@ fi
FREETYPE=2.14.1
HARFBUZZ=12.2.0
SDL=SDL3-3.2.26
SDL=SDL3-3.4.0
ZSTD=1.5.7
LZ4=1.10.0
LIBPNG=1.6.53
@@ -80,7 +80,7 @@ CMAKE_ARCH_UNIVERSAL=-DCMAKE_OSX_ARCHITECTURES="x86_64;arm64"
cat > SHASUMS <<EOF
32427e8c471ac095853212a37aef816c60b42052d4d9e48230bab3bdf2936ccc freetype-$FREETYPE.tar.xz
f63fc519f150465bd0bdafcdf3d0e9c23474f4c474171cd515ea1b3a72c081fb harfbuzz-$HARFBUZZ.tar.gz
dad488474a51a0b01d547cd2834893d6299328d2e30f479a3564088b5476bae2 $SDL.tar.gz
082cbf5f429e0d80820f68dc2b507a94d4cc1b4e70817b119bbb8ec6a69584b8 $SDL.tar.gz
eb33e51f49a15e023950cd7825ca74a4a2b43db8354825ac24fc1b7ee09e6fa3 zstd-$ZSTD.tar.gz
537512904744b35e232912055ccf8ec66d768639ff3abe5788d90d792ec5f48b lz4-$LZ4.tar.gz
1d3fb8ccc2932d04aa3663e22ef5ef490244370f4e568d7850165068778d98d4 libpng-$LIBPNG.tar.xz

View File

@@ -22,7 +22,7 @@ fi
FREETYPE=2.14.1
HARFBUZZ=12.2.0
SDL=SDL3-3.2.26
SDL=SDL3-3.4.0
ZSTD=1.5.7
LZ4=1.10.0
LIBPNG=1.6.53
@@ -61,7 +61,7 @@ CMAKE_COMMON=(
cat > SHASUMS <<EOF
32427e8c471ac095853212a37aef816c60b42052d4d9e48230bab3bdf2936ccc freetype-$FREETYPE.tar.xz
f63fc519f150465bd0bdafcdf3d0e9c23474f4c474171cd515ea1b3a72c081fb harfbuzz-$HARFBUZZ.tar.gz
dad488474a51a0b01d547cd2834893d6299328d2e30f479a3564088b5476bae2 $SDL.tar.gz
082cbf5f429e0d80820f68dc2b507a94d4cc1b4e70817b119bbb8ec6a69584b8 $SDL.tar.gz
eb33e51f49a15e023950cd7825ca74a4a2b43db8354825ac24fc1b7ee09e6fa3 zstd-$ZSTD.tar.gz
537512904744b35e232912055ccf8ec66d768639ff3abe5788d90d792ec5f48b lz4-$LZ4.tar.gz
1d3fb8ccc2932d04aa3663e22ef5ef490244370f4e568d7850165068778d98d4 libpng-$LIBPNG.tar.xz

View File

@@ -47,7 +47,7 @@ set HARFBUZZ=12.2.0
set LIBJPEGTURBO=3.1.2
set LIBPNG=1653
set LIBPNGLONG=1.6.53
set SDL=SDL3-3.2.26
set SDL=SDL3-3.4.0
set QT=6.10.1
set QTMINOR=6.10
set QTAPNG=1.3.0
@@ -71,7 +71,7 @@ call :downloadfile "lpng%LIBPNG%.zip" https://download.sourceforge.net/libpng/lp
call :downloadfile "lpng%LIBPNG%-apng.patch.gz" https://download.sourceforge.net/libpng-apng/libpng-%LIBPNGLONG%-apng.patch.gz 452a1a290bd0cf18737fad0057dc17b7fdf10a73eda2d6d4f31ba04fda25ef2c || goto error
call :downloadfile "libjpeg-turbo-%LIBJPEGTURBO%.tar.gz" "https://github.com/libjpeg-turbo/libjpeg-turbo/releases/download/%LIBJPEGTURBO%/libjpeg-turbo-%LIBJPEGTURBO%.tar.gz" 8f0012234b464ce50890c490f18194f913a7b1f4e6a03d6644179fa0f867d0cf || goto error
call :downloadfile "libwebp-%WEBP%.tar.gz" "https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-%WEBP%.tar.gz" e4ab7009bf0629fd11982d4c2aa83964cf244cffba7347ecd39019a9e38c4564 || goto error
call :downloadfile "%SDL%.zip" "https://libsdl.org/release/%SDL%.zip" 739356eef1192fff9d641c320a8f5ef4a10506b8927def4b9ceb764c7e947369 || goto error
call :downloadfile "%SDL%.zip" "https://libsdl.org/release/%SDL%.zip" 9ac2debb493e0d3e13dbd2729fb91f4bfeb00a0f4dff5e04b73cc9bac276b38d || goto error
call :downloadfile "qtbase-everywhere-src-%QT%.zip" "https://download.qt.io/official_releases/qt/%QTMINOR%/%QT%/submodules/qtbase-everywhere-src-%QT%.zip" c43f471a808b07fc541528410e94ce89c6745bdc1d744492e19911d35fbf7d33 || goto error
call :downloadfile "qtimageformats-everywhere-src-%QT%.zip" "https://download.qt.io/official_releases/qt/%QTMINOR%/%QT%/submodules/qtimageformats-everywhere-src-%QT%.zip" 2d828d8c999fdd18167937c071781c22321c643b04a106c714411c2356cdb26d || goto error
call :downloadfile "qtsvg-everywhere-src-%QT%.zip" "https://download.qt.io/official_releases/qt/%QTMINOR%/%QT%/submodules/qtsvg-everywhere-src-%QT%.zip" ddd74a417d2397eb085d047a9b6ba52b76e748055817f728fe691f8456035d23 || goto error

View File

@@ -45,7 +45,7 @@ set HARFBUZZ=12.2.0
set LIBJPEGTURBO=3.1.2
set LIBPNG=1653
set LIBPNGLONG=1.6.53
set SDL=SDL3-3.2.26
set SDL=SDL3-3.4.0
set QT=6.10.1
set QTMINOR=6.10
set QTAPNG=1.3.0
@@ -69,7 +69,7 @@ call :downloadfile "lpng%LIBPNG%.zip" https://download.sourceforge.net/libpng/lp
call :downloadfile "lpng%LIBPNG%-apng.patch.gz" https://download.sourceforge.net/libpng-apng/libpng-%LIBPNGLONG%-apng.patch.gz 452a1a290bd0cf18737fad0057dc17b7fdf10a73eda2d6d4f31ba04fda25ef2c || goto error
call :downloadfile "libjpeg-turbo-%LIBJPEGTURBO%.tar.gz" "https://github.com/libjpeg-turbo/libjpeg-turbo/releases/download/%LIBJPEGTURBO%/libjpeg-turbo-%LIBJPEGTURBO%.tar.gz" 8f0012234b464ce50890c490f18194f913a7b1f4e6a03d6644179fa0f867d0cf || goto error
call :downloadfile "libwebp-%WEBP%.tar.gz" "https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-%WEBP%.tar.gz" e4ab7009bf0629fd11982d4c2aa83964cf244cffba7347ecd39019a9e38c4564 || goto error
call :downloadfile "%SDL%.zip" "https://libsdl.org/release/%SDL%.zip" 739356eef1192fff9d641c320a8f5ef4a10506b8927def4b9ceb764c7e947369 || goto error
call :downloadfile "%SDL%.zip" "https://libsdl.org/release/%SDL%.zip" 9ac2debb493e0d3e13dbd2729fb91f4bfeb00a0f4dff5e04b73cc9bac276b38d || goto error
call :downloadfile "qtbase-everywhere-src-%QT%.zip" "https://download.qt.io/official_releases/qt/%QTMINOR%/%QT%/submodules/qtbase-everywhere-src-%QT%.zip" c43f471a808b07fc541528410e94ce89c6745bdc1d744492e19911d35fbf7d33 || goto error
call :downloadfile "qtimageformats-everywhere-src-%QT%.zip" "https://download.qt.io/official_releases/qt/%QTMINOR%/%QT%/submodules/qtimageformats-everywhere-src-%QT%.zip" 2d828d8c999fdd18167937c071781c22321c643b04a106c714411c2356cdb26d || goto error
call :downloadfile "qtsvg-everywhere-src-%QT%.zip" "https://download.qt.io/official_releases/qt/%QTMINOR%/%QT%/submodules/qtsvg-everywhere-src-%QT%.zip" ddd74a417d2397eb085d047a9b6ba52b76e748055817f728fe691f8456035d23 || goto error

View File

@@ -71,7 +71,7 @@
<div id="pcsx2">
<h3>PCSX2 - PS2 Emulator for PCs</h3>
<h4>Copyright &copy; 2002-2025 PCSX2 Dev Team</h4>
<h4>Copyright &copy; 2002-2026 PCSX2 Dev Team</h4>
<p>PCSX2 is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.</p>

View File

@@ -4764,6 +4764,9 @@ SCES-50034:
name: "MotoGP"
region: "PAL-M5"
compat: 5
gsHWFixes:
gpuTargetCLUT: 2 # Fixes some (haze?) shuffle colors.
textureInsideRT: 1 # Fixes rendering artifacts on racers.
SCES-50105:
name: "Sky Odyssey"
region: "PAL-M5"
@@ -27852,8 +27855,6 @@ SLES-54812:
SLES-54813:
name: "NASCAR 08"
region: "PAL-A-E"
gsHWFixes:
deinterlace: 8 # Game requires AdaptiveTFF de-interlacing when auto.
SLES-54814:
name: "Dead Eye Jim"
region: "PAL-E"
@@ -29206,8 +29207,6 @@ SLES-55199:
name: "NASCAR 09"
region: "PAL-M5"
compat: 5
gsHWFixes:
deinterlace: 8 # Game requires AdaptiveTFF de-interlacing when auto.
SLES-55200:
name: "Guitar Hero - Aerosmith"
region: "PAL-M4"
@@ -54599,6 +54598,28 @@ SLPS-20017:
name-sort: "すとりーとまーじゃんとらんす あさしん2"
name-en: "Street Mahjong Trance 2"
region: "NTSC-J"
patches:
7EF05210:
content: |-
author= Goatman13
comment=Hack sceCdDiskReady to not wait for drive ready.
patch=1,EE,000ffef4,word,304200c0
patch=1,EE,000ffef8,word,1443fffb
patch=1,EE,000fff00,word,3c19bc01
patch=1,EE,000fff04,word,9f2f0000
patch=1,EE,000fff08,word,3c180010
patch=1,EE,000fff0c,word,9f18fef4
patch=1,EE,000fff10,word,130f0003
patch=1,EE,000fff14,word,27390004
patch=1,EE,000fff18,word,1000fffa
patch=1,EE,000fff1c,word,00000000
patch=1,EE,000fff20,word,9f2f0000
patch=1,EE,000fff24,word,3c180010
patch=1,EE,000fff28,word,9f18fef8
patch=1,EE,000fff2c,word,170ffff6
patch=1,EE,000fff34,word,af200000
patch=1,EE,000fff38,word,03e00008
patch=1,EE,00273870,word,0803ffc0
SLPS-20018:
name: "ステッピングセレクション [ディスク1/2]"
name-sort: "すてっぴんぐせれくしょん [でぃすく1/2]"
@@ -54725,6 +54746,9 @@ SLPS-20040:
name-sort: "もとGP"
name-en: "MotoGP"
region: "NTSC-J"
gsHWFixes:
gpuTargetCLUT: 2 # Fixes some (haze?) shuffle colors.
textureInsideRT: 1 # Fixes rendering artifacts on racers.
SLPS-20041:
name: "麻雀悟空 大聖"
name-sort: "まーじゃんごくう たいせい"
@@ -60473,7 +60497,6 @@ SLPS-25574:
halfPixelOffset: 2 # Aligns effects.
nativeScaling: 1 # Helps align effects.
textureInsideRT: 1 # Fixes channel shuffles.
preloadFrameData: 1 # Fixes menu graphics.
autoFlush: 1 # Fixes motion blur.
minimumBlendingLevel: 2 # Improves post effects.
SLPS-25575:
@@ -61198,7 +61221,6 @@ SLPS-25682:
halfPixelOffset: 2 # Aligns effects.
nativeScaling: 1 # Helps align effects.
textureInsideRT: 1 # Fixes channel shuffles.
preloadFrameData: 1 # Fixes menu graphics.
autoFlush: 1 # Fixes motion blur.
minimumBlendingLevel: 2 # Improves post effects.
SLPS-25683:
@@ -61828,7 +61850,6 @@ SLPS-25787:
halfPixelOffset: 2 # Aligns effects.
nativeScaling: 1 # Helps align effects.
textureInsideRT: 1 # Fixes channel shuffles.
preloadFrameData: 1 # Fixes menu graphics.
autoFlush: 1 # Fixes motion blur.
minimumBlendingLevel: 2 # Improves post effects.
SLPS-25788:
@@ -62240,7 +62261,6 @@ SLPS-25852:
halfPixelOffset: 2 # Aligns effects.
nativeScaling: 1 # Helps align effects.
textureInsideRT: 1 # Fixes channel shuffles.
preloadFrameData: 1 # Fixes menu graphics.
autoFlush: 1 # Fixes motion blur.
minimumBlendingLevel: 2 # Improves post effects.
SLPS-25853:
@@ -64215,6 +64235,9 @@ SLUS-20058:
name: "MotoGP"
region: "NTSC-U"
compat: 5
gsHWFixes:
gpuTargetCLUT: 2 # Fixes some (haze?) shuffle colors.
textureInsideRT: 1 # Fixes rendering artifacts on racers.
SLUS-20062:
name: "Grand Theft Auto III"
region: "NTSC-U"
@@ -66483,7 +66506,6 @@ SLUS-20535:
compat: 5
gsHWFixes:
roundSprite: 1 # Fix horizontal and vertical lines when racing.
deinterlace: 8 # Fixes misdetection of game deinterlace.
SLUS-20536:
name: "NBA Live 2003"
region: "NTSC-U"
@@ -67683,7 +67705,6 @@ SLUS-20754:
region: "NTSC-U"
gsHWFixes:
roundSprite: 1 # Fix horizontal and vertical lines when racing.
deinterlace: 8 # Fixes misdetection of game deinterlace.
memcardFilters:
- "PSCD10088" # Enables EA Sports BIO.
- "SLUS-20754"
@@ -68048,7 +68069,6 @@ SLUS-20824:
region: "NTSC-U"
gsHWFixes:
roundSprite: 1 # Fix horizontal and vertical lines when racing.
deinterlace: 8 # Fixes misdetection of game deinterlace.
memcardFilters:
- "PSCD10088" # Enables EA Sports BIO.
- "SLUS-20824"
@@ -73096,8 +73116,6 @@ SLUS-21639:
name: "NASCAR 08"
region: "NTSC-U"
compat: 5
gsHWFixes:
deinterlace: 8 # Game requires AdaptiveTFF de-interlacing when auto.
SLUS-21640:
name: "Rugby 08"
region: "NTSC-U"
@@ -73665,8 +73683,6 @@ SLUS-21744:
name: "NASCAR 09"
region: "NTSC-U"
compat: 5
gsHWFixes:
deinterlace: 8 # Game requires AdaptiveTFF de-interlacing when auto.
patches:
1B6C22B9:
content: |-

View File

@@ -696,6 +696,7 @@
03000000730700000601000000000000,Sega Saturn Controller,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b2,start:b9,x:b3,y:b4,platform:Windows,
03000000b40400000a01000000000000,Sega Saturn Controller,a:b0,b:b1,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b6,lefttrigger:b7,rightshoulder:b5,righttrigger:b2,start:b8,x:b3,y:b4,platform:Windows,
030000003b07000004a1000000000000,SFX,a:b0,b:b2,back:b7,leftshoulder:b6,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b9,righttrigger:b5,start:b8,x:b1,y:b3,platform:Windows,
03000000632500002705000000000000,ShanWan Q36,a:b0,b:b1,x:b3,y:b4,leftshoulder:b6,rightshoulder:b7,lefttrigger:b8,righttrigger:b9,back:b10,start:b11,dpup:h0.1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,platform:Windows,
03000000f82100001900000000000000,Shogun Bros Chameleon X1,a:b2,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b5,rightx:a2,righty:a3,start:b8,x:b3,y:b0,platform:Windows,
03000000120c00001c1e000000000000,SnakeByte 4S PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,touchpad:b13,x:b0,y:b3,platform:Windows,
03000000140300000918000000000000,SNES Controller,a:b0,b:b1,back:b6,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b4,rightshoulder:b5,start:b7,x:b2,y:b3,platform:Windows,
@@ -1503,6 +1504,7 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
05000000d6200000e589000001000000,Moga 2,a:b0,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b7,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b8,righttrigger:a4,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Linux,
05000000d6200000ad0d000001000000,Moga Pro,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b7,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b8,righttrigger:a4,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Linux,
05000000d62000007162000001000000,Moga Pro 2,a:b0,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b7,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b8,righttrigger:a4,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Linux,
03000000c82d00000960000000000000,8BitDo Pro 3,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,paddle1:b17,paddle2:b16,paddle3:b2,paddle4:b5,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b4,y:b3,platform:Mac OS X,
03000000c62400002b89000011010000,MOGA XP5A Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
05000000c62400002a89000000010000,MOGA XP5A Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b22,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
05000000c62400001a89000000010000,MOGA XP5X Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#ifndef FXAA_HLSL

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
struct VS_INPUT

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
cbuffer vertexBuffer : register(b0)

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
Texture2D Texture;

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
Texture2D Texture;

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
struct VS_INPUT

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
Texture2D Texture;

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#define FMT_32 0
@@ -168,6 +168,7 @@ cbuffer cb1
float4 LODParams;
float4 STRange;
int4 ChannelShuffle;
float2 ChannelShuffleOffset;
float2 TC_OffsetHack;
float2 STScale;
float4x4 DitherMatrix;
@@ -740,7 +741,7 @@ float4 fog(float4 c, float f)
{
if(PS_FOG)
{
c.rgb = trunc(lerp(FogColor, c.rgb, f));
c.rgb = trunc(lerp(FogColor, c.rgb, (f * 255.0f) / 256.0f));
}
return c;
@@ -757,17 +758,17 @@ float4 ps_color(PS_INPUT input)
#endif
#if PS_CHANNEL_FETCH == 1
float4 T = fetch_red(int2(input.p.xy));
float4 T = fetch_red(int2(input.p.xy + ChannelShuffleOffset));
#elif PS_CHANNEL_FETCH == 2
float4 T = fetch_green(int2(input.p.xy));
float4 T = fetch_green(int2(input.p.xy + ChannelShuffleOffset));
#elif PS_CHANNEL_FETCH == 3
float4 T = fetch_blue(int2(input.p.xy));
float4 T = fetch_blue(int2(input.p.xy + ChannelShuffleOffset));
#elif PS_CHANNEL_FETCH == 4
float4 T = fetch_alpha(int2(input.p.xy));
float4 T = fetch_alpha(int2(input.p.xy + ChannelShuffleOffset));
#elif PS_CHANNEL_FETCH == 5
float4 T = fetch_rgb(int2(input.p.xy));
float4 T = fetch_rgb(int2(input.p.xy + ChannelShuffleOffset));
#elif PS_CHANNEL_FETCH == 6
float4 T = fetch_gXbY(int2(input.p.xy));
float4 T = fetch_gXbY(int2(input.p.xy + ChannelShuffleOffset));
#elif PS_DEPTH_FMT > 0
float4 T = sample_depth(st_int, input.p.xy);
#else

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
//#version 420 // Keep it for editor detection

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#ifdef VERTEX_SHADER

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
//#version 420 // Keep it for editor detection

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
//#version 420 // Keep it for editor detection

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
//#version 420 // Keep it for editor detection

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
//#version 420 // Keep it for editor detection

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
//#version 420 // Keep it for text editor detection
@@ -49,6 +49,7 @@ layout(std140, binding = 0) uniform cb21
vec4 STRange;
ivec4 ChannelShuffle;
vec2 ChannelShuffleOffset;
vec2 TC_OffsetHack;
vec2 STScale;
@@ -315,7 +316,7 @@ int fetch_raw_depth()
#if PS_TEX_IS_FB == 1
return int(sample_from_rt().r * multiplier);
#else
return int(texelFetch(TextureSampler, ivec2(gl_FragCoord.xy), 0).r * multiplier);
return int(texelFetch(TextureSampler, ivec2(gl_FragCoord.xy + ChannelShuffleOffset), 0).r * multiplier);
#endif
}
@@ -324,7 +325,7 @@ vec4 fetch_raw_color()
#if PS_TEX_IS_FB == 1
return sample_from_rt();
#else
return texelFetch(TextureSampler, ivec2(gl_FragCoord.xy), 0);
return texelFetch(TextureSampler, ivec2(gl_FragCoord.xy + ChannelShuffleOffset), 0);
#endif
}
@@ -646,7 +647,7 @@ bool atst(vec4 C)
void fog(inout vec4 C, float f)
{
#if PS_FOG != 0
C.rgb = trunc(mix(FogColor, C.rgb, f));
C.rgb = trunc(mix(FogColor, C.rgb, (f * 255.0f) / 256.0f));
#endif
}

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
//#version 420 // Keep it for text editor detection

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#ifdef VERTEX_SHADER

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#ifdef VERTEX_SHADER

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#ifdef VERTEX_SHADER

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#ifdef VERTEX_SHADER

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#ifdef VERTEX_SHADER

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
//#version 420 // Keep it for editor detection

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
//////////////////////////////////////////////////////////////////////
@@ -316,6 +316,7 @@ layout(std140, set = 0, binding = 1) uniform cb1
vec4 LODParams;
vec4 STRange;
ivec4 ChannelShuffle;
vec2 ChannelShuffleOffset;
vec2 TC_OffsetHack;
vec2 STScale;
mat4 DitherMatrix;
@@ -907,7 +908,7 @@ bool atst(vec4 C)
vec4 fog(vec4 c, float f)
{
#if PS_FOG
c.rgb = trunc(mix(FogColor, c.rgb, f));
c.rgb = trunc(mix(FogColor, c.rgb, (f * 255.0f) / 256.0f));
#endif
return c;
@@ -926,17 +927,17 @@ vec4 ps_color()
#if !NEEDS_TEX
vec4 T = vec4(0.0f);
#elif PS_CHANNEL_FETCH == 1
vec4 T = fetch_red(ivec2(gl_FragCoord.xy));
vec4 T = fetch_red(ivec2(gl_FragCoord.xy + ChannelShuffleOffset));
#elif PS_CHANNEL_FETCH == 2
vec4 T = fetch_green(ivec2(gl_FragCoord.xy));
vec4 T = fetch_green(ivec2(gl_FragCoord.xy + ChannelShuffleOffset));
#elif PS_CHANNEL_FETCH == 3
vec4 T = fetch_blue(ivec2(gl_FragCoord.xy));
vec4 T = fetch_blue(ivec2(gl_FragCoord.xy + ChannelShuffleOffset));
#elif PS_CHANNEL_FETCH == 4
vec4 T = fetch_alpha(ivec2(gl_FragCoord.xy));
vec4 T = fetch_alpha(ivec2(gl_FragCoord.xy + ChannelShuffleOffset));
#elif PS_CHANNEL_FETCH == 5
vec4 T = fetch_rgb(ivec2(gl_FragCoord.xy));
vec4 T = fetch_rgb(ivec2(gl_FragCoord.xy + ChannelShuffleOffset));
#elif PS_CHANNEL_FETCH == 6
vec4 T = fetch_gXbY(ivec2(gl_FragCoord.xy));
vec4 T = fetch_gXbY(ivec2(gl_FragCoord.xy + ChannelShuffleOffset));
#elif PS_DEPTH_FMT > 0
vec4 T = sample_depth(st_int, ivec2(gl_FragCoord.xy));
#else

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
// This module contains implementations of _aligned_malloc for platforms that don't have

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include "Assertions.h"

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#ifdef __APPLE__

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#if ! __has_feature(objc_arc)

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include "common/Console.h"

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include "Pcsx2Defs.h"

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include <string_view>

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include "common/Assertions.h"

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include "common/Threading.h"

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include "common/DynamicLibrary.h"

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once
@@ -7,9 +7,9 @@
// Template function for casting enumerations to their underlying type
template <typename Enumeration>
typename std::underlying_type<Enumeration>::type enum_cast(Enumeration E)
std::underlying_type_t<Enumeration> enum_cast(Enumeration E)
{
return static_cast<typename std::underlying_type<Enumeration>::type>(E);
return static_cast<typename std::underlying_type_t<Enumeration>>(E);
}
namespace detail
@@ -25,67 +25,67 @@ namespace detail
Enum value;
constexpr enum_bool_helper(Enum value): value(value) {}
constexpr operator Enum() const { return value; }
constexpr operator bool() const { return static_cast<bool>(static_cast<typename std::underlying_type<Enum>::type>(value)); }
constexpr operator bool() const { return static_cast<bool>(static_cast<std::underlying_type_t<Enum>>(value)); }
};
};
#define MARK_ENUM_AS_FLAGS(T) template<> struct detail::enum_is_flags<T> : public std::true_type {}
template <typename Enum>
constexpr typename std::enable_if<detail::enum_is_flags<Enum>::value, Enum>::type
operator|(Enum lhs, Enum rhs) noexcept
requires detail::enum_is_flags<Enum>::value
constexpr Enum operator|(Enum lhs, Enum rhs) noexcept
{
using underlying = typename std::underlying_type<Enum>::type;
using underlying = std::underlying_type_t<Enum>;
return static_cast<Enum>(static_cast<underlying>(lhs) | static_cast<underlying>(rhs));
}
template <typename Enum>
constexpr typename std::enable_if<detail::enum_is_flags<Enum>::value, detail::enum_bool_helper<Enum>>::type
operator&(Enum lhs, Enum rhs) noexcept
requires detail::enum_is_flags<Enum>::value
constexpr detail::enum_bool_helper<Enum> operator&(Enum lhs, Enum rhs) noexcept
{
using underlying = typename std::underlying_type<Enum>::type;
using underlying = std::underlying_type_t<Enum>;
return static_cast<Enum>(static_cast<underlying>(lhs) & static_cast<underlying>(rhs));
}
template <typename Enum>
constexpr typename std::enable_if<detail::enum_is_flags<Enum>::value, Enum>::type
operator^(Enum lhs, Enum rhs) noexcept
requires detail::enum_is_flags<Enum>::value
constexpr Enum operator^(Enum lhs, Enum rhs) noexcept
{
using underlying = typename std::underlying_type<Enum>::type;
using underlying = std::underlying_type_t<Enum>;
return static_cast<Enum>(static_cast<underlying>(lhs) ^ static_cast<underlying>(rhs));
}
template <typename Enum>
constexpr typename std::enable_if<detail::enum_is_flags<Enum>::value, Enum&>::type
operator|=(Enum& lhs, Enum rhs) noexcept
requires detail::enum_is_flags<Enum>::value
constexpr Enum& operator|=(Enum& lhs, Enum rhs) noexcept
{
return lhs = lhs | rhs;
}
template <typename Enum>
constexpr typename std::enable_if<detail::enum_is_flags<Enum>::value, Enum&>::type
operator&=(Enum& lhs, Enum rhs) noexcept
requires detail::enum_is_flags<Enum>::value
constexpr Enum& operator&=(Enum& lhs, Enum rhs) noexcept
{
return lhs = lhs & rhs;
}
template <typename Enum>
constexpr typename std::enable_if<detail::enum_is_flags<Enum>::value, Enum&>::type
operator^=(Enum& lhs, Enum rhs) noexcept
requires detail::enum_is_flags<Enum>::value
constexpr Enum& operator^=(Enum& lhs, Enum rhs) noexcept
{
return lhs = lhs ^ rhs;
}
template<typename Enum>
constexpr typename std::enable_if<detail::enum_is_flags<Enum>::value, bool>::type
operator!(Enum e) noexcept
template <typename Enum>
requires detail::enum_is_flags<Enum>::value
constexpr bool operator!(Enum e) noexcept
{
return !static_cast<typename std::underlying_type<Enum>::type>(e);
return !static_cast<std::underlying_type_t<Enum>>(e);
}
template<typename Enum>
constexpr typename std::enable_if<detail::enum_is_flags<Enum>::value, Enum>::type
operator~(Enum e) noexcept
template <typename Enum>
requires detail::enum_is_flags<Enum>::value
constexpr Enum operator~(Enum e) noexcept
{
return static_cast<Enum>(~static_cast<typename std::underlying_type<Enum>::type>(e));
return static_cast<Enum>(~static_cast<std::underlying_type_t<Enum>>(e));
}

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include "Error.h"
@@ -14,8 +14,8 @@
// Platform-specific includes
#if defined(_WIN32)
#include "RedtapeWindows.h"
static_assert(std::is_same<DWORD, unsigned long>::value, "DWORD is unsigned long");
static_assert(std::is_same<HRESULT, long>::value, "HRESULT is long");
static_assert(std::is_same_v<DWORD, unsigned long>, "DWORD is unsigned long");
static_assert(std::is_same_v<HRESULT, long>, "HRESULT is long");
#endif
Error::Error() = default;

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
// This file abstracts the floating-point control registers, known as MXCSR on x86, and FPCR on AArch64.

View File

@@ -1,4 +1,4 @@
; SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
; SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
; SPDX-License-Identifier: GPL-3.0+
; -----------------------------------------

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include "FastJmp.h"

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include "FileSystem.h"

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include "common/HTTPDownloader.h"

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include "common/HTTPDownloaderCurl.h"

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include "common/HTTPDownloaderWinHTTP.h"

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
/**

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include "HostSys.h"

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include "Image.h"

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include "common/Assertions.h"

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include "common/Pcsx2Types.h"

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#ifndef _GNU_SOURCE

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include "MD5Digest.h"

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#ifndef __OBJC__

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include "MemorySettingsInterface.h"

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include "common/Perf.h"

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include "PrecompiledHeader.h"

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include <memory>

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include "PrecompiledHeader.h"

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include "ReadbackSpinManager.h"

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include "common/Threading.h"

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#include <algorithm>

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
#pragma once

View File

@@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2002-2025 PCSX2 Dev Team
// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
// --------------------------------------------------------------------------------------

Some files were not shown because too many files have changed in this diff Show More