1.\" $NetBSD: sb.4,v 1.22 2002/06/08 22:19:54 wiz Exp $ 2.\" 3.\" Copyright (c) 1996 The NetBSD Foundation, Inc. 4.\" All rights reserved. 5.\" 6.\" This code is derived from software contributed to The NetBSD Foundation 7.\" by John T. Kohl. 8.\" 9.\" Redistribution and use in source and binary forms, with or without 10.\" modification, are permitted provided that the following conditions 11.\" are met: 12.\" 1. Redistributions of source code must retain the above copyright 13.\" notice, this list of conditions and the following disclaimer. 14.\" 2. Redistributions in binary form must reproduce the above copyright 15.\" notice, this list of conditions and the following disclaimer in the 16.\" documentation and/or other materials provided with the distribution. 17.\" 3. All advertising materials mentioning features or use of this software 18.\" must display the following acknowledgement: 19.\" This product includes software developed by the NetBSD 20.\" Foundation, Inc. and its contributors. 21.\" 4. Neither the name of The NetBSD Foundation nor the names of its 22.\" contributors may be used to endorse or promote products derived 23.\" from this software without specific prior written permission. 24.\" 25.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 26.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 27.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 28.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 29.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 30.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 31.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 32.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 33.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 34.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 35.\" POSSIBILITY OF SUCH DAMAGE. 36.\" 37.Dd November 4, 1995 38.Dt SB 4 39.Os 40.Sh NAME 41.Nm sb 42.Nd SoundBlaster family (and compatible) audio device driver 43.Sh SYNOPSIS 44.Cd "sb0 at isa? port 0x220 irq 5 drq 1 drq2 5" 45.Cd "sb1 at isa? port 0x240 irq 7 drq 1 flags 1" 46.Cd "sb* at isapnp?" 47.Cd "sb* at pnpbios? index ?" 48.Cd "audio* at sb?" 49.Cd "midi* at sb?" 50.Cd "mpu* at sb?" 51.Cd "opl* at sb?" 52.Sh DESCRIPTION 53The 54.Nm 55driver provides support for the SoundBlaster, SoundBlaster Pro, 56SoundBlaster 16, Jazz 16, SoundBlaster AWE 32, SoundBlaster AWE 64, 57and hardware register-level compatible audio cards. 58.Pp 59The SoundBlaster series are half-duplex cards, capable of 8- and 16-bit 60audio sample recording and playback at rates up to 44.1kHz (depending on 61the particular model). 62.Pp 63The base I/O port address is usually jumper-selected to either 0x220 or 640x240 (newer cards may provide software configuration, but this driver 65does not directly support them--you must configure the card for its I/O 66addresses with other software). The SoundBlaster takes 16 I/O ports. 67For the SoundBlaster and SoundBlaster Pro, the IRQ and DRQ channels are 68jumper-selected. For the SoundBlaster 16, the IRQ and DRQ channels are 69set by this driver to the values specified in the config file. The IRQ 70must be selected from the set {5,7,9,10}. 71.Pp 72The configuration file must use 1 73.Cm flags 74specification to enable the Jazz16 support. This is to avoid potential 75conflicts with other devices when probing the Jazz 16 because it requires 76use of extra I/O ports not in the base port range. 77.Pp 78With a SoundBlaster 16 card the device is full duplex, but it can 79only sensibly handle a precision of 8 bits. It does so by extending 80the output 8 bit samples to 16 bits and using the 8 bit DMA channel 81for input and the 16 bit channel for output. 82.Pp 83The joystick interface (if enabled by a jumper) is handled by the 84.Xr joy 4 85driver, and the optional SCSI CD-ROM interface is handled by the 86.Xr aic 4 87driver. 88.Pp 89SoundBlaster 16 cards have MPU401 emulation and can use the mpu 90attachment, older cards have a different way to generate MIDI and 91has a midi device attached directly to the 92.Nm "" . 93.Sh SEE ALSO 94.Xr aic 4 , 95.Xr audio 4 , 96.Xr isa 4 , 97.Xr isapnp 4 , 98.Xr joy 4 , 99.Xr midi 4 , 100.Xr mpu 4 , 101.Xr opl 4 , 102.Xr pnpbios 4 103.Sh HISTORY 104The 105.Nm 106device driver appeared in 107.Nx 1.0 . 108.Sh BUGS 109Non-SCSI CD-ROM interfaces are not supported. 110.Pp 111The MIDI interface on the SB hardware is braindead, and the driver 112needs to busy wait while writing MIDI data. This will consume 113a lot of system time. 114