Before I read your post, I was pretty sure that it was not RGBA, but I checked anyway, and what I know for sure is it is **GB, and I can only assume that ** is AR, but I don't display Alpha and red won't come out (still no luck). I tested it like this:
Code:
#define __RGB32BIT(a,r,g,b) ( (0)<<24 | (0)<<16 | (0)<<8 | (b) )
//and later:
#define __RGB32BIT(a,r,g,b) ( (0)<<24 | (0)<<16 | (g)<<8 | (b) )
Where I passed 255,255, and 255 for RGB, the preceding code displayed blue and green, respectively. When I tested it that way for red I got a black screen...
EDIT!!
I don't believe it...I was storing the surface information in an array of USHORT(s) So it couldn't hold all the data! (Slaps self)