freebsd-skq/sys/i386/isa/sound/sound.doc
Steven Wallace 1e25d964d2 Reorganize how sound devices are configured. Use a snd controller
with individual devices for each type of sound card:
  opl, sb, sbxvi, sbmidi, pas, mpu, gus, gusxvi, gusmax, mss, uart

EXCLUDE_* options are no longer required to be included in the config file.
They are automatically determined by local.h depending on the devices
included.

Move #includes in local.h to os.h so files are included in the proper
order to avoid warnings.

soundcard.c now has additional code to reflect the device driver
routines needed.

Define new EXCLUDE_SB16MIDI for use in sb16_midi.c and dev_table.h.

#ifndef EXCLUDE_SEQUENCER or EXCLUDE_AUDIO have been added to
soundcard.c and sound_switch.c where appropriate.

Probe outputs changed to reflect new device names.

Readme.freebsd not needed.  Update sound.doc with new config instructions.

Reviewed by:	wollman
1995-03-12 23:34:12 +00:00

91 lines
3.4 KiB
Plaintext

$Id: sound.doc Exp $
Instructions on using audio on a FreeBSD 2.1 (or 2.0-current) system.
See also /sys/i386/conf/LINT.
To enable sound driver support, the controller sound code must be included
in your config file:
# SB = SoundBlaster; PAS = ProAudioSpectrum; GUS = Gravis UltraSound
# Controls all sound devices
controller snd0
Uncomment one or more of these device entries, depending on what type of
sound card you have:
# Yamaha OPL-3 FM - for SB, SB Pro, SB16, PAS
#device opl0 at isa? port 0x388
# Yamaha OPL-3 FM - for PAS
#device opl0 at isa? port 0x38a
# SoundBlaster DSP driver - for SB, SB Pro, SB16, PAS(emulating SB)
#device sb0 at isa? port 0x220 irq 7 drq 1 vector sbintr
# SoundBlaster 16 DSP driver - for SB16 - requires sb0 device
#device sbxvi0 at isa? drq 5
# SoundBlaster 16 MIDI - for SB16 - requires sb0 device
#device sbmidi0 at isa? port 0x300
# ProAudioSpectrum PCM and Midi - for PAS
#device pas0 at isa? port 0x388 irq 10 drq 6 vector pasintr
# MPU-401 - for MPU-401 standalone card
#device mpu0 at isa? port 0x330 irq 6 drq 0
# Gravis UltraSound - for GUS, GUS16, GUSMAX
#device gus0 at isa? port 0x220 irq 11 drq 1 vector gusintr
# Gravis UltraSound 16 bit option - for GUS16 - requires gus0
#device gusxvi0 at isa? port 0x530 irq 7 drq 3 vector adintr
# Gravis UltraSound MAX - for GUSMAX - requires gus0
#device gusmax0 at isa? port 0x32c
# MS Sound System
#device mss0 at isa? port 0x530 irq 10 drq 1 vector adintr
# 6850 UART Midi
#device uart0 at isa? port 0x330 irq 5 vector "m6850intr"
You may add one or more of the following depending on what you do and don't
want compiled into your kernel. Note: Excluding things with EXCLUDE_...
is NOT recommended unless you really know what you're doing.
#options EXCLUDE_AUDIO # NO digital audio support
#options EXCLUDE_SEQUENCER # NO sequencer support
#options EXCLUDE_MIDI # NO MIDI support whatsoever
#options EXCLUDE_SBPRO # EXCLUDE SB Pro support
#options EXCLUDE_SB_EMULATION # NO PAS SB emulation support
#options EXCLUDE_GUS_IODETECT # NO GUS io detection
#options EXCLUDE_PRO_MIDI # NO PAS MIDI support
NOTE: The MPU-401 driver may or may not work, and is unfortunately
unverifiable since no one I know has one. If you can test this,
please let me know! Also note that you will have to change these
settings if your soundcard is set for a non-standard address or IRQ.
Please check your documentation (or verify with any provided DOS utilities
that may have come with your card) and set the IRQ or address fields
accordingly.
Also: Some systems with the OPTI chipset will require you to #define
BROKEN_BUS_CLOCK in /sys/i386/sound/pas2_card.c. Symptoms are that
you will hear a lot of clicking and popping sounds, like a geiger counter,
coming out of the PAS even when is not playing anything.
Also: You can configure more then one card on a single DMA using
ALLOW_CONFLICT_DMA.
Probing problems: Since the SB16 uses the same IRQ and addresses for
the different drivers, some of the snd dirvers will not be probed because
the kernel thinks there is a conflict. This can be worked-around by
setting the ALLOW_CONFLICT_IOADDR or ALLOW_CONFLICT_IRQ options.
Warning: Setting the ALLOW_* options will will bypass checks for ALL drivers,
so be careful when you use them!
- Jordan Hubbard (jkh@freefall.cdrom.com)
- Steven Wallace (swallace@freefall.cdrom.com)
- Sujal Patel (smpatel@wam.umd.edu)