From owner-FreeBSD-users-jp@jp.freebsd.org  Mon Feb 22 13:32:05 1999
Received: (from daemon@localhost)
	by jaz.jp.freebsd.org (8.9.1+3.1W/8.7.3) id NAA09881;
	Mon, 22 Feb 1999 13:32:05 +0900 (JST)
	(envelope-from owner-FreeBSD-users-jp@jp.FreeBSD.org)
Received: from momoko.ke.ics.saitama-u.ac.jp (momoko.ke.ics.saitama-u.ac.jp [133.38.149.9])
	by jaz.jp.freebsd.org (8.9.1+3.1W/8.7.3) with ESMTP id NAA09870
	for <FreeBSD-users-jp@jp.freebsd.org>; Mon, 22 Feb 1999 13:32:04 +0900 (JST)
	(envelope-from nozo@ke.ics.saitama-u.ac.jp)
Received: from localhost (yuuka.ke.ics.saitama-u.ac.jp [133.38.149.19]) by momoko.ke.ics.saitama-u.ac.jp (8.8.5+2.7Wbeta5/3.5Wpl2-97/11/15) with ESMTP id NAA04720 for <FreeBSD-users-jp@jp.freebsd.org>; Mon, 22 Feb 1999 13:32:03 +0900 (JST)
To: FreeBSD-users-jp@jp.freebsd.org
In-Reply-To: Your message of "Fri, 19 Feb 1999 13:03:28 +0900"
	<9902190403.AA01567@pon.nintendo.co.jp>
References: <9902190403.AA01567@pon.nintendo.co.jp>
X-Mailer: Mew version 1.93 on Emacs 19.28 / Mule 2.3 (SUETSUMUHANA)
Mime-Version: 1.0
Content-Type: Text/Plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
Message-Id: <19990222133203S.nozo@ke.ics.saitama-u.ac.jp>
Date: Mon, 22 Feb 1999 13:32:03 +0900
From: Komori Nozomu <nozo@ke.ics.saitama-u.ac.jp>
X-Dispatcher: imput version 980905(IM100)
Lines: 83
Reply-To: FreeBSD-users-jp@jp.freebsd.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+981115
X-Sequence: FreeBSD-users-jp 39095
Subject: [FreeBSD-users-jp 39095] Re: [pcm,ESS Chip] Call for testers for ESS Sound Chip Driver, 2 
Errors-To: owner-FreeBSD-users-jp@jp.freebsd.org
Sender: owner-FreeBSD-users-jp@jp.freebsd.org
X-Originator: nozo@ke.ics.saitama-u.ac.jp

