Bug 1640 - sndconfig must be run twice after boot to enable sound
Summary: sndconfig must be run twice after boot to enable sound
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Red Hat Raw Hide
Classification: Retired
Component: sndconfig
Version: 1.0
Hardware: i386
OS: Linux
low
low
Target Milestone: ---
Assignee: Bill Nottingham
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 1999-03-20 13:10 UTC by witten
Modified: 2014-03-17 02:09 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 1999-03-23 15:44:23 UTC
Embargoed:


Attachments (Terms of Use)

Description witten 1999-03-20 13:10:08 UTC
During boot, enabling sound on an SB AWE 32 fails. After
boot, running sndconfig once will give an error about
ISOLATE PRESERVE. Immediately running sndconfig again, with
no changes at all to any configuration or to isapnp.conf,
will make the audio and midi work perfectly. Then, when it
comes time to boot the system again, sound no longer works,
and the double-run of sndconfig must be again completed in
order to enable sound.

Comment 1 Cristian Gafton 1999-03-21 22:25:59 UTC
assigned to notting

Comment 2 Bill Nottingham 1999-03-22 15:49:59 UTC
That's weird. What does /etc/isapnp.conf & /etc/conf.modules say?

Comment 3 witten 1999-03-22 21:08:59 UTC
By the way, this is the error I get from sndconfig after running it
for the first time after boot:

LD setting verify failed, this may not be a problem
Try adding (VERIFYLD N) to the top of your script
/etc/isapnp.conf:334 -- Fatal - Error occurred executing
request 'LD 2' --- further action aborted

Here are my configuration files. I'm listing a copy of them from right
after boot, after running sndconfig, and after running sndconfig
again. After boot, they're set to irq7, which is incorrect (my card is
irq5). After running sndconfig once, the irq is right, but the
READPORT setting is not. After running sndconfig again, both the irq
and the READPORT are right and sound can be heard. I made no changes
at all to the config files myself. Once I reboot, the config files go
back to being incorrect and I must repeat the whole procedure.

----- conf.modules after boot
alias eth0 3c59x
alias net-pf-1 unix
alias net-pf-4 off
alias net-pf-5 off
alias net-pf-17 af_packet
alias parport_lowlevel parport_pc
alias synth0 sound
alias char-major-15 joy-analog
options i2c verbose=1 scan=0 i2c_debug=0
alias char-major-81 bttv
pre-install bttv modprobe -k i2c; modprobe -k videodev; modprobe -k
tuner; modprobe -k msp3400
options bttv card=10 pll=2 radio=1
options tuner type=5
alias parport_lowlevel parport_pc
alias sound sb
options opl3 io=0x388
alias midi awe_wave
post-install awe_wave /bin/sfxload /etc/midi/GU11-ROM.SF2
options sb io=0x240 irq=7 dma=0 dma16=6 mpu_io=0x300

----- conf.modules after sndconfig once
alias eth0 3c59x
alias net-pf-1 unix
alias net-pf-4 off
alias net-pf-5 off
alias net-pf-17 af_packet
alias parport_lowlevel parport_pc
alias synth0 sound
alias char-major-15 joy-analog
options i2c verbose=1 scan=0 i2c_debug=0
alias char-major-81 bttv
pre-install bttv modprobe -k i2c; modprobe -k videodev; modprobe -k
tuner; modpr
obe -k msp3400
options bttv card=10 pll=2 radio=1
options tuner type=5
alias parport_lowlevel parport_pc
alias sound sb
options opl3 io=0x388
alias midi awe_wave
post-install awe_wave /bin/sfxload /etc/midi/GU11-ROM.SF2
options sb io=0x220 irq=5 dma=1 dma16=5 mpu_io=0x330

----- conf.modules after sndconfig again
alias eth0 3c59x
alias net-pf-1 unix
alias net-pf-4 off
alias net-pf-5 off
alias net-pf-17 af_packet
alias parport_lowlevel parport_pc
alias synth0 sound
alias char-major-15 joy-analog
options i2c verbose=1 scan=0 i2c_debug=0
alias char-major-81 bttv
pre-install bttv modprobe -k i2c; modprobe -k videodev; modprobe -k
tuner; modpr
obe -k msp3400
options bttv card=10 pll=2 radio=1
options tuner type=5
alias parport_lowlevel parport_pc
alias sound sb
options opl3 io=0x388
alias midi awe_wave
post-install awe_wave /bin/sfxload /etc/midi/GU11-ROM.SF2
options sb io=0x220 irq=5 dma=1 dma16=5 mpu_io=0x330

