You can re-implement fog, though, I think; you'd have to get world-space coordinates for the vertex and compare to the camera's position; I *think* that is possible without having to send it a uniform... maybe get the length of the eye vector? Should be possible to get the fog's strength, attenuation etc. from the existing inputs; it's probably just not getting along with the pixel shader.
Might get into a fair amount of math on the pixel shader, though.
I should prolly shut up, I will have to look at various things before my competence with HLSL and the DX rendering system is vaguely useful, so this may all be wrongo; sorry if it causes any wasted time
