--- nono/vm/opm.h 2026/04/29 17:05:17 1.1.1.6 +++ nono/vm/opm.h 2026/04/29 17:05:42 1.1.1.9 @@ -20,12 +20,12 @@ class OPMDevice : public IODevice { using inherited = IODevice; - static const int baseaddr = 0xe90000; + static const uint32 baseaddr = 0xe90000; static const uint64 clk = 250_nsec; // 4MHz public: OPMDevice(); - virtual ~OPMDevice() override; + ~OPMDevice() override; bool Init() override; void ResetHard(bool poweron) override; @@ -33,18 +33,19 @@ class OPMDevice : public IODevice protected: // BusIO インタフェース static const uint32 NPORT = 2; - uint64 Read(uint32 offset); - uint64 Write(uint32 offset, uint32 data); - uint64 Peek(uint32 offset); + busdata ReadPort(uint32 offset); + busdata WritePort(uint32 offset, uint32 data); + busdata PeekPort(uint32 offset); + bool PokePort(uint32 offset, uint32 data); private: bool IsBusy() const; int reg {}; // アクセスレジスタ番号 - uint64 busy_origin; // BUSY の起点時刻 - uint64 busy_start; // BUSY のアサート開始時刻 - uint64 busy_end; // BUSY のアサート終了時刻 + uint64 busy_origin {}; // BUSY の起点時刻 + uint64 busy_start {}; // BUSY のアサート開始時刻 + uint64 busy_end {}; // BUSY のアサート終了時刻 ADPCMDevice *adpcm {}; FDCDevice *fdc {};