--- nono/vm/sio.h 2026/04/29 17:04:32 1.1.1.3 +++ nono/vm/sio.h 2026/04/29 17:04:56 1.1.1.7 @@ -1,6 +1,7 @@ // // nono -// Copyright (C) 2018 isaki@NetBSD.org +// Copyright (C) 2020 nono project +// Licensed under nono-license.txt // #pragma once @@ -8,25 +9,25 @@ #include "device.h" #include "upd7201.h" -class SIODevice - : public uPD7201Device +class SIODevice : public uPD7201Device { - typedef uPD7201Device inherited; + using inherited = uPD7201Device; public: SIODevice(); - virtual ~SIODevice(); + virtual ~SIODevice() override; - virtual void ResetHard(); + // BusIO インタフェース + // (内蔵 ROM からのアクセス用に特別に public にしてある) + uint64 Read(uint32 offset); + uint64 Write(uint32 offset, uint32 data); protected: // BusIO インタフェース static const uint32 NPORT = 4; - uint64 Read(uint32 addr); - uint64 Write(uint32 addr, uint32 data); - uint64 Peek(uint32 addr); + uint64 Peek(uint32 offset); private: - virtual void Interrupt(); + void Interrupt() override; }; extern std::unique_ptr gSIO;