6502-cpp/include/personality.hpp

24 lines
684 B
C++

#ifndef INC_6502_CPP_PERSONALITY_HPP
#define INC_6502_CPP_PERSONALITY_HPP
#include <vector>
#include "6502.hpp"
class Personality
{
public:
virtual void insert_autostart_sequence(std::vector<mos6502> &new_instructions) const = 0;
[[nodiscard]] virtual Operand get_register(const int reg_num) const = 0;
virtual ~Personality() = default;
Personality(const Personality &) = delete;
Personality(Personality &&) = delete;
Personality &operator=(const Personality &) = delete;
Personality &operator=(Personality &&) = delete;
protected:
Personality() = default;
};
#endif//INC_6502_CPP_PERSONALITY_HPP