Annotation of nono/debugger/debugger_m88xx0.h, revision 1.1.1.1

1.1       root        1: //
                      2: // nono
                      3: // Copyright (C) 2020 [email protected]
                      4: //
                      5: 
                      6: #pragma once
                      7: 
                      8: #include "debugger_private.h"
                      9: #include "m88100.h"
                     10: #include "m88100disasm.h"
                     11: 
                     12: class DebuggerMD_m88xx0 : public DebuggerMD
                     13: {
                     14:        typedef DebuggerMD inherited;
                     15:  public:
                     16:        DebuggerMD_m88xx0(Debugger *parg, m88kcpu *carg)
                     17:                : inherited(parg)
                     18:        {
                     19:                cpu = carg;
                     20:        }
                     21:        virtual ~DebuggerMD_m88xx0() { }
                     22: 
                     23:        void ReqSet(uint32 flag) { cpu->atomic_reqflag |= flag; }
                     24:        void ReqClr(uint32 flag) { cpu->atomic_reqflag &= ~flag; }
                     25: 
                     26:        bool IsSuper() const { return false; }
                     27:        bool MMUEnabled() const { return false; }
                     28:        uint64 TranslateAddr(saddr_t laddr) { return 0; }
                     29: 
                     30:        // XXX ?
                     31:        uint32 GetPC() const { return cpu->Getxip(); }
                     32: 
                     33:        void SetStepOut() {}
                     34:        bool IsStepOut() const { return false; }
                     35:        uint64 GetRegAddr(const char *name) const;
                     36:        void BackupRegs();
                     37:        void ShowRegMain(Console *cons);
                     38:        void ShowRegCtrl(Console *cons);
                     39:        void ShowRegFPU(Console *cons);
                     40:        void ShowRegMMU(Console *cons);
                     41:        void ShowRegATC(Console *cons) {}
                     42:        void ShowRegOther(Console *cons);
                     43: 
                     44:        bool CheckLEA(uint32 laddr) {
                     45:                bool rv = cpu->lastaddr == laddr;
                     46:                cpu->lastaddr = 0;      // XXX: ていうかここでクリアはおかしい
                     47:                return rv;
                     48:        }
                     49: 
                     50:        bool Disassemble(saddr_t laddr,
                     51:                std::string& mnemonic, std::vector<uint8>& bin);
                     52:        std::string FormatDisasm(const std::string& mnemonic,
                     53:                const std::vector<uint8>& bin);
                     54:        std::string FormatDisasmLive(const std::string& mnemonic,
                     55:                const std::vector<uint8>& bin);
                     56: 
                     57:  private:
                     58:        m88kcpu *cpu = NULL;            // CPU コア
                     59:        m88100reg prev {};
                     60: };

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.