Hardware and Peripherals

Section 1 General Notes

Machines

Section 2 Input/Output Cards

Peripherals

Chapter Summary


In this Chapter:

Input/Output Cards
   Video Cards
   Video Capture/Tuner Cards
   Sound Cards
   Network Cards
   SCSI Cards
   Internal Modems

Peripherals
   Printers
   Monitors
   Pen Tablets
   External Modems
   Scanners
   Blinky Lights
   3Com PalmPilots
   Joysticks

Chapter Summary


Input/Output Cards

The realm of I/O (input/output) cards is both tricky and critical for Be. Market forces are just about the only thing that prevents the PC hardware universe from devolving into an absolute chaos of incompatibility. Nearly every single card ever made requires its own driver, and these drivers need to be compiled for each operating system the card is to work with. Fortunately, driver development became much simpler with the release of new APIs in BeOS R4, which means that drivers for new cards should begin to appear more quickly, as developers won't be quite as dependent on Be's limited resources and the task will be less mysterious.

In one sense, video, sound, and network cards fall into the same general bracket: All three are items that users frequently upgrade themselves, all three require very specific drivers in order to operate properly, and all three require careful compatibility checks with Be's hardware ready list. For cards that are supported, all three are in general much easier to get working with BeOS than they are under Windows or Linux. BeOS has very intelligent mechanisms for assigning IRQs and memory addresses, and conflicts are rare.

Video Cards

More than any single card in your system, it's critical that your video card be fully supported--because the application server (the app_server) depends completely on being able to communicate with a supported video card, BeOS won't boot without it. However, almost every video card in existence includes support for a low-resolution "Super VGA" mode, which requires little technical wizardry to get working. BeOS includes a generic SVGA driver (also called a "stub" driver), which will go into effect automatically any time a genuine driver for your installed card is not found. You'll know this has happened if BeOS appears in grayscale and you see a message like the one in Figure 1 displayed in NetPositive.

Figure 1
If BeOS appears in grayscale and displays this message in NetPositive, you'll know that the system wasn't able to locate a driver for your video card.

Picking the right video card for BeOS depends a great deal on what you intend to do with the system. If you use BeOS primarily as a general-purpose operating system, spending most of your time working in productivity applications, building Web pages, and experimenting with 2D graphics, chances are you'll be more than happy with an inexpensive but high-quality card from a manufacturer like Matrox. Remember: All video drivers written by Be support 2D hardware acceleration automatically. If, on the other hand, you expect to spend a lot of time in 3D environments, you have more choices to make. Full-screen gaming, for example, requires extremely fast manipulation of a relatively small number of polygons. 3D rendering and CAD applications, on the other hand, don't need to send your rocketship screaming down textured hallways--they need to render zillions of tiny polygons at once for fine-grained accuracy and detail, but they don't need to move around as quickly as do the graphics in a game like Quake. Study up on graphics cards and make your decision based on the kind of work you do, not on what the first person you talk to tells you is today's hottest card.

In my personal opinion, too many people spend too much time obsessing about the nuances of video cards when they would be perfectly happy with a $50 Matrox. Really. The so-called "middle ground" cards are capable of performance that far exceeds most people's needs.

On Hardware Acceleration and OpenGL All of the video drivers developed by Be offer some level of support for 2D hardware acceleration. As support for 3D acceleration rolls out, it will be in the form of the OpenGL specification, at which point updated drivers for OpenGL cards should be made available as downloads and in future distributions of the operating system. The mere fact that a given video card supports the OpenGL specification does not necessarily mean that you'll get OpenGL acceleration, since this is a separate aspect of writing video drivers. An OpenGL-compatible video card will, however, still function as a normal video card given the appropriate video driver.

If you're way serious about video performance, you'll want to check in with the new (at this writing) AGP, or Accelerated Graphics Port, cards. These require a dedicated AGP slot on the motherboard, as they transcend PCI's throughput capabilities. The AGP slot essentially gives the graphics controller direct access to the system's main memory (which is important because AGP stores 3D textures in the system, rather than in video memory). The 32-bit AGP bus runs at 66 MHz, for a graphics throughput ceiling of 266 megabits/second (and optional, faster modes running at 533 Mbps or 1.07 Gbps).

