--- nono/vm/mfp.h 2026/04/29 17:05:42 1.1.1.18 +++ nono/vm/mfp.h 2026/04/29 17:05:50 1.1.1.19 @@ -11,7 +11,6 @@ #pragma once #include "device.h" -#include "event.h" #include class InterruptDevice; @@ -279,8 +278,8 @@ class MFPDevice : public IODevice bool IsRR() const; // イベントコールバック - void TimerCallback(Event& ev); - void KeyCallback(Event& ev); + void TimerCallback(Event *); + void KeyCallback(Event *); // 必要なら割り込みを上げる void SetInterrupt(uint ch); @@ -291,8 +290,8 @@ class MFPDevice : public IODevice DECLARE_MONITOR_CALLBACK(MonitorUpdate); struct MFP mfp {}; - std::array event {}; - Event key_event { this }; + std::array event {}; + Event *key_event {}; // 各タイマーが刻んでいる時刻 (時間軸) std::array stime {}; @@ -309,6 +308,7 @@ class MFPDevice : public IODevice Syncer *syncer {}; X68030Keyboard *keyboard {}; + static const busdata wait; static const char *intrname[]; static const char *gpipname[]; static const uint64 prescale_ns[8];