uniform samplerRECT samp0 : register(s0);

void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0)
{
  float4 c0 = texRECT(samp0, uv0).rgba;
  float4 c1 = texRECT(samp0, uv0 + float2(5,5)).rgba;
  float y = (0.222 * c1.r) + (0.707 * c1.g) + (0.071 * c1.b);
  float y2 = ((0.222 * c0.r) + (0.707 * c0.g) + (0.071 * c0.b)) / 3;
  float red   = c0.r;
  float green = c0.g;
  float blue  = c0.b;
  float alpha = c0.a;
  
  red   = y2 + (1 - y);
  green = y2 + (1 - y);
  blue  = y2 + (1 - y);

  ocol0 = float4(red, green, blue, alpha);
}