--- nono/vm/spc.h 2026/04/29 17:04:45 1.1.1.7 +++ nono/vm/spc.h 2026/04/29 17:04:53 1.1.1.9 @@ -153,10 +153,14 @@ class SPCDevice : public SCSIHostDevice bool Init() override; void ResetHard() override; - void ResetSoft() override; void MonitorUpdate(TextScreen&) override; + // 接続中のデバイスを ID 順に並べたリストを返す (UI ステータスパネル用) + const std::vector& GetConnectedDevices() const { + return connected_devices; + } + // SCSIBus コールバック // バスフリーになった (全員に通知される) @@ -168,16 +172,17 @@ class SPCDevice : public SCSIHostDevice // 情報転送フェーズで REQ を立てた (イニシエータのみ通知される) void TransferReqCB() override; + // BusIO インタフェース + // (内蔵 ROM からのアクセス用に特別に public にしてある) + uint64 Write(uint32 offset, uint32 data); + protected: // BusIO インタフェース static const uint32 NPORT = 16; - uint64 Read(uint32 addr); - uint64 Write(uint32 addr, uint32 data); - uint64 Peek(uint32 addr); + uint64 Read(uint32 offset); + uint64 Peek(uint32 offset); private: - void Reset(); - void MonitorReg(TextScreen&, int x, int y, uint32 reg, const char * const *names);