mirror of
https://github.com/PCSX2/pcsx2.git
synced 2026-01-31 01:15:24 +01:00
Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b12587b44e | ||
|
|
c4708bdc35 | ||
|
|
1fa2c0bf50 | ||
|
|
b4c70d357a | ||
|
|
f18262ee96 |
@@ -3874,6 +3874,8 @@ SCED-52841:
|
||||
speedHacks:
|
||||
mtvu: 0 # Fixes SPS when entering Spain in Jackie's and Jade's character models.
|
||||
instantVU1: 0 # Fixes SPS when entering Spain in Jackie's and Jade's character models.
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
SCED-52846:
|
||||
name: "Killzone [Demo]"
|
||||
region: "PAL-E"
|
||||
@@ -5645,6 +5647,8 @@ SCES-52412:
|
||||
speedHacks:
|
||||
mtvu: 0 # Fixes SPS when entering Spain in Jackie's and Jade's character models.
|
||||
instantVU1: 0 # Fixes SPS when entering Spain in Jackie's and Jade's character models.
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
SCES-52423:
|
||||
name: "Smash Court Tennis - Pro Tournament 2"
|
||||
region: "PAL-M5"
|
||||
@@ -15539,6 +15543,7 @@ SLES-50672:
|
||||
region: "PAL-M5"
|
||||
compat: 5
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
estimateTextureRegion: 1 # Improves performance.
|
||||
roundSprite: 1 # Fixes lines in menus.
|
||||
SLES-50677:
|
||||
@@ -17730,12 +17735,14 @@ SLES-51525:
|
||||
name: "Fallout - Brotherhood of Steel"
|
||||
region: "PAL-M3"
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
estimateTextureRegion: 1 # Improves performance and reduces hash cache size when moving.
|
||||
roundSprite: 1 # Fixes HUD garbage.
|
||||
SLES-51526:
|
||||
name: "Fallout - Brotherhood of Steel"
|
||||
region: "PAL-M3"
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
estimateTextureRegion: 1 # Improves performance and reduces hash cache size when moving.
|
||||
roundSprite: 1 # Fixes HUD garbage.
|
||||
SLES-51547:
|
||||
@@ -19299,6 +19306,7 @@ SLES-52187:
|
||||
region: "PAL-M3"
|
||||
compat: 5
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
roundSprite: 1 # Fixes lines in sprites but still some lines left.
|
||||
estimateTextureRegion: 1 # Improves performance.
|
||||
SLES-52188:
|
||||
@@ -19306,6 +19314,7 @@ SLES-52188:
|
||||
region: "PAL-M3"
|
||||
compat: 5
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
roundSprite: 1 # Fixes lines in sprites but still some lines left.
|
||||
estimateTextureRegion: 1 # Improves performance.
|
||||
SLES-52190:
|
||||
@@ -19625,6 +19634,7 @@ SLES-52325:
|
||||
gameFixes:
|
||||
- BlitInternalFPSHack # Fixes internal fps detection in some areas.
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
estimateTextureRegion: 1 # Improves performance.
|
||||
roundSprite: 1 # Fixes lines in menus HUD and in game.
|
||||
halfPixelOffset: 2 # Fixes edge garbage.
|
||||
@@ -19729,6 +19739,7 @@ SLES-52373:
|
||||
gameFixes:
|
||||
- BlitInternalFPSHack # Fixes internal fps detection in some areas.
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
estimateTextureRegion: 1 # Improves performance.
|
||||
roundSprite: 1 # Fixes lines in menus HUD and in game.
|
||||
halfPixelOffset: 2 # Fixes edge garbage.
|
||||
@@ -21184,6 +21195,8 @@ SLES-52853:
|
||||
name: "Miami Vice"
|
||||
region: "PAL-M6"
|
||||
compat: 5
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
SLES-52854:
|
||||
name: "Capcom Fighting Jam"
|
||||
region: "PAL-E"
|
||||
@@ -21284,6 +21297,7 @@ SLES-52894:
|
||||
name-sort: "Bard's Tale, The"
|
||||
region: "PAL-E"
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
estimateTextureRegion: 1 # Improves performance and reduces hash cache size.
|
||||
SLES-52895:
|
||||
name: "Nickelodeon The SpongeBob SquarePants Movie"
|
||||
@@ -21854,6 +21868,7 @@ SLES-53039:
|
||||
region: "PAL-M4"
|
||||
compat: 5
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
estimateTextureRegion: 1 # Improves performance.
|
||||
roundSprite: 1 # Fixes lines in menus HUD and in game.
|
||||
halfPixelOffset: 2 # Fixes erroneous line in menus.
|
||||
@@ -22176,6 +22191,8 @@ SLES-53149:
|
||||
SLES-53150:
|
||||
name: "10 Pin - Champions Alley"
|
||||
region: "PAL-M6"
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
SLES-53151:
|
||||
name: "Juiced"
|
||||
region: "PAL-I"
|
||||
@@ -22196,6 +22213,7 @@ SLES-53154:
|
||||
name-sort: "Bard's Tale, The"
|
||||
region: "PAL-M8"
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
estimateTextureRegion: 1 # Improves performance and reduces hash cache size.
|
||||
SLES-53155:
|
||||
name: "Star Wars - Episode III - Revenge of the Sith"
|
||||
@@ -22863,6 +22881,8 @@ SLES-53433:
|
||||
SLES-53434:
|
||||
name: "Red Baron"
|
||||
region: "PAL-M3"
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes trees.
|
||||
SLES-53435:
|
||||
name: "SAS Anti-Terror Force"
|
||||
region: "PAL-M3"
|
||||
@@ -26080,6 +26100,7 @@ SLES-54423:
|
||||
name: "Justice League Heroes"
|
||||
region: "PAL-M5"
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
estimateTextureRegion: 1 # Improves performance.
|
||||
clampModes:
|
||||
vuClampMode: 2 # Fixes ingame SPS for the capes.
|
||||
@@ -31422,6 +31443,7 @@ SLKA-25246:
|
||||
name-sort: "Bard's Tale, The"
|
||||
region: "NTSC-K"
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
estimateTextureRegion: 1 # Improves performance and reduces hash cache size.
|
||||
SLKA-25247:
|
||||
name: "Prince of Persia - Warrior Within"
|
||||
@@ -44705,6 +44727,7 @@ SLPM-65845:
|
||||
region: "NTSC-J"
|
||||
compat: 5
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
roundSprite: 1 # Fixes lines in sprites but still some lines left.
|
||||
estimateTextureRegion: 1 # Improves performance.
|
||||
SLPM-65846:
|
||||
@@ -45101,6 +45124,7 @@ SLPM-65915:
|
||||
name-en: "Fallout - Brotherhood of Steel"
|
||||
region: "NTSC-J"
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
estimateTextureRegion: 1 # Improves performance and reduces hash cache size when moving.
|
||||
roundSprite: 1 # Fixes HUD garbage.
|
||||
SLPM-65916:
|
||||
@@ -56482,6 +56506,7 @@ SLPS-25139:
|
||||
region: "NTSC-J"
|
||||
compat: 5
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
estimateTextureRegion: 1 # Improves performance.
|
||||
roundSprite: 1 # Fixes lines in menus.
|
||||
SLPS-25140:
|
||||
@@ -56490,6 +56515,7 @@ SLPS-25140:
|
||||
name-en: "Baldur's Gate - Dark Alliance [Standard Edition]"
|
||||
region: "NTSC-J"
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
estimateTextureRegion: 1 # Improves performance.
|
||||
roundSprite: 1 # Fixes lines in menus.
|
||||
SLPS-25141:
|
||||
@@ -57346,6 +57372,7 @@ SLPS-25291:
|
||||
region: "NTSC-J"
|
||||
compat: 5
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
texturePreloading: 1 # Performs much better with partial preload.
|
||||
estimateTextureRegion: 1 # Improves performance.
|
||||
SLPS-25292:
|
||||
@@ -62666,6 +62693,7 @@ SLUS-20035:
|
||||
gameFixes:
|
||||
- SoftwareRendererFMVHack # Fixes FMVs.
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
estimateTextureRegion: 1 # Improves performance.
|
||||
roundSprite: 1 # Fixes lines in menus.
|
||||
SLUS-20037:
|
||||
@@ -65026,6 +65054,7 @@ SLUS-20539:
|
||||
region: "NTSC-U"
|
||||
compat: 5
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
estimateTextureRegion: 1 # Improves performance and reduces hash cache size when moving.
|
||||
roundSprite: 1 # Fixes HUD garbage.
|
||||
SLUS-20540:
|
||||
@@ -65180,6 +65209,7 @@ SLUS-20565:
|
||||
gameFixes:
|
||||
- BlitInternalFPSHack # Fixes internal fps detection in some areas.
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
estimateTextureRegion: 1 # Improves performance.
|
||||
SLUS-20566:
|
||||
name: "Buffy the Vampire Slayer - Chaos Bleeds"
|
||||
@@ -65775,6 +65805,7 @@ SLUS-20675:
|
||||
gameFixes:
|
||||
- SoftwareRendererFMVHack # Fixes FMVs.
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
roundSprite: 1 # Fixes lines in sprites but still some lines left.
|
||||
estimateTextureRegion: 1 # Improves performance.
|
||||
SLUS-20676:
|
||||
@@ -66472,6 +66503,7 @@ SLUS-20803:
|
||||
region: "NTSC-U"
|
||||
compat: 5
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
estimateTextureRegion: 1 # Improves performance and reduces hash cache size.
|
||||
SLUS-20804:
|
||||
name: "Forgotten Realms - Demon Stone"
|
||||
@@ -67469,6 +67501,7 @@ SLUS-20973:
|
||||
region: "NTSC-U"
|
||||
compat: 5
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
estimateTextureRegion: 1 # Improves performance.
|
||||
roundSprite: 1 # Fixes lines in menus HUD and in game.
|
||||
halfPixelOffset: 2 # Fixes erroneous line in menus.
|
||||
@@ -69179,6 +69212,8 @@ SLUS-21246:
|
||||
SLUS-21247:
|
||||
name: "Jackie Chan Adventures"
|
||||
region: "NTSC-U"
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
SLUS-21248:
|
||||
name: "Legend of Kay"
|
||||
region: "NTSC-U"
|
||||
@@ -69611,6 +69646,7 @@ SLUS-21304:
|
||||
region: "NTSC-U"
|
||||
compat: 5
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
estimateTextureRegion: 1 # Improves performance.
|
||||
clampModes:
|
||||
vuClampMode: 2 # Ingame capes become SPS mess with lower than extra VU clamp.
|
||||
@@ -73723,6 +73759,8 @@ SLUS-29084:
|
||||
SLUS-29085:
|
||||
name: "Champions of Norrath - Realms of EverQuest"
|
||||
region: "NTSC-U"
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
SLUS-29086:
|
||||
name: "FIFA Soccer 2004 [Demo]"
|
||||
region: "NTSC-U"
|
||||
@@ -73743,6 +73781,7 @@ SLUS-29088:
|
||||
gameFixes:
|
||||
- BlitInternalFPSHack # Fixes internal fps detection in some areas.
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
estimateTextureRegion: 1 # Improves performance.
|
||||
SLUS-29089:
|
||||
name: "Resident Evil Outbreak [Public Beta 1.0]"
|
||||
@@ -73867,6 +73906,7 @@ SLUS-29126:
|
||||
region: "NTSC-U"
|
||||
compat: 4
|
||||
gsHWFixes:
|
||||
textureInsideRT: 1 # Fixes half right.
|
||||
estimateTextureRegion: 1 # Improves performance.
|
||||
roundSprite: 1 # Fixes lines in menus HUD and in game.
|
||||
halfPixelOffset: 2 # Fixes erroneous line in menus.
|
||||
|
||||
@@ -154,6 +154,7 @@
|
||||
03000000120c0000f10e000000000000,Brook PS2 Adapter,a:b1,b:b2,back:b13,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,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:Windows,
|
||||
03000000120c0000310c000000000000,Brook Super Converter,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b5,start:b9,x:b3,y:b0,platform:Windows,
|
||||
03000000d81d00000b00000000000000,Buffalo BSGP1601 Series,a:b5,b:b3,back:b12,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b8,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b9,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b13,x:b4,y:b2,platform:Windows,
|
||||
030000005a1c00002400000000000000,Capcom Home Arcade Controller,a:b3,b:b4,back:b7,leftshoulder:b2,leftx:a0,lefty:a1,rightshoulder:b5,start:b6,x:b0,y:b1,platform:Windows,
|
||||
030000005b1c00002400000000000000,Capcom Home Arcade Controller,a:b3,b:b4,back:b7,leftshoulder:b2,leftx:a0,lefty:a1,rightshoulder:b5,start:b6,x:b0,y:b1,platform:Windows,
|
||||
030000005b1c00002500000000000000,Capcom Home Arcade Controller,a:b3,b:b4,back:b7,leftshoulder:b2,leftx:a0,lefty:a1,rightshoulder:b5,start:b6,x:b0,y:b1,platform:Windows,
|
||||
030000006d04000042c2000000000000,ChillStream,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
|
||||
@@ -336,6 +337,7 @@
|
||||
03000000790000004e95000000000000,Hyperkin N64 Controller Adapter,a:b1,b:b2,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b7,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b5,rightx:a5,righty:a2,start:b9,platform:Windows,
|
||||
03000000242e00006a48000000000000,Hyperkin RetroN Sq,a:b3,b:b7,back:b5,dpdown:+a4,dpleft:-a0,dpright:+a0,dpup:-a4,leftshoulder:b0,rightshoulder:b1,start:b4,x:b2,y:b6,platform:Windows,
|
||||
03000000242f00000a20000000000000,Hyperkin Scout,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,rightshoulder:b5,start:b9,x:b2,y:b3,platform:Windows,
|
||||
03000000242e00000a20000000000000,Hyperkin Scout Premium SNES Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,rightshoulder:b5,start:b9,x:b2,y:b3,platform:Windows,
|
||||
03000000242e00006a38000000000000,Hyperkin Trooper 2,a:b0,b:b1,back:b4,leftshoulder:b2,leftx:a0,lefty:a1,rightshoulder:b3,start:b5,platform:Windows,
|
||||
03000000d81d00000e00000000000000,iBuffalo AC02 Arcade Joystick,a:b0,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b2,rightstick:b11,righttrigger:b3,rightx:a2,righty:a5,start:b8,x:b4,y:b5,platform:Windows,
|
||||
03000000d81d00000f00000000000000,iBuffalo BSGP1204 Series,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
|
||||
@@ -418,7 +420,7 @@
|
||||
03000000242f00007300000000000000,Mayflash Magic NS,a:b1,b:b4,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:b8,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b0,y:b3,platform:Windows,
|
||||
0300000079000000d218000000000000,Mayflash Magic NS,a:b2,b:b1,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:b3,y:b0,platform:Windows,
|
||||
03000000d620000010a7000000000000,Mayflash Magic NS,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:Windows,
|
||||
03000000242e0000f500000000000000,Mayflash N64 Adapter,a:b2,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightx:a2,righty:a5,start:b9,platform:Windows,
|
||||
03000000242f0000f500000000000000,Mayflash N64 Adapter,a:b2,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightx:a2,righty:a5,start:b9,platform:Windows,
|
||||
03000000242f0000f400000000000000,Mayflash N64 Controller Adapter,a:b1,b:b2,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightx:a2,righty:a5,start:b9,platform:Windows,
|
||||
03000000790000007918000000000000,Mayflash N64 Controller Adapter,a:b1,b:b2,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b9,leftx:a0,lefty:a1,righttrigger:b7,rightx:a3,righty:a2,start:b8,platform:Windows,
|
||||
030000008f0e00001030000000000000,Mayflash Saturn Adapter,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b5,lefttrigger:b7,rightshoulder:b6,righttrigger:b2,start:b9,x:b3,y:b4,platform:Windows,
|
||||
@@ -484,7 +486,7 @@
|
||||
030000008916000000fd000000000000,Onza TE,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
|
||||
03000000d62000006d57000000000000,OPP PS3 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:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
|
||||
030000006b14000001a1000000000000,Orange Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,leftstick:b6,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a4,rightx:a5,righty:a2,start:b9,x:b2,y:b3,platform:Windows,
|
||||
0300000009120000072f000000000000,OrangeFox86 DreamPicoPort,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,lefttrigger:-a2,leftx:a0,lefty:a1,righttrigger:-a5,start:b11,x:b3,y:b4,platform:Windows,
|
||||
0300000009120000072f000000000000,OrangeFox86 DreamPicoPort,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,lefttrigger:-a2,leftx:a0,lefty:a1,righttrigger:-a5,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
|
||||
03000000362800000100000000000000,OUYA Controller,a:b0,b:b3,dpdown:b9,dpleft:b10,dpright:b11,dpup:b8,guide:b14,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,x:b1,y:b2,platform:Windows,
|
||||
03000000120c0000f60e000000000000,P4 Gamepad,a:b1,b:b2,back:b12,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b5,lefttrigger:b7,rightshoulder:b4,righttrigger:b6,start:b9,x:b0,y:b3,platform:Windows,
|
||||
03000000790000002201000000000000,PC Controller,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:Windows,
|
||||
@@ -691,6 +693,7 @@
|
||||
03000000317300000100000000000000,Sony DualShock 3,a:b0,b:b1,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:a5,start:b11,x:b3,y:b4,platform:Windows,
|
||||
03000000666600006706000000000000,Sony PlayStation Adapter,a:b2,b:b1,back:b8,dpdown:b14,dpleft:b15,dpright:b13,dpup:b12,leftshoulder:b6,leftstick:b9,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b10,righttrigger:b5,rightx:a2,righty:a3,start:b11,x:b3,y:b0,platform:Windows,
|
||||
03000000e30500009605000000000000,Sony PlayStation Adapter,a:b2,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a2,righty:a3,start:b8,x:b3,y:b0,platform:Windows,
|
||||
03000000fe1400002a23000000000000,Sony PlayStation Adapter,a:b0,b:b1,dpdown:b14,dpleft:b15,dpright:b13,dpup:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,x:b2,y:b3,platform:Windows,
|
||||
030000004c050000da0c000000000000,Sony PlayStation Classic Controller,a:b2,b:b1,back:b8,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b6,lefttrigger:b4,rightshoulder:b7,righttrigger:b5,start:b9,x:b3,y:b0,platform:Windows,
|
||||
03000000632500002306000000000000,Sony PlayStation Controller,a:b0,b:b1,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:b3,y:b4,platform:Windows,
|
||||
03000000f0250000c183000000000000,Sony PlayStation 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:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
|
||||
@@ -1008,6 +1011,7 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
|
||||
030000007e0500001720000001000000,NSO SNES Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b15,start:b9,x:b2,y:b3,platform:Mac OS X,
|
||||
03000000550900001472000025050000,NVIDIA Controller,a:b0,b:b1,back:b17,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b15,leftshoulder:b4,leftstick:b7,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b8,righttrigger:a4,rightx:a2,righty:a5,start:b6,x:b2,y:b3,platform:Mac OS X,
|
||||
030000004b120000014d000000010000,Nyko Airflo EX,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,leftstick:b11,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b12,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b2,y:b3,platform:Mac OS X,
|
||||
0300000009120000072f000000010000,OrangeFox86 DreamPicoPort,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,lefttrigger:a2,leftx:a0,lefty:a1,righttrigger:a5,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Mac OS X,
|
||||
030000006f0e00000901000002010000,PDP PS3 Versus Fighting,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Mac OS X,
|
||||
030000008f0e00000300000000000000,Piranha Xtreme PS3 Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a3,righty:a2,start:b9,x:b3,y:b0,platform:Mac OS X,
|
||||
03000000d620000011a7000000020000,PowerA Core Plus Gamecube Controller,a:b1,b:b0,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:b2,y:b3,platform:Mac OS X,
|
||||
|
||||
@@ -3803,6 +3803,9 @@ void GSRendererHW::Draw()
|
||||
const GSVector4 tmin = m_vt.m_min.t;
|
||||
const GSVector4 tmax = m_vt.m_max.t;
|
||||
|
||||
// Backup original coverage.
|
||||
const GSVector4i coverage = tmm.coverage;
|
||||
|
||||
for (int layer = m_lod.x + 1; layer <= m_lod.y; layer++)
|
||||
{
|
||||
const GIFRegTEX0 MIP_TEX0(GetTex0Layer(layer));
|
||||
@@ -3824,6 +3827,9 @@ void GSRendererHW::Draw()
|
||||
src->m_texture->ClearMipmapGenerationFlag();
|
||||
m_vt.m_min.t = tmin;
|
||||
m_vt.m_max.t = tmax;
|
||||
|
||||
// Restore original coverage.
|
||||
tmm.coverage = coverage;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1232,7 +1232,6 @@ GSTextureCache::Source* GSTextureCache::LookupSource(const bool is_color, const
|
||||
}
|
||||
|
||||
Target* dst = nullptr;
|
||||
bool half_right = false;
|
||||
int x_offset = 0;
|
||||
int y_offset = 0;
|
||||
|
||||
@@ -1437,7 +1436,7 @@ GSTextureCache::Source* GSTextureCache::LookupSource(const bool is_color, const
|
||||
|
||||
const u32 channel_mask = GSUtil::GetChannelMask(psm);
|
||||
const u32 channels = t->m_dirty.GetDirtyChannels() & channel_mask;
|
||||
|
||||
const bool dirty_overlap = !t->m_dirty.GetTotalRect(t->m_TEX0, t->m_unscaled_size).rintersect(new_rect).rempty();
|
||||
// If the source is reading the rt, make sure it's big enough.
|
||||
if (!possible_shuffle && t && GSUtil::HasCompatibleBits(psm, t->m_TEX0.PSM)&& real_fmt_match)
|
||||
{
|
||||
@@ -1454,7 +1453,7 @@ GSTextureCache::Source* GSTextureCache::LookupSource(const bool is_color, const
|
||||
ResizeTarget(t, resize_rect, bp, psm, bw);
|
||||
}
|
||||
// If not all channels are clean/dirty or only part of the rect is dirty, we need to update the target.
|
||||
if (((channels & channel_mask) != channel_mask || partial))
|
||||
if (dirty_overlap && ((channels & channel_mask) != channel_mask || partial))
|
||||
{
|
||||
t->Update();
|
||||
rect_clean = true;
|
||||
@@ -1639,22 +1638,6 @@ GSTextureCache::Source* GSTextureCache::LookupSource(const bool is_color, const
|
||||
}
|
||||
}
|
||||
}
|
||||
else if ((t->m_TEX0.TBW >= 16) && GSUtil::HasSharedBits(bp, psm, t->m_TEX0.TBP0 + t->m_TEX0.TBW * 0x10, t->m_TEX0.PSM))
|
||||
{
|
||||
// Detect half of the render target (fix snow engine game)
|
||||
// Target Page (8KB) have always a width of 64 pixels
|
||||
// Half of the Target is TBW/2 pages * 8KB / (1 block * 256B) = 0x10
|
||||
if (!t->HasValidBitsForFormat(psm, req_color, req_alpha, t->m_TEX0.TBW == TEX0.TBW) && !(possible_shuffle && GSLocalMemory::m_psm[psm].bpp == 16 && GSLocalMemory::m_psm[t->m_TEX0.PSM].bpp == 32))
|
||||
continue;
|
||||
|
||||
half_right = true;
|
||||
dst = t;
|
||||
found_t = true;
|
||||
tex_merge_rt = false;
|
||||
x_offset = 0;
|
||||
y_offset = 0;
|
||||
break;
|
||||
}
|
||||
// Make sure the texture actually is INSIDE the RT, it's possibly not valid if it isn't.
|
||||
// Also check BP >= TBP, create source isn't equpped to expand it backwards and all data comes from the target. (GH3)
|
||||
else if (GSConfig.UserHacks_TextureInsideRt >= GSTextureInRtMode::InsideTargets &&
|
||||
@@ -2003,9 +1986,8 @@ GSTextureCache::Source* GSTextureCache::LookupSource(const bool is_color, const
|
||||
#ifdef ENABLE_OGL_DEBUG
|
||||
if (dst)
|
||||
{
|
||||
GL_CACHE("TC: dst %s hit (%s, OFF <%d,%d>): (0x%x, %s)",
|
||||
GL_CACHE("TC: dst %s hit (OFF <%d,%d>): (0x%x, %s)",
|
||||
to_string(dst->m_type),
|
||||
half_right ? "half" : "full",
|
||||
x_offset,
|
||||
y_offset,
|
||||
TEX0.TBP0,
|
||||
@@ -2017,7 +1999,7 @@ GSTextureCache::Source* GSTextureCache::LookupSource(const bool is_color, const
|
||||
}
|
||||
#endif
|
||||
|
||||
src = CreateSource(TEX0, TEXA, dst, half_right, x_offset, y_offset, lod, &r, gpu_clut, region);
|
||||
src = CreateSource(TEX0, TEXA, dst, x_offset, y_offset, lod, &r, gpu_clut, region);
|
||||
if (!src) [[unlikely]]
|
||||
return nullptr;
|
||||
}
|
||||
@@ -5366,7 +5348,7 @@ void GSTextureCache::IncAge()
|
||||
}
|
||||
|
||||
//Fixme: Several issues in here. Not handling depth stencil, pitch conversion doesnt work.
|
||||
GSTextureCache::Source* GSTextureCache::CreateSource(const GIFRegTEX0& TEX0, const GIFRegTEXA& TEXA, Target* dst, bool half_right, int x_offset, int y_offset, const GSVector2i* lod, const GSVector4i* src_range, GSTexture* gpu_clut, SourceRegion region)
|
||||
GSTextureCache::Source* GSTextureCache::CreateSource(const GIFRegTEX0& TEX0, const GIFRegTEXA& TEXA, Target* dst, int x_offset, int y_offset, const GSVector2i* lod, const GSVector4i* src_range, GSTexture* gpu_clut, SourceRegion region)
|
||||
{
|
||||
const GSLocalMemory::psm_t& psm = GSLocalMemory::m_psm[TEX0.PSM];
|
||||
Source* src = new Source(TEX0, TEXA);
|
||||
@@ -5404,7 +5386,10 @@ GSTextureCache::Source* GSTextureCache::CreateSource(const GIFRegTEX0& TEX0, con
|
||||
const int w = static_cast<int>(std::ceil(scale * tw));
|
||||
const int h = static_cast<int>(std::ceil(scale * th));
|
||||
|
||||
dst->Update();
|
||||
const GSVector4i read_rect = GSVector4i(x_offset, y_offset, x_offset + tw, y_offset + th);
|
||||
// Do this first as we could be adding in alpha from an upgraded 24bit target. if the rect intersects a dirty area.
|
||||
if (!dst->m_dirty.empty() && !read_rect.rintersect(dst->m_dirty.GetTotalRect(dst->m_TEX0, dst->m_unscaled_size)).rempty())
|
||||
dst->Update();
|
||||
|
||||
// If we have a source larger than the target (from tex-in-rt), texelFetch() for target region will return black.
|
||||
if constexpr (force_target_copy)
|
||||
@@ -5683,34 +5668,11 @@ GSTextureCache::Source* GSTextureCache::CreateSource(const GIFRegTEX0& TEX0, con
|
||||
const bool use_texture = (shader == ShaderConvert::COPY && !source_rect_empty);
|
||||
GSVector4i region_rect = GSVector4i(0, 0, tw, th);
|
||||
|
||||
if (half_right)
|
||||
{
|
||||
// You typically hit this code in snow engine game. Dstsize is the size of of Dx/GL RT
|
||||
// which is set to some arbitrary number. h/w are based on the input texture
|
||||
// so the only reliable way to find the real size of the target is to use the TBW value.
|
||||
const int half_width = static_cast<int>(dst->m_TEX0.TBW * (64 / 2));
|
||||
if (half_width < dst->m_unscaled_size.x)
|
||||
{
|
||||
const int copy_width = std::min(half_width, dst->m_unscaled_size.x - half_width);
|
||||
region_rect = GSVector4i(half_width, 0, half_width + copy_width, th);
|
||||
GL_CACHE("TC: Half right fix: %d,%d => %d,%d", region_rect.x, region_rect.y, region_rect.z, region_rect.w);
|
||||
|
||||
sRect = sRect.blend32<5>(GSVector4i(GSVector4(region_rect.rintersect(dst->GetUnscaledRect())) * GSVector4(dst->m_scale)));
|
||||
new_size.x = sRect.width();
|
||||
src->m_unscaled_size.x = copy_width;
|
||||
}
|
||||
else
|
||||
{
|
||||
DevCon.Error("TC: Invalid half-right copy with width %d from %dx%d texture", half_width * 2, dst->m_unscaled_size.x, dst->m_unscaled_size.y);
|
||||
}
|
||||
}
|
||||
|
||||
// Assuming everything matches up, instead of copying the target, we can just sample it directly.
|
||||
// It's the same as doing the copy first, except we save GPU time.
|
||||
// TODO: We still need to copy if the TBW is mismatched. Except when TBW <= 1 (Jak 2).
|
||||
const GSVector2i dst_texture_size = dst->m_texture->GetSize();
|
||||
if ((!half_right || region_rect.z >= dst->m_unscaled_size.x) && // not a smaller subsample
|
||||
use_texture && // not reinterpreting the RT
|
||||
if (use_texture && // not reinterpreting the RT
|
||||
!force_target_copy)
|
||||
{
|
||||
// sample the target directly
|
||||
|
||||
@@ -441,7 +441,7 @@ protected:
|
||||
std::unique_ptr<GSDownloadTexture> m_uint16_download_texture;
|
||||
std::unique_ptr<GSDownloadTexture> m_uint32_download_texture;
|
||||
|
||||
Source* CreateSource(const GIFRegTEX0& TEX0, const GIFRegTEXA& TEXA, Target* t, bool half_right, int x_offset, int y_offset, const GSVector2i* lod, const GSVector4i* src_range, GSTexture* gpu_clut, SourceRegion region);
|
||||
Source* CreateSource(const GIFRegTEX0& TEX0, const GIFRegTEXA& TEXA, Target* t, int x_offset, int y_offset, const GSVector2i* lod, const GSVector4i* src_range, GSTexture* gpu_clut, SourceRegion region);
|
||||
|
||||
bool PreloadTarget(GIFRegTEX0 TEX0, const GSVector2i& size, const GSVector2i& valid_size, bool is_frame,
|
||||
bool preload, bool preserve_target, const GSVector4i draw_rect, Target* dst, GSTextureCache::Source* src = nullptr);
|
||||
|
||||
Reference in New Issue
Block a user