mirror of
https://github.com/jpd002/Play-.git
synced 2025-04-28 21:57:57 +03:00
Changed lots of stuff to try to see how to make the thing faster... But with no real success...
git-svn-id: http://svn.purei.org/purei/trunk@354 b36208d7-6611-0410-8bec-b1987f11c4a2
This commit is contained in:
parent
09b1ada7e4
commit
1ba2aa5dde
22 changed files with 855 additions and 624 deletions
|
@ -17,22 +17,6 @@ public:
|
|||
typedef std::tr1::function<void (uint32)> WriteNotifyHandlerType;
|
||||
typedef std::tr1::function<uint32 (uint32, uint32)> MemoryMapHandlerType;
|
||||
|
||||
virtual ~CMemoryMap();
|
||||
uint8 GetByte(uint32);
|
||||
virtual uint16 GetHalf(uint32) = 0;
|
||||
virtual uint32 GetWord(uint32) = 0;
|
||||
virtual uint32 GetInstruction(uint32) = 0;
|
||||
virtual void SetByte(uint32, uint8);
|
||||
virtual void SetHalf(uint32, uint16) = 0;
|
||||
virtual void SetWord(uint32, uint32) = 0;
|
||||
void InsertReadMap(uint32, uint32, void*, unsigned char);
|
||||
void InsertReadMap(uint32, uint32, const MemoryMapHandlerType&, unsigned char);
|
||||
void InsertWriteMap(uint32, uint32, void*, unsigned char);
|
||||
void InsertWriteMap(uint32, uint32, const MemoryMapHandlerType&, unsigned char);
|
||||
void InsertInstructionMap(uint32, uint32, void*, unsigned char);
|
||||
void SetWriteNotifyHandler(WriteNotifyHandlerType);
|
||||
|
||||
protected:
|
||||
enum MEMORYMAP_TYPE
|
||||
{
|
||||
MEMORYMAP_TYPE_MEMORY,
|
||||
|
@ -50,6 +34,24 @@ protected:
|
|||
|
||||
typedef std::map<unsigned char, MEMORYMAPELEMENT> MemoryMapListType;
|
||||
|
||||
virtual ~CMemoryMap();
|
||||
uint8 GetByte(uint32);
|
||||
virtual uint16 GetHalf(uint32) = 0;
|
||||
virtual uint32 GetWord(uint32) = 0;
|
||||
virtual uint32 GetInstruction(uint32) = 0;
|
||||
virtual void SetByte(uint32, uint8);
|
||||
virtual void SetHalf(uint32, uint16) = 0;
|
||||
virtual void SetWord(uint32, uint32) = 0;
|
||||
void InsertReadMap(uint32, uint32, void*, unsigned char);
|
||||
void InsertReadMap(uint32, uint32, const MemoryMapHandlerType&, unsigned char);
|
||||
void InsertWriteMap(uint32, uint32, void*, unsigned char);
|
||||
void InsertWriteMap(uint32, uint32, const MemoryMapHandlerType&, unsigned char);
|
||||
void InsertInstructionMap(uint32, uint32, void*, unsigned char);
|
||||
MEMORYMAPELEMENT* GetReadMap(uint32);
|
||||
MEMORYMAPELEMENT* GetWriteMap(uint32);
|
||||
void SetWriteNotifyHandler(const WriteNotifyHandlerType&);
|
||||
|
||||
protected:
|
||||
WriteNotifyHandlerType m_WriteNotifyHandler;
|
||||
static MEMORYMAPELEMENT* GetMap(MemoryMapListType&, uint32);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue