Merge remote-tracking branch 'upstream/master'

pull/12/head
987123879113 1 year ago
commit 6f9f3616db
  1. 2
      .codacy.yaml
  2. 2
      .github/CONTRIBUTING.md
  3. 1
      .github/labeler.yml
  4. 2
      .github/workflows/linux_build_wx.yml
  5. 4
      .github/workflows/scripts/linux/AppRun-qt
  6. 2
      .github/workflows/scripts/linux/appimage-qt.sh
  7. 2
      .github/workflows/scripts/linux/appimage.sh
  8. 4
      .github/workflows/scripts/linux/build-dependencies-qt.sh
  9. 4
      .github/workflows/scripts/macos/build-dependencies.sh
  10. 2
      3rdparty/sdl2/SDL
  11. 4
      3rdparty/sdl2/SDL.vcxproj
  12. 12
      3rdparty/sdl2/SDL.vcxproj.filters
  13. 2
      bin/PCSX2_keys.ini.default
  14. 10
      bin/docs/GPL.html
  15. 82
      bin/docs/debugger.txt
  16. 44
      bin/resources/GameIndex.yaml
  17. 18
      bin/resources/game_controller_db.txt
  18. 4
      bin/resources/shaders/opengl/cas.glsl
  19. 4
      bin/resources/shaders/opengl/interlace.glsl
  20. 2
      bin/resources/shaders/opengl/tfx_fs.glsl
  21. 4
      bin/resources/shaders/vulkan/cas.glsl
  22. 6
      bin/resources/shaders/vulkan/convert.glsl
  23. 2
      bin/resources/shaders/vulkan/interlace.glsl
  24. 4
      bin/resources/shaders/vulkan/present.glsl
  25. 2
      bin/resources/shaders/vulkan/tfx.glsl
  26. 2525
      bin/shaders/GS.fx
  27. 195
      bin/shaders/GS_FX_Settings.ini
  28. 73
      buildbot.xml
  29. 5
      common/AlignedMalloc.cpp
  30. 2
      common/CMakeLists.txt
  31. 6
      common/FileSystem.cpp
  32. 9
      common/RedtapeWindows.h
  33. 1
      common/Vulkan/Context.cpp
  34. 4
      common/Vulkan/Texture.cpp
  35. 2
      common/Vulkan/Texture.h
  36. 6
      common/Windows/WinMisc.cpp
  37. 2
      common/Windows/WinThreads.cpp
  38. 2
      common/vsprops/preBuild.cmd
  39. 7
      common/vsprops/readme.txt
  40. 2
      linux_various/PCSX2-linux.sh
  41. 2
      linux_various/check_po_quality.pl
  42. 2
      linux_various/hex2h.pl
  43. 64
      mscompile.cmd
  44. 4
      pcsx2-gsrunner/test_check_dumps.py
  45. 12
      pcsx2-qt/CMakeLists.txt
  46. 167
      pcsx2-qt/MainWindow.cpp
  47. 7
      pcsx2-qt/MainWindow.h
  48. 59
      pcsx2-qt/MainWindow.ui
  49. 15
      pcsx2-qt/QtHost.cpp
  50. 3
      pcsx2-qt/QtHost.h
  51. 74
      pcsx2-qt/Settings/AdvancedSettingsWidget.cpp
  52. 10
      pcsx2-qt/Settings/AdvancedSettingsWidget.h
  53. 374
      pcsx2-qt/Settings/AdvancedSettingsWidget.ui
  54. 204
      pcsx2-qt/Settings/AdvancedSystemSettingsWidget.ui
  55. 92
      pcsx2-qt/Settings/EmulationSettingsWidget.cpp
  56. 230
      pcsx2-qt/Settings/EmulationSettingsWidget.ui
  57. 338
      pcsx2-qt/Settings/GameFixSettingsWidget.ui
  58. 11
      pcsx2-qt/Settings/GraphicsSettingsWidget.cpp
  59. 93
      pcsx2-qt/Settings/GraphicsSettingsWidget.ui
  60. 17
      pcsx2-qt/Settings/InterfaceSettingsWidget.cpp
  61. 97
      pcsx2-qt/Settings/InterfaceSettingsWidget.ui
  62. 27
      pcsx2-qt/Settings/SettingsDialog.cpp
  63. 9
      pcsx2-qt/Settings/SettingsDialog.h
  64. 4
      pcsx2-qt/Settings/SettingsDialog.ui
  65. 156
      pcsx2-qt/Settings/SystemSettingsWidget.cpp
  66. 347
      pcsx2-qt/Settings/SystemSettingsWidget.ui
  67. 128
      pcsx2-qt/Tools/InputRecording/InputRecordingViewer.cpp
  68. 26
      pcsx2-qt/Tools/InputRecording/InputRecordingViewer.h
  69. 74
      pcsx2-qt/Tools/InputRecording/InputRecordingViewer.ui
  70. 22
      pcsx2-qt/pcsx2-qt.vcxproj
  71. 32
      pcsx2-qt/pcsx2-qt.vcxproj.filters
  72. 2
      pcsx2-qt/resources/icons/black/svg/checkbox-multiple-blank-line.svg
  73. 2
      pcsx2-qt/resources/icons/black/svg/filter-line.svg
  74. 2
      pcsx2-qt/resources/icons/white/index.theme
  75. 2
      pcsx2-qt/resources/icons/white/svg/arrow-left-right-line.svg
  76. 2
      pcsx2-qt/resources/icons/white/svg/checkbox-multiple-blank-line.svg
  77. 2
      pcsx2-qt/resources/icons/white/svg/filter-line.svg
  78. 2
      pcsx2-qt/resources/icons/white/svg/flashlight-line.svg
  79. 2
      pcsx2-qt/resources/icons/white/svg/global-line.svg
  80. 2
      pcsx2-qt/resources/icons/white/svg/image-fill.svg
  81. 2
      pcsx2-qt/resources/icons/white/svg/price-tag-3-line.svg
  82. 32
      pcsx2/CDVD/CDVD.cpp
  83. 5
      pcsx2/CDVD/CDVDdiscReader.h
  84. 46
      pcsx2/CMakeLists.txt
  85. 5
      pcsx2/Config.h
  86. 16
      pcsx2/Counters.cpp
  87. 3
      pcsx2/DEV9/DEV9.cpp
  88. 2
      pcsx2/DEV9/DEV9.h
  89. 5
      pcsx2/DEV9/Win32/tap-win32.cpp
  90. 8
      pcsx2/DEV9/pcap_io.cpp
  91. 2
      pcsx2/Docs/.gitignore
  92. 2
      pcsx2/Docs/GameIndex.md
  93. 1
      pcsx2/Docs/License.txt
  94. 2
      pcsx2/Docs/PCSX2_FAQ.md
  95. 2
      pcsx2/Docs/README.md
  96. 4
      pcsx2/Frontend/CommonHotkeys.cpp
  97. 10
      pcsx2/Frontend/D3D11HostDisplay.cpp
  98. 8
      pcsx2/Frontend/D3D12HostDisplay.cpp
  99. 245
      pcsx2/Frontend/FullscreenUI.cpp
  100. 24
      pcsx2/Frontend/ImGuiFullscreen.cpp
  101. Some files were not shown because too many files have changed in this diff Show More

@ -1,3 +1,5 @@
---
exclude_paths:
- '3rdparty/**'
- '*.md'
- '**/*.md'

@ -28,7 +28,7 @@ The following is a list of *general* style recommendations that will make review
* Looking at the project's commit history will help with keeping prefixes consistent overtime, *there is no strictly enforced list*.
* Try to keep messages brief and informative
* Remove unnecessary commits and squash commits together when appropriate.
* If you are not familiar with rebasing with git, check out the following resources:
* CLI - https://thoughtbot.com/blog/git-interactive-rebase-squash-amend-rewriting-history

@ -12,7 +12,6 @@
- 'cmake/**/*'
- 'CMakeLists.txt'
- '**/CMakeLists.txt'
- 'buildbot.xml'
- 'build.sh'
'Dependencies':
- '3rdparty/*'

@ -45,7 +45,7 @@ jobs:
CCACHE_COMPRESS: true
CCACHE_COMPRESSLEVEL: 9
CCACHE_MAXSIZE: 100M
SDL: SDL2-2.24.0
SDL: SDL2-2.26.0
PATCHELF_VERSION: 0.12
steps:

@ -1,4 +1,4 @@
#!/bin/sh
cd "$(dirname "$0")"
exec ./usr/bin/pcsx2-qt "$@"
APPDIR=$(dirname "$0")
exec "$APPDIR/usr/bin/pcsx2-qt" "$@"

