© 1998 Michael J. Hammel |
|
|
Video cards have come a long way in the past 2 years. Back then a video card was considered top of the line if it handled generic 2D acceleration features and state of the art encompassed the first of the new generation of 3D accelerators. These days 2D acceleration is common place and an expected feature of video cards and 3D acceleration is not only more common but more standardized. In this article we'll take a look at finding off the shelf video cards, that is video cards available from your local computer retailers or by mail order, and how to match those cards with an X server.
A little background
X servers are the device drivers used in conjunction with video cards in order to display your windowing system under Linux. Unlike the Microsoft world, where each card has its own driver, X servers tend to support many cards with a single driver. For example, the XF86_SVGA driver from the XFree86 distribution supports many older SuperVGA cards plus the more advanced Matrox Millenium and Mystique cards. Xi Graphics AcceleratedX server supports all of its cards with a single server that uses dynamically loaded modules depending on which video card you happen to be using and have configured. The trick is to understand which X server to use for the video card you are using.
Since X servers work with more than one card, they tend to list which video chipset they support. This is because many cards use similar chipsets and it is difficult for X server vendors, who up until recently had to work independent of the video card manufacturers much of the time, to keep up with all the different video card product names. Video card manufacturers tend to use the same, relatively small, set of video chipsets for their own product lines so having a single X server to handle that entire line makes a little more sense than having a individual drivers for every card.
Why am I doing this?
Ordinary users don't really understand about chipsets, they only see the card names from manufacturers: ATI Graphics Pro Turbo or Hercules Dynamite, for example. Additionally, video card manufacturers are notorious for NOT specifying the chipsets they use in their cards. They also tend to try and hide minor video card differences with name changes and pricing differences - its called carrying a product line. Video hardware vendors are used to delivering device drivers with their hardware for the traditional desktop user, ie Microsoft users.
X servers are written by individuals or groups, outside the hardware vendors control, with chipsets in mind. The servers (we call them servers because of the underlying X Windows architecture, but they are still just device drivers) are distributed on their own, not with the video hardware. This is mostly because hardware vendors, in the past, really saw little market demand for doing the work on the X servers themselves. So external entities had to do the work on their own.
So video hardware vendors sell video cards based on product names without X servers and X server software is written and described in terms of chipsets and not specific video cards. Confused? You're not alone. So how does an end user resolve these different approaches and find a working combination of video card and X server? This article won't give absolute answers for all the cards available off the shelves, but it will help educate new users as to how things work and what to look for when preparing to make a new video card purchase.
I assume here that you're reading this with an intent to purchase a new video card sometime in the near future, or that you have done so in the recent past and are trying to figure out how to make it work under X Windows with Linux.
What's the deal with all the 3D stuff?
3D hardware accelerators are hot items. You can hardly find video cards on the shelves of your local retailers that don't mention some form of 3D support or features. But what exactly is 3D? And more important, do you need it?
3D cards often provide at least some of the following hardware acceleration features:
Fast computation of 3D objects.
3D objects are made up of any number of various sized triangles. Computing the position and size of these triangles is very computationally expensive. 3D video cards can help speed up those computations.Texture map memory.
You'll often here individual units of texture memory referred to as texels. These are used to speed up the mapping of images to flat surfaces which can be used as a trick for high speed motion. Its very slow to generate a tree, for example, from a large number of individual triangles than from one large flat one with a picture of a tree on it. Done properly you might not even be able to tell this trick has been used.Z-buffering.
The mapping of images into 3D space in video memory. If you think of 2D space as the XY axis of a coordinate plane then the Z axis would be used to show distance in 3D space.Flat and Gouroud shading.
The latter being what gives a smooth 3D apperance to a sphere, for example.Shadow mapping.
This allows programmers to associate shadows with objects without having to calculate the shadow at run time. Shadows are cast via calculations of how light moves in 3D and that can be very computationally expensive.Bilinear filtering.
A technique that reduces artifacts when small graphics are scaled up.Many cards provide far more features than this as well, all of which have to do with taking an object described in 3D space and displaying it (and other objects) on a flat 2D monitor. Older 3D cards - those over a year or so in age - often had their own proprietary interface in order to access the accelerated features. This has been superceded recently by more popular interfaces (called API's for Application Programming Interfaces) such as OpenGL (or Mesa, a free implementation of OpenGL) or the 3Dfx Glide interface.
Making use of 3D hardware acceleration requires that you have
There are also cards
that support Microsoft's Direct3D API, an alternative to the OpenGL API.
Don't bother with these cards if you are looking for 3D acceleration because
as of now there are not only no drivers for them, there aren't any applications
on Linux that speak this API language.
3D video cards under Linux normally work in one of three ways:
If your X server supports the 3D card directly you can skip using two cards and run just the 3D card. In some situations you won't get the 3D acceleration but will get to use the generally faster 2D features of that card. And there are some X servers that will provide the 3D acceleration too, so you get the best of both worlds.
Hardware issues of 3D cards
You can run PCI or the new AGP buses with these 3D video cards. AGP is Intel's Advanced Graphics Port which allows faster throughput between the CPU and graphics cards.
Older cards used VRAM or EDO DRAM memory. Newer cards run the faster SVRAM or SGRAM. Not being hardware literate all I can say is that the SGRAM is reported to be much faster due to the way it is more closely tied into the video processor than the other forms of video memory. I asked Jeremy Chatfield at Xi Graphics and Paul Sargent at 3Dlabs for an explanation of these memory types. Jeremy provided the following answer:
Basic differences:
Some 3D cards also offer NTSC output plugs so you can connect the card to a TV, presumably to get a larger physical screen (although at the same resolution). I've never seen this however so can't really say much about its use.
Do you need 3D acceleration?
For the most part, no. Outside of games or visualization software it doesn't come into play much for the average Linux user. For example, it doesn't speed up word processing, the Gimp, or POV-Ray renders (which are CPU and memory bound). If you *are* into games or need off the shelf 3D support for visualization software (ie realtime 3D rendering with OpenGL or Mesa) then it can provide significant increases in speed for rendering operations. The problem is that support for the 3D hardware acceleration is just beginning to show up within the X servers themselves and running concurrent video cards (one for 2D and one for 3D) is not for the technically challenged.
Instead, look to these cards for their future potential. Cards that support either OpenGL (which is likely to be around for some time) or 3Dfx's Glide API (which is quite popular with game enthusiasts on non-Unix platforms) are your best bet right now. Additionally, they're increased 2D acceleration will be a significant benefit to you in your day to day use.
What happened to 2D?
Nothing, its still there and basically everybody supports it now. 2D accerlation has to do with generic line drawing techniques, which speeds the drawing of windows for example. Any modern card - something made within the past 2 years - will support 2D acceleration. The advantage with newer cards is that they use faster memory and better acceleration for these 2D effects so ordinary use of windowing applications will look and feel much improved over older cards.
Most cards now come with 1M or 2M of memory which will get you resolutions of about 1024x768 @ 65K colors. But the cost of these cards has dropped drastically in the past year or so and getting a card with 4M of video memory will get you 1280x1024 @ 16 million colors, certainly good enough for most applications and reasonably affordable monitors. Go higher (more memory - 8Mb or higher) only if 3D work is of real importance to you or if you expect to have very large displays running at full 24-bit color depths.
What are currently the popular chipsets?
What is on the shelves now?
Note that this is only based
on what I found at three local retailers (although all three are national
in scope) or via C|Net's Computers.com.
Also, prices vary depending on the amount of video memory on the card,
so just use these prices as guidelines. All prices are in US dollars.
I've tried to list the chipsets for these cards if I could find them.
Finally, these cards may be PCI, AGP or both - you'll just have to check
on that aspect on your own.
Video Card | Chipset | Price |
ATI All in Wonder | 3D Rage II | $125 |
ATI All in Wonder Pro | 3D Rage Pro | $151 |
ATI Xpert@Play PCI and AGP | 3D Rage Pro | $150 |
ATI Xpert 98 | ATI Rage Turbo | $90 |
Creative Labs Graphics Blaster Extreme, Professional Edition | Permedia 2 | $183 |
Creative Labs Graphics Blaster Extreme, Value Edition | Permedia 2 | $53 |
Creative Labs Graphics Blaster | RIVA TNT | $175 |
Diamond Stealth II S220 | Rendition Verite | $100 |
Diamond Monster 3D | Permedia 2 | $250 |
Diamond Monster II | Voodoo 2 | $250 |
Diamond Viper V330 | RIVA 128 | $130 |
Diamond Fire GL 1000 | Permedia 2 | $??? |
Diamond Fire GL 1000 Pro | Permedia 2 | $144 |
Diamond Stealth 2000 | S3 ViRGE | $??? |
Elsa GLoria Synergy | Permedia 2 | $120 |
Elsa WINNER 2000 / Office | Permedia 2 | $??? |
Hercules Dynamite 3D/GL | Permedia 2 | $180 |
Hercules Thriller 3D | Rendition V2200 | $109 |
Hercules Terminator 2X/i | Intel I740i | $80 |
Hercules Stingray 128 3D | Unknown | $160 |
Hercules Terminator Beast | S3 Savage 3D | $120 |
Jaton S3 Video | S3ViRGE/DX | $40 |
LEADTEK WinFast 2300 | Permedia 2 | $??? |
Matrox Mystique G200 | MGA-G200 | $150 |
Matrox Millenium G200 | MGA-G200 | $150 |
STB Velocity 128 | RIVA TNT | $150 |
STB Velocity 4400 | RIVA TNT | $200 |
Its interesting to note the differences in different cards from the same companies. For example, upon examination of the packaging for the Matrox Mystique and Millenium the only differences that I could find where that the Mystique runs at 230Mhz and has S-Video and Composite outputs whereas the Millenium runs at 250Mhz and does not have S-Video or Composite outputs.
Again, these are the off the shelf, "affordable" cards. Really high end cards can run into the $2000-$3000 range and higher and chances are slim that most of those cards have X server support yet. And there are plenty of other cards out there too - like I said, vendors love to change minor details and release it as a whole new product.
What do the various vendors currently support?
Ok, so now you know a little about what video cards are currently available and a little about the 2D/3D technology being used in them. How does this map to the available X servers? That depends on which server vendor you want to use. In this article we consider 4 vendors: XFree86, S.u.S.E (for their binary only versions that currently require non-disclosure agreements), Xi Graphics and MetroLink.
Of all the vendors, MetroLink made it the easiest to find card names from their web site. SuSE's site was pretty good about it too. Xi Graphics has a fairly decent lookup system, but they mix chipsets with board vendors and if you don't know what you're looking for it can be a bit confusing since they support so many variations. XFree86, although they have plenty of documentation, do not make it simple to match a card by name with a driver. Give them credit for writing great software - now they need someone to organize and collate all that documentation on their web site for the average user.
Red Hat has a hardware compatibility list, but its not obvious where to find it. Try "JumpWords" at the bottom of main page, choose "Hardware" and then the distribution you are currently running. These lists are by far better than any of the X server vendor lists because they tell you specifically which card goes with which server. Since Red Hat is shipping the XFree86 server this list is applicable to both S.u.S.E. and XFree86. Note: if you get to this list via the Red Hat main site (www.redhat.com) and you want to get a printable version of that page, select "No Frames" at the bottom of the page. The link below, however, will take you straight to the list.
http://www.redhat.com/support/docs/rhl/intel/rh51-hardware-intel-11.htmlCaldera's site does not have any such obvious hardware compatibility list. A search for "hardware compatibility" returns as the first entry a link to video card compatibility list for XFree86 - but the link is invalid! They definitely need to work on their site structure. Neither Slackware (via Walnut Creek's web site) nor InfoMagic are set up to provide this sort of user information.
XFree86
This one is actually the easiest of the bunch, but don't start your search on the XFree86 site to figure it out. Instead, take a look at Red Hat's online list of supported hardware. They have video cards listed there sorted by which server supports which card.
Using the set of cards listed
previously, the following servers are expected to work (not all cards listed
previously were listed on the Red Hat supported hardware list):
Video Card | XFree86 Server (all prefixed with "XF86_") |
ATI All in Wonder | Mach64 |
ATI Xpert@Play | Mach64 |
Creative Labs Graphics Blaster Extreme, Professional Edition | SVGA |
Creative Labs Graphics Blaster Extreme, Value Edition | SVGA |
Diamond Viper V330 | SVGA |
Diamond Stealth 2000 | S3V |
Elsa WINNER 2000 / Office | S3V |
Hercules Dynamite 3D/GL | SVGA (maybe) |
Hercules Terminator 2X/i | SVGA (maybe) |
Hercules Stingray 128 3D | SVGA |
Jaton S3 Video | S3V (reported from one respondent) |
Matrox Mystique G200 | SVGA |
Matrox Millenium G200 | SVGA |
STB Velocity 128 | SVGA |
STB Velocity 4400 | SVGA (maybe) |
You can, additionally, look
on the XFree86 site to get more information. The following list is
one I gathered from perusing the www.xfree86.com
web site. Note that many of the listed cards are older models and
not typically what you'll find on the shelves these days. Still,
you may be able to purchase some of these by mail order.
Servers | Cards |
SVGA | ATI: GAWonder series:
VGAWonder V3, VGAWonder V4, VGAWonder V5, VGAWonder+, VGAWonder XL, VGAWonder
XL24, VGA Basic 16, VGA Edge, VGA Edge 16, VGA Integra, VGA Charger, VGAStereo
F/X, VGA 640, VGA 800, VGA 1024, VGA 1024D, VGA 1024 XL, VGA 1024 DXL,
VGA 1024 VLB
Matrox: Millennium (MGA2064W) with Texas Instruments TVP3026 RAMDAC. It has been tested with 175MHz, 220MHz and 250MHz versions of the card with 2MB, 4MB and 8MB WRAM. Millennium II (MGA2164W) both PCI and AGP with Texas Instruments TVP3026 RAMDAC. It has been tested with 220MHz and 250MHz versions of the card with 4MB, 8MB and 16MB WRAM. Mystique with 170 and 220 MHz integrated RAMDACs (both MGA1064SG and MGA1164SG). |
Mach8 series | Graphics Ultra, Graphics Vantage, VGAWonder GT (None of the 8514/Ultra and 8514 Vantage series is supported at this time) |
Mach32 series | Graphics Ultra+, Graphics Ultra Pro, Graphics Wonder, Graphics Ultra XLR, Graphics Ultra AXO, VLB mach32-D, PCI mach32-D, ISA mach32 |
Mach64 series | Graphics Xpression, Graphics Pro Turbo, Win Boost, Win Turbo, Graphics Pro Turbo 1600, Video Xpression, 3D Xpression, Video Xpression+, 3D Xpression+, All-In-Wonder, All-In-Wonder PRO, 3D Pro Turbo, ATI-TV, XPERT@Play, XPERT@Work, XPERT XL |
S3 | Orchid Fahrenheit 1280+
VLB
STB PowerGraph X.24 S3 (ISA), Pegasus VL, Velocity 64 Diamond Stealth 24 VLB, Stealth 64 DRAM ELSA Winner 1000 ISA/EISA (``TwinBus'', not Winner1000ISA!!), Winner 1000 VL, Winner1000PRO VLB, Winner1000PRO PCI #9 GXE Level 10, 11, 12, 14, 16, GXE64 - PCI, Pro VLB, Pro PCI, Trio64, FX Motion 771 |
S3V (ViRGE) | Supports PCI hardware, ViRGE, ViRGE/DX, ViRGE/GX, ViRGE/GX2, ViRGE/MX, and ViRGE/VX, but no specific cards were listed. Newer support has been moved to the SVGA server. |
P9000 | Diamond Viper VLB and PCI cards |
This is not a complete list, but does cover most of the off the shelf cards you may run into at local retailers or on the Internet.
All binary versions of the
XFree86 servers can be found at ftp://ftp.XFree86.org/pub/XFree86/current/binaries/<OS>
For example, Linux/Intel
would be under ftp://ftp.XFree86.org/pub/XFree86/current/binaries/Linux-ix86/Servers/.
Additionally, a properly
installed Linus system with the XFree86 run time system (which includes
X11 libraries, clients and X servers) should contain the file /usr/X11R6/lib/X11/Cards
listing the current known set of supported cards.
S.u.S.E
SuSE (www.suse.com), which is known primarily as a Linux distributor more than as an X server vendor, has a searchable database of graphics cards. From their main page choose "Hardware DB", then "Graphics Cards" from the scrollable list of topics. The DB search results are fairly informative but are titled in German. Don't let that throw you since the real info you're looking for is basically language independent when its displayed.
Since S.u.S.E. ships the
XFree86 servers along with a few of their own servers (usually developed
initially under NDA until S.u.S.E. can get them into the XFree86 distribution),
I'll just list those servers for which I could not find an XFree86 server
specifically listed by Red Hat or the XFree86 web site.
Card | Server |
Diamond Stealth II S220 | rendition |
Diamond Fire GL 1000 Pro | glint |
Elsa GLoria Synergy | glint |
Hercules Thriller 3D | rendition |
LEADTEK WinFast 2300 | unknown - its listed but no server is given |
Additionally, S.u.S.E. servers
are based on XFree86 servers but with extended features. These updates
will be or have already been incorporated into the next XFree86 releases.
XFCom_Matrox
Matrox Millennium G200 AGP Matrox Millennium II (PCI und AGP) Matrox Millennium Matrox Mystique |
XFCom_3DLabs server | ||
GLINT MX + GLINT Delta +
IBM RGB 526DB:
ELSA GLoria L/MXGLINT 500TX + GLINT Delta + IBM RGB 526DB: ELSA GLoria L |
GLINT
MX + GLINT Delta + IBM RGB 640:
ELSA GLoria XL
ELSA GLoria S |
PERMEDIA-2: ELSA GLoria Synergy |
Xi Graphics AcceleratedX
Unlike the architecture of the XFree86 project, the two commercial server vendors deliver what is essentially a single driver with support for all video cards handled through loadable object modules. The essential difference here is that with the commercial vendors you load their package and then configure based on card configurations without having to worry about which module to load. Its a one-step difference, essentially, since with XFree86 you need to know ahead of time which server to configure. With the commercial vendors there is really just the one server, but you still have to give it much of the same configuration information you have to give XFree86.
Unlike XFree86 and MetroLink, Xi Graphics lists the Chip Type used in cards by their technical numbers instead of their names. You can see this if, under Xsetup, you select a Graphics Board and then hit TAB. The small window that opens lists various card information, such as the ATI264GT Chip Type for the ATI All In Wonder card. Although graphics cards vendors don't always list the names of the chipsets (like 3D Rage or Rendition Verite), they are even less likely to list the Chip Type. Fortunately, the set of named boards in Xi Graphics lists is quite large and the need to find a specific chipset may not be quite so important.
The following cards, from the list of cards given previously, were found in the Xsetup tool under Graphics Boards for the 4.1.2 server:
ATI All in Wonder (3D Rage
II)
ATI All in Wonder Pro (3D
Rage Pro)
ATI Xpert@Play PCI and AGP
(3D Rage Pro)
Diamond Fire GL 1000 (Permedia
2)
Diamond Fire GL 1000 Pro
(Permedia 2)
Elsa GLoria Synergy (Permedia
2)
Elsa WINNER 2000 / Office
(Permedia 2)
Hercules Dynamite 3D/GL
(Permedia 2)
Hercules Stingray 128 3D
LEADTEK WinFast 2300 (Permedia
2)
The following cards were not found specifically by name, but they may be supported anyway using a configuration for a similar card. You need to check with Xi Graphics to be certain. Remember: these cards might only have minor differences from similar cards from the same vendor. However, since Xi lists these with Chip Types instead of chipset names, its not obvious that the card might work.
XFree86 does not currently support hardware accelerated OpenGL directly in their X servers. A release date for the official version of Xi Graphics hardware accelerated OpenGL has not been announced at the time of this writing.
Accelerated-X runs for $99.95 for US shipments, with upgrade pricing starting at $49.95. Xi Graphics can be found on the net at http://www.xig.com.
MetroLink MetroX
MetroLink has also announced hardware acceleration for OpenGL with their "Extreme3D" product. This product is expected to ship in December 1998, according to the press release at http://www.metrolink.com/extrem3d.html. However, I was told by Chris Bare at MetroLink that its more likely to be January 1999. The press report states that support will be available for the following chipsets:
Card | Chipset |
ATI 3D RAGE
ATI 3D RAGE II ATI ALL-IN-WONDER PRO AGP ATI ALL-IN-WONDER PRO PCI ATI Graphics Pro Turbo ATI Graphics Ultra ATI Graphics Xpression ATI Mach32 ATI Mach64 ATI VGA STEREO-F/X ATI Winturbo PCI ATI XPERT@Play ATI XPERT@Play AGP ATI XPERT@Work ATI XPERT@Work AGP Diamond Fire GL 1000Pro Diamond SpeedStar 24X Diamond SpeedStar Pro SE Diamond Stealth 24 Diamond Stealth 32 Diamond Stealth 3D 2000 Diamond Stealth 64 Diamond Stealth 64 DRAM Diamond Stealth 64 DRAM (SDAC) Diamond Stealth 64 Graphics 2000 Series Diamond Stealth 64 Graphics 2200 Diamond Stealth 64 VRAM Diamond Stealth 64 Video 3000 Series Diamond Stealth 64 Video VRAM Diamond Stealth Video (SDAC) Diamond Stealth Video 2000 Series Diamond Viper (110 MHz RAMDAC) Diamond Viper (135 MHz RAMDAC) ELSA GLoria Synergy ELSA Victory 3D ELSA Winner 1000 TRIO/V ELSA Winner 2000 AVI ELSA Winner 2000 PRO/X-2, -4 ELSA Winner 2000 PRO/X-8 Matrox Marvel Matrox Marvel II Matrox Millennium Matrox Millennium II AGP Matrox Millennium II PCI (220 MHz) Matrox Millennium II PCI (250 MHz) Matrox Mystique Matrox Mystique 220 Number Nine GXE64 Number Nine Imagine 128 Number Nine Imagine 128 Series 2 Number Nine Motion 531 Number Nine Motion 771 Number Nine Revolution 3D Number Nine Vision 330 Orchid Kelvin 64 STB NITRO 3D STB/Symmetric GLyder MAX-2 |
3D RAGE
3D RAGE II 3D RAGE PRO 3D RAGE PRO Mach64 Mach8 Mach64 Mach32 Mach64 ATI 28800 Mach64 3D RAGE PRO 3D RAGE PRO 3D RAGE PRO 3D RAGE PRO PERMEDIA 2 Western Digital 90C31 Cirrus 5430 S3 801 ET4000/W32p S3 ViRGE S3 964, Bt485KPJ135 S3 Trio64 S3 864, S3 SDAC S3 864, S3 SDAC S3 Trio64 S3 968, IBM RGB526CF22 S3 968, TI 3026-175 S3 968, TI 3026-175 S3 868, S3 SDAC S3 868, S3 SDAC P9000 P9000 PERMEDIA 2 S3 ViRGE S3 Trio64V+ S3 968, TI 3026-175 S3 968, TI 3026-220 S3 968, IBM RGB528CF25 ET4000 ET4000 MGA Storm MGA 2164, TI 3026-250 MGA 2164, TI 3026-220 MGA 2164, TI 3026-250 MGA 1064 MGA 1164 S3 864 Imagine 128 Imagine 128 Series 2 S3 868 S3 968 Ticket to Ride S3 Trio64 Cirrus 5434 S3 ViRGE/GX PERMEDIA 2 |
MetroLink's web site is at
http://www.metrolink.com.
Platform specific information for Linux can be found at
Intel: http://www.metrolink.com/metrox431-intel/cardlist4.3.1.html
Alpha: http://www.metrolink.com/metrox431-alpha/cardlist4.3.1.html
The MetroLink site currently lists their Metro-X Enhanced Server Set 4.3 for $39 and support it on both Intel/x86 and Alpha based Linux systems. With the price drop to $39, the upgrade pricing policies have been dropped by MetroLink.
The future
C|Net reported recently that there were some 40 or so computer graphics chip vendors in the 3D market today. This is far more than the industry can sustain and an eventual consolidation is inevitable. Furthermore, all three of the major CPU vendors - Intel, Cyrix and AMD - currently have plans for integrating graphics functions into the CPU itself. The graphics card world is changing fast and its not quite clear what effect this will have on end users. If you work in with computer graphics it will be necessary to keep abreast of upcoming changes.
A Final Word, or Words
There are a couple of things I didn't cover in this artle:
MPEG - I don't know if X servers support hardware decoding of MPEGs, animated files that are highly compressed, yet but I suspect they don't. You can view these animations using software to decode the MPEG. This works, but software decoding will always be slower than hardware decoding.
Laptops - Laptop vendors, at least in the recent past, didn't like to give out too much information on their video subsystems because it was one way to maintain a product differentiation with competitors. More support has come recently and you can expect to see better information on which laptops are supported under X Windows in the coming months. For now, check out the following pages: http://www.cs.utexas.edu/users/kharker/linux-laptop/
NeoMagic chipsets are being used in many laptops these days. XFree86 (via either Red Hat and/or S.u.S.E) and Xi Graphics definitely have servers for these chips that are known to work on at least some laptops. MetroLink may as well, but I didn't check on this since I wasn't going to concern myself too deeply with laptop issues.Its hard to keep up with vendor naming schemes and matching them to chipsets. Thats why X server vendors don't do it that often. Its a situation that has developed due to the fact the PC video cards grew up in a world without X Windows, and X servers grew up (originally, quite some time ago) in a world without PCs. Its the nature of the beast, you might say. But things are changing now. With the acceptance of Linux in the corporate world you will begin to see video card vendors show much more interest in the X Windows world. How that will equate to users matching video cards with X servers remains to be seen, but I expect life to get much easier in the next year.
Confused? Me too, but its not that hard to digest when you think of it this way: You'll buy a 3D card because thats what on the shelves at retailers and you'll either have or not have support for the actual 3D acceleration. As long as a driver exists for the card you at least be able to run X Windows and nearly all the applications available for it.
If you're looking for a cheap card you can still find them on the Net. Take a look at Computers.com under their graphics and sound section and do searches by company name (e.g. "matrox"). You'll find a number of older 2D boards listed with links on where you can buy them. These cards run well under $100, some for as low as $30.
Acknowledgements
I'd like to thank a number of people for their assistance in putting this article together. Paul Sargent of 3Dlabs was especially helpful, providing definitions and information on what I'm sure to him must be real beginner questions. Jeremy Chatfield provided similar help. Along with these two, I received helpful bits of information from Dirk Hohndel of S.u.S.E, many members of the Boulder Linux Users Group, Federico Mena Quintero and Miles O'Neal.
Dirk Hohndel (hohndel@suse.de) asked that I mention the outstanding support given to XFree86 by ELSA. Other companies that have provided support to them include ATI, Number 9, Matrox, and Diamond.
Sites for further reading:
3Dfx drivers in RPM format are available at: http://glide.xxedgexx.com/3DfxRPMS.html
The 3Dfx howto (http://www.gamers.org/dEngine/xf3D/howto/3Dfx-HOWTO.html) is an excellent document for information about using 3D hardware accelerated boards with Linux. It focuses on 3Dfx boards, but describes some of the hardware related issues that other boards will encounter, such as AGP vs PCI. Definitely a good read for anyone looking to get 3D hardware acceleration working.
Xi Graphics: http://www.xig.com
MetroLink: http://www.metrolink.com
XFree86: http://www.xfree86.org
S.u.S.E.: http://www.suse.com
Red Hat: http://www.redhat.com
Some good sites for hardware specific information (although likely to be somewhat Microsoft oriented):
Sorry I didn't reply sooner, we had a pesky hurricane to deal with and were closed Thursday and Friday.Presently, we do not support any tablets through X Input. Our server supports X Input drivers as loadable modules and we have technical specs available so that third parties can write drivers. At present no one has attempted to port the Wacom tablet driver to our new architecture (BTW, this new loadable design will be donated to Xfree86 for their 4.0 release)
Our configuration tool includes a touch screen calibration utility that works in graphics mode.
Here's the list of X Input drivers we currently support:
- Touchscreens
- Carroll SFP1 Touch Screen
- Carroll SFP2 Touch Screen
- MicroTouch Touch Screen
- ELO Graphics 2300 Serial Touch Screen
- ELO Graphics 4002 Serial Touch Screen
- Lucas/Deeco Serial Touch Screen
Here's the URL for info on
the 3D devices:
http://www.metrolink.com/support/3dinput.html
© 1998 by Michael J. Hammel |