--- nono/vm/vm_x68k.h 2026/04/29 17:04:36 1.1.1.2 +++ nono/vm/vm_x68k.h 2026/04/29 17:05:10 1.1.1.8 @@ -4,11 +4,15 @@ // Licensed under nono-license.txt // +// +// VM (X68030) +// + #pragma once #include "vm.h" -class VM_X68030 : public VM +class VM_X68030 final : public VM { using inherited = VM; public: @@ -21,24 +25,18 @@ class VM_X68030 : public VM // 電源ボタンの状態を取得。オンなら true。 bool IsPowerButton() const override { return power_button; } - private: - // 電源ボタンの状態。オンなら true。 - bool power_button = false; - - // デバイス - std::unique_ptr xiospace; -}; - -class VM_RXZ : public VM -{ - using inherited = VM; - public: - VM_RXZ(); - ~VM_RXZ() override; + // MPU の RESET 命令によるリセット + void ResetByMPU() override; - // 電源ボタンを押す。 - void PowerButton() override; + protected: + // ブートページを切り替える。 + void SwitchBootPage(Device *parent, bool isrom) override; private: - std::unique_ptr human68k; + // 電源ボタンの状態。オンなら true。 + bool power_button {}; + + std::unique_ptr pHuman68k {}; + std::unique_ptr pIPLROM0 {}; + std::unique_ptr pXIOSpace {}; };