2022-07-18 09:36:34 +00:00
|
|
|
#pragma once
|
|
|
|
#include "MemoryHandler.h"
|
|
|
|
#include <Common/File.h>
|
|
|
|
#include <memory>
|
|
|
|
#include <stdint.h>
|
2022-10-10 00:22:17 +00:00
|
|
|
#include <vector>
|
2022-07-18 09:36:34 +00:00
|
|
|
|
|
|
|
class CN64System;
|
2022-11-08 00:24:01 +00:00
|
|
|
class RomMemoryHandler;
|
|
|
|
class CN64Rom;
|
2022-07-18 09:36:34 +00:00
|
|
|
|
|
|
|
class ISViewerHandler :
|
|
|
|
public MemoryHandler
|
|
|
|
{
|
|
|
|
public:
|
2022-11-08 00:24:01 +00:00
|
|
|
ISViewerHandler(CN64System & System, RomMemoryHandler & RomHandler, CN64Rom & Rom);
|
2022-07-18 09:36:34 +00:00
|
|
|
|
|
|
|
bool Read32(uint32_t Address, uint32_t & Value);
|
|
|
|
bool Write32(uint32_t Address, uint32_t Value, uint32_t Mask);
|
|
|
|
|
|
|
|
private:
|
|
|
|
ISViewerHandler();
|
|
|
|
ISViewerHandler(const ISViewerHandler &);
|
|
|
|
ISViewerHandler & operator=(const ISViewerHandler &);
|
|
|
|
|
2022-10-10 00:22:17 +00:00
|
|
|
static void stSystemReset(ISViewerHandler * _this)
|
|
|
|
{
|
|
|
|
_this->SystemReset();
|
|
|
|
}
|
2022-07-18 09:36:34 +00:00
|
|
|
static uint32_t Swap32by8(uint32_t Value);
|
|
|
|
|
|
|
|
void SystemReset(void);
|
|
|
|
|
2022-11-08 00:24:01 +00:00
|
|
|
RomMemoryHandler & m_RomMemoryHandler;
|
|
|
|
CN64Rom & m_Rom;
|
2022-07-18 09:36:34 +00:00
|
|
|
std::unique_ptr<CFile> m_hLogFile;
|
|
|
|
std::vector<uint8_t> m_Data;
|
|
|
|
char m_Buffer[0x1000];
|
|
|
|
uint32_t m_BufferPos;
|
|
|
|
};
|