Mail Archives: djgpp/1995/07/13/03:09:19
> I'm in the process of writing my own VESA library. I have everything
> working, but right now it is calling the VESA window positioning function
> with _go32_dpmi_simulate_fcall. This works fine, except that my frame
> rate is abysmal. In 320x200, on a 486/33 I can blit something like 170 fps
> (w/o vertical synch on of course), since I don't have to do any paging.
> But in 640x480, my fps drops to about 12. Since I'm only copying 4.8
> times as much data, the best I could expect would be 35 or so. Obviously,
> there is a very high amount of overhead in calling a dpmi function.
You can make about 10,000 far calls per second on a 486/33 under Win 3.1,
so I don't think that's your problem. Don't forget the overhead of the
Vesa call itself, which may contribute to your problems. Currently if
GO32 or CWSDPMI is providing the far calls the performance would drop to
about 3,000 far calls per second on the same machine due to a design
issue which will get fixed in some future CWSDPMI release.
If your VESA bios will run in protected mode you can try calling it
directly - I suggest you review the built-in VESA driver in djgpp
for some info on trying that.
- Raw text -