----- isapnp.conf after boot
# $Id: pnpdump.c,v 1.18 1999/02/14 22:47:18 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 and FAQ on isapnp and pnpdump see:
# http://www.roestock.demon.co.uk/isapnptools/
#
# Compiler flags: -DREALTIME -DNEEDSETSCHEDULER -DABORT_ONRESERR
#
# Trying port address 0203
# Trying port address 020b
# Board 1 has serial identifier 92 05 8d 11 54 c1 00 8c 0e
# Board 2 has serial identifier 1f 1f 99 2a c5 30 00 44 0e

# (DEBUG)
(READPORT 0x020b)
(ISOLATE PRESERVE)
(IDENTIFY *)
(VERBOSITY 2)
(CONFLICT (IO FATAL)(IRQ FATAL)(DMA FATAL)(MEM FATAL)) # or WARNING

# Card 1: (serial identifier 92 05 8d 11 54 c1 00 8c 0e)
# Vendor Id CTL00c1, Serial Number 93131092, checksum 0x92.
# Version 1.0, Vendor version 1.0
# ANSI string -->Creative SB AWE64 PnP<--
#
# Logical device id CTL0042
#     Device supports vendor reserved register @ 0x38
#     Device supports vendor reserved register @ 0x3c
#     Device supports vendor reserved register @ 0x3e
#     Device supports vendor reserved register @ 0x3f
#
# 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 CTL00c1/93131092 (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 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 1))
#       Next DMA channel 5.
#             16 bit DMA only
#             Logical device is a bus master
#             DMA may not execute in count by byte mode
#             DMA may 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 (SIZE 16) (BASE 0x0220))
#       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 (SIZE 2) (BASE 0x0330))
#       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 (SIZE 4) (BASE 0x0388))

#       Start dependent functions: priority acceptable
#       IRQ 5, 7, 9 or 10.
#    High true, edge sensitive interrupt (by default)
  (INT 0 (IRQ 7 (MODE +E)))
#       First DMA channel 0, 1 or 3.
#             8 bit DMA only
#             Logical device is 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 5, 6 or 7.
#             16 bit DMA only
#             Logical device is a bus master
#             DMA may not execute in count by byte mode
#             DMA may execute in count by word mode
#             DMA channel speed in compatible mode
  (DMA 1 (CHANNEL 6))
#       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 (SIZE 16) (BASE 0x0240))
#       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 (SIZE 2) (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 (SIZE 4) (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 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 5, 6 or 7.
#             16 bit DMA only
#             Logical device is a bus master
#             DMA may not execute in count by byte mode
#             DMA may 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 0x0280
#             IO base alignment 32 bytes
#             Number of IO addresses required: 16
# (IO 0 (SIZE 16) (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 (SIZE 2) (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 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 5, 6 or 7.
#             16 bit DMA only
#             Logical device is a bus master
#             DMA may not execute in count by byte mode
#             DMA may 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 0x0280
#             IO base alignment 32 bytes
#             Number of IO addresses required: 16
# (IO 0 (SIZE 16) (BASE 0x0220))

#       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 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 (SIZE 16) (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 (SIZE 2) (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 (SIZE 4) (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 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 (SIZE 16) (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 (SIZE 2) (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 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 (SIZE 16) (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 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 5, 6 or 7.
#             16 bit DMA only
#             Logical device is a bus master
#             DMA may not execute in count by byte mode
#             DMA may 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 0x0280
#             IO base alignment 32 bytes
#             Number of IO addresses required: 16
# (IO 0 (SIZE 16) (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 (SIZE 2) (BASE 0x0300))
#       Logical device decodes 16 bit IO address lines
#             Minimum IO base address 0x0388
#             Maximum IO base address 0x0394
#             IO base alignment 4 bytes
#             Number of IO addresses required: 4
# (IO 2 (SIZE 4) (BASE 0x0388))

#     End dependent functions
 (NAME "CTL00c1/93131092[0]{Audio               }")
  (ACT Y)
))
#
# Logical device id CTL7002
#     Device supports vendor reserved register @ 0x39
#     Device supports vendor reserved register @ 0x3c
#     Device supports vendor reserved register @ 0x3e
#     Device supports vendor reserved register @ 0x3f
#
# 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 CTL00c1/93131092 (LD 1
#     Compatible device id PNPb02f
#     ANSI string -->Game<--

