From ae4811d0d15dacd9765a9fb1472c02ba5fd263a2 Mon Sep 17 00:00:00 2001 From: "Unknown W. Brackets" Date: Thu, 26 Mar 2015 22:34:45 -0700 Subject: [PATCH] Still fudge seek positions for low level. Since in this case we're tricking it into reading the same buffer area. --- Core/HLE/sceAtrac.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Core/HLE/sceAtrac.cpp b/Core/HLE/sceAtrac.cpp index 2c76430701..534db9e8bb 100644 --- a/Core/HLE/sceAtrac.cpp +++ b/Core/HLE/sceAtrac.cpp @@ -2185,8 +2185,8 @@ static int sceAtracLowLevelDecode(int atracID, u32 sourceAddr, u32 sourceBytesCo if (sourcebytes > 0) { Memory::Memcpy(atrac->data_buf + atrac->first.size, sourceAddr, sourcebytes); CBreakPoints::ExecMemCheck(sourceAddr, false, sourcebytes, currentMIPS->pc); - if (atrac->decodePos >= atrac->first.size) { - atrac->decodePos = atrac->first.size; + if (atrac->bufferPos >= atrac->first.size) { + atrac->bufferPos = atrac->first.size; } atrac->first.size += sourcebytes; } @@ -2222,7 +2222,7 @@ static int sceAtracLowLevelDecode(int atracID, u32 sourceAddr, u32 sourceBytesCo numSamples = (atrac->codecType == PSP_MODE_AT_3_PLUS ? ATRAC3PLUS_MAX_SAMPLES : ATRAC3_MAX_SAMPLES); Memory::Write_U32(numSamples * sizeof(s16) * atrac->atracOutputChannels, sampleBytesAddr); - if (atrac->decodePos >= atrac->first.size) { + if (atrac->bufferPos >= atrac->first.size) { atrac->first.writableBytes = atrac->atracBytesPerFrame; atrac->first.size = atrac->firstSampleoffset; atrac->ForceSeekToSample(0);