#include #include #include #include "breakpoint.h" #include "bus.h" class breakpoint_register : public breakpoint { private: cpu *const c { nullptr }; int register_nr { -1 }; std::set values; enum hwreg_t { hr_mmr0 = 100, hr_mmr1, hr_mmr2, hr_mmr3, hr_psw = 200 }; std::string get_name(hwreg_t reg) const; public: breakpoint_register(bus *const b, const int register_nr, const std::set & values); virtual ~breakpoint_register(); virtual std::optional is_triggered() const override; static std::pair > parse(bus *const b, const std::string & in); virtual std::string emit() const override; };