# Multiple choice time, choose one only !

#     Start dependent functions: priority preferred
#       Logical device decodes 16 bit IO address lines
#             Minimum IO base address 0x0200
#             Maximum IO base address 0x0200
#             IO base alignment 1 bytes
#             Number of IO addresses required: 8
  (IO 0 (SIZE 8) (BASE 0x0200))

#       Start dependent functions: priority acceptable
#       Logical device decodes 16 bit IO address lines
#             Minimum IO base address 0x0200
#             Maximum IO base address 0x0208
#             IO base alignment 8 bytes
#             Number of IO addresses required: 8
# (IO 0 (SIZE 8) (BASE 0x0200))

#     End dependent functions
 (NAME "CTL00c1/93131092[1]{Game                }")
  (ACT Y)
))
#
# Logical device id CTL0022
#     Device supports vendor reserved register @ 0x38
#     Device supports vendor reserved register @ 0x3c
#     Device supports vendor reserved register @ 0x3e
#     Device supports vendor reserved register @ 0x3f
#
# 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 CTL00c1/93131092 (LD 2
#     ANSI string -->WaveTable<--

# Multiple choice time, choose one only !

#     Start dependent functions: priority preferred
#       Logical device decodes 16 bit IO address lines
#             Minimum IO base address 0x0620
#             Maximum IO base address 0x0620
#             IO base alignment 1 bytes
#             Number of IO addresses required: 4
# (IO 0 (SIZE 4) (BASE 0x0620))

#       Start dependent functions: priority acceptable
#       Logical device decodes 16 bit IO address lines
#             Minimum IO base address 0x0620
#             Maximum IO base address 0x0680
#             IO base alignment 32 bytes
#             Number of IO addresses required: 4
  (IO 0 (SIZE 4) (BASE 0x0640))

#     End dependent functions
 (NAME "CTL00c1/93131092[2]{WaveTable           }")
  (ACT Y)
))
# End tag... Checksum 0x00 (OK)

# Card 2: (serial identifier 1f 1f 99 2a c5 30 00 44 0e)
# Vendor Id CRD0030, Serial Number 530131653, checksum 0x1F.
#     Version 1.0, Vendor version 0.0
#     ANSI string -->Cardinal 336 Internal<--
#
# Logical device id CRD0030
#     Device support I/O range check register
#     Device supports vendor reserved register @ 0x38
#     Device supports vendor reserved register @ 0x3c
#     Device supports vendor reserved register @ 0x3e
#     Device supports vendor reserved register @ 0x3f
#
# 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 CRD0030/530131653 (LD 0

# Multiple choice time, choose one only !

#     Start dependent functions: priority acceptable
#       Fixed IO base address 0x03e8
#             Number of IO addresses required: 8
# (IO 0 (SIZE 8) (BASE 0x03e8) (CHECK))
#       IRQ 3, 4, 5, 7, 9, 10, 11 or 15.
#             High true, level sensitive interrupt
# (INT 0 (IRQ 3 (MODE +L)))

#       Start dependent functions: priority acceptable
#       Fixed IO base address 0x02e8
#             Number of IO addresses required: 8
# (IO 0 (SIZE 8) (BASE 0x02e8) (CHECK))
#       IRQ 3, 4, 5, 7, 9, 10, 11 or 15.
#             High true, level sensitive interrupt
# (INT 0 (IRQ 3 (MODE +L)))

#       Start dependent functions: priority functional
#       Logical device decodes 16 bit IO address lines
#             Minimum IO base address 0x0100
#             Maximum IO base address 0x3ff8
#             IO base alignment 8 bytes
#             Number of IO addresses required: 8
# (IO 0 (SIZE 8) (BASE 0x0100) (CHECK))
#       IRQ 3, 4, 5, 7, 9, 10, 11 or 15.
#             High true, level sensitive interrupt
# (INT 0 (IRQ 3 (MODE +L)))

#     End dependent functions
 (NAME "CRD0030/530131653[0]{Cardinal 336 Internal}")
# (ACT Y)
))
# End tag... Checksum 0x00 (OK)

# Returns all cards to the "Wait for Key" state
(WAITFORKEY)

