project64/Source/Project64-core/N64System/Recompiler/RecompilerMemory.h

40 lines
1.4 KiB
C
Raw Normal View History

2016-01-27 09:11:59 +00:00
/****************************************************************************
* *
* Project64 - A Nintendo 64 emulator. *
* http://www.pj64-emu.com/ *
* Copyright (C) 2012 Project64. All rights reserved. *
* *
* License: *
* GNU/GPLv2 http://www.gnu.org/licenses/gpl-2.0.html *
* *
****************************************************************************/
#pragma once
#include <Project64-core/N64System/Recompiler/x86/x86ops.h>
2016-01-27 09:11:59 +00:00
2016-06-28 11:22:30 +00:00
class CRecompMemory
2016-01-27 09:11:59 +00:00
{
protected:
CRecompMemory();
~CRecompMemory();
bool AllocateMemory();
void CheckRecompMem();
void Reset();
void ShowMemUsed();
2016-06-28 11:22:30 +00:00
public:
uint8_t** RecompPos() { return &m_RecompPos; }
2016-01-27 09:11:59 +00:00
private:
CRecompMemory(const CRecompMemory&); // Disable copy constructor
CRecompMemory& operator=(const CRecompMemory&); // Disable assignment
uint8_t * m_RecompCode;
uint32_t m_RecompSize;
2016-06-28 11:22:30 +00:00
uint8_t * m_RecompPos;
2016-01-27 09:11:59 +00:00
enum { MaxCompileBufferSize = 0x03C00000 };
enum { InitialCompileBufferSize = 0x00500000 };
enum { IncreaseCompileBufferSize = 0x00100000 };
};