Index: [thread] [date] [subject] [author]
  From: Jon M. Taylor <taylorj@ecs.csus.edu>
  To  : ggi-develop@eskimo.com
  Date: Wed, 16 Sep 1998 15:27:37 -0700 (PDT)

Re: Glide-target now works again

On Wed, 16 Sep 1998, Marcus Sundberg wrote:

> I've added event handling back to the glide target and it now uses
> the Linux_common files for keyboard and mouse support. 

	Thanks a million.  I am still getting segfaults with everything,
though.  I even blew away my whole CVS tree and re-downloaded it to no avail. 
Are you sure you committed everything? 

> In addition
> to that it supports VT switching, which I don't know of any other
> glide app that does. ;)

	YEAH!  AAaaaaaahhh!!!! I wanna see this!
 
> I've also removed the directbuffer hack 

	What makes you call it a hack?  I agree that it was slow, but was 
the only way I could see to do nonblocking display flushing since you 
can't write to the hardware framebuffer without acquiring a lock through 
Glide.  I took a quick look through all that new code you added but I 
have to confess that I don't grok a lot of it.  What happens on a VT 
switch?  Does the app sleep?

> and added glide acceleration
> instead. Performance is quite OK for a card not at all designed for
> 2D, especially considering that I haven't found a way to turn off
> doublebuffering, which forces me to do things like:
> 	grDrawPoint(&GLIDE_PRIV(vis)->fgvertex);
> 	grBufferSwap(0);
> 	grDrawPoint(&GLIDE_PRIV(vis)->fgvertex);
> 	grBufferSwap(0);

How about using:

	grRenderBuffer(GR_BUFFER_FRONTBUFFER);
	grDrawPoint();

instead?  That should force all drawing to the front buffer.  That will cost
you your double/triple buffering capabilities but you said you don't want
those anyway.  *I* want (need) them eventually, but for now they can stay
out.

> Lastly I've added PS/2 mouse support to Linux_common/mouse.inc
> as I needed to test the mouse handling in the glide target. ;-)

	I've been wondering if the X_common and L_common code wouldn't be 
better off as a helper library?
 
> If there's someone here that's familiar with Glide you're welcome
> to help me with using font characters as textures. That would make
> a quite nice nixterm terminal out of a 3DFX board.

	I'll do what I can.  I have a nice spiral-bound hardcopy Glide
Programming Guide I put together a while back which I have been reading
cover-to-cover.  I'm not to textures yet, but hopefully soon.  But this will
mostly be for the benefit of others, as A) I have an old 4MB Voodoo Graphics
card which can only do 800x600, and B) The Riva 128 card I am using now is
VESA 2.0 compatible and I have vesafb running at 1024x768x16bpp just fine.

	I brought the Glide target back from the dead so I could have a
well-working 2D target to build the LibGGI3D Glide target on top of.  That
point has almost arrived.  Thanks again for lending a hand, Marcus.  You too,
Andrew.  But now I am noticing how well Glide works with LibGGI, and I think
that if we can produce a kick-ass, well-written Glide target (which we appear
to be doing) it will be worth its weight in gold as far as public relations
is concerned.

	3Dfx has shown that 3D video cards *can* be _fully_ supported under
Linux and Windows with few hassles and full feature support without opening
their "driver" source.  I personally would prefer a true open-source GPLed
KGI driver for Voodoo chipsets, but I have to be realistic and say that just
ain't gonna happen anytime soon.  However, I have found Glide to be a 
quite acceptable substitute in the meantime.  /dev/3dfx support (which 
enables Glide-using apps to not have to run as root) is the last piece of 
the puzzle.

	Soon we will have X, SVGALib, consoles/terminals, and all the LibGGI
apps out there running on Glide.  VT switching will be fully integrated as
well, which Glide has never had before!  This will make both the GGI project
and 3Dfx look good.  This might help encourage 3Dfx to begin officially
supporting Glide on Linux.  And if they do that, other 3D hardware makers
will probably do the same.  I think that another company is already planning
to release their own Glide-like library.

Jon

---
'Cloning and the reprogramming of DNA is the first serious step in 
becoming one with God.'
	- Scientist G. Richard Seed

Index: [thread] [date] [subject] [author]