----- isapnp.conf after sndconfig once
# $Id: pnpdump.c,v 1.18 1999/02/14 22:47:18 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 and FAQ on isapnp and pnpdump see:
# http://www.roestock.demon.co.uk/isapnptools/
#
# Compiler flags: -DREALTIME -DNEEDSETSCHEDULER -DABORT_ONRESERR
#
# Trying port address 0203
# Board 1 has serial identifier 92 05 8d 11 54 c1 00 8c 0e
# Board 2 has serial identifier 1f 1f 99 2a c5 30 00 44 0e

# (DEBUG)
(READPORT 0x0203)
(ISOLATE PRESERVE)
(IDENTIFY *)
(VERBOSITY 2)
(CONFLICT (IO FATAL)(IRQ FATAL)(DMA FATAL)(MEM FATAL)) # or WARNING

# Card 1: (serial identifier 92 05 8d 11 54 c1 00 8c 0e)
# Vendor Id CTL00c1, Serial Number 93131092, checksum 0x92.
# Version 1.0, Vendor version 1.0
# ANSI string -->Creative SB AWE64 PnP<--
#
# Logical device id CTL0042
#     Device supports vendor reserved register @ 0x38
#     Device supports vendor reserved register @ 0x3c
#     Device supports vendor reserved register @ 0x3e
#     Device supports vendor reserved register @ 0x3f
#
# 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 CTL00c1/93131092 (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 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 1))
#       Next DMA channel 5.
#             16 bit DMA only
#             Logical device is a bus master
#             DMA may not execute in count by byte mode
#             DMA may 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 (SIZE 16) (BASE 0x0220))
#       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 (SIZE 2) (BASE 0x0330))
#       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 (SIZE 4) (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 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 5, 6 or 7.
#             16 bit DMA only
#             Logical device is a bus master
#             DMA may not execute in count by byte mode
#             DMA may 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 0x0280
#             IO base alignment 32 bytes
#             Number of IO addresses required: 16
# (IO 0 (SIZE 16) (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 (SIZE 2) (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 (SIZE 4) (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 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 5, 6 or 7.
#             16 bit DMA only
#             Logical device is a bus master
#             DMA may not execute in count by byte mode
#             DMA may 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 0x0280
#             IO base alignment 32 bytes
#             Number of IO addresses required: 16
# (IO 0 (SIZE 16) (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 (SIZE 2) (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 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 5, 6 or 7.
#             16 bit DMA only
#             Logical device is a bus master
#             DMA may not execute in count by byte mode
#             DMA may 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 0x0280
#             IO base alignment 32 bytes
#             Number of IO addresses required: 16
# (IO 0 (SIZE 16) (BASE 0x0220))

#       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 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 (SIZE 16) (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 (SIZE 2) (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 (SIZE 4) (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 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 (SIZE 16) (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 (SIZE 2) (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 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 (SIZE 16) (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 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 5, 6 or 7.
# 16 bit DMA only
#             Logical device is a bus master
#             DMA may not execute in count by byte mode
#             DMA may 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 0x0280
#             IO base alignment 32 bytes
#             Number of IO addresses required: 16
# (IO 0 (SIZE 16) (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 (SIZE 2) (BASE 0x0300))
#       Logical device decodes 16 bit IO address lines
#             Minimum IO base address 0x0388
#             Maximum IO base address 0x0394
#             IO base alignment 4 bytes
#             Number of IO addresses required: 4
# (IO 2 (SIZE 4) (BASE 0x0388))

#     End dependent functions
 (NAME "CTL00c1/93131092[0]{Audio               }")
  (ACT Y)
))
#
# Logical device id CTL7002
#     Device supports vendor reserved register @ 0x39
#     Device supports vendor reserved register @ 0x3c
#     Device supports vendor reserved register @ 0x3e
#     Device supports vendor reserved register @ 0x3f
#
# 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 CTL00c1/93131092 (LD 1
#     Compatible device id PNPb02f
#     ANSI string -->Game<--

# Multiple choice time, choose one only !

#     Start dependent functions: priority preferred
#       Logical device decodes 16 bit IO address lines
#             Minimum IO base address 0x0200
#             Maximum IO base address 0x0200
#             IO base alignment 1 bytes
#             Number of IO addresses required: 8
  (IO 0 (SIZE 8) (BASE 0x0200))

