I noticed that when Arachne 1.68 finish downloading image from a net
just stops at the end and don't want to display it. You know: progres bar
just stands on 100% and wait for something. Than when I press r it
converts image to bmp and displayes it correctly.
Someone here told that he thinks that Arachne graphic routines are to
slow. Well in vesa modes(I use only them) they are fast but can be done
eaven faster. I think that there are two things which are done wrong:
-Drawing of the background. When Arachne draws small bacground image
it have to repeat image over and over until it redraw hole screen. Metod
for this which is implemented in Arachne is the worst one. Arachne
algoritham(if I noticed right) at the first step draws first pixel of
bacground image to evry place on the screen where some copy of bacground
image should be. Then it draws second pixel to evry position,then
third..... Problem is in organisation of video memory on SVGA graphic
cards. I don't know how much do you know about this, but let just say that
well known limit of 64kb in accessing to memory you have to swich pages of
video memory to access whole screen. This page switching is slow and
should be avoided as much as it is possibile. Arachne in algoritham I
decribed access doferent areas of screen one of the another. So anly for
drawind first pixel of bacground image(in step one) it acces evry block of
64k in video memory. And for ehample in 640x480X16b that switches memory
page 16 times. Thats to slow. Solution is to change you routine to redraws
screen writeing horizontal lines one after another(I mean hole horizontal
line of curent video mode not horizontal line of image). I that case you
will in 640X480X16b switch video page inly 16 times for whole screen. And
writeing of image shoudn't be done by pixel routine. You shoud use mem
copy.
-The second thing I wanted to talk about is routine for drawing the
text. It is pretty fast but Arachne shoud implement something
diferent. When drawing new page Arachne usualy redraws whole screen with
background color and then writes text. Faster way to do this woud be that
Arachne draws new text and clears background in the same time. And if page
haves backround instead of clearing backroud Arachne could write backround
image. I have done this on my computer and the speed up is about 20%
to 30%. So I think it is worth of traying. Also you rendering of page woud
be nicer.
As you probbaly noticed know how to proggram and I have done similiar
things so I can help writeng this routines. Tell me if you are interested.