Hi Paul,
In my quest to squash ddraw test failures on my hardware lab I have run into a recently added problem. Maybe you still have an active enough memory of the test code that you can help me understand the failure.
The system is a 2003-era laptop with an ATI Mobility Radeon 9000 running windows XP. The test failures are in the attached ddraw7.txt file. I ran the test with some minimal modifications, see ddraw7.diff.
My gut feeling is that this is not simply a color precision issue - the values are pretty far apart, especially for 16 bit surfaces. Yet, something is apparently going right. The blit happens and the result at least resembles the expected results.
It makes sense to me that only the sysmem->vidmem blit is affected as that's the most likely case to be accelerated by the driver. Could the driver handle the src rectangle incorrectly?
My cheap way to fix it would be to add something like broken(ddraw_is_amd() && color == 0x8019), but if we can find a way to keep the test intact on this hardware that would be better.
Cheers, Stefan