Developer Release Notes: BeOS Release 4, The Device Kit and Device Drivers
Developer Release Notes
BeOS Release 4
New Graphics Drivers
Note: Some drivers may be shipped in the /optional/experimental directory.
- Matrox. G100, G200.
- ATI 3D Rage [II / LT Pro / Pro Turbo].
The following cards are known to work:
- ATI All in Wonder
- ATI All in Wonder Pro (PCI and AGP)
- ATI xpert@play (PCI and AGP)
- ATI xpert@work (PCI and AGP)
- ATI xpert98 (PCI)
- RIVA-128 NV3 and NV3T chipset-based boards.
The following cards are known to work:
- (NV3) STB Velocity 128 (PCI and AGP flavors)
- (NV3) Canopus Total3D 128V (PCI)
- (NV3T) STB Velocity 128 8Mb (PCI)
- Diamond Viper V330 (PCI & AGP)
The TNT-based cards (such as the STB Velocity 4400) don't work.
- Neomagic 128 and 128XD chipsets. ...details forthcoming...
New Network Drivers
- Intel EtherExpress.
Special thanks to Takekazu Okamoto for
implementing the driver.
- PCMCIA NE2000 (experimental only).
Version Control, Scatter/Gather, device_hooks, etc.
A number of improvements have been made to the driver architecture. Among these changes are
- A new bus configuration manager that lets your driver easily identify the devices that are attached to the hardware busses.
- The implementation of a driver versioning system.
- Implementations of the "scatter/gather" functions readv_pos() and writev_pos().
- New entries in the device_hooks structure.
- A more complete implementation of the select() function.
For information on these topics, see the Be Newsletter article "Changes in the BeOS Driver API" by Cyril Meurillon. The article contains pointers to other R4 driver-related Newsletter articles.
SCSI
- New B_SCSI_ENABLE_PROFILING ioctl declared in headers/drivers/CAM.h.
Interrupt Handlers
- The remove_io_interrupt_handler() function now expects you to give it the same data pointer that you passed to install_io_interrupt_handler(). This disambiguates the case where the driver is driving two cards of the same type.
Joysticks
- The BJoystick API has been enhanced, though functions such as
CountButtons(),
CountAxes(), and
CountHats(), to support joysticks
that have more than two buttons, more than two axes, and that have
"hats" (buttons on top of the stick).
- The new SetMaxLatency()sets
the maximum desired latency for polling the driver, thus letting
you fine tune
your application for the best compromise between perceived response
(on the one hand) and
CPU consumption/interrupt disruption (on the other).
- The new EnableCalibration() lets you toggle the object's capacity to calibrate the joystick device (given that the joystick allows such calibration).
Copyright © 1998 Be, Inc. All rights reserved.