CG pixel depth shader issue.

I’m trying to use depth output from a pixel shader, but my shader never compiles.

If I comment the line (fout.depth = _Zed;) it comes out red as I want it, but when it’s in I get: no subshaders can run on this graphics card.

So am I doing something wrong, is it my card, or does Unity never support depth output from a pixel shader?

Thanks.

Shader “Depth Shader”
{
Properties
{
_Zed (“Zed”, Range(0,1)) = 0.0
}
SubShader
{
Pass {
CGPROGRAM
#pragma fragment frag

struct outf
{
float4 color : COLOR;
float depth : DEPTH;
};

#include “UnityCG.cginc”

uniform float _Zed;

outf frag (v2f_vertex_lit i)
{
outf fout;
fout.color.yz = 0.0;
fout.color.xw = 1.0;
fout.depth = _Zed;
return fout;
}
ENDCG
}
}
}

anybody?