// IHM (box)
    vs_3_0
    def c96, 1020.03998, 2.0999999, 0.100000001, 1.10000002
    def c97, 3.0999999, 0, 1, 0
def c220, 0.15, 0, 0.0625, 0	
    dcl_color v0
    dcl_color1 v1
    dcl_position v2
dcl_2d s0	
    dcl_color o0
    dcl_color1 o1
    dcl_texcoord o2
    dcl_texcoord1 o3
    dcl_position o4       				//to modify
    mad r0.xyz, v1.z, c96.x, c96.yzww
    frc r1.xyz, r0
    add r0.xyz, r0, -r1
    mad r0.w, v1.z, c96.x, -r1.x
    add r0.w, r0.w, c97.x
    mova a0.x, r0.w
//    dp4 o4.y, v2, c0[a0.x]
dp4 r3.y, v2, c0[a0.x]	 				//change output register for temporary register
    mova a0.x, r0.x
//    dp4 o4.x, v2, c0[a0.x]
dp4 r3.x, v2, c0[a0.x]	 				//change output register for temporary register
    mov o0, v0
    mov o1, v1
    mova a0.xy, r0.yzzw
    mov o3, c0[a0.y]
    mov o2, c0[a0.x]
//    mov o4.zw, c97.xyyz
mov r3.zw, c97.xyyz	 					//change output register for temporary register
texldl r1, c220.z, s0   				// retrieve values from stereo texture 	
mul r1.x, r1.x, -c220.x  				// multiplicity Separation * c220.x 
add r3.x, r3.x, -r1.x    				// correct output vertex position
mov o4, r3               				// mov from temporary register to output 