예제 #1
0
        private void mo_OnLoaded(MachineOperator mo)
        {
            TraceLine("Workbench: mo_OnLoaded");

            _mo.MainPage.AsmAction = DoAction;

            _window1 = new AsmLinesWindow();
            _window1.Show();
            _window1.ScrollToAddress(0x4000);

            _script = new WorkbenchScript1(this);
        }
예제 #2
0
        private void mo_OnPause(MachineOperator mo, PausedEventArgs e)
        {
            _script.mo_OnPause(mo, e);

            TraceLine($"executed: {_executed}, reads: {_reads}, writes: {_writes}");

            using (var writer = new StreamWriter(@"s:\source\repos\Robotron_2084\VirtuRoC\tmp\MemoryOperations.csv"))
                using (var csv = new CsvWriter(writer, Thread.CurrentThread.CurrentCulture)) {
                    csv.WriteRecords(RecordedOperations.MemoryOperations);
                }

            using (var writer = new StreamWriter(@"s:\source\repos\Robotron_2084\VirtuRoC\tmp\ExecutedOperations.csv"))
                using (var csv = new CsvWriter(writer, Thread.CurrentThread.CurrentCulture)) {
                    csv.WriteRecords(RecordedOperations.ExecutedOperations);
                }

            _window1.ScrollToAddress(e.BreakpointRCP);

            // TODO: Warum brauchen wir hier auch ein MainPage.Focus() ?
            _mo.MainPage.Focus();
        }