Video Capture/Tuner Cards

In keeping with the goals of the MediaOS, there are a number of video capture and TV tuner cards available that work well in BeOS. One of the least expensive ways to get yourself set up to watch signal from your television, VCR, or video camera on your monitor is the Hauppauge (pronounced "hop-pog") WinTV card, which uses the popular bt848 chipset (or variant thereof) and has had BeOS drivers for a long time now. Be's Steve Sakoman maintains an independent site where you can go to find the latest updates to his suite of BeOS video capture and playback utilities that work with WinTV and other cards. See Chapter 15, Media Applications, for more on working with these tools, which use the BDirectWindow API (see Chapter 2, Meet the System) to send video data straight to the heart of the video card for awesome performance.

Sound Cards

As with video cards, a sound card should be chosen with an eye, er, ear to the kind of work you'll be doing with it. For most of us, the middle-ground cards from Creative Labs will more than suffice for playing audio CDs and MPEG files, sound-mixing experiments, Internet audio, and the like. If, on the other hand, you intend to use BeOS as a full-on multitrack mixing station, you'll want to spring for one of the high-end, full-duplex models supported by BeOS. Again, do your research online and make your choice accordingly, but don't be snowed by "geek pressure" into buying more card than you need. Remember that BeOS's native efficiency will draw more performance out of your hardware than you'll get under other operating systems!

When looking for a sound card a cut above the average, make sure you find one marked "full duplex." This essentially means that the card will be capable of handling incoming and outgoing audio streams simultaneously. While most half-duplex cards can "fake" full-duplex functionality given the right driver support, there's no substitute for doing it right in the hardware itself. Get a full-duplex card if you're serious about multitrack audio mixing and will need high-quality audio while running devices into your audio card and getting audio signal back out simultaneously.

On Sound Card Latencies As described in online chapter, The Kits, BeOS is marvelously efficient at addressing sound cards with minimal latency. In other words, audio applications can talk to audio hardware with less lag time than is possible with the same card running in the same machine under a different operating system. While latencies of 25 milliseconds are not uncommon under MacOS and that number can go as high as 30 ms under Windows, BeOS can talk to identical hardware with around 6 ms latency. Not only that, but Be engineers have indicated that there's still room for improvement in this area, and that future versions of the system may get this latency down to around 1 or 2 ms, if current laboratory tests hold up in the real world.

Clearly, these kinds of numbers make sound card manufacturers very excited, which could mean some very good things for BeOS sound card driver development in the future

Network Cards

Again, people will argue ad nauseum about the nuanced merits and demerits of various network cards, but for 99% of us the matter is simple: Either it works under BeOS or it doesn't, and it runs either at 10 Mbps or at 100 Mbps (see Chapter 9, Networking). We've heard almost universal success stories about generic PCI NE2000 cards. The NE2000 specification is so common that it's supported by every operating system under the sun, and PCI means BeOS will have a much easier time allocating resources to it without your intervention.

Many network cards use common chipsets, so be sure to use the name printed on the chips themselves when checking against Be's Hardware Ready List for compatibility--just because you don't find your particular brand of card, it doesn't necessarily mean your card won't work under BeOS.

SCSI Cards

As of R4, BeOS brings long-awaited support of SCSI (Small Computer System Interface, pronounced "scuzzy") devices to BeOS/x86 (SCSI has always been supported on the PowerPC side), allowing owners of the industry's most common SCSI adapters to use internal and external hard drives, removable cartridges, and peripherals such as scanners. As of R4.0, cards from Adaptec, Symbios, and BusLogic were supported. Others may follow in the future.

