1) Yes, it's possible to use fixed function TnL with pixel shader 2.0. But note, that PS 3.0 require you to used VS 3.0 (well, NVIDIA drivers allow you to use FF TnL with PS 3.0, but nobody else does)

2) Techinically - yes. But it actually depends on driver to implement it. So you have to check that D3DPMISCCAPS_TSSARGTEMP is reported by driver.

3) I have some examples that use DOT3:
http://www.clootie.ru/delphi/downloa...D3Dex_TextDot3
http://www.clootie.ru/delphi/download_dx81.html look for "DotProduct3 sample "