--- nono/vm/scsibus.h 2026/04/29 17:05:43 1.1.1.11 +++ nono/vm/scsibus.h 2026/04/29 17:06:01 1.1.1.13 @@ -10,7 +10,6 @@ #pragma once -#include "event.h" #include "scsi.h" #include @@ -101,15 +100,15 @@ class SCSIBus : public Device // 次の REQ アサートの前に指定のウェイトを入れる // (シークタイムなどを簡易的に再現するため)。 // ウェイトは一度適用されると 0 に戻る。 - void SetOneshotReqWait(uint64 nsec) { req_wait += nsec; } + void SetOneshotReqWait(uint64 tsec) { req_wait += tsec; } private: void BusFree(uint id); - void SelectionStart(Event& ev); - void Selected(Event& ev); - void SelectionAck(Event& ev); - void StartTransfer(Event& ev); - void TransferReq(Event& ev); + void SelectionStart(Event *); + void Selected(Event *); + void SelectionAck(Event *); + void StartTransfer(Event *); + void TransferReq(Event *); // 現在のフェーズ SCSI::Phase phase {}; @@ -131,7 +130,7 @@ class SCSIBus : public Device // 転送速度をここで律速させている。 uint64 last_req_time {}; - // 次の REQ アサートに入れるウェイト [nsec] + // 次の REQ アサートに入れるウェイト [tsec] uint64 req_wait {}; // 実際のバスではそんなことはないが、ここではバスがイニシエータと @@ -146,5 +145,5 @@ class SCSIBus : public Device std::array device {}; // イベント - Event event { this }; + Event *event {}; };