Because BeOS is capable of both reading from and writing to the MacOS and Windows filesystems (and Linux with the freely available ext2 filesystem add-on), you should be able to plug your SCSI Zip, Jaz, or external drive enclosures in and enjoy instant access to all of your old system backups, image and movie libraries, or what have you. You can monitor the status and configuration of SCSI devices attached to your system via the SCSI Probe utility in your Applications folder. SCSI support in BeOS isn't limited to "secondary" devices, either--BeOS is fully capable of booting from SCSI devices as well.

While SCSI has a longstanding reputation of being far faster than IDE, the rapid progress of IDE's throughput capabilities, combined with BeOS's radically efficient and multithreaded filesystem, has greatly narrowed the performance gap between the two. In fact, more than one Be engineer has claimed that some IDE setups actually offer better performance than some SCSI setups when it comes to the kinds of tasks BeOS does best: tossing around large media files, synchronizing audio and video tracks, and the like. Nevertheless, SCSI still has its advantages, such as the ability to hang up to seven devices from a single adapter. In addition, SCSI drives are often manufactured to higher standards than are IDE drives, which means a longer MTBF (mean time between failure).

The jury may still be out on SCSI versus IDE in BeOS, but one thing is certain: Don't think you can't do high-throughput digital audio/video editing with IDE drives--you absolutely can. Remember: BeOS is designed to bring high-end workstation performance to consumer-level machines.

Using your scanner with BeOS requires additional drivers and/or software. At this writing, none was available for testing, though we understand that at least one party is hard at work in this field and you may see scanner support for a few popular models by the time you read this.

Search BeWare for "SCSI" and you'll find a handful of software that can be used for saving data to SCSI tape devices.

Internal Modems

Fortunately, internal modems do not require additional drivers--as long as your motherboard's COM ports are properly recognized by BeOS (and they should be), there's no reason you should have any difficulty getting an internal modem to work with BeOS. As of R4, BeOS only supports modems on COM3 or COM4.

Some modems ship with additional software that lets you control advanced features of the modem, such as telephone answering, X2 or Flex 56K support, or fax capabilities. While these modems will work fine as basic modems, don't expect to be able to take advantage of the card's advanced features in BeOS until the manufacturer or a third party builds BeOS-specific software to take advantage of them.

No WinModems As described in Chapter 4, Get Online Fast, software-based modems do not work with BeOS because they achieve their functionality by emulating true modem hardware in software. WinModems, as their name implies, work only under Windows (and only Windows 95/98 at that), and are a bad idea in general because they suck up CPU cycles and are unfriendly to alternative operating systems. The same applies to GeoPort software modems for the Macintosh.

Peripherals

BeOS doesn't recognize every peripheral device in existence, but it does a handsome job with a wide variety of the most common external devices. Some of the peripherals listed in this section require additional drivers, while others do not.

Printers

BeOS is fully aware of the standard (LPT) printer ports on PC hardware, and includes support for the Hewlett-Packard LaserJet and Apple LaserWriter printer families. Printers are set up and configured via the now-unified Printers preferences panel (previous to R4, this panel was split into AddPrinter and SelectPrinter). In addition to the natively supported printers you'll find in this panel, a variety of additional drivers have been created by third parties and are available on BeWare. Notably, the Epson printer driver offers an exceptional configuration interface and makes great use of attributes in the Be filesystem to help you monitor your printer queue.

If your system includes the faster ECP parallel port, you'll find it natively supported in R4. In addition, R4 also includes a new Print Preview option. If you'd like to see how your documents will appear on the printer without wasting paper, select Print Preview in the Printer preferences panel, then print normally from your application. Once the print job has been rendered, it will appear in a window you can use to evaluate your document's layout, margins, pagination, and other considerations before sending it off to the real printer. You can even use the Print Preview window's magnification options to zoom in or out on your document.

Figure 2
The third-party driver for Epson color and grayscale printers uses BFS attributes to log print jobs, so you can use the Tracker itself to monitor your print queue.

Monitors