@ -203,7 +203,7 @@ mkdir "$OUTDIR"
mkdir -p "$OUTDIR/usr/bin" "$OUTDIR/usr/lib" "$OUTDIR/usr/lib/pulseaudio"
echo "Copying binary and resources..."
cp -a "$BINDIR/$BINARY" "$BINDIR/resources" "$BINDIR/shaders" "$OUTDIR/usr/bin"
cp -a "$BINDIR/$BINARY" "$BINDIR/resources" "$OUTDIR/usr/bin"
# Don't need old wx locales.
rm -fr "$OUTDIR/usr/bin/resources/locale"

@ -23,7 +23,7 @@ sudo cp /usr/local/bin/patchelf /tmp/squashfs-root/usr/bin/patchelf
cd "$GITHUB_WORKSPACE"
ninja -C build install
cp ./pcsx2/gui/Resources/AppIcon64.png ./squashfs-root/PCSX2.png
cp ./linux_various/PCSX2.desktop.in ./squashfs-root/PCSX2.desktop
cp ./linux_various/PCSX2.desktop.in ./squashfs-root/PCSX2.desktop
sed -i -e 's|Categories=@PCSX2_MENU_CATEGORIES@|Categories=Game;Emulator;|g' ./squashfs-root/PCSX2.desktop
sed -i -e 's|__GL_THREADED_OPTIMIZATIONS=1|__GL_THREADED_OPTIMIZATIONS=0|g' ./squashfs-root/PCSX2.desktop
curl -sSfL "https://github.com/AppImage/AppImageKit/releases/download/continuous/runtime-$APPARCH" -o ./squashfs-root/runtime

@ -4,14 +4,14 @@ set -e
INSTALLDIR="$HOME/deps"
NPROCS="$(getconf _NPROCESSORS_ONLN)"
SDL=SDL2-2.24.0
SDL=SDL2-2.26.0
QT=6.3.1
mkdir -p deps-build
cd deps-build
cat > SHASUMS <<EOF
91e4c34b1768f92d399b078e171448c6af18cafda743987ed2064a28954d6d97 $SDL.tar.gz
8000d7169febce93c84b6bdf376631f8179132fd69f7015d4dadb8b9c2bdb295 $SDL.tar.gz
0a64421d9c2469c2c48490a032ab91d547017c9cc171f3f8070bc31888f24e03 qtbase-everywhere-src-$QT.tar.xz
7b19f418e6f7b8e23344082dd04440aacf5da23c5a73980ba22ae4eba4f87df7 qtsvg-everywhere-src-$QT.tar.xz
c412750f2aa3beb93fce5f30517c607f55daaeb7d0407af206a8adf917e126c1 qttools-everywhere-src-$QT.tar.xz

@ -9,7 +9,7 @@ else
fi
INSTALLDIR="$HOME/deps"
NPROCS="$(getconf _NPROCESSORS_ONLN)"
SDL=SDL2-2.24.0
SDL=SDL2-2.26.0
PNG=1.6.37
JPG=9e
SOUNDTOUCH=soundtouch-2.3.1
@ -26,7 +26,7 @@ export CFLAGS="-I$INSTALLDIR/include -Os $CFLAGS"
export CXXFLAGS="-I$INSTALLDIR/include -Os $CXXFLAGS"
cat > SHASUMS <<EOF
91e4c34b1768f92d399b078e171448c6af18cafda743987ed2064a28954d6d97 $SDL.tar.gz
8000d7169febce93c84b6bdf376631f8179132fd69f7015d4dadb8b9c2bdb295 $SDL.tar.gz
505e70834d35383537b6491e7ae8641f1a4bed1876dbfe361201fc80868d88ca libpng-$PNG.tar.xz
4077d6a6a75aeb01884f708919d25934c93305e49f7e3f36db9129320e6f4f3d jpegsrc.v$JPG.tar.gz
6900996607258496ce126924a19fe9d598af9d892cf3f33d1e4daaa9b42ae0b1 $SOUNDTOUCH.tar.gz

2
3rdparty/sdl2/SDL vendored

@ -1 +1 @@
Subproject commit 8c9beb0c873f6ca5efbd88f1ad2648bfc793b2ac
Subproject commit 0bfeed061b10ea7dd37c88d9bae1824bad760f3a

@ -158,6 +158,7 @@
<ClInclude Include="SDL\src\hidapi\SDL_hidapi_c.h" />
<ClInclude Include="SDL\src\joystick\controller_type.h" />
<ClInclude Include="SDL\src\joystick\hidapi\SDL_hidapijoystick_c.h" />
<ClInclude Include="SDL\src\joystick\hidapi\SDL_hidapi_nintendo.h" />
<ClInclude Include="SDL\src\joystick\hidapi\SDL_hidapi_rumble.h" />
<ClInclude Include="SDL\src\joystick\SDL_gamecontrollerdb.h" />
<ClInclude Include="SDL\src\joystick\SDL_joystick_c.h" />
@ -289,12 +290,15 @@
<ClCompile Include="SDL\src\joystick\hidapi\SDL_hidapi_combined.c" />
<ClCompile Include="SDL\src\joystick\hidapi\SDL_hidapi_gamecube.c" />
<ClCompile Include="SDL\src\joystick\hidapi\SDL_hidapi_luna.c" />
<ClCompile Include="SDL\src\joystick\hidapi\SDL_hidapi_ps3.c" />
<ClCompile Include="SDL\src\joystick\hidapi\SDL_hidapi_ps4.c" />
<ClCompile Include="SDL\src\joystick\hidapi\SDL_hidapi_ps5.c" />
<ClCompile Include="SDL\src\joystick\hidapi\SDL_hidapi_rumble.c" />
<ClCompile Include="SDL\src\joystick\hidapi\SDL_hidapi_shield.c" />
<ClCompile Include="SDL\src\joystick\hidapi\SDL_hidapi_stadia.c" />
<ClCompile Include="SDL\src\joystick\hidapi\SDL_hidapi_steam.c" />
<ClCompile Include="SDL\src\joystick\hidapi\SDL_hidapi_switch.c" />
<ClCompile Include="SDL\src\joystick\hidapi\SDL_hidapi_wii.c" />
<ClCompile Include="SDL\src\joystick\hidapi\SDL_hidapi_xbox360.c" />
<ClCompile Include="SDL\src\joystick\hidapi\SDL_hidapi_xbox360w.c" />
<ClCompile Include="SDL\src\joystick\hidapi\SDL_hidapi_xboxone.c" />

@ -542,6 +542,9 @@
<ClInclude Include="SDL\src\joystick\hidapi\SDL_hidapijoystick_c.h">
<Filter>joystick\hidapi</Filter>
</ClInclude>
<ClInclude Include="SDL\src\joystick\hidapi\SDL_hidapi_nintendo.h">
<Filter>joystick\hidapi</Filter>
</ClInclude>
<ClInclude Include="SDL\src\joystick\hidapi\SDL_hidapi_rumble.h">
<Filter>joystick\hidapi</Filter>
</ClInclude>
@ -966,6 +969,9 @@
<ClCompile Include="SDL\src\joystick\hidapi\SDL_hidapi_luna.c">
<Filter>joystick\hidapi</Filter>
</ClCompile>
<ClCompile Include="SDL\src\joystick\hidapi\SDL_hidapi_ps3.c">
<Filter>joystick\hidapi</Filter>
</ClCompile>
<ClCompile Include="SDL\src\joystick\hidapi\SDL_hidapi_ps4.c">
<Filter>joystick\hidapi</Filter>
</ClCompile>
@ -978,9 +984,15 @@
<ClCompile Include="SDL\src\joystick\hidapi\SDL_hidapi_stadia.c">
<Filter>joystick\hidapi</Filter>
</ClCompile>
<ClCompile Include="SDL\src\joystick\hidapi\SDL_hidapi_steam.c">
<Filter>joystick\hidapi</Filter>
</ClCompile>
<ClCompile Include="SDL\src\joystick\hidapi\SDL_hidapi_switch.c">
<Filter>joystick\hidapi</Filter>
</ClCompile>
<ClCompile Include="SDL\src\joystick\hidapi\SDL_hidapi_wii.c">
<Filter>joystick\hidapi</Filter>
</ClCompile>
<ClCompile Include="SDL\src\joystick\hidapi\SDL_hidapi_xbox360.c">
<Filter>joystick\hidapi</Filter>
</ClCompile>

@ -9,7 +9,7 @@
# best to completely avoid them at this file. GS uses:
# F5 - Deinterlace modes
# PAGE_UP - FXAA antialiasing (HW and SW)
# PAGE_DOWN - Cycles through dither modes (HW)
# PAGE_DOWN - Cycles through dither modes (HW)
# DELETE - Software Antialiasing (AA1)
# HOME - FX shader
# INSERT - Hardware mipmapping

File diff suppressed because one or more lines are too long

