|
| |
|
Update 14APR2003: I got a letter from nVidia saying to remove what documentation that I had up here. I've done so and you can see the page for yourself if you want. But there's nothing there worth anything. Just a nice friendly reminder that the stuff is gone. I've not worked on this page at all recently, so I probably don't even suggest using the code I have up here for DirectFB. They've more than likely updated the code since I last had my hands on it, and I'm not using my nVidia card anymore (going ATI for a bit). So, um... yeah... Oh, one last thing, I used the XFree86, Linux Kernel Code, and existing DirectFB source in the development of my driver. So, I believe I'm ok keeping that here. But if either nVidia contacts me, and tells me to take that down, or DirectFB takes theirs down, I'll be taking that down, too. Such are the breaks in life sometimes. Update: I got my code working without consistant visual artifacts, and DirectFB recently put it into CVS, but they didn't quite understand all of the code and introduced a large number of race conditions, that I had spent days pounding out. If you have the CVS source, and it's the NOW version, and you're getting visual artifacts, then download my driver NOW, as I have removed the race-conditions from their code. DirectFB needs some stronger testing programs, because they let all the race-conditions in their nVidia driver fall through the cracks. Better luck next time! The Story: About a week or two ago, I stumble across another mention of DirectFB, and I thing "Oh, I compiled vesafb into my kernel, I'll give it a shot" Well, things looked great... Not that it ran any faster than X really... it did start up faster... and it just seemed like it was a lot less kludgy. So begins my facination with DirectFB, the best alternative to X The story doesn't really stop there, because as you all know the vesafb driver is sucky slow (even on a dual processor system) so I figured that there wasn't an nVidia GeForce driver (I knew there was a Riva one, but didn't think there was a GeForce one) so was laboriously attempting to learn anything I could from the XFree-4.1 source to see if I could write one on my own. *sigh* that sucked, and didn't go anywhere, but luckily, I went to the DirectFB IRC channel (irc.openprojects.net #directfb) and asked someone about an nVidia framebuffer, and a nice person told me "rivafb, it works for all nvidia chipsets" And imagine how red my face turned! Now presented with my nvidia framebuffer, I could check out "accelerated XDirectFB"... imagine my surprise when I found out that the nvidia driver has about 10% support, with only accelerated rectangles, triangles and lines! :( Well, I remember through my workings looking at the rivafb device, I had noticed a blitting function. My thoughts immediately turned to how I could implement it over to the nvidia driver for DirectFB. Many nights later, I've come up with this source code. THIS CODE IS HIGHLY EXPERIMENTAL It is known to cause visual artifacts, and may interfere with the stability of your system. I have warned you, and I will not be held responsible for any damage from direct/indirect use of this code. With the legal stuff out of the way, the source code can be downloaded anywhere, but should be untar'ed in the root directory of your DirectFB from CVS (I will not vouch any compatibility beyond CVS) Then, simply make your DirectFB source as usual, and install, and viola! You have accel'd blits. Now, I'll say that my X is usable with this driver, but I'll warn you that it's USABLE, not pretty in any way shape or form of the word. Anyways, ENJOY! | |