Great! Thanks for the feedback.
Dege, I'll look into the indexed triangle thing. If the game is using indexed, its daft that I don't pass the geometry on in the same way. For paletted textures, the hardware regeneration method is a great improvement, and makes Red Baron smooth, but still Blood is very lumpy (far more lumpy than with dgVoodoo). Still a bit of a mystery.
Markus, thanks for pointing out the log thing. I wonder how I get away with it here!! Strange. As for what I'm trying to achieve, that's a difficult one. Some of my initial aims look like they aren't going to work out as I hoped. I was hoping to make it fast, particularly for palette tricks on cards with no paletted texture support, but I've certianly not managed that - so far at least.
The other main aim was to use shaders to provide more accurate emulation of the combine functions. That's sort of worked out. The way OpenGLide works, the values are correct at the vertices, but linear interpolation doesn't always give the right results on the rest of the triangle. Using shaders you can get it right over the whole triangle. If you look at detail texures in Unreal, I think you can see a difference. On the other hand, its only going to be the more rarely used combine functions that show the difference.
Not sure where its going now. It may end up just gathering dust on sourceforge. In any case, its been fun so far, so I shalln't regret the effort, either way. I've always wanted to write a wrapper from scratch.