@ -2,57 +2,57 @@
โ€ ---------------------โ€ 
Disassembly view:
โ€ ---------------------โ€ 
Ctrl + G Goto
Ctrl + E Edit Breakpoint
Ctrl + D Enable/disable breakpoint
Ctrl + B Add breakpoint
Left Go back one branch level/goto pc
Right Follow branch/position memory view to accessed address
Up Move cursor up one line
Down Move cursor down one line
Page Up Move visible area up one page
Page Down Move visible area down one page
F10 Step over
F11 Step into
Tab Toggle display symbols
Left Click Select line/toggle breakpoint if line is already highlighted
Right Click Open context menu
Ctrl + G Goto
Ctrl + E Edit Breakpoint
Ctrl + D Enable/disable breakpoint
Ctrl + B Add breakpoint
Left Go back one branch level/goto pc
Right Follow branch/position memory view to accessed address
Up Move cursor up one line
Down Move cursor down one line
Page Up Move visible area up one page
Page Down Move visible area down one page
F10 Step over
F11 Step into
Tab Toggle display symbols
Left Click Select line/toggle breakpoint if line is already highlighted
Right Click Open context menu
โ€ ---------------------โ€ 
Memory View:
โ€ ---------------------โ€ 
Ctrl + G Goto
Ctrl + B Add breakpoint
Left Move cursor back one byte/nibble
Right Move cursor ahead one byte/nibble
Up Move cursor up one line
Down Move cursor down one line
Page Up Move cursor up one page
Page Down Move cursor down one page
0-9,A-F Overwrite hex nibble
Any Overwrite ansi byte
Left Click Select byte/nibble
Right Click Open context menu
Ctrl+Wheel Zoom memory view
Esc Return to previous goto address
Ctrl+V Paste a hex string into memory
Ctrl + G Goto
Ctrl + B Add breakpoint
Left Move cursor back one byte/nibble
Right Move cursor ahead one byte/nibble
Up Move cursor up one line
Down Move cursor down one line
Page Up Move cursor up one page
Page Down Move cursor down one page
0-9,A-F Overwrite hex nibble
Any Overwrite ansi byte
Left Click Select byte/nibble
Right Click Open context menu
Ctrl+Wheel Zoom memory view
Esc Return to previous goto address
Ctrl+V Paste a hex string into memory
โ€ ---------------------โ€ 
Breakpoint List:
โ€ ---------------------โ€ 
Up Select previous item
Down Select next item
Delete Remove selected breakpoint
Return Edit selected breakpoint
Space Toggle enable state of selected breakpoint
Up Select previous item
Down Select next item
Delete Remove selected breakpoint
Return Edit selected breakpoint
Space Toggle enable state of selected breakpoint
โ€ ---------------------โ€ 
โ€ ---------------------โ€ 

@ -4056,6 +4056,8 @@ SCES-53931:
name: "Shinobido - Way of the Ninja"
region: "PAL-M5"
compat: 5
clampModes:
eeClampMode: 3 # Fixes hang going in to the gardens.
SCES-53950:
name: "F1 '06"
region: "PAL-M7"
@ -5120,7 +5122,7 @@ SCKA-20072:
region: "NTSC-K"
SCKA-20073:
name: "Final Fantasy XII"
region: "NTSC-J"
region: "NTSC-K"
SCKA-20078:
name: "Killzone [PlayStation 2 Big Hit Series]"
region: "NTSC-K"
@ -17622,8 +17624,6 @@ SLES-53702:
name: "Resident Evil 4"
region: "PAL-M5"
compat: 5
gameFixes:
- BlitInternalFPSHack # Fixes internal FPS detection.
gsHWFixes:
halfPixelOffset: 2 # Fixes blurriness.
SLES-53703:
@ -17824,8 +17824,6 @@ SLES-53755:
SLES-53756:
name: "Resident Evil 4"
region: "PAL-M5"
gameFixes:
- BlitInternalFPSHack # Fixes internal FPS detection.
gsHWFixes:
halfPixelOffset: 2 # Fixes blurriness.
SLES-53758:
@ -20269,21 +20267,29 @@ SLES-54778:
region: "PAL-E"
gsHWFixes:
mipmap: 1
halfPixelOffset: 1 # Fixes ghosting.
alignSprite: 1 # Fixes vertical lines.
SLES-54779:
name: "Harry Potter and the Order of the Phoenix"
region: "PAL-M5"
gsHWFixes:
mipmap: 1
halfPixelOffset: 1 # Fixes ghosting.
alignSprite: 1 # Fixes vertical lines.
SLES-54780:
name: "Harry Potter and the Order of the Phoenix"
region: "PAL-M6"
gsHWFixes:
mipmap: 1
halfPixelOffset: 1 # Fixes ghosting.
alignSprite: 1 # Fixes vertical lines.
SLES-54781:
name: "Harry Potter and the Order of the Phoenix"
region: "PAL-M5"
gsHWFixes:
mipmap: 1
halfPixelOffset: 1 # Fixes ghosting.
alignSprite: 1 # Fixes vertical lines.
SLES-54782:
name: "Obscure 2"
region: "PAL-M5"
@ -22659,7 +22665,7 @@ SLKA-25013:
- "SLKA-25012"
SLKA-25014:
name: "Evolution Snowboarding"
region: "NTSC-J"
region: "NTSC-K"
SLKA-25015:
name: "Evolution Skateboarding"
region: "NTSC-K"
@ -22668,10 +22674,10 @@ SLKA-25018:
region: "NTSC-K"
SLKA-25021:
name: "Shinobi"
region: "NTSC-M3"
region: "NTSC-K"
compat: 5
SLKA-25024:
name: "Disneys Stitch - Experiment 626"
name: "Disney's Stitch - Experiment 626"
region: "NTSC-K"
SLKA-25026:
name: "Chaos Legion"
@ -22817,7 +22823,7 @@ SLKA-25067:
region: "NTSC-K"
SLKA-25070:
name: "Guilty Gear XX Reload - The Midnight Carnival"
region: "NTSC-J-K"
region: "NTSC-K"
SLKA-25071:
name: "Tantei Jinguji Saburo 8 Innocent Black"
region: "NTSC-K"
@ -22876,7 +22882,7 @@ SLKA-25086:
vuClampMode: 2 # Missing geometry with microVU.
SLKA-25087:
name: "FIFA Soccer 2004"
region: "NTSC-J"
region: "NTSC-K"
compat: 5
clampModes:
vuClampMode: 2 # Missing geometry with microVU.
@ -23340,7 +23346,7 @@ SLKA-25262:
region: "NTSC-K"
SLKA-25263:
name: "NanoBreaker"
region: "NTSC-J"
region: "NTSC-K"
compat: 5
SLKA-25264:
name: "Full Spectrum Warrior"
@ -27255,7 +27261,7 @@ SLPM-65139:
region: "NTSC-J"
compat: 5
SLPM-65140:
name: "Jojo's Bizarre Adventure 5"
name: "Jojo no Kimyou na Bouken - Ougon no Kaze"
region: "NTSC-J"
SLPM-65141:
name: "Tsuzuse Gareijiri"
@ -30459,6 +30465,8 @@ SLPM-66091:
name: "Shinobido Imashime"
region: "NTSC-J"
compat: 5
clampModes:
eeClampMode: 3 # Fixes hang going in to the gardens.
SLPM-66092:
name: "Taito Memories Gekan"
region: "NTSC-J"
@ -32194,6 +32202,8 @@ SLPM-66555:
SLPM-66556:
name: "Shinobido Imashime [Spike The Best]"
region: "NTSC-J"
clampModes:
eeClampMode: 3 # Fixes hang going in to the gardens.
SLPM-66557:
name: "FIFA Street [EA Best Hits]"
region: "NTSC-J"
@ -33417,6 +33427,8 @@ SLPM-66886:
region: "NTSC-J"
gsHWFixes:
mipmap: 1
halfPixelOffset: 1 # Fixes ghosting.
alignSprite: 1 # Fixes vertical lines.
SLPM-66887:
name: "Harukanaru Jikuu no Kade 3 - Unmei no Meikyuu [Koei the Best]"
region: "NTSC-J"
@ -36914,6 +36926,8 @@ SLPS-25352:
name: "Espgaluda"
region: "NTSC-J"
compat: 5
gsHWFixes:
texturePreloading: 1 # Performs much better with partial preload.
SLPS-25353:
name: "Xenosaga Freaks"
region: "NTSC-J"
@ -44398,6 +44412,8 @@ SLUS-21035:
region: "NTSC-U"
clampModes:
eeClampMode: 2 # Fixes hang when the baseball hits the ground.
gsHWFixes:
texturePreloading: 1 # Performs much better and stops freezing and or stuttering.
patches:
2243CE1D:
content: |-
@ -45915,6 +45931,8 @@ SLUS-21324:
region: "NTSC-U"
clampModes:
eeClampMode: 2 # Fixes hang when the baseball hits the ground.
gsHWFixes:
texturePreloading: 1 # Performs much better and stops freezing and or stuttering.
patches:
D592B291:
content: |-
@ -47354,6 +47372,8 @@ SLUS-21619:
compat: 5
gsHWFixes:
mipmap: 1
halfPixelOffset: 1 # Fixes ghosting.
alignSprite: 1 # Fixes vertical lines.
SLUS-21620:
name: "NCAA Football '08"
region: "NTSC-U"

