Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 08 Oct 1996 05:37:00 -0700
From:      Amancio Hasty <hasty@rah.star-gate.com>
To:        multimedia@freebsd.org
Subject:   GUS PnP driver release 4
Message-ID:  <199610081237.FAA00636@rah.star-gate.com>

next in thread | raw e-mail | index | archive | help

This is an BETA release for the GUS PnP Pro. If you own any other
soundcard or are not running *FreeBSD 2.2  don't bother using
this sound driver. If you are running FreeBSD 2.1xx this driver will
not compile for you
The difference between a GUS PnP and a GUS PnP PRO is that the Pro
comes with 512kb. I went out an got a 1mb 60ns 30pin simm and installed
it on my GUS PnP. I own a GUS PnP and a GUS PnP PRO.

BUGS:
1.0 
	The mic input level still does not work right so if you are using 
	vat control the mic volume using vmix or mixer and use igain.

	For instance,
	mixer igain 100 
	set the input gain to 100
	mixer igain 0 
	sets the input to 0  
	This does not fully shut the mic to fully silence the mic
	select another input.

	mixer +rec line3

	or 
	mixer +rec mix

2.0	I will release another version of vat in about a day or so
	after I get chance to test it further.

-----



In /sys/i386/isa/isa.c
convert the static define isa_dmarangecheck to a global define:

static int isa_dmarangecheck __P((caddr_t va, u_int length, int chan));
---
int
isa_dmarangecheck(caddr_t va, u_int length, int chan) {
---

Also :

 #ifdef DIAGNOSTIC
        if (chan & ~VALID_DMA_MASK)
                panic("isa_dmastart: channel out of range");

        if ((chan < 4 && nbytes > (1<<16))
            || (chan >= 4 && (nbytes > (1<<17) || (u_int)addr & 1)))
                panic("isa_dmastart: impossible request");

        if (dma_inuse & (1 << chan) == 0)
                printf("isa_dmastart: channel %d not acquired\n", chan);

        if (dma_busy & (1 << chan))
                printf("isa_dmastart: channel %d busy\n", chan);
 #endif

Either delete :
if (dma_busy & (1 << chan))
                printf("isa_dmastart: channel %d busy\n", chan);

or enclosed in the DIAGNOSTIC define like I did.


To unpack:

cd /
mv /sys/i386/isa/sound /sys/i386/isa/sound.old

tar -xzf guspnp4-current.tar.gz 

**DO NOT RUN the configure program in /sys/i386/isa/sound**

cd /sys/i386/conf
Edit the kernel config file in /sys/i386/conf

To configure your guspnp PRO if you have a motherboard which supports
PnP:

	controller snd0
	device gus0 at isa?  vector gusintr

To configure your guspnp PRO if your motherboard does NOT support
PnP:

device gus0 at isa? port  0x220 irq 11 drq 1 flags 0x3 vector gusintr


the gus pnp is fully software configurable and the above configuration
is setup for full duplex audio. The dma channel settings are:

drq 1   	--- DMA channel for playback

flags 0x3	--- DMAN channel for recording





config <kernel-file>
cd /sys/compile/<kernel-file>
make 
make install

If the make fails to find include files, edit your Makefile to have:

INCLUDES= -nostdinc -I- -I. -I$S  -I/sys/i386/isa/sound -I/sys/sys
                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ add that


THERE IS NO NEED TO BOOT TO DOS TO CONFIGURE YOUR GUS PNP. 
THE DRIVER HAS BUILTIN SUPPORT FOR PNP WHICH I GOT
FROM THE  GRAVIS DRIVER DEVELOPMENT KIT

Many thanks to  Brian Litzinger <brian@MediaCity.com> for
porting the sound driver 3.5 to 2.2-current.

	Have fun,
	Amancio





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199610081237.FAA00636>