--- nono/m88xx0/m88100.h 2026/04/29 17:04:49 1.1.1.7 +++ nono/m88xx0/m88100.h 2026/04/29 17:04:54 1.1.1.9 @@ -167,12 +167,14 @@ class m88kcpu : public m88100reg }; public: - m88kcpu(uint32 reset_vector_); + m88kcpu(); virtual ~m88kcpu(); + void PowerOn(); + void RequestReset(); + uint32 Run(uint32 delta); void Release(); - void RequestReset(); // 仮想時刻を返す uint64 GetVTime() const { return total_vtime + Cycle2Vtime(used_cycle); } @@ -219,9 +221,9 @@ class m88kcpu : public m88100reg m88200 cmmu[2] {}; // ブランチ履歴 (例外履歴を含む) - BranchHistory_m88xx0 brhist {}; + BranchHistory_m88xx0 brhist { BranchHistory::BrHist }; // 例外履歴のみ - BranchHistory_m88xx0 exhist {}; + BranchHistory_m88xx0 exhist { BranchHistory::ExHistOnly }; // 32bit 命令コードからディスパッチ用の 12bit に変換。 static uint32 op32_to_12(uint32 op) { @@ -231,6 +233,9 @@ class m88kcpu : public m88100reg // 例外名を返す static const char *GetExceptionName(int vector); + // 疑似 STOP 状態に入る機能を有効にする場合 true + bool pseudo_stop_enable {}; + private: void Reset(); @@ -317,9 +322,6 @@ OP_PROTO(illegal); // ペンディング中の割り込みレベル int intr_pending {}; - // リセットベクタ - uint32 reset_vector {}; - // 例外名 static const char * const exception_names[]; };