diff options
author | jkh <jkh@FreeBSD.org> | 1995-03-04 21:11:21 +0000 |
---|---|---|
committer | jkh <jkh@FreeBSD.org> | 1995-03-04 21:11:21 +0000 |
commit | fb377011224d3ca2cc8b0c4cf7324b7a94629b31 (patch) | |
tree | e74ef7542072ec71095dbb0496791d1eac674c74 /sys/i386/isa/sound/soundcard.c | |
parent | a09fe2d23732f9ec6f4b73851ce89fae4346eb2d (diff) | |
download | FreeBSD-src-fb377011224d3ca2cc8b0c4cf7324b7a94629b31.zip FreeBSD-src-fb377011224d3ca2cc8b0c4cf7324b7a94629b31.tar.gz |
Upgrade the sound drivers to VoxWare pre-3.0 and fix a number of bugs.
Make the sound configuration a little neater
(see /sys/i386/isa/sound/Readme.freebsd)
Add support for the Microsoft Sound Source.
Document the sound options again.
Submitted by: Sujal Patel <smpatel@wam.umd.edu>
Obtained from: Voxware
Diffstat (limited to 'sys/i386/isa/sound/soundcard.c')
-rw-r--r-- | sys/i386/isa/sound/soundcard.c | 32 |
1 files changed, 4 insertions, 28 deletions
diff --git a/sys/i386/isa/sound/soundcard.c b/sys/i386/isa/sound/soundcard.c index 213f263..891731c 100644 --- a/sys/i386/isa/sound/soundcard.c +++ b/sys/i386/isa/sound/soundcard.c @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: soundcard.c,v 1.20 1994/10/01 02:17:14 swallace Exp $ + * soundcard.c,v 1.20 1994/10/01 02:17:14 swallace Exp */ #include "sound_config.h" @@ -54,7 +54,6 @@ static int soundcards_installed = 0; /* Number of installed static int soundcard_configured = 0; static struct fileinfo files[SND_NDEVS]; -struct selinfo selinfo[SND_NDEVS >> 4]; int sndprobe (struct isa_device *dev); int sndattach (struct isa_device *dev); @@ -63,7 +62,7 @@ int sndclose (dev_t dev, int flags); int sndioctl (dev_t dev, int cmd, caddr_t arg, int mode); int sndread (int dev, struct uio *uio); int sndwrite (int dev, struct uio *uio); -int sndselect (int dev, int rw, struct proc *p); +int sndselect (int dev, int rw); static void sound_mem_init(void); unsigned @@ -123,9 +122,6 @@ sndopen (dev_t dev, int flags) else if (flags & FWRITE) files[dev].mode = OPEN_WRITE; - selinfo[dev >> 4].si_pid = 0; - selinfo[dev >> 4].si_flags = 0; - FIX_RETURN(sound_open_sw (dev, &files[dev])); } @@ -148,33 +144,13 @@ sndioctl (dev_t dev, int cmd, caddr_t arg, int mode) } int -sndselect (int dev, int rw, struct proc *p) +sndselect (int dev, int rw) { - int r,s; - dev = minor (dev); DEB (printk ("sound_ioctl(dev=%d, cmd=0x%x, arg=0x%x)\n", dev, cmd, arg)); - r = 0; - DISABLE_INTR(s); - switch (rw) { - case FREAD: /* record */ - if(DMAbuf_input_ready(dev >> 4)) - r = 1; - else - selrecord(p, &selinfo[dev >> 4]); - break; - case FWRITE: /* play */ - if(DMAbuf_output_ready(dev >> 4)) - r = 1; - else - selrecord(p, &selinfo[dev >> 4]); - break; - } - RESTORE_INTR(s); - - return r; + FIX_RETURN (0); } static unsigned short |