$B>.?9$H?=$7$^$9(B.

2.2.7-RELEASE $B$G(B SoundBlaster16 $B$r;H$C$F$$$^$9(B. $B%+!<%I$O?tG/A0$KGc$C$?(B
$BH"F~$j$N$b$N$G(B SoundBlaster16 IP/DV $B$H$+$$$&7?HV$@$C$?$h$&$K5-21$7$F$$(B
$B$^$9(B.

From: Takashi SHIRAI <shirai@pon.nintendo.co.jp>
Subject: [FreeBSD-users-jp 38960] Re: [pcm,ESS Chip] Call for testers for ESS Sound Chip Driver, 2 
Date: Fri, 19 Feb 1999 13:03:28 +0900
> $B!!K\Ev$K;`$s$G$$$k$+$I$&$+$O<B:]$K(B SB16 $B4D6-$N?M$NJs9p$rBT$D(B
> $B$7$+$"$j$^$;$s$,!";&$5$l$F$k$N$O(B mic $B$@$1$J$N$+!"$=$l$H$bB>(B
> $B$N(B cd $B$d(B line $B$bF1MM$K;`$s$G$k$N$+!"6=L#$"$k$H$3$m$G$9!#(B

Luigi $B$N%I%i%$%P$G$b(B VoxWare $B$G$b5/F0D>8e$O(B mic $B$@$1$,@8$-$F$$$^$9(B.
mixer mic $B$NCM$b(B Luigi, VoxWare $B6&$K(B 16:16 $B$G(B, $B2;NL$b@_DjDL$j$G$9$M(B.
$B>/$J$/$H$b;d$N4D6-$G$O%O%&%j%s%0$r$*$3$9$3$H$O$"$j$^$;$s(B. $B$^$?(B,
VoxWare($B$H$$$&$+(B sbxvi0)$B$G$OO?2;%=!<%9$H$7$F>o$K$I$l$+0l$D$,M-8z$K$J$k(B
$B$h$&$G(B, $BO?2;%=!<%9$rA4It;&$9$H(B mic $B$,M-8z$K$J$j$^$9(B. Luigi $B$b$3$NItJ,(B
$B$K5?Ld$r46$8$J$,$i$b(B compatibility $B$N$?$a$K$=$&$$$&%3!<%I$K$J$C$F$$$k(B
$B$_$?$$$G$9(B. 

  ($B5/F0D>8e(B: Luigi, VoxWare $B6&$KF1$8F0:n(B)
  % mixer recsrc
  Recording source: mic
  % mixer -rec mic
  Recording source: mic
  % mixer +rec cd
  Recording source: mic, cd
  % mixer -rec mic
  Recording source: cd
  % mixer -rec cd
  Recording source: mic

/sys/i386/isa/snd/sb_dsp.c $B$N(B 
sb_mixer_reset(snddev_info *d) $B$K$"$k$h$&$K(B

    if (d->bd_flags & BD_F_SB16) {
	sb_setmixer(d->io_base, 0x3c, 0x1f); /* make all output active */
	sb_setmixer(d->io_base, 0x3d, 0); /* make all inputs-l off */
	sb_setmixer(d->io_base, 0x3e, 0); /* make all inputs-r off */
    }
    sb_set_recsrc(d, SOUND_MASK_MIC);

$B0lEYF~NO$r;&$7$F$*$-$J$,$i(B, $B<!$N(B sb_set_recsrc(snddev_info *d, int mask) $B$G(B

    case BD_F_MIX_CT1745 : /* sb16 */
	if (mask == 0)
	    mask = SOUND_MASK_MIC ; /* XXX For compatibility. Bug ? */
	recdev = 0 ;
	if (mask & SOUND_MASK_MIC)
	    recdev |= 1 ;
	if (mask & SOUND_MASK_CD)
	    recdev |= 6 ; /* l+r cd */
	if (mask & SOUND_MASK_LINE)
	    recdev |= 0x18 ; /* l+r line */
	if (mask & SOUND_MASK_SYNTH)
	    recdev |= 0x60 ; /* l+r midi */
	sb_setmixer(d->io_base, SB16_IMASK_L, recdev);
	sb_setmixer(d->io_base, SB16_IMASK_R, recdev);
	/*
	 * since the same volume controls apply to the input and
	 * output sections, the best approach to have a consistent
	 * behaviour among cards would be to disable the output path
	 * on devices which are used to record.
	 * However, since users like to have feedback, we only disable
	 * the mike -- permanently.
	 */
        sb_setmixer(d->io_base, SB16_OMASK, 0x1f & ~1);
	break ;

$B$N$h$&$K@8$-JV$i$;$F$$$^$9(B.
#define SB16_IMASK_L 0x3d
#define SB16_IMASK_R 0x3e
$B$G$9(B. 

> $B!!$H$$$C$?$h$&$J5?LdE@$r2r>C$9$k$?$a$K!"$I$J$?$+>u67$r3NG'=P(B
> $BMh$kJ}$,$$$i$C$7$c$$$^$7$?$i!"@'Hs65$($FD:$-$?$$$H;W$$$^$9!#(B

$BOC$NN.$l$r$h$/DO$s$G$$$J$$$N$G4*0c$$$7$F$$$?$i8f;XE&$/$@$5$$(B. 
___
  ___   
 / | \  Info. and Comp. Sci., Saitama Univ., Japan
 \_/ /  nozo@ke.ics.saitama-u.ac.jp
