rsx: Dubious fix for broken B8 swizzle remap

This commit is contained in:
kd-11 2018-03-28 15:44:32 +03:00
parent a17025c465
commit f559c088a1

View File

@ -24,7 +24,7 @@ namespace rsx
(((/*alphakill*/0) << 2) | (/*maxaniso*/0) << 4) | ((/*maxlod*/0xc00) << 7) | ((/*minlod*/0) << 19) | ((/*enable*/0) << 31);
// Control1
registers[NV4097_SET_TEXTURE_CONTROL1 + (m_index * 8)] = 0xE4;
registers[NV4097_SET_TEXTURE_CONTROL1 + (m_index * 8)] = 0xAAE4;
// Filter
registers[NV4097_SET_TEXTURE_FILTER + (m_index * 8)] =
@ -206,6 +206,18 @@ namespace rsx
remap_ctl &= 0xFFFF;
break;
}
case CELL_GCM_TEXTURE_B8:
{
//Low bit in remap control seems to affect whether the A component is forced to 1
//Only seen in BLUS31604
//TODO: Verify with a hardware test
if (remap_override)
{
//Set remap lookup for A component to FORCE_ONE
remap_ctl = remap_ctl & ~(3 << 8) | (1 << 8);
}
break;
}
default:
break;
}