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%>~ەFG¼~?N8?>~z..;"$ċv\v'SwǏ۵CSw8eFjsOxh[>vXxw=l"Nk/s ~eK8N"B/ıp曙yHXDMy7pk˨#Q Ǔ
̣hz ku'v87aC^DFzxrv9/=ϢB+ƧP]>r8b9=^o̭^17iGV_431P!3k$on)O<b>]HMU59=
}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 ^xuiHr
<b0#hqxX_7I&+5|&齘EɶϛӛmqA b-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;ί6nQR Ph
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@9x5u5l+{(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{P LcRYñg z]n K
\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Ԯ =.:u2.y$$n
u7$7"7w$p46!ìK;꽆DbO퉮Tsgʆsf@bto$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} +uc w&G9l*яWVk\6> QpT!Kϛsn o: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:Js9C
8s3cEKQrO
2\~1e.
(Vei@ElyqJ74z6J0d`3IRPCH.;ucA(L%
bN8H35ndL~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+4ncWK14s-bl|N";+.P=/N,Rs
uqIJqc:6|@à>GC
vTVkx%U/bRmGJv
/2үVvjfۨQ慓puq籯hTYXI~oh]ZK'Wuf)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:m 1p4k')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ǒ^нjN 4"~ 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!86-`ֲ2V: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>
