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