I know that if you create a complex flipping chain in video memory, when you flip the backbuffer to the primary surface, it doesn't actually blit the entire screen, but just modifies a pointer that tells the video hardware where the top left of the screen resides. (Sets that pointer to point to the next surface in the flipping chain).
My question is, is there a way with DirectDraw to have that pointer point to any arbitrary point within a video memory surface?
For example, I want to create a surface in video memory with dimensions 1024x768. Then I want to set the screen resolution to 640x480. Is there a way I can set the screen to be a viewport into the larger surface such that the screen can scroll around anywhere within the surface.
Ahh, was my question not clear? I didn't get an answer :sigh: .
Well, I've re-read the question so that I understand it now. But the reason for getting no answer from me is that I haven't got a clue about this.
i don't know what happens if you change the lpSurface pointer of the primary surface. that's the only think that i can think of that releates to your problem. i also have hardly any experience ( used direct draw for a small software rasterizer 2 years ago ) with directx so forgive me if that was complete bs.