@ -67,8 +67,8 @@
03000000c82d00000160000000000000,8BitDo SN30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Windows,
03000000c82d00000161000000000000,8BitDo SN30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Windows,
03000000c82d00000121000000000000,8BitDo SN30 Pro for Android,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:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
03000000c82d00000260000000000000,8BitDo SN30 Pro+,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Windows,
03000000c82d00000261000000000000,8BitDo SN30 Pro+,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Windows,
03000000c82d00000260000000000000,8BitDo SN30 Pro Plus,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Windows,
03000000c82d00000261000000000000,8BitDo SN30 Pro Plus,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Windows,
03000000c82d00001130000000000000,8BitDo Ultimate Wired,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:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
03000000c82d00001230000000000000,8BitDo Ultimate Wireless,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:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
03000000c82d00001330000000000000,8BitDo Ultimate Wireless,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:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
@ -795,8 +795,8 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
03000000c82d00004028000000010000,8BitDo SN30,a:b1,b:b0,back:b10,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b6,rightshoulder:b7,start:b11,x:b4,y:b3,platform:Mac OS X,
03000000c82d00000160000001000000,8BitDo SN30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a5,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Mac OS X,
03000000c82d00000161000000010000,8BitDo SN30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a5,start:b11,x:b4,y:b3,platform:Mac OS X,
03000000c82d00000260000001000000,8BitDo SN30 Pro+,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Mac OS X,
03000000c82d00000261000000010000,8BitDo SN30 Pro+,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Mac OS X,
03000000c82d00000260000001000000,8BitDo SN30 Pro Plus,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Mac OS X,
03000000c82d00000261000000010000,8BitDo SN30 Pro Plus,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Mac OS X,
03000000c82d00001130000000020000,8BitDo Ultimate Wired,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:Mac OS X,
03000000c82d00001330000001000000,8BitDo Ultimate Wireless,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:Mac OS X,
03000000a00500003232000008010000,8BitDo Zero,a:b0,b:b1,back:b10,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b6,rightshoulder:b7,start:b11,x:b3,y:b4,platform:Mac OS X,
@ -866,9 +866,9 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
030000006d0400001fc2000000000000,Logitech F710,a:b0,b:b1,back:b9,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b10,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b8,x:b2,y:b3,platform:Mac OS X,
030000006d04000018c2000000010000,Logitech RumblePad 2,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1~,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3~,start:b9,x:b0,y:b3,platform:Mac OS X,
03000000380700005032000000010000,Mad Catz PS3 Fightpad Pro,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:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
03000000380700008433000000010000,Mad Catz PS3 Fightstick TE S+,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:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
03000000380700008433000000010000,Mad Catz PS3 Fightstick TE S Plus,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:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
03000000380700005082000000010000,Mad Catz PS4 Fightpad Pro,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,x:b0,y:b3,platform:Mac OS X,
03000000380700008483000000010000,Mad Catz PS4 Fightstick TE S+,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,x:b0,y:b3,platform:Mac OS X,
03000000380700008483000000010000,Mad Catz PS4 Fightstick TE S Plus,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,x:b0,y:b3,platform:Mac OS X,
03000000790000000600000007010000,Marvo GT-004,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Mac OS X,
030000008f0e00001330000011010000,Mayflash Controller Adapter,a:b2,b:b4,back:b16,dpdown:h0.8,dpleft:h0.2,dpright:h0.1,dpup:h0.4,leftshoulder:b12,lefttrigger:b16,leftx:a0,lefty:a2,rightshoulder:b14,rightx:a6~,righty:a4,start:b18,x:b0,y:b6,platform:Mac OS X,
03000000790000004318000000010000,Mayflash GameCube Adapter,a:b4,b:b0,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,lefttrigger:a12,leftx:a0,lefty:a4,rightshoulder:b28,righttrigger:a16,rightx:a20,righty:a8,start:b36,x:b8,y:b12,platform:Mac OS X,
@ -949,7 +949,6 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
03000000381000002014000001000000,SteelSeries Nimbus,a:b0,b:b1,dpdown:b9,dpleft:b11,dpright:b10,dpup:b8,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1~,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3~,x:b2,y:b3,platform:Mac OS X,
05000000484944204465766963650000,SteelSeries Nimbus Plus,a:b0,b:b1,back:b15,dpdown:b11,dpleft:b13,dpright:b12,dpup:b10,guide:b16,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1~,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a2,righty:a3~,start:b14,x:b2,y:b3,platform:Mac OS X,
050000004e696d6275732b0000000000,SteelSeries Nimbus Plus,a:b0,b:b1,back:b15,dpdown:b11,dpleft:b13,dpright:b12,dpup:b10,guide:b16,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1~,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a2,righty:a3~,start:b14,x:b2,y:b3,platform:Mac OS X,
050000004e696d6275732b008b000000,SteelSeries Nimbus Plus,a:b0,b:b1,back:b15,dpdown:b11,dpleft:b13,dpright:b12,dpup:b10,guide:b16,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1~,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a2,righty:a3~,start:b14,x:b2,y:b3,platform:Mac OS X,
03000000381000003014000000000000,SteelSeries Stratus Duo,a:b0,b:b1,back:b9,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b10,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b8,x:b2,y:b3,platform:Mac OS X,
03000000381000003114000000000000,SteelSeries Stratus Duo,a:b0,b:b1,back:b9,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b10,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b8,x:b2,y:b3,platform:Mac OS X,
03000000110100001714000000000000,SteelSeries Stratus XL,a:b0,b:b1,dpdown:b9,dpleft:b11,dpright:b10,dpup:b8,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1~,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3~,start:b12,x:b2,y:b3,platform:Mac OS X,
@ -1042,8 +1041,9 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
03000000c82d00001290000011010000,8BitDo SN30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b4,y:b3,platform:Linux,
05000000c82d00000161000000010000,8BitDo SN30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Linux,
05000000c82d00006228000000010000,8BitDo SN30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Linux,
03000000c82d00000260000011010000,8BitDo SN30 Pro+,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,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Linux,
05000000c82d00000261000000010000,8BitDo SN30 Pro+,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,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Linux,
03000000c82d00000260000011010000,8BitDo SN30 Pro Plus,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,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Linux,
05000000c82d00000261000000010000,8BitDo SN30 Pro Plus,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,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Linux,
03000000c82d00001030000011010000,8BitDo 8BitDo Pro 2,a:b1,b:b0,x:b4,y:b3,back:b10,guide:b12,start:b11,leftstick:b13,rightstick:b14,leftshoulder:b6,rightshoulder:b7,dpup:h0.1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,leftx:a0,lefty:a1,rightx:a2,righty:a3,lefttrigger:a5,righttrigger:a4,platform:Linux,
05000000202800000900000000010000,8BitDo SNES30,a:b1,b:b0,back:b10,dpdown:b122,dpleft:b119,dpright:b120,dpup:b117,leftshoulder:b6,rightshoulder:b7,start:b11,x:b4,y:b3,platform:Linux,
03000000c82d00001130000011010000,8BitDo Ultimate Wired,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,
03000000c82d00001230000011010000,8BitDo Ultimate Wireless,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,

@ -21,14 +21,14 @@ uniform uvec4 const1;
uniform ivec2 srcOffset;
layout(binding=0) uniform sampler2D imgSrc;
layout(binding=0, rgba8) uniform writeonly image2D imgDst;
layout(binding=0, rgba8) uniform writeonly image2D imgDst;
#define A_GPU 1
#define A_GLSL 1
#include "ffx_a.h"
AF3 CasLoad(ASU2 p)
AF3 CasLoad(ASU2 p)
{
return texelFetch(imgSrc, srcOffset + ivec2(p), 0).rgb;
}