Monitor support is not really an issue for BeOS--all Be has to do is support your video card, and the monitor comes along for the ride. Any multisync monitor that you have around should work fine with BeOS, though of course the usual quality caveats apply for monitors in general. When purchasing a new monitor, don't buy on specifications alone. If at all possible, make sure you can see in the store the actual monitor you'll be taking home. It's not enough to see a demo unit on the showroom floor and then take home one "just like it" in a sealed box, because individual units can vary widely from one to the next. Don't settle for a dot pitch of higher than .26, and go for the highest refresh rate you can afford. Don't even consider a monitor smaller than 17 inches.

Your monitor is your primary interface with your computer, and you interact with it all day, every day. In my opinion, the monitor is not a place to skimp just to save a few bucks. As with system memory, extra money spent on a good monitor is paid back to you every single moment your computer is turned on, not just when doing intensive tasks.

Multiple Monitors Support for multiple monitors is an important feature for many BeOS users, and it's important for Be as well. At this writing, multiple-monitor support was scheduled to make its appearance in R5, though this does not constitute a promise or guarantee. Because of the multiple-workspace capabilities built into BeOS, the question of the best way to implement multiple monitors involves some tricky design decisions. Should each monitor get 32 workspaces all to itself? Should the total number of workspaces be divvied up among the available monitors? Should it be possible for a single window to span more than one monitor or workspace? What happens to such a window if two monitors are set to operate at different resolutions? The answers to these questions are difficult to decide on and even more difficult to implement, but as always, Be is committed to "doing it right." When multiple-monitor support is in place, expect it to be implemented with elegance and logic.

Fixed-Frequency Monitors In contrast to the standard multisync monitor, which is capable of running at a wide variety of resolutions and refresh rates and can be set differently depending on the data being sent to it by the video card, there are also monitors out there that work only at resolution settings built into the monitor itself. These monitors (which are usually but not always antiques) do work with BeOS, but you won't get much performance out of them. This is true for a number of reasons. In order to be used, they need to be clearly identified by the operating system. Monitor identification protocols designed to handle this situation exist, but are not supported by BeOS. Another possible solution would be for BeOS to maintain a huge database of all of the fixed-frequency monitors in existence. Again, BeOS does not include such a database. As a result, when you boot a BeOS machine with a fixed-frequency monitor attached, the video card will simply send the monitor the last resolution information it knew about, which will have come from another operating system on the same machine. When used in this mode, the card will not use any of the acceleration features of the video card, and will instead use the CPU to shunt pixels around. The result is inefficient and possibly ugly. The short version: You probably don't want to use a fixed-frequency monitor with BeOS.

Pen Tablets

At this writing, no pen tablets (pointing devices that use a paper-and-pencil metaphor rather than the traditional mouse or trackball) had available BeOS drivers. However, thanks to the new driver API and Input Server in R4, we expect this to change quite soon. We do know that Be has been assisting third parties interested in pen tablet driver development. Keep your eye on BeWare for updates.

External Modems

Because external modems operate through standard serial ports (labeled as printer or modem ports on the Mac), support for them in BeOS has always been a cinch. Just plug in your modem, select an appropriate serial port in the Dial-Up Networking preferences panel, and you're done. In the case of modems that require separate "programming," use the included software under MacOS or Windows to configure the modem, then tell BeOS that the make and model is Other | Preconfigured Modem. There is no technical reason why such a modem should not work with BeOS. This applies to external ISDN terminal adapters and cable modems as well. You'll also find an option labeled "Generic ISDN TA" in the "Generic AT Commands" submenu of the Dial-Up Networking modem picklist. You may want to experiment with this option if you have throughput or connection difficulties.

Scanners

In the past, almost all scanners worked through the SCSI bus and were relatively expensive. Because most x86 computers don't come with built-in SCSI, users needed to either install a general SCSI adapter on their systems or install a "mini" SCSI adapter bundled with the scanner. Recent years, however, have seen a proliferation of inexpensive (often under $100!) scanners that work through the parallel port and thus require no add-in hardware.

