Mail Archives: djgpp/1993/06/25/00:12:01
> In 1024x768, this is *relatively* slow and I am trying to speed the
> process up some by directly writing to video RAM. I have written my
> own direct write simply by
>
> *(screen_base+y*width+x)=(char)c;
> where screen_base = 0xd0000000.
Are you writing to a ram context first? Writing directly to the vga ram for each
pixel is often slower than writing a chunk of memory to vga ram because of wait
states over the ISA bus.
Let GRX do the hard work in the BitBlit context copy from ram to the screen,
it's by far the fastest way that I have found.
I've written a rendering program that does about 5 frames a second at 1024x768x
256 on a 486-33 (that includes clipping etc on several thousand polygons) using
a Tseng ET4000 (all calcs in fp!). Without rendering I'm sure you could easily
get 20 or 30 fps.
Is this the sort of speed you're approaching and trying to improve upon? If so,
then some other (lower level) solution is needed.
cheers
Michael Snoswell
--------------------------------------------------------------------------------
Michael Snoswell michaels AT vsl DOT com DOT au
Vision Systems Limited +61 8 343 0627
South Australia "Intelligent, witty quote"
- Raw text -