#       Start dependent functions: priority acceptable
#       Logical device decodes 16 bit IO address lines
#             Minimum IO base address 0x0200
#             Maximum IO base address 0x0208
#             IO base alignment 8 bytes
#             Number of IO addresses required: 8
# (IO 0 (SIZE 8) (BASE 0x0200))

#     End dependent functions
 (NAME "CTL00c1/93131092[1]{Game                }")
  (ACT Y)
))
#
# Logical device id CTL0022
#     Device supports vendor reserved register @ 0x38
#     Device supports vendor reserved register @ 0x3c
#     Device supports vendor reserved register @ 0x3e
#     Device supports vendor reserved register @ 0x3f
#
# 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 CTL00c1/93131092 (LD 2
#     ANSI string -->WaveTable<--

# Multiple choice time, choose one only !

#     Start dependent functions: priority preferred
#       Logical device decodes 16 bit IO address lines
#             Minimum IO base address 0x0620
#             Maximum IO base address 0x0620
#             IO base alignment 1 bytes
#             Number of IO addresses required: 4
(IO 0 (BASE 0x0620)) (IO 1 (BASE 0x0A20)) (IO 2 (BASE 0x0E20))

#       Start dependent functions: priority acceptable
#       Logical device decodes 16 bit IO address lines
#             Minimum IO base address 0x0620
#             Maximum IO base address 0x0680
#             IO base alignment 32 bytes
#             Number of IO addresses required: 4
# (IO 0 (SIZE 4) (BASE 0x0620))

#     End dependent functions
 (NAME "CTL00c1/93131092[2]{WaveTable           }")
  (ACT Y)
))
# End tag... Checksum 0x00 (OK)

# Card 2: (serial identifier 1f 1f 99 2a c5 30 00 44 0e)
# Vendor Id CRD0030, Serial Number 530131653, checksum 0x1F.
#     Version 1.0, Vendor version 0.0
#     ANSI string -->Cardinal 336 Internal<--
#
# Logical device id CRD0030
#     Device support I/O range check register
#     Device supports vendor reserved register @ 0x38
#     Device supports vendor reserved register @ 0x3c
#     Device supports vendor reserved register @ 0x3e
#     Device supports vendor reserved register @ 0x3f
#
# 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 CRD0030/530131653 (LD 0

# Multiple choice time, choose one only !

#     Start dependent functions: priority acceptable
#       Fixed IO base address 0x03e8
#             Number of IO addresses required: 8
# (IO 0 (SIZE 8) (BASE 0x03e8) (CHECK))
#       IRQ 3, 4, 5, 7, 9, 10, 11 or 15.
#             High true, level sensitive interrupt
# (INT 0 (IRQ 3 (MODE +L)))

#       Start dependent functions: priority acceptable
#       Fixed IO base address 0x02e8
#             Number of IO addresses required: 8
# (IO 0 (SIZE 8) (BASE 0x02e8) (CHECK))
#       IRQ 3, 4, 5, 7, 9, 10, 11 or 15.
#             High true, level sensitive interrupt
# (INT 0 (IRQ 3 (MODE +L)))

#       Start dependent functions: priority functional
#       Logical device decodes 16 bit IO address lines
#             Minimum IO base address 0x0100
#             Maximum IO base address 0x3ff8
#             IO base alignment 8 bytes
#             Number of IO addresses required: 8
# (IO 0 (SIZE 8) (BASE 0x0100) (CHECK))
#       IRQ 3, 4, 5, 7, 9, 10, 11 or 15.
#             High true, level sensitive interrupt
# (INT 0 (IRQ 3 (MODE +L)))

#     End dependent functions
 (NAME "CRD0030/530131653[0]{Cardinal 336 Internal}")
# (ACT Y)
))
# End tag... Checksum 0x00 (OK)

# Returns all cards to the "Wait for Key" state
(WAITFORKEY)

----- isapnp.conf after sndconfig again
# $Id: pnpdump.c,v 1.18 1999/02/14 22:47:18 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 and FAQ on isapnp and pnpdump see:
# http://www.roestock.demon.co.uk/isapnptools/
#
# Compiler flags: -DREALTIME -DNEEDSETSCHEDULER -DABORT_ONRESERR
#
# Trying port address 0203
# Trying port address 020b
# Board 1 has serial identifier 92 05 8d 11 54 c1 00 8c 0e
# Board 2 has serial identifier 1f 1f 99 2a c5 30 00 44 0e

