Example #1
0
        public Assembler(iFeedback _master)
        {
            master = _master;

            oboe       = null;
            curSection = null;
        }
Example #2
0
        public Oboe assemble(Assembly _assembly)
        {
            assembly = _assembly;
            oboe     = new Oboe();

            foreach (Instruction insn in assembly.insns)
            {
                if (insn is Directive)
                {
                    handleDirective((Directive)insn);
                }
                else if (insn is PseudoOp)
                {
                    handlePseudoOp((PseudoOp)insn);
                }
                else
                {
                    handleInstruction(insn);
                }
            }

            finishUp();

            return(oboe);
        }
Example #3
0
        public void assembleIt(string[] args)
        {
            Options options = new Options(args);                    //parse the cmd line args

            //temporary debugging shortcut
            String srcname = args[0];
            String outname = args[1];

            Parser    parser    = new Parser(this);
            Assembler assembler = new Assembler(this);

            Assembly assembly = parser.parseFile(srcname);        //front end

            Oboe oboe = assembler.assemble(assembly);

            oboe.writeOboeFile(outname);
        }