SPU2-X: Minor change on the ADPCM decoder. 2 other known decoders do this as well.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4226 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
ramapcsx2 2011-01-16 21:02:37 +00:00
parent 53a5e3fd25
commit ac552aae56
2 changed files with 5 additions and 3 deletions

View File

@ -521,7 +521,10 @@ s32 V_Core::NewDmaWrite(u32* data, u32 bytesLeft, u32* bytesProcessed)
}
if( IsDevBuild )
{
DebugCores[Index].lastsize = bytesLeft;
DebugCores[Index].dmaFlag = 1;
}
TSA &= ~7;
@ -530,7 +533,6 @@ s32 V_Core::NewDmaWrite(u32* data, u32 bytesLeft, u32* bytesProcessed)
if(adma_enable)
{
TSA&=0x1fff;
//Console.Error("* SPU2-X: AutoDMA transfers not supported yet! (core %d)\n", Index);
if(MsgAutoDMA() && DmaStarting) ConLog("* SPU2-X: DMA%c AutoDMA Transfer of %d bytes to %x (%02x %x %04x).\n",
GetDmaIndexChar(), bytesLeft<<1, TSA, DMABits, AutoDMACtrl, (~Regs.ATTR)&0x7fff);

View File

@ -85,13 +85,13 @@ static void __forceinline XA_decode_block(s16* buffer, const s16* block, s32& pr
for(; blockbytes<=blockend; ++blockbytes)
{
s32 data = ((*blockbytes)<<28) & 0xF0000000;
s32 pcm = (data >> shift) + (((pred1*prev1)+(pred2*prev2)) >> 6);
s32 pcm = (data >> shift) + (((pred1*prev1)+(pred2*prev2)+32) >> 6);
Clampify( pcm, -0x8000, 0x7fff );
*(buffer++) = pcm;
data = ((*blockbytes)<<24) & 0xF0000000;
s32 pcm2 = (data >> shift) + (((pred1*pcm)+(pred2*prev1)) >> 6);
s32 pcm2 = (data >> shift) + (((pred1*pcm)+(pred2*prev1)+32) >> 6);
Clampify( pcm2, -0x8000, 0x7fff );
*(buffer++) = pcm2;