# (DEBUG)
(READPORT 0x020b)
(ISOLATE PRESERVE)
(IDENTIFY *)
(VERBOSITY 2)
(CONFLICT (IO FATAL)(IRQ FATAL)(DMA FATAL)(MEM FATAL)) # or WARNING

# Card 1: (serial identifier 92 05 8d 11 54 c1 00 8c 0e)
# Vendor Id CTL00c1, Serial Number 93131092, checksum 0x92.
# Version 1.0, Vendor version 1.0
# ANSI string -->Creative SB AWE64 PnP<--
#
# Logical device id CTL0042
#     Device supports vendor reserved register @ 0x38
#     Device supports vendor reserved register @ 0x3c
#     Device supports vendor reserved register @ 0x3e
#     Device supports vendor reserved register @ 0x3f
#
# 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 CTL00c1/93131092 (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 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 1))
#       Next DMA channel 5.
#             16 bit DMA only
#             Logical device is a bus master
#             DMA may not execute in count by byte mode
#             DMA may 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 (SIZE 16) (BASE 0x0220))
#       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 (SIZE 2) (BASE 0x0330))
#       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 (SIZE 4) (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 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 5, 6 or 7.
#             16 bit DMA only
#             Logical device is a bus master
#             DMA may not execute in count by byte mode
#             DMA may 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 0x0280
#             IO base alignment 32 bytes
#             Number of IO addresses required: 16
# (IO 0 (SIZE 16) (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 (SIZE 2) (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 (SIZE 4) (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 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 5, 6 or 7.
#             16 bit DMA only
#             Logical device is a bus master
#             DMA may not execute in count by byte mode
#             DMA may 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 0x0280
#             IO base alignment 32 bytes
#             Number of IO addresses required: 16
# (IO 0 (SIZE 16) (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 (SIZE 2) (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 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 5, 6 or 7.
#             16 bit DMA only
#             Logical device is a bus master
#             DMA may not execute in count by byte mode
#             DMA may 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 0x0280
#             IO base alignment 32 bytes
#             Number of IO addresses required: 16
# (IO 0 (SIZE 16) (BASE 0x0220))

#       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 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 (SIZE 16) (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 (SIZE 2) (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 (SIZE 4) (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 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 (SIZE 16) (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 (SIZE 2) (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 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 (SIZE 16) (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 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 5, 6 or 7.
#             16 bit DMA only
#             Logical device is a bus master
#             DMA may not execute in count by byte mode
#             DMA may 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 0x0280
#             IO base alignment 32 bytes
#             Number of IO addresses required: 16
# (IO 0 (SIZE 16) (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 (SIZE 2) (BASE 0x0300))
#       Logical device decodes 16 bit IO address lines
#             Minimum IO base address 0x0388
#             Maximum IO base address 0x0394
#             IO base alignment 4 bytes
#             Number of IO addresses required: 4
# (IO 2 (SIZE 4) (BASE 0x0388))

#     End dependent functions
 (NAME "CTL00c1/93131092[0]{Audio               }")
  (ACT Y)
))
#
# Logical device id CTL7002
#     Device supports vendor reserved register @ 0x39
#     Device supports vendor reserved register @ 0x3c
#     Device supports vendor reserved register @ 0x3e
#     Device supports vendor reserved register @ 0x3f
#
# 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 CTL00c1/93131092 (LD 1
#     Compatible device id PNPb02f
#     ANSI string -->Game<--

# Multiple choice time, choose one only !

#     Start dependent functions: priority preferred
#       Logical device decodes 16 bit IO address lines
#             Minimum IO base address 0x0200
#             Maximum IO base address 0x0200
#             IO base alignment 1 bytes
#             Number of IO addresses required: 8
  (IO 0 (SIZE 8) (BASE 0x0200))

#       Start dependent functions: priority acceptable
#       Logical device decodes 16 bit IO address lines
#             Minimum IO base address 0x0200
#             Maximum IO base address 0x0208
#             IO base alignment 8 bytes
#             Number of IO addresses required: 8
# (IO 0 (SIZE 8) (BASE 0x0200))

#     End dependent functions
 (NAME "CTL00c1/93131092[1]{Game                }")
  (ACT Y)
))
#
# Logical device id CTL0022
#     Device supports vendor reserved register @ 0x38
#     Device supports vendor reserved register @ 0x3c
#     Device supports vendor reserved register @ 0x3e
#     Device supports vendor reserved register @ 0x3f
#
# 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 CTL00c1/93131092 (LD 2
#     ANSI string -->WaveTable<--

