Annotation of nono/m88xx0/m88100disasm.h, revision 1.1.1.8

1.1       root        1: //
                      2: // nono
1.1.1.2   root        3: // Copyright (C) 2020 nono project
                      4: // Licensed under nono-license.txt
1.1       root        5: //
                      6: 
                      7: #pragma once
                      8: 
                      9: #include "disasm.h"
                     10: 
1.1.1.8 ! root       11: class m88100disasm final : public DisasmLine
1.1       root       12: {
1.1.1.8 ! root       13:        using inherited = DisasmLine;
1.1       root       14:  public:
1.1.1.8 ! root       15:        m88100disasm();
1.1.1.2   root       16:        ~m88100disasm() override;
1.1       root       17: 
1.1.1.8 ! root       18:        // 逆アセンブルを実行
        !            19:        bool Exec(DebuggerMemoryStream *mem_) override;
1.1.1.6   root       20: 
1.1.1.7   root       21:        // 別ニーモニックを使うなら true (グローバル)
                     22:        static bool use_altname;
1.1.1.2   root       23: 
1.1.1.7   root       24:  private:
1.1.1.3   root       25:        uint32 xip {};
1.1       root       26: 
1.1.1.3   root       27:        uint32 opX  {};
1.1       root       28:        std::string name {};
                     29:        std::string arg0 {};
                     30:        std::string arg1 {};
                     31:        std::string arg2 {};
1.1.1.6   root       32:        // 別名用
                     33:        std::string altname {};
                     34:        std::string altarg0 {};
                     35:        std::string altarg1 {};
                     36:        std::string altarg2 {};
1.1       root       37: 
                     38:        std::string rd();
                     39:        std::string rs1();
                     40:        std::string rs2();
                     41:        std::string imm16();
                     42:        std::string d16();
1.1.1.5   root       43:        std::string d26();
1.1       root       44:        std::string crs();
                     45:        std::string fcrs();
                     46:        std::string fsize(uint32 t);
                     47:        std::string fsize();
                     48:        std::string wo5();
1.1.1.8 ! root       49:        uint32      wo5mask();
1.1       root       50:        std::string cio();
                     51:        std::string b5();
                     52:        std::string m5();
1.1.1.8 ! root       53:        std::string alt_m5();
1.1       root       54:        std::string vec9();
                     55: 
                     56:        void ops_bb(std::string namebase);
1.1.1.8 ! root       57:        void ops_bcnd(std::string n);
1.1       root       58:        void ops_tb(std::string namebase);
1.1.1.5   root       59:        void ops_ldst_imm(const std::string& namebase);
1.1.1.6   root       60:        void ops_ldst_reg(const std::string& namebase, std::string suffix);
1.1       root       61: 
                     62:        void op_unimpl();
                     63: 
                     64: #define OP_PROTO(name) void __CONCAT(op_,name)()
                     65: #include "m88100ops.h"
                     66: #undef OP_PROTO
                     67: };

unix.superglobalmegacorp.com

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