Mesen/Core/Disassembler.h

24 lines
555 B
C++

#pragma once
#include "stdafx.h"
#include "CPU.h"
class DisassemblyInfo;
class Disassembler
{
private:
vector<shared_ptr<DisassemblyInfo>> _disassembleCache;
vector<shared_ptr<DisassemblyInfo>> _disassembleMemoryCache;
uint8_t* _internalRAM;
uint8_t* _prgROM;
uint32_t _prgSize;
public:
Disassembler(uint8_t* internalRAM, uint8_t* prgROM, uint32_t prgSize);
~Disassembler();
uint32_t BuildCache(uint32_t absoluteAddr, uint16_t memoryAddr);
string GetRAMCode();
string GetCode(uint32_t startAddr, uint32_t endAddr, uint16_t &memoryAddr);
};