Peter Granroth wrote:
> "Morgan N. Sandquist" <Morg...@BrodyWeiser.com> writes:
> > Hi,
> > I could not get my Ensoniq Wavetable Sound Card to work in RedHat Linux
> > 5.1 (even though it worked fine in 4.2). So I got a Soundblaster 16
> > card and installed that instead. It's wokring better, but it's still
> > not quite right. I can play CDs fine, but I can't seem to get any other
> > sounds (Doom, RealAudio, .wav files, etc.) to work. For those other
> > sounds, I get a variety of error messages suggesting that the IRQ and/or
> > DMAs are not properly set. I used RedHat's sndconfig to configure the
> > card. In Windows (where everything works fine), the settings are:
> > I/O Port - 220
> > IRQ - 05
> > DMA - 01
> > DMA - 03
> > In the sndconfig tool, it's impossible to choose DMAs 01 and 03 at the
> > same time--for the 8-bit DMA, I can choose 0, 1, or 3, and for the
> > 16-bit DMA, I can choose 5, 6, or 7. I have tried it with the 8-bit DMA
> > as both 1 and 3 (with the 16-bit DMA as 5 in both cases), and I've had
> > the same problems in both cases.
> > Do I have to recompile the kernel? And if so, exactly which options do
> > I choose?
> Time for you to get your hands dirty...
> IIRC, sndconfig configures things in /etc/conf.modules. my entries for
> the soundcard looks like:
> --------------------------------------------------------
> post-install sb /sbin/modprobe "-k" "adlib_card"
> options sb io=0x220 irq=5 dma=1 dma16=3 mpu_io=0x330
> options adlib_card io=0x388 # FM synthesizer
> --------------------------------------------------------
> Run sndconfig and then open the file to see what and where it put the
> module configurations. then just change the 16-bit dma to 3, and the
> 8-bit dma to 1, and save.
> If the tools don't do it, do it yourself :)
Okay, sndconfig changes two files: /etc/conf.modules and
/etc/isapnp.conf. I changed my /etc/conf.modules from:
----------------------------------------------------------
alias sound sb
options -k sb io=0x220 irq=5 dma=3,5
alias midi opl3
options -k opl3 io=0x388
----------------------------------------------------------
to:
----------------------------------------------------------
alias sound sb
options -k sb io=0x220 irq=5 dma=1,3
alias midi opl3
options -k opl3 io=0x388
----------------------------------------------------------
. . .but that alone hasn't solved the problem (after rebooting, etc.).
I have no idea what to do with the /etc/isapnp.conf file. It looks like
this:
----------------------------------------------------------
# $Id: pnpdump.c,v 1.10 1997/07/14 22:30:47 fox Exp $
# This is free software, see the sources for details.
# This software has NO WARRANTY, use at your OWN RISK
#
# For details of this file format, see isapnp.conf(5)
#
# For latest information on isapnp and pnpdump see:
# http://www.roestock.demon.co.uk/isapnptools/
#
# Compiler flags: -DREALTIME -DNEEDSETSCHEDULER
#
# Trying port address 0203
# Board 1 has serial identifier 6d ff ff ff ff f0 00 8c 0e
# (DEBUG)
(READPORT 0x0203)
(ISOLATE)
(IDENTIFY *)
# Card 1: (serial identifier 6d ff ff ff ff f0 00 8c 0e)
# CTL00f0 Serial No -1 [checksum 6d]
# Version 1.0, Vendor version 1.0
# ANSI string -->Creative ViBRA16X PnP<--
#
# Logical device id CTL0043
#
# Edit the entries below to uncomment out the configuration required.
# Note that only the first value of any range is given, this may be
changed if required
# Don't forget to uncomment the activate (ACT Y) when happy
(CONFIGURE CTL00f0/-1 (LD 0
# ANSI string -->Audio<--
# Multiple choice time, choose one only !
# Start dependent functions: priority preferred
# IRQ 5.
# High true, edge sensitive interrupt (by default)
(INT 0 (IRQ 5 (MODE +E)))
# First DMA channel 1.
# 8 bit DMA only
# Logical device is not a bus master
# DMA may execute in count by byte mode
# DMA may not execute in count by word mode
# DMA channel speed in compatible mode
(DMA 0 (CHANNEL 3))
# Next DMA channel 3.
# 8 bit DMA only
# Logical device is not a bus master
# DMA may execute in count by byte mode
# DMA may not execute in count by word mode
# DMA channel speed in compatible mode
(DMA 1 (CHANNEL 5))
# Logical device decodes 16 bit IO address lines
# Minimum IO base address 0x0220
# Maximum IO base address 0x0220
# IO base alignment 1 bytes
# Number of IO addresses required: 16
(IO 0 (BASE 0x220))
# Logical device decodes 16 bit IO address lines
# Minimum IO base address 0x0330
# Maximum IO base address 0x0330
# IO base alignment 1 bytes
# Number of IO addresses required: 2
(IO 1 (BASE 0x330))
# Logical device decodes 16 bit IO address lines
# Minimum IO base address 0x0388
# Maximum IO base address 0x0388
# IO base alignment 1 bytes
# Number of IO addresses required: 4
(IO 2 (BASE 0x388))
# Start dependent functions: priority acceptable
# IRQ 5, 7, 9 or 10.
# High true, edge sensitive interrupt (by default)
# (INT 0 (IRQ 5 (MODE +E)))
# First DMA channel 0, 1 or 3.
# 8 bit DMA only
# Logical device is not a bus master
# DMA may execute in count by byte mode
# DMA may not execute in count by word mode
# DMA channel speed in compatible mode
# (DMA 0 (CHANNEL 0))
# Next DMA channel 0, 1 or 3.
# 8 bit DMA only
# Logical device is not a bus master
# DMA may execute in count by byte mode
# DMA may not execute in count by word mode
# DMA channel speed in compatible mode
# (DMA 1 (CHANNEL 0))
# Logical device decodes 16 bit IO address lines
# Minimum IO base address 0x0220
# Maximum IO base address 0x0280
# IO base alignment 32 bytes
# Number of IO addresses required: 16
# (IO 0 (BASE 0x0220))
# Logical device decodes 16 bit IO address lines
# Minimum IO base address 0x0300
# Maximum IO base address 0x0330
# IO base alignment 48 bytes
# Number of IO addresses required: 2
# (IO 1 (BASE 0x0300))
# Logical device decodes 16 bit IO address lines
# Minimum IO base address 0x0388
# Maximum IO base address 0x0388
# IO base alignment 1 bytes
# Number of IO addresses required: 4
# (IO 2 (BASE 0x0388))
# Start dependent functions: priority acceptable
# IRQ 5, 7, 9 or 10.
# High true, edge sensitive interrupt (by default)
# (INT 0 (IRQ 5 (MODE +E)))
# First DMA channel 0, 1 or 3.
# 8 bit DMA only
# Logical device is not a bus master
# DMA may execute in count by byte mode
# DMA may not execute in count by word mode
# DMA channel speed in compatible mode
# (DMA 0 (CHANNEL 0))
# Next DMA channel 0, 1 or 3.
# 8 bit DMA only
# Logical device is not a bus master
# DMA may execute in count by byte mode
# DMA may not execute in count by word mode
# DMA channel speed in compatible mode
# (DMA 1 (CHANNEL 0))
# Logical device decodes 16 bit IO address lines
# Minimum IO base address 0x0220
# Maximum IO base address 0x0280
# IO base alignment 32 bytes
# Number of IO addresses required: 16
# (IO 0 (BASE 0x0220))
# Logical device decodes 16 bit IO address lines
# Minimum IO base address 0x0300
# Maximum IO base address 0x0330
# IO base alignment 48 bytes
# Number of IO addresses required: 2
# (IO 1 (BASE 0x0300))
# Start dependent functions: priority acceptable
# IRQ 5, 7, 9 or 10.
# High true, edge sensitive interrupt (by default)
# (INT 0 (IRQ 5 (MODE +E)))
# First DMA channel 0, 1 or 3.
# 8 bit DMA only
# Logical device is not a bus master
# DMA may execute in count by byte mode
# DMA may not execute in count by word mode
# DMA channel speed in compatible mode
# (DMA 0 (CHANNEL 0))
# Next DMA channel 0, 1 or 3.
# 8 bit DMA only
# Logical device is not a bus master
# DMA may execute in count by byte mode
# DMA may not execute in count by word mode
# DMA channel speed in compatible mode
# (DMA 1 (CHANNEL 0))
# Logical device decodes 16 bit IO address lines
# Minimum IO base address 0x0220
# Maximum IO base address 0x0280
# IO base alignment 32 bytes
# Number of IO addresses required: 16
# (IO 0 (BASE 0x0220))
# Start dependent functions: priority functional
# IRQ 5, 7, 9 or 10.
# High true, edge sensitive interrupt (by default)
# (INT 0 (IRQ 5 (MODE +E)))
# First DMA channel 0, 1 or 3.
# 8 bit DMA only
# Logical device is not a bus master
# DMA may execute in count by byte mode
# DMA may not execute in count by word mode
# DMA channel speed in compatible mode
# (DMA 0 (CHANNEL 0))
# Logical device decodes 16 bit IO address lines
# Minimum IO base address 0x0220
# Maximum IO base address 0x0280
# IO base alignment 32 bytes
# Number of IO addresses required: 16
# (IO 0 (BASE 0x0220))
# Logical device decodes 16 bit IO address lines
# Minimum IO base address 0x0300
# Maximum IO base address 0x0330
# IO base alignment 16 bytes
# Number of IO addresses required: 2
# (IO 1 (BASE 0x0300))
# Logical
...
read more »