From da2b3fdd13edad2e561da9737d991d0e370ea86f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Rydg=C3=A5rd?= Date: Wed, 19 Mar 2025 10:42:09 +0100 Subject: [PATCH] Warning fixes. Don't clamp readsize to reported file size. --- Core/HLE/AtracCtx.h | 2 +- Core/HLE/AtracCtx2.cpp | 6 ++---- Core/HLE/AtracCtx2.h | 2 +- Core/HLE/sceAtrac.h | 2 ++ Core/HW/Atrac3Standalone.cpp | 1 - 5 files changed, 6 insertions(+), 7 deletions(-) diff --git a/Core/HLE/AtracCtx.h b/Core/HLE/AtracCtx.h index 0e5f2189b9..e776b15df7 100644 --- a/Core/HLE/AtracCtx.h +++ b/Core/HLE/AtracCtx.h @@ -258,7 +258,7 @@ public: u8 *BufferStart(); - AtracStatus BufferState() const { + AtracStatus BufferState() const override { return bufferState_; } diff --git a/Core/HLE/AtracCtx2.cpp b/Core/HLE/AtracCtx2.cpp index 20436c3fc2..6515186e40 100644 --- a/Core/HLE/AtracCtx2.cpp +++ b/Core/HLE/AtracCtx2.cpp @@ -131,7 +131,7 @@ int Atrac2::RemainingFrames() const { // Handle the easy cases first. switch (info.state) { - case 0: + case ATRAC_STATUS_UNINITIALIZED: case ATRAC_STATUS_NO_DATA: return 0; case ATRAC_STATUS_ALL_DATA_LOADED: @@ -838,9 +838,7 @@ int Atrac2::SetData(const Track &track, u32 bufferAddr, u32 readSize, u32 buffer context_->codec.inBuf = bufferAddr; if (readSize > track.fileSize) { - // This is seen in Tekken 6. - WARN_LOG(Log::ME, "readSize %d > track_.fileSize", readSize, track.fileSize); - readSize = track.fileSize; + INFO_LOG(Log::ME, "readSize (%d) > track_.fileSize (%d)", readSize, track.fileSize); } if (bufferSize >= track.fileSize) { diff --git a/Core/HLE/AtracCtx2.h b/Core/HLE/AtracCtx2.h index e1a57cf9ce..7fd0e1eaf2 100644 --- a/Core/HLE/AtracCtx2.h +++ b/Core/HLE/AtracCtx2.h @@ -12,7 +12,7 @@ public: delete[] decodeTemp_; } - AtracStatus BufferState() const { + AtracStatus BufferState() const override { return context_->info.state; } diff --git a/Core/HLE/sceAtrac.h b/Core/HLE/sceAtrac.h index 2b0bed5035..7805e50de5 100644 --- a/Core/HLE/sceAtrac.h +++ b/Core/HLE/sceAtrac.h @@ -34,6 +34,8 @@ constexpr u32 ATRAC3PLUS_MAX_SAMPLES = 0x800; // 2048 // The "state" member of SceAtracIdInfo. enum AtracStatus : u8 { + ATRAC_STATUS_UNINITIALIZED = 0, // bad state + ATRAC_STATUS_NO_DATA = 1, // The entire file is loaded into memory, no further file access needed. diff --git a/Core/HW/Atrac3Standalone.cpp b/Core/HW/Atrac3Standalone.cpp index 82a3f26cb8..b626326618 100644 --- a/Core/HW/Atrac3Standalone.cpp +++ b/Core/HW/Atrac3Standalone.cpp @@ -166,7 +166,6 @@ private: int channels_ = 0; int blockAlign_ = 0; - int srcPos_ = 0; float *buffers_[2]{}; bool codecOpen_ = false;