private void sim_start_Click(object sender, EventArgs e) { Sim_gb.Enabled = true; sim_decode.Enabled = false; sim_execute.Enabled = false; sim_dis = new Classes.Disassembler(); sim = new Classes.Simulator(); //Connect Events //Fetch Decode Execute sim.Fetched += new Classes.Simulator.SimulatorCycleHandler(onFetch); sim.Decoded += new Classes.Simulator.SimulatorCycleHandler(onDecode); sim.Excecuted += new Classes.Simulator.SimulatorCycleHandler(onExecute); //TerminateHEvents sim.Terminate_Dropped += new Classes.Simulator.SimulatorTerminationHandler(sim_Terminate_Dropped); sim.Terminate_Successful += new Classes.Simulator.SimulatorTerminationHandler(sim_Terminate_Success); sim.Terminate_UserRequest += new Classes.Simulator.SimulatorTerminationHandler(sim_Terminate_UserRequest); sim.Terminate_Error += new Classes.Simulator.SimulatorTerminationHandler(sim_Terminate_Error); }
private void outputToFileToolStripMenuItem_Click(object sender, EventArgs e) { saveFile_Dis.ShowDialog(); string filename = saveFile_Dis.FileName; Classes.Disassembler x = new Classes.Disassembler(); x.loadMC_fromMem(); x.Disassemble(0); System.IO.StreamWriter file = new System.IO.StreamWriter(filename); ulong add; file.WriteLine("#####################################"); file.WriteLine("# Disassembler by Abdulilah Azzazi"); file.WriteLine("#####################################"); file.WriteLine("\n\n"); string r = ""; file.WriteLine("----------------------------------------"); file.WriteLine("\tLabel Table:"); file.WriteLine("----------------------------------------"); for (int i = 0; i < Classes.Disassembler.LabelTable.Count; i++) { r += "\nLABEL: " + "L_" + i + "\tAddress: " + Classes.Disassembler.LabelTable["L_" + i]; file.WriteLine(r); } file.WriteLine("----------------------------------------"); for (int i = 0; i < Classes.Disassembler.MachineCodes.Count; i++) { add = (ulong)(i * 4) + Classes.Mem.startofText; file.WriteLine(add + "\t" + Classes.Disassembler.MachineCodes.ElementAt <string>(i) + "\t" + Classes.Disassembler.AssembledLines.ElementAt <string>(i)); } file.WriteLine("\nEND OF FILE"); //Now open a file stream file.Close(); MessageBox.Show("Output file Generated Successfully!\n FileName:" + filename); }
private void outputToEditorToolStripMenuItem_Click(object sender, EventArgs e) { Classes.Disassembler x = new Classes.Disassembler(); x.loadMC_fromMem(); x.Disassemble(1); }