On Tue, 18 Feb 2003, Paul Davis wrote:
> >> v = *src;
> >> if (cmpxchg(hw, 0, 1) == 0)
> >> v -= *sw;
> >> xadd(sw, v);
> >> do {
> >> v = *sw;
> >> if (v > 0x7fff)
> >> s = 0x7fff;
> >> else if (v < -0x8000)
> >> s = -0x8000;
> >> else
> >> s = v;
> >
> >A bit correction (we have to avoid zero results in hw buffer):
> >
> > else if (v == 0)
> > s = 1;
> > else
> > s = v;
> >
> >> *hw = s;
> >> } while (unlikely(v != *sw));
>
> help me out here. is this the code path that has be followed to write
> a single sample to the buffer?
Yes, this code updates one sample in the hardware buffer.
Jaroslav
-----
Jaroslav Kysela <[EMAIL PROTECTED]>
Linux Kernel Sound Maintainer
ALSA Project, SuSE Labs
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel