Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 23 Dec 1999 19:18:26 +0900
From:      Seigo Tanimura <tanimura@r.dl.itc.u-tokyo.ac.jp>
To:        current@freebsd.org, "Cameron Grant" <gandalf@vilnya.demon.co.uk>
Cc:        Seigo Tanimura <tanimura@r.dl.itc.u-tokyo.ac.jp>
Subject:   Re: more patch for secondary buffer, polling and DMA emulation in pcm
Message-ID:  <14433.63218.157116.72159A@silver.carrots.uucp.r.dl.itc.u-tokyo.ac.jp>
In-Reply-To: In your message of "Mon, 20 Dec 1999 13:44:02 %2B0900" <14429.46098.1195.72159A@rina.r.dl.itc.u-tokyo.ac.jp>
References:  <14429.46098.1195.72159A@rina.r.dl.itc.u-tokyo.ac.jp>

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

[-- Attachment #1 --]
On Mon, 20 Dec 1999 13:44:02 +0900,
  Seigo Tanimura <tanimura@r.dl.itc.u-tokyo.ac.jp> said:

Seigo> If you have a trouble playing pcm with some applications, could you
Seigo> please try the patch attached below? The patch does the following things:

Seigo> - All ioctl(2)s go to see the secondary buffer(if I have forget nothing).
Seigo> - chn_setblocksize() changes the size of the secondary buffer.
Seigo> - chn_mmap() maps the secondary buffer.
Seigo> - chn_poll() invokes DMA.
Seigo> - chn_wrintr() performs DMA emulation for pcm devices with no DMA
Seigo>   functionality(requested by nyan).

Seigo> With the patch, snes9x(w/-r 7) and RealPlayer G2 for Linux worked fine.
Seigo> The range of blksz in chn_setblocksize() may need further tuning...


The patch has been updated slightly. Now snes9x works with any pcm
quality you like. The new features are:

- SNDCTL_DSP_SETFRAGMENT handles the count correctly.
- GETI/OSPACE returns the number of fragments.
- DMA transfer keeps running upon underrun. Some DSPs seem to end up
  with an unpredictable result if the DMA gets stopped followed by
  immediate restart. This revokes the change in sys/dev/sound/pcm/channel.c
  rev 1.12.


[-- Attachment #2 --]
a82ndbuf-19991223.diff<kSFͯLS;2l(i@d}Ϝ,Xd}s]],Bt%>~ەFœG¼~?N8?>~z..;"$ċv\v'SwǏ۵CSw8eFjsOxh[>vXxw=l"Nk/s ~eK8N"B/ıp曙yHXDMy7pk˨#Q	Ǔ
̣hzku'v87aC^DFzxrv9/=ϢB+ƧP]>r8b9=^o̭^17iGV_431P!3k$on)O<b>]HMU59=
}WF4*/ǽxXƼoźe(W6N(I#Ƿɱ쵻fݓhzq]~al:6,9!%p/Ƴ	wy*A͎ڕYh; 5^){:ϒ9$X:ylK/JjKlwXMѺ&qgaoh|2YNlϜIoՈUKxۀzz5o+VqWr˧]%wW%|VUZl7^lUqXXa5p6p:aKzq4o+0}0*;= 
;RD:ThWzpS0m0JDqW%zZ#Sv=lm tGYIT&ѓm?u;v[Iѝq=EOfN!	
	g%#k^;YG%w6&iz#ꉳU6Do Gz%;/E''m4RH>/~=;ƶ-HON LJ7I046ORHc>)
@."m00rא;W\O_?zP5_e/@mY*.F6kA;_9GL[71w.WFJfL瀃,‡
0 ~0
2E@ϟOOSMqE}O(C"E@kƻ#?"d"M_vӢGV
T@]G\XH\KZbt6c E
1@[
29j\65jyK	S$HwMkc5{\ID;oH$E"
|E \(
j@0+EjQ뇀CЀ:o	^xuiHr
<b0#hqxX_7I&+5|&齘EɶϛӛmqAb-30péP$cg"b1b2鏘ˏ='vt@h}M@x|C	%x$}7vX(6"#NNߊztf4昒-JlUuJQnYzAB`Sm-("3X%>Q-1a"0%D:-#E epvp]P}{m W.<OpL0I@*v0"hxhM41-=/6q8M

p</qJK76sABt#	Nc3X[⧟D
#pl{fطU
ڑgf/g\K0TSF`H3P[ᢪK:rq%ʉE$L@[$Cb)22>)߹kCĚ
bT4%j9&	?̈ʊbUb#je$Vw0lw[^xeZd%:O}rI|+\!ϫgR7T|h/
~~>2p
gM2P{9.Q"5-K	{{qYc)8#H)A<P/]H]އP	fAF
j`AmCj4;ί6nQRPh
7osJ9pSU/(B'c{60!@!!$5/I!3b!)@x$gÔsM
Axh:@m)ͣyDNޭxMFi

#P?p{R
}9IqHƨdAb;cRS*L!c0B^H͡QP40,;zzyzd2̊{X`Dh̃5JisGU;&ܝQԅ%gϘO 9jy
[QZ>Dw()+VGѬξRN@~xՇOOVR볋_݈o"ȓD<Y
zD Fy3lm{9;*h23
}{#S(g܀+})Zm\}\/BExKyw)W&rQѐrR28N<RAi/q/	QA`7G@/O ibW)%9T]ȥoީ%!%
JvmfqO-g+}$hy2LǾB_BNh
EС)m){rR@9x5u5l+{(yARcKF
zm+`"'sG'?
)sH
R&SKI4KX>ұr\
O4m}127c8uC{'l
lVZP4krn (bF>}U-%	t`*yIK.EJ=t&NFФ491*,QRe,'=sj"lQUՈ,pU;32=Z(<p?&2J'd}KmtJdrտd"Sӯ8n2z]VPTQLh)qؒu!kjKfL@y<JR{e?ש+T%cEo
AH#re(oM~E;>h#LĽǥ]GGIdj:}!Tzù}ƈ)YY/ޞ}j4dLрpV%P,\$O.Bxb@V1w"*FT\3OdoݖhYRFJ	{YJ<<be>F
jUrPCsp#c^X/^Ng1n!$R_YR1B"3Y)k
Q*!HZ|
2E= blJP<\$]
CSw/ک4ԼIӬ$yGy `!5D|e|I*jn&:)T`.vYԙku1C7$f߯+ߕ)dT_

