From owner-FreeBSD-users-jp@jp.FreeBSD.org Mon Mar 24 18:49:56 2003
Received: (from daemon@localhost)
	by castle.jp.FreeBSD.org (8.11.6+3.4W/8.11.3) id h2O9nu898010;
	Mon, 24 Mar 2003 18:49:56 +0900 (JST)
	(envelope-from owner-FreeBSD-users-jp@jp.FreeBSD.org)
Received: from pop03.dreamnet.ne.jp (smtp3.dreamnet.ne.jp [202.217.109.103])
	by castle.jp.FreeBSD.org (8.11.6+3.4W/8.11.3) with ESMTP/inet id h2O9nu497996
	for <FreeBSD-users-jp@jp.FreeBSD.org>; Mon, 24 Mar 2003 18:49:56 +0900 (JST)
	(envelope-from chi@bd.mbn.or.jp)
Received: from chino.localhost ([219.99.108.76]) by pop03.dreamnet.ne.jp
          with ESMTP
          id <20030324094830.COLB21276.pop03.dreamnet.ne.jp@chino.localhost>
          for <FreeBSD-users-jp@jp.FreeBSD.org>;
          Mon, 24 Mar 2003 18:48:30 +0900
Posted-Date: Mon, 24 Mar 2003 18:27:43 JST
To: FreeBSD-users-jp@jp.FreeBSD.org
In-Reply-To: <JQ20030310003255.12050225@js8.so-net.ne.jp>
From: chi@bd.mbn.or.jp (Chiharu Shibata)
X-Mailer: mnews [version 1.22] 1999-12/19(Sun)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="-=-mnews-multipart-=-"
Message-Id: <20030324094830.COLB21276.pop03.dreamnet.ne.jp@chino.localhost>
Reply-To: FreeBSD-users-jp@jp.FreeBSD.org
Precedence: list
Date: Mon, 24 Mar 2003 18:48:31 +0900
X-Sequence: FreeBSD-users-jp 73849
Subject: [FreeBSD-users-jp 73849] Re: PC-9801-84 does not work
Sender: owner-FreeBSD-users-jp@jp.FreeBSD.org
X-Originator: chi@bd.mbn.or.jp
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+030304


---=-mnews-multipart-=-
Content-Type: text/plain; charset=ISO-2022-JP
Content-Transfer-Encoding: 7bit

