Modern Video Cards with Open Specs?
JessLeah asks: "I've been having trouble finding decent, 3D-accelerated drivers for video cards (of late-90s/early-2000s vintage) under Linux. I'd just get a newer card, but it seems like the situation for newer cards is even worse. The market at present seems to be little more than an nVidia/ATI duopoly, and neither nVidia nor ATI have open specifications available for their chipsets. As a result, both of them presently have binary-only, x86-only, Linux-only XFree86 drivers as their sole alternative to Windows. Are there any modern chipsets (with a reasonable cost) that actually have open specifications available online -- or, at a minimum, open-source drivers that can actually compile on things other than Linux/x86" What was the last video card with open specifications that you can remember?
I know it's still not what you're looking for, but nVidia's binary drivers are not exclusive to Linux. I use them with much success on FreeBSD.
They're even in ports.
Really, the problem is that they're IA64/IA32/AMD64 specific (they aren't just x86, they're available for those three archs).
... works on BSD as well. But yeah, binary only.
Meh. Good luck, the high end graphics market has always been very proprietary (eg. SGI way back in the day).
There are open drivers in XFree86 for the Radeon series of cards. The newer cards are 2D-only, and some older cards (Radeon 9200, 9000) have 3D support as well.
The 3D accel isn't supposed to be nearly as fast as ATI's closed drivers, but its supposed to be functional.
Details about specific cards and chipsets are on the XFree86 Radeon driver page
Hope this helps.
-molo
Using your sig line to advertise for friends is lame.
Why are the drivers closed in the first place? Won't they sell more cards if they're supported by a wider variety of software?
Think about an operation system. Any operating system. Now, the chances that this operating system has drivers for any Matrox cards is about 95%. There are only a few that are not supported.
The big deal with Matrox is that they don't do tricks in their drivers. Everything is hardware accelerated (and that's why Matrox cards are so expensive).
BTW, I still have a Matrox Millenium (about four years) laying in a Pentium II and still kicking ass.
But they can be spendy. Matrox also makes some cool multi-head displays.
Fellowship 9/11
First of all, nvidia provides drivers for ia32, ia64, and amd64 on linux as well as ia32 on freebsd. So, they don't limit themselves to one arch/one os. (no ppc, but to be honest, i don't think there are that many linux/freebsd ppc users) ati only provides ia32 on linux.
Now regarding a recommendation, if you only want drivers that have good 3d accel and are open source, your only option is to go with matrox. The only problem is that matrox cards are comparatively more expensive for the speed they provide. Instead, I would recommend getting an nvidia based card. Although nvidia's driver is binary only, it's quite good and simply looking at their readme, you can tell that they put a lot of time into it. I personally have used two different nvidia cards in linux for a number of years and have never run into any trouble.
That said, whatever you do, don't get an ATI card. I stupidly bought a radeon 9700 and i've tried every single linux driver that they've released. I can't run any 3d program for more than about 5 minutes without the whole machine locking up. In windows, the card works perfectly. So, if don't want to deal with the hassle of ATI's half-hearted support for linux, don't get one of their cards.
Best slashdot comment
I use an ATI Radeon 9000 and I have yet to have problems or difficulties with the card. It was plug and play for Fedora Core 1 and 2 and this card performs well for the 3D games I occasionally play (bzflag, armagetron, neverball, and the miniature golf game based on neverball code the name of which I have forgotten because I don't have it installed yet).
The Radeon 9000 AGP card is fairly inexpensive too ($30-$40).
Digital Citizen
There is an open standard. It is called VESA-VBE.
During the wild days of post-VGA graphics cards, there were many manufacturers and no standard. At that time, VESA VBE was born and most hardware manufacturers tried to comply with it. Applications finally had a common interface to video hardware, and the future looked bright.
Then came Windows 95, with its DirectX, and most graphically-intensive programs moved to this hot new "standard". (why is beyond me...) VESA VLB 2.0 arrived at about the same time, but fizzled and died because nobody cared anymore. Just make whatever hardware you want, and write a VXD for it, and it will work under Windows. So now the only "standards" we have are on an application level, not a hardware level. (OpenGL, DirectX, XFree86...)
-CyberVenom
...open-source drivers that can actually compile on things other than Linux/x86?
Sure. Last month I got tired of the crash-fest known as NVidia, and went out and bought a Radeon 9200. It's an older chipset, but you can still find it new on the shelves if you look around. It's like trying to find a 1.5GHz Pentium. They're still being made, but you can't find them at the mass market outlets.
Anyway, my system is FreeBSD, so you don't have to worry about Linux-only. It's an Open Source 3D accelerated DRI kernel driver. It should build on non-x86 archs. It supports all radeons up to the 9200.
A similar DRI driver for Linux is also available. As for Open Source drivers for Solaris or IRIX, I couldn't say. But I doubt it...
Don't blame me, I didn't vote for either of them!
The way that worked was that you made real-mode BIOS calls to a ROM on the VGA card that implemented the function you want.
No modern operating system worth it's salt would stoop to mapping the VGA ROM and emulating real-mode function calls to twiddle a few registers.
It works in Linux (sort of) because all the heavy lifting is done in real mode before protected mode starts, which means you can't change any settings after initial boot. Useless.
That was relevant for DOS, and that's about it.
THIS THING CAN TURN ON A DIME, MACROSSZERO STYLE ALSO FUCK BETA, ~NYORON
Once you do get drivers for your superduper 3d card on Linux... what are you going to use it for?
-E
Ecce Europa - Web Design for Business
The point is that he's not interested in dealing with the problems associated with "video card vendor not caring about small platform". He's got people on the platform that can fix issues, given the source. They don't have it. He wants to know where to get a card that's supported with open source drivers.
Here is the current state of affairs:
NVidia provides only binary drivers. Their Linux drivers are supposed to be of comparable quality to their Windows drivers -- you just have to deal with the fact that the Linux world has zero tradition of binary kernel module compatibility. You will always be fighting an uphill battle to continue using these.
ATI provides binary drivers for their cards. There are *also* 3d open source drivers in DRI, of which the Radeon 9200 is the newest well-supported card. The Radeon 9200 is currently the best choice for a 3d card for a Linux/BSD user. I have heard claims that the Linux drivers are slightly slower than the Windows drivers. Also, keep in mind that the 9200 is *not* the latest-and-greatest from ATI.
Matrox (a) has fallen behind in 3d performance and (b) used to have *excellent* open source support for their cards in the G200 through G450 era. I bought both a G200 and a G450, and the support at the time was better than for any other manufacturers. John Carmack was involved with some of their driver work (John, if you read this, you work was much appreciated). Their Parhelia line has binary-only drivers, supports only Red Hat, and seriously lags kernel releases.
The bottom line is that if you want to get a 3d card for Linux use, the Radeon 9200 with DRI drivers is the way to go. It's not the fastest card ATI makes, but it can currently run all existing 3d software for Linux without speed problems -- Linux may lag Windows in open source 3d support, but also in games, and NWN and Tribes 2 easily run smoothly on the card.
May we never see th
...but you could consider Intel Extreme Graphics 2. It's not great, but it's fully supported under XFree86 with the i810 drivers (they won't hinder performance - the i810/815, iEG, and iEG2 are all compatible, but performance is improved with each generation).
"I was going to buy Matrox for my upgrade on the premise that nvidia and ati's binary-only behaviour was annoying, but now I see that Matrox is joining the binary-only club too. :("
Now, what's keeping 3COM, Intel, Adaptec, Matrox, VIA, or any of the mired of other companies from going binary? They obviously will not lose customers judging by the responses we've seen so far. The die-hards (RMS Zelots?) will stick with what they already have/reverse-engineer (Be-Fan says we can't do it with the Nvidia drivers). An interesting battle, no? At least we'll have our "free" OS to do with as we wish, without anyone tell us what to do.
"nvidia's binary driver breaks my tv capture card(ati wonder) for some strange reason(geforce4200ti, tv works using nv). I can't investigate and solve the problem because I don't have the specs or source."
Did I mention that Nvidia's Windows drivers have Macrovision for those with TV out? And the Creative SB Windows drivers disable the digital out (no perfect copies).
Can't wait for DRM and the rampaging MPAA/RIAA to come to Linux, and we left the door open for them.