> Thats not the issue I am having I have already taken care of that.
> vga_claimvideomemory does the checking for the proper amount of ram. 
> I don't know if it can be done before the mode is set.
> The problem I am having is the functions like SetWriteFrame, etc..
> aren't implemented in the svgalib target.

Ah - I see. Basically look at glide/fb.c and mode.c to see how these can be
hooked.

Note, however, that all the Linear_* targets already handle it by
using _ggi_default_setwriteframe (ggi/internal.c) which basically
manipulates the pointer in vis->w_frame_num to point at the right
place.

I'm not up to speed how the SVGAlib target works. If it loads linear* 
libs, all should be well already if directbuffer setup is done right.
(see display/fbdev/mode.c at /* Set up DirectBuffers */ for an example 
that handles multiple frames).

If not, you can basically just use vis->w_frame_num and vis->r_frame_num
which contain the right frame numbers for calculating the offset when
calling SVGAlib drawing functions.

Ah - I see - looks like you need both ...

In case of priv->islinear, linear* takes care, when you hacked the buffer
setup in svgalib/mode.c (/* DirectBuffers */) and for the other case,
you just manipulate all primitives to look like

- vga_drawpixel(x, y);
+ vga_drawpixel(x, y + vis->w_frame_num*frame_height);

CU, Andy

-- 
= Andreas Beck                    |  Email :  <[EMAIL PROTECTED]>             =

Reply via email to