Click to See Complete Forum and Search --> : Sb16
Agrajag9
05-24-2004, 12:59 PM
I have an old Sound Blaster 16 from Creative Labs with the Vibra16 chip in it, and it doesn't work. I've tried kernels 2.4.22, 2.6.1, 2.6.5, and 2.6.6, all with OSS and with ALSA. I've tried custom configuring the modules to have the specific IO, DMA, IRQ, etc. and it still won't work. I've even tried the Mandrake Multimedia kernel 2.4.22-1mm.mdk. Linux thinks I don't have a card. Somebody please help me!!!
squeegy
05-24-2004, 01:23 PM
Did you unmute the channels in the mixer? That seems to happen to people a lot...
Agrajag9
05-24-2004, 02:37 PM
It won't let me. It says something about it not having any device. Linux won't even recognize that the thing exists.
knute
05-24-2004, 03:02 PM
If it's an isa card (high probability) you will need to setup and run isapnp to get it recognized.
Assuming it's isa, you will need isapnp and pnpdump installed, then:
su
<root password>
cd
pnpdump > isapnp.conf
Ok, now you can edit the file and make sure that the appropriate settings for the card are uncommented. It will be rather long, as pnpdump also reads what it can be.
It's been a while, but I do remember that there is a line ACT Y at the end that needs to be uncommented to activate everything.
Alright, now that you have this set up accordingly, you can test it before moving it to it's home.
Test it with isapnp /root/isapnp.conf
Then see if your sound works. If it does, copy or move the isapnp.conf file to /etc so that it can be read on boot, and you are set.
If it isn't recognized, then you need to change something in the file (irq, dma, etc...)
I've used this with modems, but not really too much with sound cards, so I'm not sure what the file will show.
HTH
mdwatts
05-25-2004, 10:47 AM
Hopefully this will help. From /usr/src/linux/Documentation/sound/VIBRA16
Playing with a SB Vibra 16x soundcard we found it very difficult
to setup because the kernel reported a lot of DMA errors and wouldn't
simply play any sound.
A good starting point is that the vibra16x chip full-duplex facility
is neither still exploited by the sb driver found in the linux kernel
(tried it with a 2.2.2-ac7), nor in the commercial OSS package (it reports
it as half-duplex soundcard). Oh, I almost forgot, the RedHat sndconfig
failed detecting it ;)
So, the big problem still remains, because the sb module wants a
8-bit and a 16-bit dma, which we could not allocate for vibra... it supports
only two 8-bit dma channels, the second one will be passed to the module
as a 16 bit channel, the kernel will yield about that but everything will
be okay, trust us.
The only inconvenient you may find is that you will have
some sound playing jitters if you have HDD dma support enabled - but this
will happen with almost all soundcards...
A fully working isapnp.conf is just here:
<snip here>
(READPORT 0x0203)
(ISOLATE PRESERVE)
(IDENTIFY *)
(VERBOSITY 2)
(CONFLICT (IO FATAL)(IRQ FATAL)(DMA FATAL)(MEM FATAL)) # or WARNING
# SB 16 and OPL3 devices
(CONFIGURE CTL00f0/-1 (LD 0
(INT 0 (IRQ 5 (MODE +E)))
(DMA 0 (CHANNEL 1))
(DMA 1 (CHANNEL 3))
(IO 0 (SIZE 16) (BASE 0x0220))
(IO 2 (SIZE 4) (BASE 0x0388))
(NAME "CTL00f0/-1[0]{Audio }")
(ACT Y)
))
# Joystick device - only if you need it :-/
(CONFIGURE CTL00f0/-1 (LD 1
(IO 0 (SIZE 1) (BASE 0x0200))
(NAME "CTL00f0/-1[1]{Game }")
(ACT Y)
))
(WAITFORKEY)
<end of snipping>
So, after a good kernel modules compilation and a 'depmod -a kernel_ver'
you may want to:
modprobe sb io=0x220 irq=5 dma=1 dma16=3
Or, take the hard way:
insmod souncore
insmod sound
insmod uart401
insmod sb io=0x220 irq=5 dma=1 dma16=3
# do you need MIDI?
insmod opl3=0x388
Just in case, the kernel sound support should be:
CONFIG_SOUND=m
CONFIG_SOUND_OSS=m
CONFIG_SOUND_SB=m
Enjoy your new noisy Linux box! ;)
justlinux.com
Copyright 2007 Jupitermedia Corporation All Rights Reserved.