Board index » delphi » VESA PageFlipping

VESA PageFlipping

Hello, I've currently writing a program the uses 640x480x256c
and i needed Page Flipping so i used 4 arrays of 64000 bytes
each. but that sucks the memory up heaps. i would like to use
the Video ram on the card instead of Conventional memory.

Can anyone help?

Cheers
  Craig.

 

Re:VESA PageFlipping


Quote
Craig Duncan wrote:

> Hello, I've currently writing a program the uses 640x480x256c
> and i needed Page Flipping so i used 4 arrays of 64000 bytes
> each. but that sucks the memory up heaps. i would like to use
> the Video ram on the card instead of Conventional memory.

> Can anyone help?

> Cheers
>   Craig.

I hope I got it right : You use the arrays to store a second
page (you would need 5 arrays of 64000 bytes for this),
and then dump it in video memory ?

In order to store it in video memory, simply write if you were
plotting on screen, but starting at a memory location which is
off screen. (In 640x480x256, it is convenient to start
at bank 5 (if the granularity is 64K !)).

Apart from freeing up heap memory, the main advantage is
that no actual data has to be moved to display the page.
Use the VESA Set Display Origin subfunction
AX = 4F07h (or AX=4F06h ???). Mail me if you need
more detail (registers etc.)

Hope this helps

   __/  __/   -  Christian Froeschlin
  /    /
 /     _/     * If you eliminate the impossible, whatever remains, *
___/ _/       * however improbable, must be the BUG !              *

Re:VESA PageFlipping


-> Hello, I've currently writing a program the uses 640x480x256c
-> and i needed Page Flipping so i used 4 arrays of 64000 bytes
-> each. but that sucks the memory up heaps. i would like to use
-> the Video ram on the card instead of Conventional memory.

-> Can anyone help?

-> Cheers
->   Craig.

I am using ASM to get into 640x480x256c (VESA Mode 101h) if that
helps. I can post the code im using if you want to look at it.

Cheers
  Craig.

Other Threads