From 7bc4b47b8596ba11c4dfff6c1d5810705d564628 Mon Sep 17 00:00:00 2001 From: "Unknown W. Brackets" Date: Sun, 31 Mar 2013 17:09:33 -0700 Subject: [PATCH] Don't wipe all streams in sceMpegFlushAllStreams(). Patapon and Patapon 2 didn't like it, sitll works in Crisis Core. --- Core/HLE/sceMpeg.cpp | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/Core/HLE/sceMpeg.cpp b/Core/HLE/sceMpeg.cpp index 97faae02a2..36964f6053 100644 --- a/Core/HLE/sceMpeg.cpp +++ b/Core/HLE/sceMpeg.cpp @@ -1008,6 +1008,14 @@ int sceMpegRingbufferAvailableSize(u32 ringbufferAddr) SceMpegRingBuffer ringbuffer; Memory::ReadStruct(ringbufferAddr, &ringbuffer); DEBUG_LOG(HLE, "%i=sceMpegRingbufferAvailableSize(%08x)", ringbuffer.packetsFree, ringbufferAddr); + + static int c = 0; + if (ringbuffer.packetsFree == 0) + c++; + else + c = 0; + //if (c > 1000) + //hleDebugBreak(); return ringbuffer.packetsFree; } @@ -1282,12 +1290,6 @@ u32 sceMpegFlushAllStream(u32 mpeg) } WARN_LOG(HLE, "UNIMPL sceMpegFlushAllStream(%08x)", mpeg); - ctx->avcRegistered = false; - ctx->atracRegistered = false; - ctx->pcmRegistered = false; - ctx->dataRegistered = false; - - ctx->streamMap.clear(); ctx->isAnalyzed = false; if (Memory::IsValidAddress(ctx->mpegRingbufferAddr))