From owner-FreeBSD-users-jp@jp.FreeBSD.org Tue Nov  5 12:56:12 2002
Received: (from daemon@localhost)
	by castle.jp.FreeBSD.org (8.11.6+3.4W/8.11.3) id gA53uCs79290;
	Tue, 5 Nov 2002 12:56:12 +0900 (JST)
	(envelope-from owner-FreeBSD-users-jp@jp.FreeBSD.org)
Received: from www16.dns.ne.jp (www16.dns.ne.jp [210.188.227.145])
	by castle.jp.FreeBSD.org (8.11.6+3.4W/8.11.3) with ESMTP/inet id gA53uB379285
	for <FreeBSD-users-jp@jp.FreeBSD.org>; Tue, 5 Nov 2002 12:56:11 +0900 (JST)
	(envelope-from cory@www16.dns.ne.jp)
Received: (from cory@localhost)
	by www16.dns.ne.jp (8.11.6/[SAKURA-VDv2]/20010410) id gA53uAh82809;
	Tue, 5 Nov 2002 12:56:10 +0900 (JST)
Message-Id: <200211050356.gA53uAh82809@www16.dns.ne.jp>
To: FreeBSD-users-jp@jp.FreeBSD.org
From: ISAKA Yoji <isaka@cory.jp>
In-Reply-To: Your message of "Sat, 26 Oct 2002 16:12:22 +0900".
	<200210260724.QAA23796@ums509.nifty.ne.jp>
X-Mailer: mnews [version 1.22] 1999-12/19(Sun)
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-2022-JP
Reply-To: FreeBSD-users-jp@jp.FreeBSD.org
Precedence: list
Date: Tue, 5 Nov 2002 12:56:10 +0900
X-Sequence: FreeBSD-users-jp 71692
Subject: [FreeBSD-users-jp 71692] Re: PC-98
 =?ISO-2022-JP?B?GyRCRmJCIhsoQg==?= PCM + newpcm
	=?ISO-2022-JP?B?GyRCJUklaSUkJVAkRyROTz8yOyEmOkZAOCRLJEQbKEI=?=
	=?ISO-2022-JP?B?GyRCJCQkRhsoQg==?= 
Errors-To: owner-FreeBSD-users-jp@jp.FreeBSD.org
Sender: owner-FreeBSD-users-jp@jp.FreeBSD.org
X-Originator: isaka@cory.jp
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+021102