$B$3$s$K$A$O!"<FED$G$9!#(B
Mon, 10 Mar 2003 00:32:55 JST$B$K(B
dhar_wnc@js8.so-net.ne.jp$B$5$s$O=q$-$^$7$?!#(B

>4.7R$B$G(Bbusio.s$B$r99?7$7$F%P%$%J%j$H%+!<%M%k!J(BGENERIC98$B!K$r:n$jD>$7$^$7$?$,!"(B
>$B>I>u$OF1$8$G$7$?!#(B
>$B<FED$5$s$N@b$K$D$$$F$O!"<+NO$GC5$k$h$&$JM>M5$,:#$O$"$j$^$;$s!#(B

$B$3$A$i$G$b(B4.7R$B$K>e$2$F2r@O$7$?$N$G$9$,!"$I$&$d$i%3%s%Q%$%i$N%P%0$KEv$?$C(B
$B$?2DG=@-$,9b$$$G$9!#(B
$B!t4V@\E*$K$O!"<+J,$H9b66$5$s$N%U%)%m!<$K$"$k(Bbus_space$B4XO"$N=q$-D>$7$K$h$k(B
$B!t$b$N$J$N$G$9$,(B

users-jp$B$J$N$G!"$"$^$jG;$$OC$OHr$1$^$9$,!"%"%;%s%V%i%l%Y%k$G%3!<%I$rDI$C(B
$B$+$1$k$H(Bbus_space_*_region_1()$B$KEO$5$l$k%l%8%9%?$NCM$r4V0c$C$F@_Dj$7$F$$(B
$B$^$9!#(B

$BE:IU$N%Q%C%A$N$h$&$K!"(Bvolatile$BB0@-$rIU2C$9$k$H@5$7$$%3!<%I$,@8@.$5$l$k$N(B
$B$G$9$,!"4Q;!$N$?$a$K(Bprintf()$B$rF~$l$k$H!":#EY$OJL$N%l%8%9%?$NCM$,4V0c$C$F(B
$B@_Dj$5$l$F$7$^$&$0$i$$HyL/$G$9!#(B

$B$7$?$,$C$F!":#$N$H$3$m$O!V(Bsnc$B%I%i%$%P$r;H$$$?$$>l9g$O(B4.5R$B$r;H$C$F$/$@$5(B
$B$$!W$H$$$&2sHr:v$7$+$J$$$G$9$M!#(B

$B$b$72r@O$K6(NO$7$FD:$1$k$H$$$&J}$,$$$i$C$7$c$l$P!"(Btech-jp$BJU$j$GB3$1$?$$(B
$B$H;W$$$^$9!#(Bsnc$B%I%i%$%P$O(BPC/AT$B$G$b(B($B%/%m%9(B)$B%3%s%Q%$%k$G$-$k$N$G(BPC-98$B$J?M(B
$B$G$J$/$F$bBg>fIW$G$9(B(^^;;

$B%*%^%1!#(B
$B$3$N2r@O$N$?$a$K(B4.7R$B$K%P!<%8%g%s%"%C%W$7$?$N$G$9$,!"$=$7$?$i(BCD-DA$B$N:F@8(B
$B$G%H%i%V%k$K8+Iq$o$l$F$7$^$$$^$7$?!#(B
$B>\:Y$O<!$N%a!<%k$G=q$-$^$9$,!"$d$C$Q$j<+J,$O%P%0$r8F$VBN<A$J$N$G$7$g$&$+(B
(^^;;
-- 
$B<FED(B $B@i=U(B($B!i(B) chi@bd.mbn.or.jp <http://plaza17.mbn.or.jp/~chi/>
---=-mnews-multipart-=-
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Description: dp83932subr.c.diff
Content-Disposition: attachment; filename="dp83932subr.c.diff"

--- sys/dev/snc/dp83932subr.c	Sat Oct 21 12:30:03 2000
+++ dp83932subr.c	Sat Mar 22 07:53:43 2003
@@ -639,8 +639,15 @@
 
 	if (size > 3)  {
 		if (noffset & 3)  {
+#if 1	/* XXX broken codes are generated if "asize" is NOT volatile */
+			volatile size_t asize = (~noffset & 3);
+#else
 			size_t asize = (~noffset & 3);
+#endif
 
+#if 0	/* XXX broken codes are genenated EVEN IF "asize" IS volatile */
+printf("%d %p %u\n", noffset, bptr, asize");
+#endif
 			bus_space_read_region_1(memt, memh, noffset,
 			    bptr, asize);
 			bptr += asize;
@@ -680,8 +687,15 @@
 
 	if (size > 3)  {
 		if (noffset & 3)  {
+#if 1	/* XXX broken codes are generated if "asize" is NOT volatile */
+			volatile size_t asize = (~noffset & 3);
+#else
 			size_t asize = (~noffset & 3);
+#endif
 
+#if 0	/* XXX broken codes are genenated EVEN IF "asize" IS volatile */
+printf("%d %p %u\n", noffset, bptr, asize");
+#endif
 			bus_space_write_region_1(memt, memh, noffset,
 			    bptr, asize);
 			bptr += asize;
@@ -722,7 +736,11 @@
 
 	if (size > 3)  {
 		if (noffset & 3)  {
+#if 0	/* XXX broken codes are generated if "asize" IS volatile */
+			volatile size_t asize = (~noffset & 3);
+#else
 			size_t asize = (~noffset & 3);
+#endif
 
 			bus_space_set_region_1(memt, memh, noffset, 0, asize);
 			noffset += asize;

---=-mnews-multipart-=---
