/// <summary> /// Ctor /// </summary> public S8Service() { parser = new S8CommandParser(); parser.MessageHandler += (object sender, LogMessageEventArgs e) => { Console.WriteLine(e.LogMessage); output.Add(e.LogMessage); }; }
public bool InitVga(S8CommandParser Parser) { parser = Parser; // Read screen resolution from VIC chip ScreenWidth = 256; ScreenHeight = 256; return(InitSDL("Slede8 VGA")); }
public DebugController(S8CommandParser parser, string title) { int y = 0; this.Title = title; var stepButton = new Button("Step", true) { X = 0, Y = y++, Width = Dim.Fill(), Height = Dim.Fill() }; //stepButton.ColorScheme = Colors.TopLevel; ; var runButton = new Button("RUN", true) { X = 0, Y = y++, Width = Dim.Fill(), Height = Dim.Fill() }; var resetButton = new Button("RESET", true) { X = 0, Y = y++, Width = Dim.Fill(), Height = Dim.Fill() }; this.Add(stepButton); this.Add(runButton); this.Add(resetButton); stepButton.Clicked += delegate() { CommandButton?.Invoke("STEP"); }; runButton.Clicked += delegate() { CommandButton?.Invoke("RUN!"); }; resetButton.Clicked += delegate() { CommandButton?.Invoke("RESET"); }; }
public AsmView(S8CommandParser parser) { _parser = parser; this.SetSource(_asms); this.AllowsMultipleSelection = false; this.AllowsMarking = false; parser.s8d.cpu.CpuStepHandler += delegate(object sender, CpuStepInfo cpustep) { refreshUI(cpustep.pc); }; }
public SourceView(S8CommandParser parser) { this.CanFocus = true; this.parser = parser; this.ReadOnly = false; SourceCode = parser.GetSourceCode(); parser.s8d.cpu.CpuStepHandler += (object sender, CpuStepInfo e) => { SetCpuStepLine(e); }; }
public S8Gui(S8CommandParser parser) { s8parser = parser; }
static void Main(string[] args) { Console.BackgroundColor = ConsoleColor.Black; Console.ForegroundColor = ConsoleColor.Green; string defaultS8File = @"s8.s8"; parser = new S8CommandParser(); parser.MessageHandler += Parser_Message; parser.s8d.Init(defaultS8File); parser.s8d.cpu.HWDisplay.OnVSync += HWDisplay_OnVSync; Console.WriteLine("Velkommen til Slede8 debugger"); Console.WriteLine("H => HELP"); Console.WriteLine(""); Console.WriteLine("Enter command 'GUI' to enter GUI mode"); Console.WriteLine(""); bool debugging = true; while (debugging) { if (parser.showAddress) { Console.Write("S8#["); } else { Console.Write("s8 ["); } Console.Write(parser.currentAddress.ToString("X3") + "] "); string input = Console.ReadLine(); switch (input.ToUpper()) { case "Q": case "QUIT": case "DIE": debugging = false; break; case "CLS": Console.Clear(); break; case "G": case "GUI": var s8gui = new S8Gui(parser); disableConsoleLogging = true; s8gui.RunGui(null); disableConsoleLogging = false; Console.Clear(); Console.BackgroundColor = ConsoleColor.Black; Console.ForegroundColor = ConsoleColor.Green; break; case "W": case "WIN": case "WINRUN": if (vgaView is null) { initVga(); } if (vgaView is not null) { vgaView.RunUI(); vgaView.CleanupSDL(); vgaView = null; } else { Console.WriteLine("Failed to initialize SDL2/WIN"); } break; default: parser.ParseCommand(input); break; } } if (vgaView is not null) { vgaView.CleanupSDL(); vgaView = null; } }