--- nono/vm/mpu88xx0.cpp 2026/04/29 17:04:50 1.1.1.6 +++ nono/vm/mpu88xx0.cpp 2026/04/29 17:04:52 1.1.1.7 @@ -13,14 +13,11 @@ std::unique_ptr gMPU88200ATC[2]; // コンストラクタ -MPU88xx0Device::MPU88xx0Device(uint32 reset_vector) +MPU88xx0Device::MPU88xx0Device() { monitor_size = nnSize(79, 18); - cpu.reset(new m88kcpu(reset_vector)); - - // リセット例外イベントコールバック設定 - event.func = (DeviceCallback_t)&MPU88xx0Device::Callback; + cpu.reset(new m88kcpu()); // LUNA88K では CMMU の ID は次のように割り振ってあるようだ。 // OpenBSD の sys/arch/luna68k/include/board.h より。 @@ -61,9 +58,15 @@ MPU88xx0Device::Init() return true; } -// リセット例外イベントコールバック +bool +MPU88xx0Device::PowerOn() +{ + cpu->PowerOn(); + return true; +} + void -MPU88xx0Device::Callback(Event& ev) +MPU88xx0Device::ResetHard() { cpu->RequestReset(); }