Exemple #1
0
        static void Main(string[] Args)
        {
            AssembledProgram Prog = new AssembledProgram();

            foreach (var Arg in Args)
            {
                if (File.Exists(Arg))
                {
                    Assemble(Arg, Prog);
                }
            }

            if (File.Exists("system_calls.fishasm"))
            {
                Assemble("system_calls.fishasm", Prog);
            }

            Prog.RelocateAll();
            File.WriteAllBytes("program.fishcode", Prog.Link());
        }
Exemple #2
0
        static void Assemble(string SrcFile, AssembledProgram Prog)
        {
            Console.WriteLine("Assembling '{0}'", SrcFile);
            string[] Lines = File.ReadAllLines(SrcFile);

            for (int i = 0; i < Lines.Length; i++)
            {
                if (Debugger.IsAttached)
                {
                    Prog.AssembleLine(Lines[i]);
                }
                else
                {
                    try {
                        Prog.AssembleLine(Lines[i]);
                    } catch (Exception E) {
                        Error(SrcFile, i + 1, E.Message);
                        return;
                    }
                }
            }
        }