Then there was of course linear and exponential fog falloff. If I remember correctly, the range fog was vertex based, and table fog was pixel based. Table fog supported exponential falloff (I remember using it in my first graphics engine).
New shader based hardware can emulate all these fog modes by a few extra pixel shader instructions. Fixed function hardware fog support hasn't existed for a long time. It died at the same time fixed function T&L died. Both T&L and fog are emulated by shaders if you run and old DX version (or fixed function OpenGL) on the new cards.