Re: Ideas for accelerated video on MOL (generic PCI device proxy)


Subject: Re: Ideas for accelerated video on MOL (generic PCI device proxy)
From: Timothy A. Seufert (tas@mindspring.com)
Date: Tue Feb 20 2001 - 02:12:45 MST


At 4:36 PM +0800 2/20/01, Michael Clark wrote:

>I did a little hunting trying to find Apple's published interfaces for display
>adapter drivers (*1 is all I could find). I couldn't find info on any standard
>interfaces for accelarated video operations and the only public APIs
>I can find
>support a simple memory mapped frame buffer which is what the current
>'MacOnLinuxVideo' driver does.

Apple has an unpublished API for QuickDraw acceleration which I
forget the name of. From what I recall, there is some kind of
licensing issue with it, one that is likely to block integration with
open source code except through reverse engineering.

>So i'm not sure how accelerated display drivers work under MacOS but I guess
>they trap-patch a whole bunch of QuickDraw routines ??. I guess it would be
>possible to add support for some simple accelerations like block moves and
>clear by patching the relevant Quickdraw routines - but we'd still be
>missing out on all the other accelation offered by most modern video cards
>today (rage128, etc) - I imagine it would be quite a bit of work to add
>support for all of their features this way - especially 3D.

Fullscreen OpenGL based 3D is actually probably somewhat possible
(once DRI starts working well on the PowerMac). Basically one would
have to write a GL library for the MacOS side that supports all the
same calls as Apple's own, and have it act as a GLX encoder which
sends all the encoded GL commands off to the native DRI GL. With
this library substituted for the normal one, Mac GL apps that can
work with a fullscreen context would never know the difference. The
most difficult part would likely be emulating the functionality of
Apple's AGL stuff.

Windowed GL might be a lot more difficult though.

   Tim Seufert



This archive was generated by hypermail 2a24 : Tue Feb 20 2001 - 02:13:43 MST