// Crosshair and rest of HUD.
    
    vs_3_0            // converted by hand from vs_2_0

    def c6, -1, 1, 0, 0
    
    dcl_position v0
    dcl_color v1
    dcl_texcoord v2
    
dcl_position o0
dcl_color o1
dcl_texcoord o2.xy
    
    dp4 o0.z, c2, v0
    dp4 o0.w, c3, v0
    dp4 r0.x, c0, v0
    dp4 r0.y, c1, v0
    mov r1.x, c6.x
    add r0.zw, r1.x, c4
    mad o0.xy, r0.zwzw, c6, r0
    mul o1, v1, c5
    mov o2.xy, v2

// If texture is for crosshair, skip it, to make the center
// screen depth cursor disappear, but leave the rest of HUD.  

mov r29.x, c251.x     // c251.x = ValForDefined = 1
if_eq r29.x, c6.y     // c6.1= handy '1' to compare against
  mov o0, c6.wwww     // zero out location make it invisible.
endif

// approximately 9 instruction slots used
