Yes, the missing texture operations are kind of important, I think [ but they are valid in SM 1.x only ]. Other suggestions I have: - fix swizzle, make it work consistently across all instructions (see cmp). - may be a good idea to centralize casting in one place to avoid failures [ yes, I probably should have done that when adding casting in my patch :) - merge the rest of the SHADER_ARB code, and organize it the same as the SHADER_GLSL code (in arb_shader.c or something like that). Then go through and compare the two and make sure modifiers and other such things work the same way.
===== For 1.x texture support we could delay compilation until we know what kind of textures will be bound, and then recompile if textures change their dimensionality [ which hopefully they won't ].