Commit d2e22f93 authored by David D. Hagood's avatar David D. Hagood Committed by Alexandre Julliard

ADPCM nybble processing order was incorrect.

parent 2e2988de
...@@ -284,16 +284,16 @@ static void cvtSSima16K(PACMDRVSTREAMINSTANCE adsi, ...@@ -284,16 +284,16 @@ static void cvtSSima16K(PACMDRVSTREAMINSTANCE adsi,
{ {
for (i = 0; i < 4; i++) for (i = 0; i < 4; i++)
{ {
process_nibble(*src >> 4, &stepIndexL, &sampleL); process_nibble(*src, &stepIndexL, &sampleL);
W16(dst + (2 * i + 0) * 4 + 0, sampleL); W16(dst + (2 * i + 0) * 4 + 0, sampleL);
process_nibble(*src++, &stepIndexL, &sampleL); process_nibble(*src++ >> 4, &stepIndexL, &sampleL);
W16(dst + (2 * i + 1) * 4 + 0, sampleL); W16(dst + (2 * i + 1) * 4 + 0, sampleL);
} }
for (i = 0; i < 4; i++) for (i = 0; i < 4; i++)
{ {
process_nibble(*src >> 4, &stepIndexR, &sampleR); process_nibble(*src , &stepIndexR, &sampleR);
W16(dst + (2 * i + 0) * 4 + 2, sampleR); W16(dst + (2 * i + 0) * 4 + 2, sampleR);
process_nibble(*src++, &stepIndexR, &sampleR); process_nibble(*src++ >>4, &stepIndexR, &sampleR);
W16(dst + (2 * i + 1) * 4 + 2, sampleR); W16(dst + (2 * i + 1) * 4 + 2, sampleR);
} }
dst += 32; dst += 32;
...@@ -335,9 +335,9 @@ static void cvtMMima16K(PACMDRVSTREAMINSTANCE adsi, ...@@ -335,9 +335,9 @@ static void cvtMMima16K(PACMDRVSTREAMINSTANCE adsi,
for (nsamp = nsamp_blk; nsamp > 0; nsamp -= 2) for (nsamp = nsamp_blk; nsamp > 0; nsamp -= 2)
{ {
process_nibble(*src >> 4, &stepIndex, &sample); process_nibble(*src, &stepIndex, &sample);
W16(dst, sample); dst += 2; W16(dst, sample); dst += 2;
process_nibble(*src++, &stepIndex, &sample); process_nibble(*src++ >> 4, &stepIndex, &sample);
W16(dst, sample); dst += 2; W16(dst, sample); dst += 2;
} }
/* we have now to realign the source pointer on block */ /* we have now to realign the source pointer on block */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment