7.I have got a hardware surface by passing the SDL_HWSURFACE flag(& checked to make sure this flag is set).
Then SDL_DisplayFormat() when used on any surface will AUTOMATICALLY put that surface in video memory ?
If the SDL_HWSURFACE is set for any surface then its GURANTEED to exist in video memory ? & not in s/w(main) memory?
6.if i ask choose the “Maximize Speed” optimization in projects>>settings(/O2 cmd line switch) then SDL hangs if i choose GO(F5) ,but works fine with ctrl+F5 in VC++6.0.
5.For some of my sprites i need to examine the pixels before putting them into video buffer. So i cant use SDL blitting functions & must work with pixel data directly. So is putting them in main memory faster than in video memory as if in main memory then the pixels need not be called up from video memory in the reverse direction than the AGP bus is meant for ?
4.With reference to above is there any way of setting up a PALLETTE in h/w memory so my surfaces also exist in h/w memory but store pallette INDICES there to reduce space consumed in scarce h/w memory(just like 8 bit surfaces)?
3.Does memcpy() copy correctly & fast from main memory–>video memory or from video memory -->video memory ? Are there any functions available for carrying out faster pixel movement in video memory ? How does memcpy() distinguish between a video & main memory pointers?
2.If i do not use SDL functions for blitting (instead use memcpy)then i guess i also by pass ALL video card features like RLE(Run Length Encodong?) & hardware blits/color fills ? Any way to still take advantage of this using SDL in a h/w independent way?
1.Is there any way to find out how much of FREE video memory remains?
0.The pixels member in SDL_Surface remains NULL till surface locked …but this correct behaviour is shown only for hardware surfaces?Why not for s/w too?
How low will we go? Check out Yahoo! Messenger?s low PC-to-Phone call rates.