@ -49,7 +49,7 @@ void ps_main3()
{
// We take half the lines from the current frame and stores them in the MAD frame buffer.
// the MAD frame buffer is split in 2 consecutive banks of 2 fields each, the fields in each bank
// are interleaved (top field at even lines and bottom field at odd lines).
// are interleaved (top field at even lines and bottom field at odd lines).
// When the source texture has an odd vres, the first line of bank 1 would be an odd index
// causing the wrong lines to be discarded, so a vertical offset (lofs) is added to the vertical
// position of the destination texture to force the proper field alignment
@ -154,7 +154,7 @@ void ps_main4()
// selecting deinterlacing output
if ((vpos & 1) == field)
{
// output coordinate present on current field

@ -955,7 +955,7 @@ void ps_main()
#if PS_ZCLAMP
gl_FragDepth = min(gl_FragCoord.z, MaxDepthPS);
#endif
#endif
}
#endif

@ -27,7 +27,7 @@ layout(push_constant) uniform const_buffer
};
layout(set=0, binding=0) uniform texture2D imgSrc;
layout(set=0, binding=1, rgba8) uniform writeonly image2D imgDst;
layout(set=0, binding=1, rgba8) uniform writeonly image2D imgDst;
layout(constant_id=0) const int sharpenOnly = 0;
#define A_GPU 1
@ -35,7 +35,7 @@ layout(constant_id=0) const int sharpenOnly = 0;
#include "ffx_a.h"
AF3 CasLoad(ASU2 p)
AF3 CasLoad(ASU2 p)
{
return texelFetch(imgSrc, srcOffset + ivec2(p), 0).rgb;
}

