mirror of https://github.com/PCSX2/pcsx2.git
COP2: Fix reg allocation issue
Really fixes Devil May Cry which was a bug hidden by clamping hidden by a bug, yeah i think that covers it all...
This commit is contained in:
parent
296911bef9
commit
ae1f1599f6
|
@ -7667,8 +7667,6 @@ SLES-50358:
|
|||
name: "Devil May Cry"
|
||||
region: "PAL-M5"
|
||||
compat: 5
|
||||
clampModes:
|
||||
vuClampMode: 3 # Fixes out of place polys (COP2).
|
||||
SLES-50362:
|
||||
name: "Jonny Moseley Mad Trix"
|
||||
region: "PAL-E"
|
||||
|
@ -21440,8 +21438,6 @@ SLPM-65038:
|
|||
name: "Devil May Cry"
|
||||
region: "NTSC-J"
|
||||
compat: 5
|
||||
clampModes:
|
||||
vuClampMode: 3 # Fixes out of place polys (COP2).
|
||||
SLPM-65039:
|
||||
name: "Densha de Go! Shinkansen"
|
||||
region: "NTSC-J"
|
||||
|
@ -27445,8 +27441,6 @@ SLPM-67502:
|
|||
name: "Devil May Cry"
|
||||
region: "NTSC-K"
|
||||
compat: 5
|
||||
clampModes:
|
||||
vuClampMode: 3 # Fixes out of place polys (COP2).
|
||||
SLPM-67507:
|
||||
name: "Onimusha Warlords"
|
||||
region: "NTSC-K"
|
||||
|
@ -33051,8 +33045,6 @@ SLUS-20216:
|
|||
name: "Devil May Cry"
|
||||
region: "NTSC-U"
|
||||
compat: 5
|
||||
clampModes:
|
||||
vuClampMode: 3 # Fixes out of place polys (COP2).
|
||||
patches:
|
||||
79B8A95F:
|
||||
content: |-
|
||||
|
@ -40601,8 +40593,6 @@ SLUS-29008:
|
|||
SLUS-29009:
|
||||
name: "Devil May Cry [Demo]"
|
||||
region: "NTSC-U"
|
||||
clampModes:
|
||||
vuClampMode: 3 # Fixes out of place polys (COP2).
|
||||
SLUS-29010:
|
||||
name: "Crash Bandicoot - The Wrath of Cortex [Demo]"
|
||||
region: "NTSC-U"
|
||||
|
|
|
@ -114,9 +114,11 @@ __fi void mVUallocCFLAGb(mV, const x32& reg, int fInstance)
|
|||
// On COP2 modifying the CLIP flag we need to update the microVU version for when it's restored on new program
|
||||
if (fInstance == 0xff)
|
||||
{
|
||||
xMOVDZX(xmmT1, reg);
|
||||
xSHUF.PS(xmmT1, xmmT1, 0);
|
||||
xMOVAPS(ptr128[&mVU.regs().micro_clipflags], xmmT1);
|
||||
int t0reg = _allocTempXMMreg(XMMT_INT, -1);
|
||||
xMOVDZX(xRegisterSSE(t0reg), reg);
|
||||
xPSHUF.D(xRegisterSSE(t0reg), xRegisterSSE(t0reg), 0);
|
||||
xMOVDQA(ptr128[&mVU.regs().micro_clipflags], xRegisterSSE(t0reg));
|
||||
_freeXMMreg(t0reg);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue