From 40f315a2597f234af31ae0ced99f1622c813f214 Mon Sep 17 00:00:00 2001 From: refractionpcsx2 Date: Fri, 1 Jul 2022 17:10:26 +0100 Subject: [PATCH] GS: Fix CLUT changing bit depth. This usually means the storage method changes with it, so it's a good idea to reload it --- pcsx2/GS/GSClut.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pcsx2/GS/GSClut.cpp b/pcsx2/GS/GSClut.cpp index eaa7b3dcad..981e564f5a 100644 --- a/pcsx2/GS/GSClut.cpp +++ b/pcsx2/GS/GSClut.cpp @@ -758,7 +758,7 @@ bool GSClut::WriteState::IsDirty(const GIFRegTEX0& TEX0, const GIFRegTEXCLUT& TE bool is_dirty = dirty; - if ((this->TEX0.U64 ^ TEX0.U64) & mask) + if (((this->TEX0.U64 ^ TEX0.U64) & mask) || (GSLocalMemory::m_psm[this->TEX0.PSM].bpp != GSLocalMemory::m_psm[TEX0.PSM].bpp)) is_dirty |= true; else if (TEX0.CSM == 1 && (TEXCLUT.U32[0] ^ this->TEXCLUT.U32[0])) is_dirty |= true; @@ -778,7 +778,7 @@ bool GSClut::ReadState::IsDirty(const GIFRegTEX0& TEX0) bool is_dirty = dirty; - if ((this->TEX0.U64 ^ TEX0.U64) & mask) + if (((this->TEX0.U64 ^ TEX0.U64) & mask) || (GSLocalMemory::m_psm[this->TEX0.PSM].bpp != GSLocalMemory::m_psm[TEX0.PSM].bpp)) is_dirty |= true; if (!is_dirty) @@ -797,7 +797,7 @@ bool GSClut::ReadState::IsDirty(const GIFRegTEX0& TEX0, const GIFRegTEXA& TEXA) bool is_dirty = dirty; - if ((this->TEX0.U64 ^ TEX0.U64) & tex0_mask) + if (((this->TEX0.U64 ^ TEX0.U64) & tex0_mask) || (GSLocalMemory::m_psm[this->TEX0.PSM].bpp != GSLocalMemory::m_psm[TEX0.PSM].bpp)) is_dirty |= true; else // Just to optimise the checks. {