@ -52,7 +52,7 @@ void ps_depth_copy()
void ps_filter_transparency()
{
vec4 c = sample_c(v_tex);
c.a = dot(c.rgb, vec3(0.299, 0.587, 0.114));
o_col0 = c;
@ -339,7 +339,7 @@ void ps_yuv()
void main()
{
o_col0 = vec4(0x7FFFFFFF);
#ifdef ps_stencil_image_init_0
if((127.5f / 255.0f) < sample_c(v_tex).a) // < 0x80 pass (== 0x80 should not pass)
o_col0 = vec4(-1);
@ -351,4 +351,4 @@ void main()
}
#endif
#endif
#endif

@ -71,7 +71,7 @@ void ps_main3()
{
// We take half the lines from the current frame and stores them in the MAD frame buffer.
// the MAD frame buffer is split in 2 consecutive banks of 2 fields each, the fields in each bank
// are interleaved (top field at even lines and bottom field at odd lines).
// are interleaved (top field at even lines and bottom field at odd lines).
// When the source texture has an odd vres, the first line of bank 1 would be an odd index
// causing the wrong lines to be discarded, so a vertical offset (lofs) is added to the vertical
// position of the destination texture to force the proper field alignment

@ -99,7 +99,7 @@ void ps_filter_complex() // triangular
{
const float PI = 3.14159265359f;
vec2 texdim = vec2(textureSize(samp0, 0));
o_col0 = (0.9 - 0.4 * cos(2 * PI * v_tex.y * texdim.y)) * sample_c(vec2(v_tex.x, (floor(v_tex.y * texdim.y) + 0.5) / texdim.y));
}
#endif
@ -360,4 +360,4 @@ void ps_filter_lottes()
#endif
#endif
#endif

@ -97,7 +97,7 @@ layout(location = 0) in VSOutput
vec4 c;
#else
flat vec4 c;
#endif
#endif
} gsIn[];
layout(location = 0) out GSOutput

File diff suppressed because it is too large Load Diff

@ -1,195 +0,0 @@
/*===============================================================================*\
|######################## [GSdx FX Suite v2.40] ########################|
|########################## By Asmodean ##########################|
|| ||
|| This program 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 2 ||
|| of the License, or (at your option) any later version. ||
|| ||
|| This program is distributed in the hope that it will be useful, ||
|| but WITHOUT ANY WARRANTY; without even the implied warranty of ||
|| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ||
|| GNU General Public License for more details. (c)2016 ||
|| ||
|#################################################################################|
\*===============================================================================*/
//#NOTICE: GSdx FX is not compatible with GSdx9. Use GSdx OGL or DX10/11.
/*------------------------------------------------------------------------------
[DEFINITIONS & ON/OFF OPTIONS]
------------------------------------------------------------------------------*/
//--------------------------#[CHOOSE EFFECTS]#--------------------------------\\
//#[ANTIALIASING TECHNIQUES] [1=ON|0=OFF] #READ: For best results: Use gsdx fx antialiasing OR filtering. Not both together.
#define UHQ_FXAA 0 //# High Quality Fast Approximate Anti Aliasing. If GSdx's internal FXAA is also enabled, this equals FXAA2x.[3D]
//#[FS SCALING TECHNIQUES] [1=ON|0=OFF] #READ: For best results: Only enable one type of filtering at one time. Use post antialiasing OR FS filtering, not both.
#define BILINEAR_FILTERING 0 //# Bilinear Fullscreen Texture Filtering. BiLinear filtering - light to medium filtering of textures.[2D]
#define BICUBIC_FILTERING 0 //# Bicubic Fullscreen Texture Filtering. BiCubic filtering - medium to strong filtering of textures.[2D]
#define GAUSSIAN_FILTERING 0 //# Gaussian Fullscreen Texture Filtering. Gaussian filtering - strong to extra strong filtering of textures.[2D]
#define BICUBLIC_SCALER 0 //# Bicubic Interpolation Scaling. Uses BCS on up scaling, and downsampling of games, for smoother scaling.
#define LANCZOS_SCALER 0 //# Lanczos Interpolation Scaling. Uses Lanczos on up scaling, and downsampling of games for smoother scaling.
//#[LIGHTING & COLOUR] [1=ON|0=OFF] #READ: These can all be turned on & off independently of each other. [For High Dynamic Range(HDR) use Bloom & Tonemapping together]
#define BLENDED_BLOOM 1 //# High Quality SP Bloom. Soft lighting with blending techniques, for a natural looking bloom.
#define SCENE_TONEMAPPING 1 //# HDR Scene Tonemapping. Layered component conversion, and applies scene tone mapping.
#define COLOR_CORRECTION 0 //# Component Color Correction. Colorspace conversion, with correction curves, and multiple palette types.
#define CROSS_PROCESSING 0 //# Filmic Cross Processing. Alters the tone of the scene, crossing the game's color set, with another.
#define GAMMA_CORRECTION 0 //# RGB Gamma Correction. Fixed expansion to variable compression gamma correction curve.
#define PIXEL_VIBRANCE 0 //# Pixel Vibrance. Intelligently adjusts pixel vibrance depending on original color saturation.
#define COLOR_GRADING 0 //# Post-Complement Colour Grading. Alters individual colour components on a scene, to enhance selected colour tones.
#define TEXTURE_SHARPEN 0 //# Bicubic Texture Unsharpen Mask. Looks similar to a negative texture LOD bias. Enhances texture fidelity.
#define CURVE_CONTRAST 0 //# S-Curve Scene Contrast Enhancement. Locally adjusts contrast using a four-point cubic bezier spline.
#define CEL_SHADING 0 //# PX Cel Shading. Simulates the look of animation/toon. Typically best suited for animated style games.
#define PAINT_SHADING 0 //# Paint Shading. Creates the effect of a painted scene. Adapted from ENB series, it's pretty performance heavy.
#define COLOR_TEMPERATURE 0 //# White Point Temperature. Changes the temperature of the image from D65 white point reference.
//#[TV EMU TECHNIQUES] [1=ON|0=OFF] #READ: These can all be turned on & off independently of each other. These effects are typically used to simulated older TVs/CRT etc.
#define LOTTES_CRT 0 //# Timothy Lottes CRT emulation effect. Similar to scanlines, but with more control options. Ported by request.
#define SCANLINES 0 //# Scanlines to simulate the look of a CRT TV. Typically suited to sprite games. Note: Works best at Native Res.
#define VIGNETTE 0 //# Darkens the edges of the screen, to make it look more like it was shot with a camera lens.
#define DEBANDING 0 //# Applies a debanding effect, to minimize banding artifacts. Which is usually very prevalent in skyboxes (for example).
#define SP_DITHERING 0 //# Subpixel Dithering to simulate more colors than your monitor can display. Smoothes gradiants, this can reduce color banding.
#define PX_BORDER 0 //# Creates a pixel border, as a workaround for the bright edge that using hardware antialiasing(MSAA) can cause. (Ported by request from SFX).
/*------------------------------------------------------------------------------
[EFFECT CONFIG OPTIONS]
------------------------------------------------------------------------------*/
//##[UHQ_FXAA]
#define FxaaSubpixMax 0.00 //[0.00 to 1.00] Amount of subpixel aliasing removal. Higher values: softer. Lower values: sharper. 0.00: Edge only.
#define FxaaQuality 4 //[1|2|3|4] Overall Fxaa quality preset (pixel coverage). 1: Low, 2: Medium, 3: High, 4: Ultra.
#define FxaaEarlyExit 1 //[0 or 1] Use Fxaa early exit pathing. When enabled: Only luma edge pixels are antialiased. When disabled: the entire scene is antialiased(FSAA).
//##[BILINEAR_FILTERING]
#define FilterStrength 1.00 //[0.10 to 1.50] Bilinear filtering strength. Controls the overall strength of the filtering.
#define OffsetAmount 0.0 //[0.0 to 1.5] Pixel offset amount. If you want to use an st offset, 0.5 is generally recommended. 0.0 is off.
//##[BICUBIC_FILTERING]
#define Interpolation Triangular //[CatMullRom, Bell, BSpline, Triangular, Cubic] Type of interpolation to use. From left to right is lighter<-->stronger filtering.
#define BicubicStrength 0.75 //[0.10 to 1.50] Bicubic filtering strength. Controls the overall strength of the filtering.
#define PixelOffset 0.0 //[0.0 to 1.5] Pixel offset amount. If you want to use an st offset, 0.5 is generally recommended. 0.0 is off.
//##[GAUSSIAN_FILTERING]
#define FilterAmount 1.00 //[0.10 to 1.50] Gaussian filtering strength. Controls the overall strength of the filtering.
#define GaussianSpread 0.75 //[0.50 to 4.00] The filtering spread & offset levels. Controls the sampling spread of the filtering.
//##[BLENDED BLOOM]
#define BloomType BlendGlow //[BlendGlow, BlendAddGlow, BlendAddLight, BlendScreen, BlendLuma, BlendOverlay] The type of blended bloom. Light<->Dark.
#define BloomStrength 0.220 //[0.000 to 1.000] Overall strength of the bloom. You may want to readjust for each blend type.
#define BlendStrength 1.000 //[0.000 to 1.000] Strength of the blending. This is a modifier based on bloom. 1.0 equates to 100% strength.
#define BloomDefocus 2.000 //[1.000 to 4.000] The initial bloom defocus value. Increases the softness of light, bright objects, etc.
#define BloomWidth 3.200 //[1.000 to 8.000] Width of the bloom. Adjusts the width of the spread and soft glow. Scales with BloomStrength.
#define BloomReds 0.040 //[0.000 to 1.000] Red channel correction of the bloom. Raising will increase the bloom of reds.
#define BloomGreens 0.030 //[0.000 to 1.000] Green channel correction of the bloom. Raising will increase the bloom of greens.
#define BloomBlues 0.020 //[0.000 to 1.000] Blue channel correction of the bloom. Raising will increase the bloom of blues.
//##[SCENE TONEMAPPING]
#define TonemapType 1 //[0|1|2|3] The base tone mapping operator. 0 is LDR, 1 is HDR(original), 2 & 3 are Filmic HDR(slight grading).
#define TonemapMask 0 //[0 or 1] Enables an ALU tone masking curve. Produces a nice cinematic look. Suits some games more than others.
#define MaskStrength 0.25 //[0.000 to 1.000] Strength of the tone masking. Higher for a stronger effect. This is a dependency of TonemapMask.
#define ToneAmount 0.300 //[0.050 to 1.000] Tonemap strength (tone correction). Higher for stronger tone mapping, lower for lighter.
#define BlackLevels 0.060 //[0.000 to 1.000] Black level balance (shadow correction). Increase to deepen blacks, lower to lighten them.
#define Exposure 1.000 //[0.100 to 2.000] White correction (brightness). Higher values for more scene exposure, lower for less.
#define Luminance 1.000 //[0.100 to 2.000] Luminance average (luminance correction). Higher values will lower scene luminance average.
#define WhitePoint 1.000 //[0.100 to 2.000] Whitepoint average (wp lum correction). Higher values will lower the maximum scene white point.
//##[COLOR CORRECTION]
#define CorrectionPalette 1 //[1|2|3|4|5] The colorspace palette type. 1: RGB, 2: YXY, 3: XYZ, 4: HSV, 5: YUV. Each one will produce a different combination of shades & hues.
#define ChannelR 1.20 //[0.00 to 8.00] R(1), Y(2), X(3), H(4), Y(5) component channel varies with the colorspace used. Higher values increase correction strength.
#define ChannelG 1.60 //[0.00 to 8.00] G(1), X(2), Y(3), S(4), U(5) component channel varies with the colorspace used. Higher values increase correction strength.
#define ChannelB 1.80 //[0.00 to 8.00] B(1), Y(2), Z(3), V(4), V(5) component channel varies with the colorspace used. Higher values increase correction strength.
#define PaletteStrength 2.00 //[0.00 to 4.00] The interpolated strength ratio between the base color, and the corrected color. Raise to increase saturation.
//##[CROSS PROCESSING]
#define FilmicProcess 1 //[1|2|3] The color conversion type for the cross process. 1: cool, 2: warm, 3: dusk. You can achieve different results with each.
#define RedShift 0.50 //[0.10 to 1.00] Red color component shift of the filmic processing. Alters the red balance of the shift.
#define GreenShift 0.50 //[0.10 to 1.00] Green color component shift of the filmic processing. Alters the green balance of the shift.
#define BlueShift 0.50 //[0.10 to 1.00] Blue color component shift of the filmic processing. Alters the blue balance of the shift.
#define ShiftRatio 0.50 //[0.10 to 2.00] The blending ratio for the base color and the color shift. Higher for a stronger effect.
//##[TEXTURE SHARPEN]
#define SharpenStrength 0.75 //[0.10 to 2.00] Strength of the texture sharpening effect. This is the maximum strength that will be used.
#define SharpenClamp 0.015 //[0.005 to 0.500] Reduces the clamping/limiting on the maximum amount of sharpening each pixel recieves. Raise this to reduce the clamping.
#define SharpenBias 1.20 //[0.50 to 4.00] Sharpening edge bias. Lower values for clean subtle sharpen, and higher values for a deeper textured sharpen.
#define DebugSharpen 0 //[0 or 1] Visualize the sharpening effect. Useful for fine-tuning. Best to disable other effects, to see edge detection clearly.
//##[PIXEL VIBRANCE]
#define Vibrance 0.10 //[-1.00 to 1.00] Overall vibrance strength. Locally adjusts the vibrance of pixels depending on their original saturation.
#define RedVibrance 1.00 //[-8.00 to 8.00] Red channel coefficient of the vibrance strength. Adjusting the vibrance of the red channel independently.
#define GreenVibrance 1.00 //[-8.00 to 8.00] Green channel coefficient of the vibrance strength. Adjusting the vibrance of the green channel independently.
#define BlueVibrance 1.00 //[-8.00 to 8.00] Blue channel coefficient of the vibrance strength. Adjusting the vibrance of the blue channel independently.
//##[COLOR_GRADING]
#define RedGrading 1.20 //[0.00 to 3.00] Red colour grading coefficient. Adjust to influence the red channel coefficients of the grading, and highlight tones.
#define GreenGrading 1.10 //[0.00 to 3.00] Green colour grading coefficient. Adjust to influence the Green channel coefficients of the grading, and highlight tones.
#define BlueGrading 1.10 //[0.00 to 3.00] Blue colour grading coefficient. Adjust to influence the Blue channel coefficients of the grading, and highlight tones.
#define GradingStrength 0.25 //[0.00 to 1.00] The overall max strength of the colour grading effect. Raise to increase, lower to decrease the amount.
#define Correlation 1.00 //[0.10 to 1.00] Correlation between the base colour, and the grading influence. Lower = more of the scene is graded, Higher = less of the scene is graded.
//##[COLOR TEMPERATURE]
#define White_Point 6500.0 //[2000.0 to 12000.0] Temperature value given in Kelvin. A typical CRT has a target white point temperature of D93 (9300K)
//##[CEL SHADING]
#define EdgeStrength 1.00 //[0.00 to 4.00] Overall strength of the cel edge outline effect. Affects the overall density. 0.00: no outlines.
#define EdgeFilter 0.75 //[0.10 to 2.00] Filters out fainter cel edges. Use it for balancing the cel edge density. EG: for faces, foliage, etc.
#define EdgeThickness 1.20 //[0.50 to 2.00] Thickness of the cel edges. Increase for thicker outlining. Note: when downsampling, raise this to keep the same thickness.
#define UseYuvLuma 0 //[0 or 1] Uses YUV luma calculations, or base color luma calculations. Yuv luma can produce a better shaded look.
#define ColorRounding 0 //[0 or 1] Uses rounding methods on colors. This can emphasise shaded toon colors. Looks good in some games, and odd in others.
//##[PAINT SHADING]
#define PaintMethod 2 //[1 or 2] The algorithm used for paint effect. 1: water painting, 2: oil painting. You may want to readjust the radius between the two.
#define PaintRadius 4 //[2 to 8] Radius of the painted effect, increasing the radius also requires longer loops, so higher values require more performance.
#define PaintStrength 1.00 //[0.00 to 1.00] The overall interpolated strength of the paint effect. Where 1.0 equates to 100% strength.
//##[CURVE_CONTRAST]
#define CurveType 0 //[0|1|2] Choose what to apply contrast to. 0 = Luma, 1 = Chroma, 2 = both Luma and Chroma. Default is 0 (Luma)
#define CurvesContrast 0.35 //[0.00 to 2.00] The amount of contrast you want. Controls the overall strength of the texture sharpening.
//##[GAMMA_CORRECTION]
#define Gamma 2.20 //[1.5 to 4.0] Gamma correction. Decrease for lower gamma(darker). Increase for higher gamma(brighter). (Default: 2.2)
//##[LOTTES_CRT]
#define MaskingType 1 //[1|2|3|4] The type of CRT shadow masking used. 1: compressed TV style, 2: Aperture-grille, 3: Stretched VGA style, 4: VGA style.
#define CRTSizeX 512.0 //[128 to 2048] A workaround for arbitrary render target scaling. Either set it to a fixed width, or set it to screenSize.x
#define CRTSizeY 448.0 //[128 to 2048] A workaround for arbitrary render target scaling. Either set it to a fixed height, or set it to screenSize.y
#define ScanBrightness -8.00 //[-16.0 to 1.0] The overall brightness of the scanline effect. Lower for darker, higher for brighter.
#define FilterCRTAmount -1.00 //[-4.0 to 1.0] The amount of filtering used, to replicate the TV CRT look. Lower for less, higher for more.
#define HorizontalWarp 0.00 //[0.0 to 0.1] The distortion warping effect for the horizontal (x) axis of the screen. Use small increments.
#define VerticalWarp 0.00 //[0.0 to 0.1] The distortion warping effect for the verticle (y) axis of the screen. Use small increments.
#define MaskAmountDark 0.80 //[0.0 to 1.0] The value of the dark masking line effect used. Lower for darker lower end masking, higher for brighter.
#define MaskAmountLight 1.50 //[0.0 to 2.0] The value of the light masking line effect used. Lower for darker higher end masking, higher for brighter.
#define ResolutionScale 2.00 //[0.1 to 4.0] The scale of the image resolution. Lowering this can give off a nice retro TV look. Raising it can clear up the image.
#define MaskResolutionScale 0.80 //[0.1 to 2.0] The scale of the CRT mask resolution. Use this for balancing the scanline mask scale for difference resolution scaling.
#define UseShadowMask 1 //[0 or 1] Enables, or disables the use of the CRT shadow mask. 0 is disabled, 1 is enabled.
//##[SCANLINES]
#define ScanlineType 0 //[0|1|2] The type & orientation of the scanlines. 0 is x(horizontal), 1 is y(vertical), 2 is both(xy)
#define ScanlineScale 0.50 //[0.20 to 2.00] The scaling & thickness of the scanlines. Changing this can help with PCSX2 IR scaling problems.
#define ScanlineIntensity 0.18 //[0.10 to 1.00] The intensity of the scanlines. Defaults: 0.18 for ScanlineType 0|1|2, 0.50 for ScanlineType 3.
#define ScanlineBrightness 1.02 //[0.50 to 2.00] The brightness of the scanlines. Defaults: 2.00 for ScanlineType 0|1|2, 1.50 for ScanlineType 3.
//##[VIGNETTE]
#define VignetteRatio 1.77 //[0.15 to 6.00] Sets the espect ratio of the vignette. 1.77 for 16:9, 1.60 for 16:10, 1.33 for 4:3, 1.00 for 1:1.
#define VignetteRadius 1.10 //[0.50 to 3.00] Radius of the vignette effect. Lower values for stronger radial effect from center
#define VignetteAmount 0.25 //[0.00 to 1.00] Strength of black edge occlusion. Increase for higher strength, decrease for lower.
#define VignetteSlope 12 //[2|4|8|10|12|16] How far away from the center the vignetting will start.
//##[SUBPIXEL DITHERING]
#define DitherMethod 2 //[1 or 2] 1: Ordered grid dithering(faster), 2: random dithering(higher quality). Hardware dithering is also enabled by default.
#define ShowMethod 0 //[0 or 1] Shows the dithering method, based of the type of dithering selected. Useful for debugging, and confirmation of working order.
//##[DEBANDING]
#define DebandRadius 32.0 //[0.0 to 1024.0] Sampling radius, higher values will reduce further banding but might also reduce details.
#define DebandThreshold 0.017 //[0.000 to 0.100] Threshold, higher values will reduce further banding but might also reduce details and increase noise.
#define DebandSampleCount 4 //[1 to 8] Sample count, higher values are better. But also have a higher performance cost.
#define DebandOffsetMode 3 //[1|2|3] 1 = cross (axis aligned, fast), 2 = diagonal (45 degrees, slower), 3 = box (fully random, slower).
#define DebandDithering 1 //[0|1|2|3] Additional dithering options to smoothen the output. 0 = No dithering 1 = Ordered dithering, 2 = Random dithering, 3 = Iestyn's RGB dither (Valve).
//##[PX_BORDER]
#define BorderWidth float2(2, 2) //[0 to 2048, 0 to 2048] (X,Y)-width of the border. Measured in pixels.
#define BorderColor float3(0, 0, 0) //[0 to 255, 0 to 255, 0 to 255] What color the border should be. In integer RGB colors, meaning 0,0,0 is black and 255,255,255 is full white.
//[END OF USER OPTIONS]

@ -1,73 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="ReleaseAll" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<!-- Add all the solutions here. -->
<ItemGroup>
<SolutionSet Include="$(MSBuildProjectDirectory)\PCSX2_suite.sln" />
<!--SolutionSet Include="$(MSBuildProjectDirectory)\old_plugins.sln" /-->
<ProjectSetCPU Include="$(MSBuildProjectDirectory)\PCSX2_suite.sln" />
</ItemGroup>
<!-- Add common build properties here. -->
<PropertyGroup>
<CreateHardLinksIfPossible>true</CreateHardLinksIfPossible>
<CompileFastPlz>BuildInParallel=True;
CreateHardLinksForCopyFilesToOutputDirectoryIfPossible=$(CreateHardLinksIfPossible);
CreateHardLinksForCopyAdditionalFilesIfPossible=$(CreateHardLinksIfPossible);
CreateHardLinksForCopyLocalIfPossible=$(CreateHardLinksIfPossible);
CreateHardLinksForPublishFilesIfPossible=$(CreateHardLinksIfPossible);
</CompileFastPlz>
</PropertyGroup>
<PropertyGroup>
<RetainDebuggingArtifacts Condition="'$(RetainDebuggingArtifacts)' == ''">false</RetainDebuggingArtifacts>
</PropertyGroup>
<!-- Add all the custom targets here. -->
<Target Name="CleanBloat" AfterTargets="InternalBuild" Condition="'$(RetainDebuggingArtifacts)' == 'false'">
<ItemGroup>
<BloatToDelete Include="$(MSBuildProjectDirectory)\bin\**\*.bsc"/>
<BloatToDelete Include="$(MSBuildProjectDirectory)\bin\**\*.exp"/>
<BloatToDelete Include="$(MSBuildProjectDirectory)\bin\**\*.ilk"/>
<BloatToDelete Include="$(MSBuildProjectDirectory)\bin\**\*.iobj"/>
<BloatToDelete Include="$(MSBuildProjectDirectory)\bin\**\*.ipdb"/>
<BloatToDelete Include="$(MSBuildProjectDirectory)\bin\**\*.lib"/>
<BloatToDelete Include="$(MSBuildProjectDirectory)\bin\**\*.pdb"/>
</ItemGroup>
<Delete Files="@(BloatToDelete)" />
</Target>
<Target Name="CleanCruft">
<ItemGroup>
<CruftToDelete Include="$(MSBuildProjectDirectory)\**\svnrev.h"/>
<CruftToDelete Include="$(MSBuildProjectDirectory)\**\*.CppClean.log" />
</ItemGroup>
<Delete Files="@(CruftToDelete)" />
</Target>
<Target Name="InternalBuild" AfterTargets="DebugAll;DevelAll;ReleaseAll">
<MSBuild Projects="@(SolutionSet)" BuildInParallel="false" Properties="Configuration=$(BaseConfiguration)" Targets="Clean" />
<MSBuild Projects="@(ProjectSetCPU)" BuildInParallel="false" Properties="Configuration=%(ConfigCPU.Identity)" Targets="Clean" />
<CallTarget Targets="CleanCruft" />
<MSBuild Projects="@(SolutionSet)" BuildInParallel="false" Properties="Configuration=$(BaseConfiguration);$(CompileFastPlz)" Targets="Build" />
<MSBuild Projects="@(ProjectSetCPU)" BuildInParallel="true" Properties="Configuration=%(ConfigCPU.Identity);BuildProjectReferences=false;$(CompileFastPlz)" Targets="@(TargetsSetCPU)" />
</Target>
<Target Name="DebugAll">
<PropertyGroup>
<BaseConfiguration>Debug</BaseConfiguration>
</PropertyGroup>
<ItemGroup>
<ConfigCPU Include="Debug AVX2;Debug"/>
</ItemGroup>
</Target>
<Target Name="DevelAll">
<PropertyGroup>
<BaseConfiguration>Devel</BaseConfiguration>
</PropertyGroup>
<ItemGroup>
<ConfigCPU Include="Devel AVX2;Devel"/>
</ItemGroup>
</Target>
<Target Name="ReleaseAll">
<PropertyGroup>
<BaseConfiguration>Release</BaseConfiguration>
</PropertyGroup>
<ItemGroup>
<ConfigCPU Include="Release AVX2;Release"/>
</ItemGroup>
</Target>
</Project>

@ -28,6 +28,11 @@ void* _aligned_malloc(size_t size, size_t align)
#if defined(__USE_ISOC11) && !defined(ASAN_WORKAROUND) // not supported yet on gcc 4.9
return aligned_alloc(align, size);
#else
#ifdef __APPLE__
// MacOS has a bug where posix_memalign is ridiculously slow on unaligned sizes
// This especially bad on M1s for some reason
size = (size + align - 1) & ~(align - 1);
#endif
void* result = 0;
posix_memalign(&result, align, size);
return result;

@ -177,7 +177,7 @@ endif()
if(WIN32)
enable_language(ASM_MASM)
target_sources(common PRIVATE FastJmp.asm)
target_link_libraries(common PUBLIC WIL::WIL D3D12MemAlloc Winmm.lib)
target_link_libraries(common PUBLIC WIL::WIL D3D12MemAlloc winmm)
target_sources(common PRIVATE
CrashHandler.cpp
CrashHandler.h

@ -1065,7 +1065,7 @@ bool FileSystem::StatFile(const char* path, struct stat* st)
return false;
struct _stat64 st64;
if (_wstati64(wpath.c_str(), &st64) != 0)
if (_wstat64(wpath.c_str(), &st64) != 0)
return false;
TranslateStat64(st, st64);
@ -1079,7 +1079,7 @@ bool FileSystem::StatFile(std::FILE* fp, struct stat* st)
return false;
struct _stat64 st64;
if (_fstati64(fd, &st64) != 0)
if (_fstat64(fd, &st64) != 0)
return false;
TranslateStat64(st, st64);
@ -1145,7 +1145,7 @@ bool FileSystem::StatFile(std::FILE* fp, FILESYSTEM_STAT_DATA* sd)
return false;
struct _stat64 st;
if (_fstati64(fd, &st) != 0)
if (_fstat64(fd, &st) != 0)
return false;
// parse attributes

@ -25,12 +25,11 @@
#endif
// We require Windows 10+.
#ifdef _WIN32_WINNT
#undef _WIN32_WINNT
#endif
#define _WIN32_WINNT 0x0A00 // Windows 10
#include <windows.h>
#include <VersionHelpers.h>
#include <ShTypes.h>
#include <timeapi.h>
#include <tchar.h>
#include <Windows.h>
#endif

@ -483,6 +483,7 @@ namespace Vulkan
m_device_features.wideLines = available_features.wideLines;
m_device_features.fragmentStoresAndAtomics = available_features.fragmentStoresAndAtomics;
m_device_features.textureCompressionBC = available_features.textureCompressionBC;
m_device_features.samplerAnisotropy = available_features.samplerAnisotropy;
return true;
}

@ -369,14 +369,14 @@ namespace Vulkan
}
void Texture::UpdateFromBuffer(VkCommandBuffer cmdbuf, u32 level, u32 layer, u32 x, u32 y, u32 width, u32 height,
u32 row_length, VkBuffer buffer, u32 buffer_offset)
u32 buffer_height, u32 row_length, VkBuffer buffer, u32 buffer_offset)
{
const VkImageLayout old_layout = m_layout;
if (old_layout != VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL)
TransitionSubresourcesToLayout(
cmdbuf, level, 1, layer, 1, old_layout, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL);
const VkBufferImageCopy bic = {static_cast<VkDeviceSize>(buffer_offset), row_length, height,
const VkBufferImageCopy bic = {static_cast<VkDeviceSize>(buffer_offset), row_length, buffer_height,
{VK_IMAGE_ASPECT_COLOR_BIT, level, layer, 1u}, {static_cast<int32_t>(x), static_cast<int32_t>(y), 0},
{width, height, 1u}};

@ -72,7 +72,7 @@ namespace Vulkan
VkFramebuffer CreateFramebuffer(VkRenderPass render_pass);
void UpdateFromBuffer(VkCommandBuffer cmdbuf, u32 level, u32 layer, u32 x, u32 y, u32 width, u32 height,
u32 row_length, VkBuffer buffer, u32 buffer_offset);
u32 buffer_height, u32 row_length, VkBuffer buffer, u32 buffer_offset);
private:
u32 m_width = 0;

@ -25,8 +25,8 @@
#include "fmt/core.h"
#include <mmsystem.h>
#pragma comment(lib, "User32.lib")
#include <timeapi.h>
#include <VersionHelpers.h>
alignas(16) static LARGE_INTEGER lfreq;
@ -67,7 +67,7 @@ std::string GetOSVersionString()
if (IsWindows10OrGreater())
{
retval = "Microsoft ";
retval += IsWindowsServer() ? "Windows Server 2016" : "Windows 10";
retval += IsWindowsServer() ? "Windows Server 2016+" : "Windows 10+";
}
else

@ -19,7 +19,9 @@
#include "common/Assertions.h"
#include "common/emitter/tools.h"
#include "common/RedtapeWindows.h"
#include <mmsystem.h>
#include <process.h>
#include <timeapi.h>
__fi void Threading::Sleep(int ms)
{

@ -6,7 +6,7 @@
:: The git.exe program is part of the msysgit installation.
::
:: MsysGit can be downloaded from http://msysgit.github.io/
::
::
:: Usage: preBuild.cmd ProjectSrcDir VspropsDir
::
:: ProjectSrcDir - $(ProjectDir)\.. - Top-level Directory of project source code.

@ -5,10 +5,10 @@ Decriptions of Provided .vsprops Sheets
* plugin_svnroot - Provides a set of semi-standard user macros for plugins that
conform to an expected folder layout. Each user macro can be optionally overridden
by the plugin using its own property sheet, if needed.
See the contents of plugin_svnroot for explanations of the User Macros used by all
other properties sheets lested below.
* 3rdPartyDeps - Adds the /deps folder to the linker search path. Does not add
any actual dependencies. You must add those manually.
@ -20,11 +20,10 @@ Decriptions of Provided .vsprops Sheets
struct alignment, and other settings required for Pcsx2 and its libs to link in
a workable fashion. Adds standard preprocessor defines for:
__WIN32__;WIN32;_WINDOWS;_CRT_SECURE_NO_WARNINGS;_CRT_SECURE_NO_DEPRECATE
* IncrementalLinking - Enables incremental linking, for use in devel/debug modes only.
Incremental linking force-disables Whole Program Optimization, but builds the result
.exe/.dll much quicker usually.
* GlobalLinking - Enables full support for Whole Program Optimization, and force-
disables any conflicting incremental link settings.

@ -51,7 +51,7 @@ then
return 1 # warning exit will kill current terminal
fi
# Allow to ship .so library with the build to avoid version issue
# Allow to ship .so library with the build to avoid version issue
MY_LD_LIBRARY_PATH=${MY_LD_LIBRARY_PATH:+$MY_LD_LIBRARY_PATH:}$DIR/3rdPartyLibs
# openSUSE don't follow FHS !!!!

@ -75,7 +75,7 @@ sub check_c_format {
if ($line =~ /^#:\s*(.*)/) {
my $old_index = $index;
$index = $1; # help for debug
if (scalar(@c_symbol) > 0 and not $is_empty) {
print "$old_index\n";
print "Error: translation miss some c format\n";

@ -14,7 +14,7 @@
# You should have received a copy of the GNU General Public License along with PCSX2.
# If not, see <http://www.gnu.org/licenses/>.
# This basic script convert an jpeg/png image to a .h include file
# This basic script convert an jpeg/png image to a .h include file
# compatible with PCSX2 gui
use File::Basename;

@ -1,64 +0,0 @@
@ECHO OFF
REM PCSX2 - PS2 Emulator for PCs
REM Copyright (C) 2002-2015 PCSX2 Dev Team
REM
REM PCSX2 is free software: you can redistribute it and/or modify it under the terms
REM of the GNU Lesser General Public License as published by the Free Software Found-
REM ation, either version 3 of the License, or (at your option) any later version.
REM
REM PCSX2 is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
REM without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
REM PURPOSE. See the GNU General Public License for more details.<