The first thing in prim_directx.c is a function, is_legacy_card. The
comment says that older Intel cards are broken and can't handle 3 things
so some vertex rearrangement is done. It says they don't support shaders.
Testing on Intel 945, the card does support shaders (Pixel Shader 2.0),
but is_legacy_card checks for PS3.0 (even though everywhere else we use
2.0) and if 3.0 isn't supported the card is deemed "legacy".
If I leave this as is, untextured primitives draw pure white, no matter
what color is used. Textured primitives/everything else draw correctly.
What's interesting is if I return "false" from is_legacy_card,
everything works perfectly fine. The comment mentions
DrawIndexedPrimitiveUP, which I didn't check that it was used but
textured primitives, untextured primitives both draw correctly
(al_draw_prim and high level primitives) if I return false.
Not sure, SiegeLord can you clarify which cards this is supposed to
detect? Intel 945 is a very old chip.
Thanks,
Trent