The 8800 tech spec states that min/max will return the valid operand so I assumed any divisions by zero would be caught. But I’m seeing the results of computations using A be reduced to zero. Unfortunately I can’t replicate the problem in emu-debug mode.
I’m afraid this is not the case, but any CUDA math operation involving a NaN will output NaN.
Hence saturate will as well output NaN in your situation. I think your best option is to check for zero divisor and use an if - else block setting A to either saturate((f-fMin)/(fMax-fMin)) or zero.