--- nono/vm/xiospace.cpp 2026/04/29 17:04:42 1.1.1.4 +++ nono/vm/xiospace.cpp 2026/04/29 17:04:45 1.1.1.5 @@ -11,8 +11,9 @@ #include "dmac.h" #include "fdc.h" #include "gvram.h" -#include "ioctlr.h" #include "mfp.h" +#include "opm.h" +#include "pedec.h" #include "pio.h" #include "pluto.h" #include "printer.h" @@ -35,7 +36,6 @@ // デバイス static std::unique_ptr areaset; -static std::unique_ptr fdc; static std::unique_ptr pluto; static std::unique_ptr ppi; static std::unique_ptr printer; @@ -49,13 +49,13 @@ class MuxDevice using inherited = IODevice; public: MuxDevice(); - virtual ~MuxDevice(); + virtual ~MuxDevice() override; - virtual uint64 Read8(uint32 addr); - virtual uint64 Read16(uint32 addr); - virtual uint64 Write8(uint32 addr, uint32 data); - virtual uint64 Write16(uint32 addr, uint32 data); - virtual uint64 Peek8(uint32 addr); + uint64 Read8(uint32 addr) override; + uint64 Read16(uint32 addr) override; + uint64 Write8(uint32 addr, uint32 data) override; + uint64 Write16(uint32 addr, uint32 data) override; + uint64 Peek8(uint32 addr) override; IODevice *SearchDevice(uint32 addr) const; @@ -164,9 +164,9 @@ XIOSpaceDevice::XIOSpaceDevice() ADD_DEVICE(gCGROM, CGROMDevice()); ADD_DEVICE(gCRTC, BusIO_W()); ADD_DEVICE(gDMAC, BusIO_B()); - ADD_DEVICE(fdc, BusIO_EB()); + ADD_DEVICE(gFDC, BusIO_EB()); ADD_DEVICE(gGVRAM, GVRAMDevice()); - ADD_DEVICE(gIOCtlr, BusIO_EB()); + ADD_DEVICE(gPEDEC, BusIO_EB()); ADD_DEVICE(gIPLROM1, IPLROM1Device()); ADD_DEVICE(gIPLROM2, IPLROM2Device()); ADD_DEVICE(gMFP, BusIO_EB()); @@ -181,6 +181,7 @@ XIOSpaceDevice::XIOSpaceDevice() ADD_DEVICE(sysport, BusIO_FB()); ADD_DEVICE(gTVRAM, TVRAMDevice()); ADD_DEVICE(gVideoCtlr, BusIO_W()); + ADD_DEVICE(gOPM, BusIO_EB()); } // デストラクタ