All of these apply to the latest Git tree, and should come after my last patch submission to wine-patches, but it shouldn't matter. I'm just looking for a little more feedback on these before I submit. This should lay the groundwork to begin implementing GLSL opcode generation. I've hacked around with some of them, and this will succesfully generate a GLSL shader program if the opcodes are implemented properly.
Please let me know if any of my ideas here are fundamentally flawed. We've worked a bunch of it out on IRC, but this should be a nicer version to look at than my stuff at pastebin. :-)
None of this code changes anything for the end-result ARB_vertex/fragment_program. It only generates GLSL if you have this regkey:
HKLU\Software\Wine\Direct3D\UseGLSL = "enabled"