--- nono/debugger/debugger_m680x0.h 2026/04/29 17:05:16 1.1.1.7 +++ nono/debugger/debugger_m680x0.h 2026/04/29 17:05:49 1.1.1.11 @@ -12,19 +12,19 @@ #include "debugger_private.h" #include "mpu680x0.h" -#include "m68030disasm.h" +#include "m680x0disasm.h" class DebuggerMD_m680x0 : public DebuggerMD { using inherited = DebuggerMD; public: - DebuggerMD_m680x0(Debugger *parent); + explicit DebuggerMD_m680x0(Debugger *parent); ~DebuggerMD_m680x0() override; CPUState GetCPUState() const override { return (CPUState)cpu->GetState(); } bool IsSuper() const override { return cpu->IsSuper(); } bool MMUEnabled() const override { return cpu->mmu_enable; } - uint64 TranslateAddr(saddr_t laddr, bool lookup) const override; + busaddr TranslateAddr(busaddr laddr) const override; uint32 GetPC() const override { return cpu->reg.pc; } @@ -40,21 +40,24 @@ class DebuggerMD_m680x0 : public Debugge bool CheckLEA(uint32 laddr) override { return false; } std::string Disassemble(DebuggerMemoryStream& mem) override; + std::string ParseInst(const std::string&) const override; private: MPU680x0Device *cpu {}; // MPU デバイス m68kreg prev {}; // 前回のレジスタセットのコピー - const char *CondStr(const std::vector& ir); - bool IsOPcc(uint16 op); - bool IsDBcc(uint16 op); - bool IsCond(uint16 op); + static bool IsOPcc(uint16 op); + static bool IsDBcc(uint16 op); + static int IsFXcc(const std::vector& ir); + bool IsCond(uint16 op) const; + const char *CondStr(const std::vector& ir) const; static const HelpMessages HelpListReg; static const HelpMessages HelpReg; void ShowRegMain(FILE *); void ShowRegFPU(FILE *); - void ShowRegMMU(FILE *); + void ShowRegMMU30(FILE *); + void ShowRegMMU40(FILE *); void ShowRegATC(); void ShowRegOther();