Exemplo n.º 1
0
        private static void RunCli(Emulation emulation)
        {
            // emulation.GenIterationPerformed += () => Console.WriteLine("GenIterationPerformed");
            emulation.StateChanged += state => Console.WriteLine(state);
            emulation.Init();
            while (true)
            {
                var command = Console.ReadLine();
                var result  = false;
                switch (command)
                {
                case "start":
                    result = emulation.Start();
                    break;

                case "pause":
                    result = emulation.Pause();
                    break;

                case "continue":
                    result = emulation.Continue();
                    break;

                case "restart":
                    result = emulation.Restart();
                    break;

                case "q":
                    return;
                }

                Console.WriteLine($"[{result}]");
            }
        }
        private void PauseEmulation_Clicked(object sender, RoutedEventArgs e)
        {
            var menuItem = (MenuItem)sender;

            if (paused)
            {
                emulation.Continue();
                menuItem.Header = "Pause emulation";
                paused          = false;
            }
            else
            {
                emulation.Pause();
                menuItem.Header = "Continue emulation";
                paused          = true;
            }
        }