Hi,
I tried it again and tested it in the shaderviewer. All was black...
But there's at least no error



technique bump
{
pass p0
{
pixelShader=
asm
{
ps.1.1

; c0 - ambient color
; c1 - diffuse color
; c2 - specular color

tex t0 ; base texture
tex t1 ; normal map
tex t2 ; Cubic Normalized L vector
tex t3 ; Cubic Normalized H vector

dp3_sat r1, t1_bx2, t3_bx2 ; N.H

dp3_sat r0.rgb, t1_bx2, t2_bx2 ; N.L
+mul r0.a, r1.a, r1.a ; N.H^2

mad r0.rgb, r0, c1, c0 ; D*N.L + A
+mul r0.a, r0.a, r0.a ; N.H^4

mul r0.rgb, r0, t0 ; (D*N.L + A)*Base
+mul r0.a, r0.a, r0.a ; N.H^8

mul r0.a, r0.a, r0.a ; N.H^16
mul r0.a, r0.a, r0.a ; N.H^32
mad r0.rgb, r0.a, c2, r0 ; S*N.H^32 + (D*N.L + A)*Base
};
}
}