# Multiple choice time, choose one only !

#     Start dependent functions: priority preferred
#       Logical device decodes 16 bit IO address lines
#             Minimum IO base address 0x0620
#             Maximum IO base address 0x0620
#             IO base alignment 1 bytes
#             Number of IO addresses required: 4
(IO 0 (BASE 0x0620)) (IO 1 (BASE 0x0A20)) (IO 2 (BASE 0x0E20))

#       Start dependent functions: priority acceptable
#       Logical device decodes 16 bit IO address lines
#             Minimum IO base address 0x0620
#             Maximum IO base address 0x0680
#             IO base alignment 32 bytes
#             Number of IO addresses required: 4
# (IO 0 (SIZE 4) (BASE 0x0620))

#     End dependent functions
 (NAME "CTL00c1/93131092[2]{WaveTable           }")
  (ACT Y)
))
# End tag... Checksum 0x00 (OK)

# Card 2: (serial identifier 1f 1f 99 2a c5 30 00 44 0e)
# Vendor Id CRD0030, Serial Number 530131653, checksum 0x1F.
#     Version 1.0, Vendor version 0.0
#     ANSI string -->Cardinal 336 Internal<--
#
# Logical device id CRD0030
#     Device support I/O range check register
#     Device supports vendor reserved register @ 0x38
#     Device supports vendor reserved register @ 0x3c
#     Device supports vendor reserved register@ 0x3e
#     Device supports vendor reserved register @ 0x3f
#
# 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 CRD0030/530131653 (LD 0

# Multiple choice time, choose one only !

#     Start dependent functions: priority acceptable
#       Fixed IO base address 0x03e8
#             Number of IO addresses required: 8
# (IO 0 (SIZE 8) (BASE 0x03e8) (CHECK))
#       IRQ 3, 4, 5, 7, 9, 10, 11 or 15.
#             High true, level sensitive interrupt
# (INT 0 (IRQ 3 (MODE +L)))

#       Start dependent functions: priority acceptable
#       Fixed IO base address 0x02e8
#             Number of IO addresses required: 8
# (IO 0 (SIZE 8) (BASE 0x02e8) (CHECK))
#       IRQ 3, 4, 5, 7, 9, 10, 11 or 15.
#             High true, level sensitive interrupt
# (INT 0 (IRQ 3 (MODE +L)))

#       Start dependent functions: priority functional
#       Logical device decodes 16 bit IO address lines
#             Minimum IO base address 0x0100
#             Maximum IO base address 0x3ff8
#             IO base alignment 8 bytes
#             Number of IO addresses required: 8
# (IO 0 (SIZE 8) (BASE 0x0100) (CHECK))
#       IRQ 3, 4, 5, 7, 9, 10, 11 or 15.
#             High true, level sensitive interrupt
# (INT 0 (IRQ 3 (MODE +L)))

#     End dependent functions
 (NAME "CRD0030/530131653[0]{Cardinal 336 Internal}")
# (ACT Y)
))
# End tag... Checksum 0x00 (OK)

# Returns all cards to the "Wait for Key" state
(WAITFORKEY)

Comment 4 Bill Nottingham 1999-03-22 21:15:59 UTC
So, in a nutshell, what happens is that the correct settings
only work if they're run after the bootup sequence is complete?
The /etc/isapnp.conf doesn't change during the bootup sequence.

Comment 5 Bill Nottingham 1999-03-22 21:31:59 UTC
Try taking a working set of settings; reboot, and see if it loads.
If it doesn't, log in as root and do the following:
rmmod opl3
rmmod sb
rmmod uart401
rmmod sound
rmmod soundlow
rmmod soundcore
isapnp /etc/isapnp.conf
modprobe sound
modprobe midi

(This basically cycles the current config without using
sndconfig; if you try and run sndconfig with some of the
drivers loaded, it *will* change the settings it's trying
to use, as it sees that the current ones are in use. What
this means is that if you continually run it, your sound
settings will most likely cycle between two sets of settings.)