',Dꪲ>UPfoUlԘFMoިVVhC?GS/R+foT9}nLtz=hlnLTD;wg{ۼSvϞe5(kns@{w=ݳf-MK?MpH^,2S]n\z\½i8B5{PLcRYñg  z]nK
\5@{n6x<R
qZ%X_j)ٺT}}JKyZ[	jEMhIV#]B]ix K'XG"
q.;\mR5*/FRLat.=w.^O[Uz-fJxIT}m(,cɃBuˎDJm22 ɤ_Ed*
.D|S+ِ8Һܕڢ㖼as]S5jrkQʤ*L>W&ʲ$[T"Pq4-<nZxbqIqUǵRb*묘P97EE(Ύk\UԮ=.:u2.y$$n
u7$7"7w$p46!ìK;꽆DbO퉮Tsgʆsf@bto$FYonzmxq7:΃>O}X.zZaԨ=AF	T$1-~#EI8?([Ƌ^cvqjɏO;]} tOfUGM?!CVHY|WխuKGBVPe-Ym9Ye_z0CqX!a*8TV)IpE#
I?|dIt@ǜ-wxapL
:3<KC~
k7bP<Q{(C>x;d7P2"'#]
7Zz1zw)#?dC
&J6?bL_]^^/S֫vM[;d^6X^P.*wwW}@6ób(<tma8Rlĩ)<[O{:C Mp}+ucw&˜G9l*яWVk\6> QpT!Kϛsno:0{$GkXUuHf,F&IQʪ=ƦqiFkخ
ƪPT&tKܣ΄=.-
[[
xk9uޚoce[|ч)`*+S
	ji[;7Wg<bxnY]?_l;R=U46DNe;)sf-!0ciXŬ+o&-)SOzǦzVWGG+⑧ldhL8ƤJVg;m_l!,gNw!G$Qi`lrvqvM\~yC^rp^i p6]42y|LSC
OuGT|A,};{mS@Jy#zaF#zw|>lմX>AR^NXig3Hr:AO33\C\B[~@e
*ngSp=ޱ,x巄

նL*ƃ$Wka"ICn9%oc.;JC~|hpYwZ&\n_ߐ]|9ԭ?R](^/lspY )'xuٵ:zⱸ2Z$yQF-eE5U$p˙}h;h@$RUSSgLBܤTcELAzfȒ@n<f	}h<96n2ep.CJ/9u,v/ђ˚oP:ˆXnaN	*D?Fe? [4m6̈́Ȱ43ӕ\7:
ccZDioJZ.p~=߉$x&uxLfDq(HB 8f<adO!\*	#>!9oLXaǀBMfa5g#uy^&RpJme\4:Js9C
8s3cEKQrO
2\~1e.
(Vei@ElyqJ74z6J0d`3IRPCH.;ucA(L%
bN8׾H35ndL~J/TmS!Qr+HNԗJP%u)v ;p,o[
P JpwV:ܺw)4Y3;47.q[gv)?ZrUw=mί8jbǾ>;PrIXZƖ8>5yä|ng3;;Ӛx⬸tętgXIK7{]i]'3Q+4n׫cWK14s-bl|N";+.P=/N,Rs
uqIJqc:6|@à>GC
vTVkx%U/bRmGJv
/2үVvjfۨQ慓puq籯hTYXI~oh]ZK'Wu؄f)NJVԗntE^Z|]A[Ϳ"v)N?\ݒ*9Oɦ5NO )i?SOR<Fc۾sy9+kSg-&dy3I.g6Z6o a9)'cBN>s4=,A8f۝g/E==<npƉy-ps
yN<!@7ńY\!VΒ<K
Zp3){rNT)l?'$CESmla;eڶBQgDVnsq%{q9Y+SZY&UOGVdɣkΠt`o!u#
	Mۀ$F+Y{3^K)kLo:b>N0 ޒ
=-ESS]
/կ(D
J+Bkd'+ 9%s>~uq6=ZGɣoZ6@ϏYBCOl~(w8t.W$:zuK#*ᄽOX)؈rXFK(gHQa-ʳNrVhg\Qe(W(
:.2oHN
X;Q|R:m1p4k')SQdӌ^'9g;6O1P;H!\,cd/C'^pjdc9
Ԭz"I}Aq,Ig>oYn:XjMh'/MՎH!zD%!b$a?jtZMn%Tt1A,)A{K[I8ADmVtudyS/9z
 5@B+yA~b+.	ZR0^FL/={	mguPYڔRi:}~$e栱ނjw9HTU3ҫ*hjN㪝RtnFǒ^нjN4"~ ofѰ@+B2'_&[pa|~~6}|EaoW~+j+.3f
GE!,7F'}P~H%J:Ov}g<jb
wkt.rrb
E!*G[A*rz8kRqֳ%ŭ֚i_W?IY&Ɠ͌Ln9ۑ	ǧBŸnwd'RQ3)_ovÎN<OaТr5-/Yg0yJ,s<n*,Q!86-`ֲ2V:2`*ۍ6[|A+9L>Ȗ+$7"[FC
Fa`RJȔ~swvVV|YZYSNW=Mgnb,v1.FNbFM1Bչ1x-ُ)R}pt{xˑ[(%dD3㏈M0cKq3/a!.!O&1q-įZ]tv7U怌'7ǃܶyz88@
ou0ʄ	!0#S{L;͙xXr]2]Bk,^h{x~zq
@V	q_6CHջׇgXuP35/I<AF<Όg\
NIBZޒݞ@+YqRPW4^ف~6Y0`!}KoX~
[-- Attachment #3 --]

-- 
Seigo Tanimura <tanimura@r.dl.itc.u-tokyo.ac.jp> <tanimura@freebsd.org>

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