Mail Archives: djgpp/1997/07/13/13:46:13
I am using VESA mode 640*480*256 with a virtual screen that i have
allocated using malloc. I only have VESA 1.2 and am switching the banks
using the real mode vesa interrupt. The problem is that I am updating
the screen 40 times a second and the copying is too slow. I have timed
various ways of copying memory (_dosmemputl(), movedata() and even with
the dpmi_nearptr_enable()) and they all give the same results - too
sloooow for my purposes. Could I maybe use assembler to speed things
up? If so, how? Otherwise what is the fastest method of copying and the
best way to implement it?
Or is there another way, without using a virtual screen to get
flicker-free updating that is not too complicated? The advantage of the
virtual screen is the minimal bankswitching (only 5 times per update)
and this only takes a short amount of time so please don't suggest
switching to VESA 2.0.
- Raw text -