Comment 6 witten 1999-03-22 21:47:59 UTC
Even with a correct isapnp.conf, it didn't work at boot. I still get
the same ISOLATE PRESERVE error. Then when I tried the commands you
suggested after boot, I again got the ISOLATE PRESERVE error. So I
commented out the line with ISOLATE PRESERVE, and ran isapnp. Sound
worked, but midi (awe32 synth) didn't. I had to run sndconfig (twice)
in order to get both sound and midi working.

Comment 7 Bill Nottingham 1999-03-22 21:51:59 UTC
What is the working /etc/conf.modules & isapnp.conf?
Reboot; and if it fails:
- do *NOT* rerun sndconfig
- give me the contents of
  - /dev/sndstat
  - /proc/interrupts
  - /proc/ioports
  - /proc/dma

Also, do you do anything with the PnP modem at boot time?

Comment 8 Bill Nottingham 1999-03-22 22:06:59 UTC
(also the output of lsmod)

Comment 9 witten 1999-03-22 22:12:59 UTC
See the sections starting with "----- conf.modules after sndconfig
again" and "----- isapnp.conf after sndconfig again" for the correct
(working) configuration files that I used. Here's the info you
requested. The only thing I do with the modem at boot time is:
rc.serial:setserial -b /dev/modem uart 16550A port 0x3e8 irq 11

The modem works even though I don't set it up in isapnp.conf

OSS/Free:3.8s2++-971130
Load type: Driver loaded as a module
Kernel: Linux torsion.org 2.2.3-5 #1 Fri Mar 19 04:30:57 PST 1999 i586
Config options: 0

Installed drivers:

Card config:

Audio devices:
0: Sound Blaster 16 (4.16) (DUPLEX)

Synth devices:

Midi devices:
0: Sound Blaster 16

Timers:
0: System clock

Mixers:
0: Sound Blaster

*****

           CPU0
  0:      27595          XT-PIC  timer
  1:        772          XT-PIC  keyboard
  2:          0          XT-PIC  cascade
  4:         37          XT-PIC  serial
  5:          1          XT-PIC  soundblaster
  8:          2          XT-PIC  rtc
  9:        300          XT-PIC  eth0
 13:          1          XT-PIC  fpu
 14:      41480          XT-PIC  ide0
NMI:          0

*****

0000-001f : dma1
0020-003f : pic1
0040-005f : timer
0060-006f : keyboard
0070-007f : rtc
0080-008f : dma page reg
00a0-00bf : pic2
00c0-00df : dma2
00f0-00ff : fpu
01f0-01f7 : ide0
0220-022f : soundblaster
02f8-02ff : serial(auto)
0330-0333 : MPU-401 UART
03c0-03df : vga+
03e8-03ef : serial(set)
03f6-03f6 : ide0
03f8-03ff : serial(auto)
e000-e03f : eth0
e800-e807 : ide0
e808-e80f : ide1

*****

 1: SoundBlaster8
 4: cascade
 5: SoundBlaster16

Comment 10 witten 1999-03-22 22:21:59 UTC
Module                  Size  Used by
af_packet               5772   1  (autoclean)
3c59x                  18408   1  (autoclean)
serial                 18132   1  (autoclean)
nls_iso8859-1           2020   1  (autoclean)
nls_cp437               3548   1  (autoclean)
vfat                   11420   1  (autoclean)
fat                    25312   1  (autoclean) [vfat]
awe_wave              157132   0  (unused)
sb                     32660   0
uart401                 5936   0  [sb]
sound                  58552   0  [awe_wave sb uart401]
soundlow                 300   0  [sound]
soundcore               2404   6  [sb sound]
unix                    9616  18  (autoclean)

Comment 11 Bill Nottingham 1999-03-22 22:26:59 UTC
Take the working isapnp.conf file, and edit it so it uses
(READPORT 0x0203) - does that work on boot?

(Offhand, I'd say that your PnP BIOS is somewhat flaky)

Comment 12 Bill Nottingham 1999-03-22 22:27:59 UTC
More importantly, even if the isapnp fails, do the modules
load and then work?

Comment 13 witten 1999-03-23 08:15:59 UTC
It now works on boot, after I modified the READPORT as you suggested
and also added (VERIFYLD N) to isapnp.conf. Thanks for the help. Sorry
that this turned into more of a tech support call than any sort of
real bug report.

Comment 14 Bill Nottingham 1999-03-23 15:44:59 UTC
That's OK - glad I could help.


Note You need to log in before you can comment on or make changes to this bug.