While R4 already includes internal support for parallel scanners, there were no available drivers or scanner software at this writing. The key to scanner support over SCSI is a function called "SCSI disconnect," which was not supported by any of the SCSI drivers shipping with BeOS R4.0. There were, however, early indications that the PowerPC versions of the BusLogic and Symbios SCSI drivers could gain SCSI disconnect support sooner rather than later.

Keep your radar dish trained on Be's Web site for updates on both fronts.

Blinky Lights

Of all the cool features built into the original BeBox, none was more visible than the twin towers of lime-green LEDs running vertically inside the case's front bezel, dancing in concert with the efforts exerted by the twin PowerPC 603s inside. Since Macs and PCs don't have anything similar, you have to rely on the bundled Pulse application (see Chapter 2, Meet the System) to keep track of your CPUs' activity ... unless you purchase a hardware add-on kit from Andreas Kaenner called PulseBox. This little device, consisting of two glass tubes filled with similar LEDs, perches on your desktop and jacks into your computer's free serial port so you can enjoy BeBox-like blinky lights. See Figure 2.XX and order PulseBox online.

3Com PalmPilots

As different as they are from one another, BeOS and PalmOS (the operating system that runs the 3Com PalmPilot) have quite a bit in common. Both are maximally efficient, no-nonsense, unburdened operating systems fine-tuned for their specific goals. Not surprisingly, both operating systems have a "just right" feel about them. Does the connection go deeper than surface appearances? Well, the CEO of Be, Inc. also happens to sit on the board of directors at 3Com, so draw your own conclusions.

Since both BeOS users and PalmPilot users are disproportionately geeky, many of us are champing at the bit to start syncing our Pilots with BeOS desktop software, rather than having to boot into MacOS or Windows to do it. Fortunately, Be has ported the GPL (GNU Public License) Pilot-Link libraries to BeOS, making it relatively easy for BeOS applications to talk to connected Pilot cradles. At this writing, the only GUI BeOS application capable of synchronizing with a Pilot was AbiSoft's DayPlan application (see Chapter 13, Productivity Applications).

Joysticks

With R4, BeOS steps up its gaming support with a brand new Joystick preferences panel (Chapter 9, Preferences), which operates via the also new Input Method. Users who need more fine-grained control than this panel has to offer can also edit joystick configuration files in /boot/beos/etc/joysticks (after creating links to them in ~/config/settings/joysticks). A wide array of the most common joysticks is supported, and additional ones can be added by creating new configuration files in this location, then editing them to the manufacturer's specifications.

Chapter Summary

  • Getting your hardware to work with BeOS is usually a walk in the woods. If your hardware is on the Hardware Ready List and you've got a driver installed for it, it will "just work" 99% of the time. For those rare instances when it doesn't, or when you have a need to specify resources for a given piece of internal hardware, the Device preferences panel can be used to force BeOS to reserve resources for use by that component.
  • Up until recently, the task of writing hardware drivers has fallen on Be's shoulders, but the computer industry is beginning take notice of the many ways in which BeOS can add value to their hardware, and companies are stepping up to the plate to contribute drivers of their own.
  • When shopping for hardware for use in a BeOS machine, it's critical to both check Be's Hardware Ready Lists and do some research to find out which I/O card or peripheral is best suited to your needs. Not all video cards are created equal, for example, even though "middle-ground" cards will serve the needs of the majority of us just fine.
  • Overclocking is a bad idea--don't do it.
  • If you're into serious multimedia and want to make sure that your system bus isn't functioning as a bottleneck to processor speed, make sure you get a motherboard with a 100 MHz bus. These are typically known by the model of the motherboard's chipset--BX, rather than LX or HX. If cost is no object, go for a quad-CPU configuration on the NX bus.
  • One processor per person isn't enough.


<<previous
^ top ^

Readers-Only Access
Scripting
Games
Emulation
Hardware and Peripherals
The Kits
The Future
About BeOS | Online Chapters | Interviews | Updates

Please direct technical questions about this site to webmaster@peachpit.com.

Copyright © 1999 Peachpit Press and the respective authors.