private void LoadFile(string filename) { try { var temp = new Memory(); temp.Load(filename, out var start, out _); Text = $@"C64 Memory Visualizer - {filename}"; Memory = temp; DisplayPointer.FromInt(start.Value); DisassemblyStartAddress.FromInt(start.Value); DisplayMode = DisplayMode.HexRaw; if (Memory != null) { MemOverview = MemOverview.Create( Memory, Height, DisplayMode == DisplayMode.Disassembly ? DisassemblyStartAddress.Value : 0); } RenderScreen(); } catch { MessageBox.Show($@"The file ""{filename}"" could not be loaded.", Text, MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void previousPageToolStripMenuItem_Click(object sender, EventArgs e) { switch (DisplayMode) { case DisplayMode.Disassembly: if (DisassemblyStepSize.Count > 0) { var step = DisassemblyStepSize.Pop(); if (DisplayPointer.CanDec(step)) { DisplayPointer.Dec(step); } } break; default: if (DisplayPointer.CanDec(StepSize)) { DisplayPointer.Dec(StepSize); } else { DisplayPointer.FromInt(0); } break; } RenderScreen(); }
private void previousByteToolStripMenuItem_Click(object sender, EventArgs e) { if (DisplayMode == DisplayMode.Disassembly) { return; } if (DisplayPointer.CanDec(1)) { DisplayPointer.Dec(1); } else { DisplayPointer.FromInt(0); } RenderScreen(); }
private bool SetDisassemblyStartAddress() { using (var x = new PrgStartAddressDialog()) { x.StartAddress = DisassemblyStartAddress.Value; if (x.ShowDialog(this) != DialogResult.OK) { return(false); } DisassemblyStartAddress.FromInt(x.StartAddress); DisassemblyStepSize.Clear(); DisplayPointer.FromInt(x.StartAddress); RenderScreen(); return(true); } }
private void homeToolStripMenuItem_Click(object sender, EventArgs e) { DisplayPointer.FromInt(DisplayMode == DisplayMode.Disassembly ? DisassemblyStartAddress.Value : 0); RenderScreen(); }