i965 should support more program parameters (as reported by GL_MAX_PROGRAM_PARAMETERS_ARB and friends). The ARB_vertex_program spec only requires 96, and we currently support 128. However, the hardware is capable of supporting more, and some applications require more. For example, Enemy Territory: Quake Wars appears to require 243.
I've attached the obvious patch to increase support to 256. Due to lack of other tests and other issues getting ET:QW running on i965, I am unable to verify it.
where is the patch, Ian?
Created attachment 17622 [details] [review]
Enable 256 program parameters
I selected for this patch to be uploaded when I submitted the bug. I'm not sure what happened. Weird.
We can do a maximum of 32 * 512 bits = 16k of constant data at once on G965-GM45, and 256 parameters would be 256 * 4 * 32bits = 32k. Since programs seem to expect this much from us, we should figure out how to support it, but it looks like we'll have to bind the constants as a buffer and sample it.
Mass version move, cvs -> git
Current state is:
GL_MAX_PROGRAM_PARAMETERS_ARB = 1024
GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB = 1024