$B$3$s$K$A$O!#0f:d$H?=$7$^$9!#(B
$B;29M$K$J$j$=$&$J>pJs$r;}$A9g$o$;$F$*$i$:?=$7Lu$"$j$^$;$s$,!"(B
$B$H$j$"$($:$4Js9p$^$G!#(B


<200210260724.QAA23796@ums509.nifty.ne.jp>$B$N5-;v$K$*$$$F(B
CQG00620@nifty.ne.jp$B$5$s$O=q$-$^$7$?!#(B
> $B$=$N(B1) PC-98$BFbB"(BPCM(CS4231A)$B$G!"(B8bit$B%b%N%i%k0J30$GO?2;$,=PMh$J$$!#(B
> $B$=$N(B2) $B!V(B(record|play) interrupt timeout, channel dead$B!W$HI=<($5$l$F(B
>        $B%"%W%j%1!<%7%g%s$,2?$b$;$:$K=*N;$7$F$7$^$&!#(B

$B$3$N7o!"(BFreeBSD(98)-testers $B$G$bGR8+$7$F5$$K$J$C$F$$$?$N$G$9$,!"(B
$B:#F|(B FreeBSD(98) 4.7R-Rev01 $B$r?75,$KF~$l$k5!2q$,$"$C$?$N$G!"(B
$B%Q%C%A$r;n$5$;$F$$$?$@$-$^$7$?!#(B

$B$4Ds6!$$$?$@$$$?%Q%C%A$O(B 4.7R $B$N%=!<%9%3!<%I$K$OAGD>$K$OEv$?$j$^$;$s$,!"(B
4.5R $B$H(B 4.7R $B$N(B mss.c $B$r$6$C$H8+Hf$Y$?$H$3$m!"$3$N%Q%C%A$H=EJ#$7$=$&$J(B
$B=$@5$OL5$5$=$&$J$N$G!"<j:n6H$G%Q%C%A$rEv$F$FF0$+$7$F$_$^$7$?!#(B
$B0l1~!"J8Kv$KE:IU$7$F$*$-$^$9!#(B
$B!J$A$J$_$K!"(BOPTi $B$N2;8;$r@Q$s$@(BC$B%P%9%\!<%I$O;d$bB8$8$J$$$N$G!"(B
$B!!FC$K5$$K$;$:$=$N$^$^(B #ifndef PC98 $B$r@8$+$7$F$"$j$^$9!#!K(B

$B7k2L!"=$@5A0$N%=!<%9$G$O$4;XE&$N(B(1)(2)$B$N$h$&$J8=>]$,=P$F$7$^$$!"(B
$B$^$H$b$K;H$($J$+$C$?$b$N$,!"%Q%C%A8e$K$O$-$l$$$KO?2;!&:F@8$G$-$k(B
$B$h$&$K$J$j$^$7$?!#(B

$BO?2;J}K!!'(B
% mixer line 50 =rec line
% wavrec -t 210 -s 44100 -b 16 -S test.wav

$B:F@8J}K!!'(B
% mixer pcm 90
% wavplay test.wav

$BF0:n4D6-!'(B
PC-9821Ra20/N30$B2~(B (CPU: Celeron 766MHz) $BFbB"2;8;(B(CS4231A)
wavplay/wavrec Version 1.4
mpg123 Version 0.59r (1999/Jun/15)


$B:#$^$G$O!"IT0BDj$J(B voxware $B$N%I%i%$%P$r<*$r$4$^$+$7$J$,$i(B
$B;H$C$F$$$?$N$G(B(^^;$B!"BgJQ=u$+$j$^$7$?!#$"$j$,$H$&$4$6$$$^$7$?!#(B

--------------------
$B0f:d!!MN;N!!(B<isaka@cory.jp>



--- mss.c	Tue Nov  5 06:07:19 2002
+++ mss.c.orig	Tue Apr 23 00:49:30 2002
@@ -965,7 +965,6 @@
 			    abs(speed-speeds[i]) < abs(speed-speeds[sel])) sel = i;
         	speed = speeds[sel];
         	ad_write(mss, 8, (ad_read(mss, 8) & 0xf0) | sel);
-			ad_wait_init(mss, 10000);
     	}
     	ad_leave_MCE(mss);
 
@@ -1005,11 +1004,7 @@
     	arg <<= 4;
     	ad_enter_MCE(mss);
     	ad_write(mss, 8, (ad_read(mss, 8) & 0x0f) | arg);
-		ad_wait_init(mss, 10000);
-		if (ad_read(mss, 12) & 0x40) {  /* running mode2 */
-			ad_write(mss, 28, arg); /* capture mode */
-			ad_wait_init(mss, 10000);
-		}
+    	if (FULL_DUPLEX(mss)) ad_write(mss, 28, arg); /* capture mode */
     	ad_leave_MCE(mss);
     	return format;
 }
@@ -1354,7 +1349,6 @@
     	name = "AD1848";
     	mss->bd_id = MD_AD1848; /* AD1848 or CS4248 */
 
-#ifndef PC98
 	if (opti_detect(dev, mss)) {
 		switch (mss->bd_id) {
 			case MD_OPTI924:
@@ -1367,8 +1361,7 @@
 		printf("Found OPTi device %s\n", name);
 		if (opti_init(dev, mss) == 0) goto gotit;
 	}
-#endif	/* PC98 */
-	
+
    	/*
      	* Check that the I/O address is in use.
      	*
