r600: use CB_TARGET_MASK instead of CB_SHADER_MASK for setting color mask

makes blend functions work better

Signed-off-by: Dave Airlie <airlied@linux.ie>
This commit is contained in:
Andre Maasikas
2009-09-28 11:23:49 +03:00
committed by Alex Deucher
parent 5101215a64
commit bf68e54a4d
+3 -3
View File
@@ -745,9 +745,9 @@ static void r700ColorMask(GLcontext * ctx,
(b ? 4 : 0) |
(a ? 8 : 0));
if (mask != r700->CB_SHADER_MASK.u32All) {
if (mask != r700->CB_TARGET_MASK.u32All) {
R600_STATECHANGE(context, cb);
SETfield(r700->CB_SHADER_MASK.u32All, mask, OUTPUT0_ENABLE_shift, OUTPUT0_ENABLE_mask);
SETfield(r700->CB_TARGET_MASK.u32All, mask, TARGET0_ENABLE_shift, TARGET0_ENABLE_mask);
}
}
@@ -1758,7 +1758,7 @@ void r700InitState(GLcontext * ctx) //-------------------
r700->CB_CLRCMP_MSK.u32All = 0xFFFFFFFF;
/* screen/window/view */
SETfield(r700->CB_TARGET_MASK.u32All, 0xF, (4 * id), TARGET0_ENABLE_mask);
SETfield(r700->CB_SHADER_MASK.u32All, 0xF, (4 * id), OUTPUT0_ENABLE_mask);
context->radeon.hw.all_dirty = GL_TRUE;