summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends/Software/DebugUtil.cpp
diff options
context:
space:
mode:
authordegasus <wickmarkus@web.de>2014-03-05 15:19:10 +0100
committerdegasus <wickmarkus@web.de>2014-04-12 13:32:53 +0200
commit96ffbe345db37fd15b553f40b41a48aa446a574a (patch)
tree9c4d491a65ed8df88f4f12ac97cc1bacff6f6491 /Source/Core/VideoBackends/Software/DebugUtil.cpp
parent4b60bdd2d07108b0338c558b4376c3930b2467bb (diff)
VideoSoftware: remove const memory usage of DebugUtil
Diffstat (limited to 'Source/Core/VideoBackends/Software/DebugUtil.cpp')
-rw-r--r--Source/Core/VideoBackends/Software/DebugUtil.cpp26
1 files changed, 17 insertions, 9 deletions
diff --git a/Source/Core/VideoBackends/Software/DebugUtil.cpp b/Source/Core/VideoBackends/Software/DebugUtil.cpp
index 4577987a42..b930969daa 100644
--- a/Source/Core/VideoBackends/Software/DebugUtil.cpp
+++ b/Source/Core/VideoBackends/Software/DebugUtil.cpp
@@ -21,29 +21,37 @@
namespace DebugUtil
{
-u32 skipFrames = 0;
-bool drawingHwTriangles = false;
+static u32 skipFrames = 0;
+static bool drawingHwTriangles = false;
enum { NumObjectBuffers = 40};
-u32 ObjectBuffer[NumObjectBuffers][EFB_WIDTH*EFB_HEIGHT];
-u32 TempBuffer[NumObjectBuffers];
+static u32 *ObjectBuffer[NumObjectBuffers];
+static u32 TempBuffer[NumObjectBuffers];
-bool DrawnToBuffer[NumObjectBuffers];
-const char* ObjectBufferName[NumObjectBuffers];
-int BufferBase[NumObjectBuffers];
+static bool DrawnToBuffer[NumObjectBuffers];
+static const char* ObjectBufferName[NumObjectBuffers];
+static int BufferBase[NumObjectBuffers];
void Init()
{
for (int i = 0; i < NumObjectBuffers; i++)
{
- memset(ObjectBuffer[i], 0, sizeof(ObjectBuffer[i]));
+ ObjectBuffer[i] = new u32[EFB_WIDTH*EFB_HEIGHT]();
DrawnToBuffer[i] = false;
ObjectBufferName[i] = nullptr;
BufferBase[i] = 0;
}
}
+void Shutdown()
+{
+ for (int i = 0; i < NumObjectBuffers; i++)
+ {
+ delete[] ObjectBuffer[i];
+ }
+}
+
void SaveTexture(const std::string& filename, u32 texmap, s32 mip)
{
FourTexUnits& texUnit = bpmem.tex[(texmap >> 2) & 1];
@@ -245,7 +253,7 @@ void OnObjectEnd()
swstats.thisFrame.numDrawnObjects, ObjectBufferName[i], i - BufferBase[i]);
(void)TextureToPng((u8*)ObjectBuffer[i], EFB_WIDTH * 4, filename, EFB_WIDTH, EFB_HEIGHT, true);
- memset(ObjectBuffer[i], 0, sizeof(ObjectBuffer[i]));
+ memset(ObjectBuffer[i], 0, EFB_WIDTH * EFB_HEIGHT * sizeof(u32));
}
}