--- nono/vm/nereid.h 2026/04/29 17:05:21 1.1.1.1 +++ nono/vm/nereid.h 2026/04/29 17:05:25 1.1.1.2 @@ -29,15 +29,18 @@ class NereidDevice : public IODevice bool Create() override; - 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; + busdata Read8(uint32 addr) override; + busdata Read16(uint32 addr) override; + busdata Write8(uint32 addr, uint32 data) override; + busdata Write16(uint32 addr, uint32 data) override; + busdata Peek8(uint32 addr) override; // Nereid が1枚でもささっていれば true。 bool IsInstalled() const; + // Board デバイス取得。 + NereidBoardDevice *GetBoard(int id) const { return boards[id].get(); } + private: inline uint32 Decoder(uint32 addr) const; DECLARE_MONITOR_CALLBACK(MonitorUpdate); @@ -61,11 +64,11 @@ class NereidBoardDevice : public IODevic bool Create() override; - 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; + busdata Read8(uint32 addr) override; + busdata Read16(uint32 addr) override; + busdata Write8(uint32 addr, uint32 data) override; + busdata Write16(uint32 addr, uint32 data) override; + busdata Peek8(uint32 addr) override; // ネットワークが有効なら true を返す bool IsNetEnable() const { return (bool)net; }