Files
kaizen/src/backend/core/BaseCPU.hpp
2024-08-27 21:18:10 +02:00

18 lines
453 B
C++

#pragma once
#include <Mem.hpp>
#include <Registers.hpp>
namespace n64 {
struct BaseCPU {
virtual ~BaseCPU() = default;
virtual int Step() = 0;
virtual void Reset() = 0;
virtual bool ShouldServiceInterrupt() = 0;
virtual void CheckCompareInterrupt() = 0;
virtual std::vector<u8> Serialize() = 0;
virtual void Deserialize(const std::vector<u8> &) = 0;
virtual Mem &GetMem() = 0;
virtual Registers &GetRegs() = 0;
};
} // namespace n64