Emu: Convert Emu class to singleton

This commit is contained in:
Riyyi
2022-08-17 22:51:03 +02:00
parent 0e34901b64
commit 38c053e2d8
3 changed files with 19 additions and 15 deletions
+18 -14
View File
@@ -2,25 +2,29 @@
#include <cstdint> #include <cstdint>
#include <vector> #include <vector>
#include "processing_unit.h"
class Emu { #include "processing-unit.h"
#include "ruc/singleton.h"
class Emu : ruc::Singleton<Emu> {
public: public:
void WriteRAM(int location, int length); Emu(s) {}
void WriteVRAM(int location, int length);
void WriteROM(int location, int length);
void ReadRAM(int location, int length); void WriteRAM(int location, int length);
void ReadVRAM(int location, int length); void WriteVRAM(int location, int length);
void ReadROM(int location, int length); void WriteROM(int location, int length);
void ReadRAM(int location, int length);
void ReadVRAM(int location, int length);
void ReadROM(int location, int length);
private: private:
float m_frequency; float m_frequency;
int m_cycle = 0; int m_cycle = 0;
uint8_t m_ram[1024]; uint8_t m_ram[1024];
uint8_t m_vram[1024]; uint8_t m_vram[1024];
uint8_t m_rom[1024]; uint8_t m_rom[1024];
std::vector<ProcessingUnit> m_processing_units; std::vector<ProcessingUnit> m_processing_units;
}; };