--- nono/debugger/debugger_private.h 2026/04/29 17:05:16 1.1.1.11 +++ nono/debugger/debugger_private.h 2026/04/29 17:05:24 1.1.1.12 @@ -11,9 +11,9 @@ #pragma once #include "debugger_defs.h" -#include "saddr.h" +#include "bus.h" -class IOContainerDevice; +class IODevice; enum class CPUState { @@ -38,9 +38,9 @@ class DebuggerMD // アドレス変換をする。 // MMUEnabled() が true であることは呼び出し側が確認すること。 - // lookup が true ならテーブルサーチまで行う。 - // 変換できなければ (uint64)-1 を返す。 - virtual uint64 TranslateAddr(saddr_t laddr, bool lookup) const = 0; + // 変換出来なければ busaddr::BusErr を返す。 + // テーブルサーチを行ったら busaddr::TableSearched を立てる。 + virtual busaddr TranslateAddr(busaddr laddr) const = 0; // 現在の命令先頭アドレスを返す virtual uint32 GetPC() const = 0; @@ -81,7 +81,7 @@ class DebuggerMD const std::string& GetName() const { return name; } // この CPU のバスを返す - IOContainerDevice *GetBus() const { return bus; } + IODevice *GetBus() const { return bus; } // このバスの論理アドレス幅 (ビット数) を返す int GetLASize() const { return lasize; } // このバスの物理アドレス幅 (ビット数) を返す @@ -104,9 +104,9 @@ class DebuggerMD std::string name {}; // 機種名 - IOContainerDevice *bus {}; // 対応する外部バス - int lasize {}; // バスの論理アドレス幅 - int pasize {}; // バスの物理アドレス幅 + IODevice *bus {}; // 対応する外部バス + int lasize {}; // バスの論理アドレス幅 + int pasize {}; // バスの物理アドレス幅 }; #define NORM "\x1b[0m"