From c6baa015097f8797bd88387e017ebd29684f9e86 Mon Sep 17 00:00:00 2001 From: Josh Dersch Date: Mon, 25 Apr 2016 17:04:22 -0700 Subject: [PATCH] Added 3K RAM pages to debugger, cleaned up disassembly display code. --- .gitignore | 4 +- Contralto.sln | 5 +- Contralto/Disk/tdisk4.dsk | Bin 2601648 -> 2601648 bytes Contralto/UI/Debugger.Designer.cs | 1061 ++++++++++++++++++----------- Contralto/UI/Debugger.cs | 297 +++++--- Contralto/UI/Debugger.resx | 24 + 6 files changed, 870 insertions(+), 521 deletions(-) diff --git a/.gitignore b/.gitignore index 7964536..b817552 100644 --- a/.gitignore +++ b/.gitignore @@ -186,4 +186,6 @@ FakesAssemblies/ # LightSwitch generated files GeneratedArtifacts/ _Pvt_Extensions/ -ModelManifest.xml \ No newline at end of file +ModelManifest.xml +/Contralto.VC.VC.opendb +/Contralto.VC.db diff --git a/Contralto.sln b/Contralto.sln index 06a43cd..6833d96 100644 --- a/Contralto.sln +++ b/Contralto.sln @@ -1,16 +1,13 @@  Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 14 -VisualStudioVersion = 14.0.23107.0 +VisualStudioVersion = 14.0.25123.0 MinimumVisualStudioVersion = 10.0.40219.1 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Contralto", "Contralto\Contralto.csproj", "{CC6D96B3-8099-4497-8AD8-B0795A3353EA}" EndProject Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "ContraltoSetup", "ContraltoSetup\ContraltoSetup.wixproj", "{47BBC195-80C5-43F3-B691-7D27B0803B84}" EndProject Global - GlobalSection(Performance) = preSolution - HasPerformanceSessions = true - EndGlobalSection GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU Debug|x64 = Debug|x64 diff --git a/Contralto/Disk/tdisk4.dsk b/Contralto/Disk/tdisk4.dsk index 8e4a8edcf3f0baeed4b87777ad5da0abfee4ad09..eb00a6af8b6eca35353f7f21c7081ee76d2eb54f 100644 GIT binary patch delta 21985 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 K(*AB~^8W)9wqDKv delta 29006 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 diff --git a/Contralto/UI/Debugger.Designer.cs b/Contralto/UI/Debugger.Designer.cs index 163540b..1da89f9 100644 --- a/Contralto/UI/Debugger.Designer.cs +++ b/Contralto/UI/Debugger.Designer.cs @@ -28,48 +28,43 @@ /// private void InitializeComponent() { - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle26 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle27 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle28 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle29 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle30 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle31 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle32 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle33 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle34 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle35 = new System.Windows.Forms.DataGridViewCellStyle(); System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle(); System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle15 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle13 = new System.Windows.Forms.DataGridViewCellStyle(); System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle14 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle13 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle(); System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle16 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle20 = new System.Windows.Forms.DataGridViewCellStyle(); System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle17 = new System.Windows.Forms.DataGridViewCellStyle(); System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle18 = new System.Windows.Forms.DataGridViewCellStyle(); System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle19 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle20 = new System.Windows.Forms.DataGridViewCellStyle(); System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle21 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle25 = new System.Windows.Forms.DataGridViewCellStyle(); System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle22 = new System.Windows.Forms.DataGridViewCellStyle(); System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle23 = new System.Windows.Forms.DataGridViewCellStyle(); System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle24 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle25 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle(); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Debugger)); this.Microcode = new System.Windows.Forms.GroupBox(); - this.SourceTabs = new System.Windows.Forms.TabControl(); - this.Rom0Page = new System.Windows.Forms.TabPage(); - this._rom0SourceViewer = new System.Windows.Forms.DataGridView(); - this.Breakpoint = new System.Windows.Forms.DataGridViewCheckBoxColumn(); - this.T = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.Addr = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.Source = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.Rom1Page = new System.Windows.Forms.TabPage(); - this._rom1SourceViewer = new System.Windows.Forms.DataGridView(); - this.Rom2Page = new System.Windows.Forms.TabPage(); - this._ram0SourceViewer = new System.Windows.Forms.DataGridView(); - this.dataGridViewCheckBoxColumn2 = new System.Windows.Forms.DataGridViewCheckBoxColumn(); - this.dataGridViewTextBoxColumn7 = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.dataGridViewTextBoxColumn6 = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.dataGridViewTextBoxColumn8 = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.label2 = new System.Windows.Forms.Label(); this.JumpToAddress = new System.Windows.Forms.TextBox(); this.groupBox1 = new System.Windows.Forms.GroupBox(); @@ -108,18 +103,38 @@ this.dataGridViewTextBoxColumn9 = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.dataGridViewTextBoxColumn10 = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.dataGridViewTextBoxColumn11 = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.dataGridViewCheckBoxColumn1 = new System.Windows.Forms.DataGridViewCheckBoxColumn(); - this.dataGridViewTextBoxColumn4 = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.dataGridViewTextBoxColumn3 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.Ram0Page = new System.Windows.Forms.TabPage(); + this._ram0SourceViewer = new System.Windows.Forms.DataGridView(); + this.dataGridViewTextBoxColumn8 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn6 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn7 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewCheckBoxColumn2 = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.Rom1Page = new System.Windows.Forms.TabPage(); + this._rom1SourceViewer = new System.Windows.Forms.DataGridView(); this.dataGridViewTextBoxColumn5 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn3 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn4 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewCheckBoxColumn1 = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.Rom0Page = new System.Windows.Forms.TabPage(); + this._rom0SourceViewer = new System.Windows.Forms.DataGridView(); + this.Source = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.Addr = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.T = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.Breakpoint = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.SourceTabs = new System.Windows.Forms.TabControl(); + this.Ram1Page = new System.Windows.Forms.TabPage(); + this.Ram2Page = new System.Windows.Forms.TabPage(); + this._ram1SourceViewer = new System.Windows.Forms.DataGridView(); + this.dataGridViewCheckBoxColumn3 = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn12 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this._ram2SourceViewer = new System.Windows.Forms.DataGridView(); + this.dataGridViewCheckBoxColumn4 = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.dataGridViewTextBoxColumn13 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn14 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn15 = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.Microcode.SuspendLayout(); - this.SourceTabs.SuspendLayout(); - this.Rom0Page.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this._rom0SourceViewer)).BeginInit(); - this.Rom1Page.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this._rom1SourceViewer)).BeginInit(); - this.Rom2Page.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this._ram0SourceViewer)).BeginInit(); this.groupBox1.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this._registerData)).BeginInit(); this.groupBox2.SuspendLayout(); @@ -130,6 +145,17 @@ ((System.ComponentModel.ISupportInitialize)(this._memoryData)).BeginInit(); this.groupBox6.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this._reservedMemory)).BeginInit(); + this.Ram0Page.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this._ram0SourceViewer)).BeginInit(); + this.Rom1Page.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this._rom1SourceViewer)).BeginInit(); + this.Rom0Page.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this._rom0SourceViewer)).BeginInit(); + this.SourceTabs.SuspendLayout(); + this.Ram1Page.SuspendLayout(); + this.Ram2Page.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this._ram1SourceViewer)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this._ram2SourceViewer)).BeginInit(); this.SuspendLayout(); // // Microcode @@ -144,269 +170,6 @@ this.Microcode.TabStop = false; this.Microcode.Text = "Microcode Source"; // - // SourceTabs - // - this.SourceTabs.Controls.Add(this.Rom0Page); - this.SourceTabs.Controls.Add(this.Rom1Page); - this.SourceTabs.Controls.Add(this.Rom2Page); - this.SourceTabs.Location = new System.Drawing.Point(6, 19); - this.SourceTabs.Name = "SourceTabs"; - this.SourceTabs.SelectedIndex = 0; - this.SourceTabs.Size = new System.Drawing.Size(590, 580); - this.SourceTabs.TabIndex = 14; - this.SourceTabs.SelectedIndexChanged += new System.EventHandler(this.OnTabChanged); - // - // Rom0Page - // - this.Rom0Page.Controls.Add(this._rom0SourceViewer); - this.Rom0Page.Location = new System.Drawing.Point(4, 22); - this.Rom0Page.Name = "Rom0Page"; - this.Rom0Page.Padding = new System.Windows.Forms.Padding(3); - this.Rom0Page.Size = new System.Drawing.Size(582, 554); - this.Rom0Page.TabIndex = 0; - this.Rom0Page.Text = "ROM0"; - this.Rom0Page.UseVisualStyleBackColor = true; - // - // _rom0SourceViewer - // - this._rom0SourceViewer.AllowUserToAddRows = false; - this._rom0SourceViewer.AllowUserToDeleteRows = false; - this._rom0SourceViewer.AllowUserToResizeColumns = false; - this._rom0SourceViewer.AllowUserToResizeRows = false; - dataGridViewCellStyle1.BackColor = System.Drawing.Color.Silver; - this._rom0SourceViewer.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1; - this._rom0SourceViewer.CellBorderStyle = System.Windows.Forms.DataGridViewCellBorderStyle.SingleVertical; - this._rom0SourceViewer.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; - this._rom0SourceViewer.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { - this.Breakpoint, - this.T, - this.Addr, - this.Source}); - this._rom0SourceViewer.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically; - this._rom0SourceViewer.Location = new System.Drawing.Point(0, 0); - this._rom0SourceViewer.Name = "_rom0SourceViewer"; - this._rom0SourceViewer.ReadOnly = true; - this._rom0SourceViewer.RowHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single; - dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle5.BackColor = System.Drawing.SystemColors.Control; - dataGridViewCellStyle5.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - dataGridViewCellStyle5.ForeColor = System.Drawing.SystemColors.WindowText; - dataGridViewCellStyle5.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle5.SelectionForeColor = System.Drawing.SystemColors.HighlightText; - dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this._rom0SourceViewer.RowHeadersDefaultCellStyle = dataGridViewCellStyle5; - this._rom0SourceViewer.RowHeadersVisible = false; - this._rom0SourceViewer.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing; - this._rom0SourceViewer.RowTemplate.Height = 18; - this._rom0SourceViewer.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect; - this._rom0SourceViewer.ShowCellErrors = false; - this._rom0SourceViewer.ShowEditingIcon = false; - this._rom0SourceViewer.ShowRowErrors = false; - this._rom0SourceViewer.Size = new System.Drawing.Size(582, 554); - this._rom0SourceViewer.TabIndex = 1; - this._rom0SourceViewer.TabStop = false; - this._rom0SourceViewer.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.Rom0SourceViewCellClick); - // - // Breakpoint - // - this.Breakpoint.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells; - this.Breakpoint.FalseValue = "false"; - this.Breakpoint.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.Breakpoint.HeaderText = "B"; - this.Breakpoint.IndeterminateValue = "null"; - this.Breakpoint.Name = "Breakpoint"; - this.Breakpoint.ReadOnly = true; - this.Breakpoint.Resizable = System.Windows.Forms.DataGridViewTriState.False; - this.Breakpoint.TrueValue = "true"; - this.Breakpoint.Width = 20; - // - // T - // - this.T.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCellsExceptHeader; - dataGridViewCellStyle2.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.T.DefaultCellStyle = dataGridViewCellStyle2; - this.T.HeaderText = "T"; - this.T.Name = "T"; - this.T.ReadOnly = true; - this.T.Resizable = System.Windows.Forms.DataGridViewTriState.False; - this.T.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; - this.T.Width = 5; - // - // Addr - // - this.Addr.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCellsExceptHeader; - dataGridViewCellStyle3.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.Addr.DefaultCellStyle = dataGridViewCellStyle3; - this.Addr.HeaderText = "Addr"; - this.Addr.Name = "Addr"; - this.Addr.ReadOnly = true; - this.Addr.Resizable = System.Windows.Forms.DataGridViewTriState.False; - this.Addr.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; - this.Addr.Width = 5; - // - // Source - // - this.Source.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; - dataGridViewCellStyle4.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.Source.DefaultCellStyle = dataGridViewCellStyle4; - this.Source.HeaderText = "Source Code"; - this.Source.Name = "Source"; - this.Source.ReadOnly = true; - this.Source.Resizable = System.Windows.Forms.DataGridViewTriState.False; - this.Source.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; - // - // Rom1Page - // - this.Rom1Page.Controls.Add(this._rom1SourceViewer); - this.Rom1Page.Location = new System.Drawing.Point(4, 22); - this.Rom1Page.Name = "Rom1Page"; - this.Rom1Page.Padding = new System.Windows.Forms.Padding(3); - this.Rom1Page.Size = new System.Drawing.Size(582, 554); - this.Rom1Page.TabIndex = 1; - this.Rom1Page.Text = "ROM1"; - this.Rom1Page.UseVisualStyleBackColor = true; - // - // _rom1SourceViewer - // - this._rom1SourceViewer.AllowUserToAddRows = false; - this._rom1SourceViewer.AllowUserToDeleteRows = false; - this._rom1SourceViewer.AllowUserToResizeColumns = false; - this._rom1SourceViewer.AllowUserToResizeRows = false; - dataGridViewCellStyle6.BackColor = System.Drawing.Color.Silver; - this._rom1SourceViewer.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle6; - this._rom1SourceViewer.CellBorderStyle = System.Windows.Forms.DataGridViewCellBorderStyle.SingleVertical; - this._rom1SourceViewer.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; - this._rom1SourceViewer.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { - this.dataGridViewCheckBoxColumn1, - this.dataGridViewTextBoxColumn4, - this.dataGridViewTextBoxColumn3, - this.dataGridViewTextBoxColumn5}); - this._rom1SourceViewer.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically; - this._rom1SourceViewer.Location = new System.Drawing.Point(0, 0); - this._rom1SourceViewer.Name = "_rom1SourceViewer"; - this._rom1SourceViewer.ReadOnly = true; - this._rom1SourceViewer.RowHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single; - dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle10.BackColor = System.Drawing.SystemColors.Control; - dataGridViewCellStyle10.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - dataGridViewCellStyle10.ForeColor = System.Drawing.SystemColors.WindowText; - dataGridViewCellStyle10.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle10.SelectionForeColor = System.Drawing.SystemColors.HighlightText; - dataGridViewCellStyle10.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this._rom1SourceViewer.RowHeadersDefaultCellStyle = dataGridViewCellStyle10; - this._rom1SourceViewer.RowHeadersVisible = false; - this._rom1SourceViewer.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing; - this._rom1SourceViewer.RowTemplate.Height = 18; - this._rom1SourceViewer.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect; - this._rom1SourceViewer.ShowCellErrors = false; - this._rom1SourceViewer.ShowEditingIcon = false; - this._rom1SourceViewer.ShowRowErrors = false; - this._rom1SourceViewer.Size = new System.Drawing.Size(582, 554); - this._rom1SourceViewer.TabIndex = 2; - this._rom1SourceViewer.TabStop = false; - this._rom1SourceViewer.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.Rom1SourceViewCellClick); - // - // Rom2Page - // - this.Rom2Page.Controls.Add(this._ram0SourceViewer); - this.Rom2Page.Location = new System.Drawing.Point(4, 22); - this.Rom2Page.Name = "Rom2Page"; - this.Rom2Page.Padding = new System.Windows.Forms.Padding(3); - this.Rom2Page.Size = new System.Drawing.Size(582, 554); - this.Rom2Page.TabIndex = 2; - this.Rom2Page.Text = "RAM0"; - this.Rom2Page.UseVisualStyleBackColor = true; - // - // _ram0SourceViewer - // - this._ram0SourceViewer.AllowUserToAddRows = false; - this._ram0SourceViewer.AllowUserToDeleteRows = false; - this._ram0SourceViewer.AllowUserToResizeColumns = false; - this._ram0SourceViewer.AllowUserToResizeRows = false; - dataGridViewCellStyle11.BackColor = System.Drawing.Color.Silver; - this._ram0SourceViewer.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle11; - this._ram0SourceViewer.CellBorderStyle = System.Windows.Forms.DataGridViewCellBorderStyle.SingleVertical; - this._ram0SourceViewer.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; - this._ram0SourceViewer.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { - this.dataGridViewCheckBoxColumn2, - this.dataGridViewTextBoxColumn7, - this.dataGridViewTextBoxColumn6, - this.dataGridViewTextBoxColumn8}); - this._ram0SourceViewer.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically; - this._ram0SourceViewer.Location = new System.Drawing.Point(0, 0); - this._ram0SourceViewer.Name = "_ram0SourceViewer"; - this._ram0SourceViewer.ReadOnly = true; - this._ram0SourceViewer.RowHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single; - dataGridViewCellStyle15.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle15.BackColor = System.Drawing.SystemColors.Control; - dataGridViewCellStyle15.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - dataGridViewCellStyle15.ForeColor = System.Drawing.SystemColors.WindowText; - dataGridViewCellStyle15.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle15.SelectionForeColor = System.Drawing.SystemColors.HighlightText; - dataGridViewCellStyle15.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this._ram0SourceViewer.RowHeadersDefaultCellStyle = dataGridViewCellStyle15; - this._ram0SourceViewer.RowHeadersVisible = false; - this._ram0SourceViewer.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing; - this._ram0SourceViewer.RowTemplate.Height = 18; - this._ram0SourceViewer.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect; - this._ram0SourceViewer.ShowCellErrors = false; - this._ram0SourceViewer.ShowEditingIcon = false; - this._ram0SourceViewer.ShowRowErrors = false; - this._ram0SourceViewer.Size = new System.Drawing.Size(582, 545); - this._ram0SourceViewer.TabIndex = 2; - this._ram0SourceViewer.TabStop = false; - this._ram0SourceViewer.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.Ram0SourceViewCellClick); - // - // dataGridViewCheckBoxColumn2 - // - this.dataGridViewCheckBoxColumn2.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells; - this.dataGridViewCheckBoxColumn2.FalseValue = "false"; - this.dataGridViewCheckBoxColumn2.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.dataGridViewCheckBoxColumn2.HeaderText = "B"; - this.dataGridViewCheckBoxColumn2.IndeterminateValue = "null"; - this.dataGridViewCheckBoxColumn2.Name = "dataGridViewCheckBoxColumn2"; - this.dataGridViewCheckBoxColumn2.ReadOnly = true; - this.dataGridViewCheckBoxColumn2.Resizable = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewCheckBoxColumn2.TrueValue = "true"; - this.dataGridViewCheckBoxColumn2.Width = 20; - // - // dataGridViewTextBoxColumn7 - // - this.dataGridViewTextBoxColumn7.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCellsExceptHeader; - dataGridViewCellStyle12.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.dataGridViewTextBoxColumn7.DefaultCellStyle = dataGridViewCellStyle12; - this.dataGridViewTextBoxColumn7.HeaderText = "Addr"; - this.dataGridViewTextBoxColumn7.Name = "dataGridViewTextBoxColumn7"; - this.dataGridViewTextBoxColumn7.ReadOnly = true; - this.dataGridViewTextBoxColumn7.Resizable = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewTextBoxColumn7.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; - this.dataGridViewTextBoxColumn7.Width = 5; - // - // dataGridViewTextBoxColumn6 - // - this.dataGridViewTextBoxColumn6.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCellsExceptHeader; - dataGridViewCellStyle13.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - dataGridViewCellStyle13.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewTextBoxColumn6.DefaultCellStyle = dataGridViewCellStyle13; - this.dataGridViewTextBoxColumn6.HeaderText = "Word"; - this.dataGridViewTextBoxColumn6.Name = "dataGridViewTextBoxColumn6"; - this.dataGridViewTextBoxColumn6.ReadOnly = true; - this.dataGridViewTextBoxColumn6.Resizable = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewTextBoxColumn6.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; - this.dataGridViewTextBoxColumn6.Width = 5; - // - // dataGridViewTextBoxColumn8 - // - this.dataGridViewTextBoxColumn8.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; - dataGridViewCellStyle14.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.dataGridViewTextBoxColumn8.DefaultCellStyle = dataGridViewCellStyle14; - this.dataGridViewTextBoxColumn8.HeaderText = "Disassembly"; - this.dataGridViewTextBoxColumn8.Name = "dataGridViewTextBoxColumn8"; - this.dataGridViewTextBoxColumn8.ReadOnly = true; - this.dataGridViewTextBoxColumn8.Resizable = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewTextBoxColumn8.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; - // // label2 // this.label2.AutoSize = true; @@ -441,21 +204,21 @@ this._registerData.AllowUserToDeleteRows = false; this._registerData.AllowUserToResizeColumns = false; this._registerData.AllowUserToResizeRows = false; - dataGridViewCellStyle16.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); - this._registerData.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle16; + dataGridViewCellStyle26.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); + this._registerData.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle26; this._registerData.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; this._registerData.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.RegNum, this.R, this.S}); - dataGridViewCellStyle17.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle17.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle17.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - dataGridViewCellStyle17.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle17.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle17.SelectionForeColor = System.Drawing.SystemColors.HighlightText; - dataGridViewCellStyle17.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this._registerData.DefaultCellStyle = dataGridViewCellStyle17; + dataGridViewCellStyle27.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle27.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle27.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + dataGridViewCellStyle27.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle27.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle27.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle27.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this._registerData.DefaultCellStyle = dataGridViewCellStyle27; this._registerData.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically; this._registerData.Location = new System.Drawing.Point(7, 19); this._registerData.MultiSelect = false; @@ -561,21 +324,21 @@ // this._taskData.AllowUserToAddRows = false; this._taskData.AllowUserToDeleteRows = false; - dataGridViewCellStyle18.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); - this._taskData.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle18; + dataGridViewCellStyle28.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); + this._taskData.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle28; this._taskData.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; this._taskData.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.TaskName, this.TaskState, this.TaskPC}); - dataGridViewCellStyle19.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle19.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle19.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - dataGridViewCellStyle19.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle19.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle19.SelectionForeColor = System.Drawing.SystemColors.HighlightText; - dataGridViewCellStyle19.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this._taskData.DefaultCellStyle = dataGridViewCellStyle19; + dataGridViewCellStyle29.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle29.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle29.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + dataGridViewCellStyle29.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle29.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle29.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle29.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this._taskData.DefaultCellStyle = dataGridViewCellStyle29; this._taskData.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically; this._taskData.Location = new System.Drawing.Point(7, 19); this._taskData.MultiSelect = false; @@ -632,20 +395,20 @@ // this._otherRegs.AllowUserToAddRows = false; this._otherRegs.AllowUserToDeleteRows = false; - dataGridViewCellStyle20.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); - this._otherRegs.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle20; + dataGridViewCellStyle30.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); + this._otherRegs.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle30; this._otherRegs.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; this._otherRegs.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.Reg, this.RegValue}); - dataGridViewCellStyle21.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle21.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle21.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - dataGridViewCellStyle21.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle21.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle21.SelectionForeColor = System.Drawing.SystemColors.HighlightText; - dataGridViewCellStyle21.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this._otherRegs.DefaultCellStyle = dataGridViewCellStyle21; + dataGridViewCellStyle31.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle31.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle31.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + dataGridViewCellStyle31.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle31.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle31.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle31.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this._otherRegs.DefaultCellStyle = dataGridViewCellStyle31; this._otherRegs.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically; this._otherRegs.Location = new System.Drawing.Point(7, 19); this._otherRegs.MultiSelect = false; @@ -718,8 +481,8 @@ this._memoryData.AllowUserToAddRows = false; this._memoryData.AllowUserToDeleteRows = false; this._memoryData.AllowUserToResizeRows = false; - dataGridViewCellStyle22.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); - this._memoryData.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle22; + dataGridViewCellStyle32.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); + this._memoryData.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle32; this._memoryData.ClipboardCopyMode = System.Windows.Forms.DataGridViewClipboardCopyMode.EnableWithoutHeaderText; this._memoryData.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; this._memoryData.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { @@ -727,14 +490,14 @@ this.Address, this.Data, this.Disassembly}); - dataGridViewCellStyle23.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle23.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle23.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - dataGridViewCellStyle23.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle23.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle23.SelectionForeColor = System.Drawing.SystemColors.HighlightText; - dataGridViewCellStyle23.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this._memoryData.DefaultCellStyle = dataGridViewCellStyle23; + dataGridViewCellStyle33.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle33.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle33.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + dataGridViewCellStyle33.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle33.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle33.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle33.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this._memoryData.DefaultCellStyle = dataGridViewCellStyle33; this._memoryData.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically; this._memoryData.Location = new System.Drawing.Point(6, 19); this._memoryData.MultiSelect = false; @@ -866,21 +629,21 @@ this._reservedMemory.AllowUserToDeleteRows = false; this._reservedMemory.AllowUserToResizeColumns = false; this._reservedMemory.AllowUserToResizeRows = false; - dataGridViewCellStyle24.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); - this._reservedMemory.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle24; + dataGridViewCellStyle34.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); + this._reservedMemory.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle34; this._reservedMemory.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; this._reservedMemory.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.dataGridViewTextBoxColumn9, this.dataGridViewTextBoxColumn10, this.dataGridViewTextBoxColumn11}); - dataGridViewCellStyle25.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle25.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle25.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - dataGridViewCellStyle25.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle25.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle25.SelectionForeColor = System.Drawing.SystemColors.HighlightText; - dataGridViewCellStyle25.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this._reservedMemory.DefaultCellStyle = dataGridViewCellStyle25; + dataGridViewCellStyle35.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle35.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle35.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + dataGridViewCellStyle35.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle35.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle35.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle35.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this._reservedMemory.DefaultCellStyle = dataGridViewCellStyle35; this._reservedMemory.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically; this._reservedMemory.Location = new System.Drawing.Point(7, 19); this._reservedMemory.MultiSelect = false; @@ -927,30 +690,170 @@ this.dataGridViewTextBoxColumn11.Resizable = System.Windows.Forms.DataGridViewTriState.False; this.dataGridViewTextBoxColumn11.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; // - // dataGridViewCheckBoxColumn1 + // Ram0Page // - this.dataGridViewCheckBoxColumn1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells; - this.dataGridViewCheckBoxColumn1.FalseValue = "false"; - this.dataGridViewCheckBoxColumn1.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.dataGridViewCheckBoxColumn1.HeaderText = "B"; - this.dataGridViewCheckBoxColumn1.IndeterminateValue = "null"; - this.dataGridViewCheckBoxColumn1.Name = "dataGridViewCheckBoxColumn1"; - this.dataGridViewCheckBoxColumn1.ReadOnly = true; - this.dataGridViewCheckBoxColumn1.Resizable = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewCheckBoxColumn1.TrueValue = "true"; - this.dataGridViewCheckBoxColumn1.Width = 20; + this.Ram0Page.Controls.Add(this._ram0SourceViewer); + this.Ram0Page.Location = new System.Drawing.Point(4, 22); + this.Ram0Page.Name = "Ram0Page"; + this.Ram0Page.Padding = new System.Windows.Forms.Padding(3); + this.Ram0Page.Size = new System.Drawing.Size(582, 554); + this.Ram0Page.TabIndex = 2; + this.Ram0Page.Text = "RAM0"; + this.Ram0Page.UseVisualStyleBackColor = true; // - // dataGridViewTextBoxColumn4 + // _ram0SourceViewer // - this.dataGridViewTextBoxColumn4.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCellsExceptHeader; - dataGridViewCellStyle7.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.dataGridViewTextBoxColumn4.DefaultCellStyle = dataGridViewCellStyle7; - this.dataGridViewTextBoxColumn4.HeaderText = "T"; - this.dataGridViewTextBoxColumn4.Name = "dataGridViewTextBoxColumn4"; - this.dataGridViewTextBoxColumn4.ReadOnly = true; - this.dataGridViewTextBoxColumn4.Resizable = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewTextBoxColumn4.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; - this.dataGridViewTextBoxColumn4.Width = 5; + this._ram0SourceViewer.AllowUserToAddRows = false; + this._ram0SourceViewer.AllowUserToDeleteRows = false; + this._ram0SourceViewer.AllowUserToResizeColumns = false; + this._ram0SourceViewer.AllowUserToResizeRows = false; + dataGridViewCellStyle11.BackColor = System.Drawing.Color.Silver; + this._ram0SourceViewer.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle11; + this._ram0SourceViewer.CellBorderStyle = System.Windows.Forms.DataGridViewCellBorderStyle.SingleVertical; + this._ram0SourceViewer.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this._ram0SourceViewer.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { + this.dataGridViewCheckBoxColumn2, + this.dataGridViewTextBoxColumn7, + this.dataGridViewTextBoxColumn6, + this.dataGridViewTextBoxColumn8}); + this._ram0SourceViewer.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically; + this._ram0SourceViewer.Location = new System.Drawing.Point(0, 0); + this._ram0SourceViewer.Name = "_ram0SourceViewer"; + this._ram0SourceViewer.ReadOnly = true; + this._ram0SourceViewer.RowHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single; + dataGridViewCellStyle15.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle15.BackColor = System.Drawing.SystemColors.Control; + dataGridViewCellStyle15.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + dataGridViewCellStyle15.ForeColor = System.Drawing.SystemColors.WindowText; + dataGridViewCellStyle15.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle15.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle15.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this._ram0SourceViewer.RowHeadersDefaultCellStyle = dataGridViewCellStyle15; + this._ram0SourceViewer.RowHeadersVisible = false; + this._ram0SourceViewer.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing; + this._ram0SourceViewer.RowTemplate.Height = 18; + this._ram0SourceViewer.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect; + this._ram0SourceViewer.ShowCellErrors = false; + this._ram0SourceViewer.ShowEditingIcon = false; + this._ram0SourceViewer.ShowRowErrors = false; + this._ram0SourceViewer.Size = new System.Drawing.Size(582, 554); + this._ram0SourceViewer.TabIndex = 2; + this._ram0SourceViewer.TabStop = false; + this._ram0SourceViewer.Tag = "RAM0"; + this._ram0SourceViewer.VirtualMode = true; + this._ram0SourceViewer.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.Ram0SourceViewCellClick); + this._ram0SourceViewer.CellValueNeeded += new System.Windows.Forms.DataGridViewCellValueEventHandler(this.OnMicrocodeSourceValueNeeded); + // + // dataGridViewTextBoxColumn8 + // + this.dataGridViewTextBoxColumn8.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + dataGridViewCellStyle14.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.dataGridViewTextBoxColumn8.DefaultCellStyle = dataGridViewCellStyle14; + this.dataGridViewTextBoxColumn8.HeaderText = "Disassembly"; + this.dataGridViewTextBoxColumn8.Name = "dataGridViewTextBoxColumn8"; + this.dataGridViewTextBoxColumn8.ReadOnly = true; + this.dataGridViewTextBoxColumn8.Resizable = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewTextBoxColumn8.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; + // + // dataGridViewTextBoxColumn6 + // + this.dataGridViewTextBoxColumn6.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCellsExceptHeader; + dataGridViewCellStyle13.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + dataGridViewCellStyle13.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewTextBoxColumn6.DefaultCellStyle = dataGridViewCellStyle13; + this.dataGridViewTextBoxColumn6.HeaderText = "Word"; + this.dataGridViewTextBoxColumn6.Name = "dataGridViewTextBoxColumn6"; + this.dataGridViewTextBoxColumn6.ReadOnly = true; + this.dataGridViewTextBoxColumn6.Resizable = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewTextBoxColumn6.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; + this.dataGridViewTextBoxColumn6.Width = 5; + // + // dataGridViewTextBoxColumn7 + // + this.dataGridViewTextBoxColumn7.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCellsExceptHeader; + dataGridViewCellStyle12.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.dataGridViewTextBoxColumn7.DefaultCellStyle = dataGridViewCellStyle12; + this.dataGridViewTextBoxColumn7.HeaderText = "Addr"; + this.dataGridViewTextBoxColumn7.Name = "dataGridViewTextBoxColumn7"; + this.dataGridViewTextBoxColumn7.ReadOnly = true; + this.dataGridViewTextBoxColumn7.Resizable = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewTextBoxColumn7.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; + this.dataGridViewTextBoxColumn7.Width = 5; + // + // dataGridViewCheckBoxColumn2 + // + this.dataGridViewCheckBoxColumn2.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells; + this.dataGridViewCheckBoxColumn2.FalseValue = "false"; + this.dataGridViewCheckBoxColumn2.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.dataGridViewCheckBoxColumn2.HeaderText = "B"; + this.dataGridViewCheckBoxColumn2.IndeterminateValue = "null"; + this.dataGridViewCheckBoxColumn2.Name = "dataGridViewCheckBoxColumn2"; + this.dataGridViewCheckBoxColumn2.ReadOnly = true; + this.dataGridViewCheckBoxColumn2.Resizable = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewCheckBoxColumn2.TrueValue = "true"; + this.dataGridViewCheckBoxColumn2.Width = 20; + // + // Rom1Page + // + this.Rom1Page.Controls.Add(this._rom1SourceViewer); + this.Rom1Page.Location = new System.Drawing.Point(4, 22); + this.Rom1Page.Name = "Rom1Page"; + this.Rom1Page.Padding = new System.Windows.Forms.Padding(3); + this.Rom1Page.Size = new System.Drawing.Size(582, 554); + this.Rom1Page.TabIndex = 1; + this.Rom1Page.Text = "ROM1"; + this.Rom1Page.UseVisualStyleBackColor = true; + // + // _rom1SourceViewer + // + this._rom1SourceViewer.AllowUserToAddRows = false; + this._rom1SourceViewer.AllowUserToDeleteRows = false; + this._rom1SourceViewer.AllowUserToResizeColumns = false; + this._rom1SourceViewer.AllowUserToResizeRows = false; + dataGridViewCellStyle6.BackColor = System.Drawing.Color.Silver; + this._rom1SourceViewer.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle6; + this._rom1SourceViewer.CellBorderStyle = System.Windows.Forms.DataGridViewCellBorderStyle.SingleVertical; + this._rom1SourceViewer.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this._rom1SourceViewer.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { + this.dataGridViewCheckBoxColumn1, + this.dataGridViewTextBoxColumn4, + this.dataGridViewTextBoxColumn3, + this.dataGridViewTextBoxColumn5}); + this._rom1SourceViewer.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically; + this._rom1SourceViewer.Location = new System.Drawing.Point(0, 0); + this._rom1SourceViewer.Name = "_rom1SourceViewer"; + this._rom1SourceViewer.ReadOnly = true; + this._rom1SourceViewer.RowHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single; + dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle10.BackColor = System.Drawing.SystemColors.Control; + dataGridViewCellStyle10.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + dataGridViewCellStyle10.ForeColor = System.Drawing.SystemColors.WindowText; + dataGridViewCellStyle10.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle10.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle10.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this._rom1SourceViewer.RowHeadersDefaultCellStyle = dataGridViewCellStyle10; + this._rom1SourceViewer.RowHeadersVisible = false; + this._rom1SourceViewer.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing; + this._rom1SourceViewer.RowTemplate.Height = 18; + this._rom1SourceViewer.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect; + this._rom1SourceViewer.ShowCellErrors = false; + this._rom1SourceViewer.ShowEditingIcon = false; + this._rom1SourceViewer.ShowRowErrors = false; + this._rom1SourceViewer.Size = new System.Drawing.Size(582, 554); + this._rom1SourceViewer.TabIndex = 2; + this._rom1SourceViewer.TabStop = false; + this._rom1SourceViewer.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.Rom1SourceViewCellClick); + // + // dataGridViewTextBoxColumn5 + // + this.dataGridViewTextBoxColumn5.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + dataGridViewCellStyle9.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.dataGridViewTextBoxColumn5.DefaultCellStyle = dataGridViewCellStyle9; + this.dataGridViewTextBoxColumn5.HeaderText = "Source Code"; + this.dataGridViewTextBoxColumn5.Name = "dataGridViewTextBoxColumn5"; + this.dataGridViewTextBoxColumn5.ReadOnly = true; + this.dataGridViewTextBoxColumn5.Resizable = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewTextBoxColumn5.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; // // dataGridViewTextBoxColumn3 // @@ -965,16 +868,350 @@ this.dataGridViewTextBoxColumn3.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; this.dataGridViewTextBoxColumn3.Width = 5; // - // dataGridViewTextBoxColumn5 + // dataGridViewTextBoxColumn4 // - this.dataGridViewTextBoxColumn5.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; - dataGridViewCellStyle9.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.dataGridViewTextBoxColumn5.DefaultCellStyle = dataGridViewCellStyle9; - this.dataGridViewTextBoxColumn5.HeaderText = "Source Code"; - this.dataGridViewTextBoxColumn5.Name = "dataGridViewTextBoxColumn5"; - this.dataGridViewTextBoxColumn5.ReadOnly = true; - this.dataGridViewTextBoxColumn5.Resizable = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewTextBoxColumn5.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; + this.dataGridViewTextBoxColumn4.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCellsExceptHeader; + dataGridViewCellStyle7.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.dataGridViewTextBoxColumn4.DefaultCellStyle = dataGridViewCellStyle7; + this.dataGridViewTextBoxColumn4.HeaderText = "T"; + this.dataGridViewTextBoxColumn4.Name = "dataGridViewTextBoxColumn4"; + this.dataGridViewTextBoxColumn4.ReadOnly = true; + this.dataGridViewTextBoxColumn4.Resizable = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewTextBoxColumn4.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; + this.dataGridViewTextBoxColumn4.Width = 5; + // + // dataGridViewCheckBoxColumn1 + // + this.dataGridViewCheckBoxColumn1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells; + this.dataGridViewCheckBoxColumn1.FalseValue = "false"; + this.dataGridViewCheckBoxColumn1.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.dataGridViewCheckBoxColumn1.HeaderText = "B"; + this.dataGridViewCheckBoxColumn1.IndeterminateValue = "null"; + this.dataGridViewCheckBoxColumn1.Name = "dataGridViewCheckBoxColumn1"; + this.dataGridViewCheckBoxColumn1.ReadOnly = true; + this.dataGridViewCheckBoxColumn1.Resizable = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewCheckBoxColumn1.TrueValue = "true"; + this.dataGridViewCheckBoxColumn1.Width = 20; + // + // Rom0Page + // + this.Rom0Page.Controls.Add(this._rom0SourceViewer); + this.Rom0Page.Location = new System.Drawing.Point(4, 22); + this.Rom0Page.Name = "Rom0Page"; + this.Rom0Page.Padding = new System.Windows.Forms.Padding(3); + this.Rom0Page.Size = new System.Drawing.Size(582, 554); + this.Rom0Page.TabIndex = 0; + this.Rom0Page.Text = "ROM0"; + this.Rom0Page.UseVisualStyleBackColor = true; + // + // _rom0SourceViewer + // + this._rom0SourceViewer.AllowUserToAddRows = false; + this._rom0SourceViewer.AllowUserToDeleteRows = false; + this._rom0SourceViewer.AllowUserToResizeColumns = false; + this._rom0SourceViewer.AllowUserToResizeRows = false; + dataGridViewCellStyle1.BackColor = System.Drawing.Color.Silver; + this._rom0SourceViewer.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1; + this._rom0SourceViewer.CellBorderStyle = System.Windows.Forms.DataGridViewCellBorderStyle.SingleVertical; + this._rom0SourceViewer.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this._rom0SourceViewer.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { + this.Breakpoint, + this.T, + this.Addr, + this.Source}); + this._rom0SourceViewer.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically; + this._rom0SourceViewer.Location = new System.Drawing.Point(0, 0); + this._rom0SourceViewer.Name = "_rom0SourceViewer"; + this._rom0SourceViewer.ReadOnly = true; + this._rom0SourceViewer.RowHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single; + dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle5.BackColor = System.Drawing.SystemColors.Control; + dataGridViewCellStyle5.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + dataGridViewCellStyle5.ForeColor = System.Drawing.SystemColors.WindowText; + dataGridViewCellStyle5.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle5.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this._rom0SourceViewer.RowHeadersDefaultCellStyle = dataGridViewCellStyle5; + this._rom0SourceViewer.RowHeadersVisible = false; + this._rom0SourceViewer.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing; + this._rom0SourceViewer.RowTemplate.Height = 18; + this._rom0SourceViewer.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect; + this._rom0SourceViewer.ShowCellErrors = false; + this._rom0SourceViewer.ShowEditingIcon = false; + this._rom0SourceViewer.ShowRowErrors = false; + this._rom0SourceViewer.Size = new System.Drawing.Size(582, 554); + this._rom0SourceViewer.TabIndex = 1; + this._rom0SourceViewer.TabStop = false; + this._rom0SourceViewer.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.Rom0SourceViewCellClick); + // + // Source + // + this.Source.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + dataGridViewCellStyle4.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.Source.DefaultCellStyle = dataGridViewCellStyle4; + this.Source.HeaderText = "Source Code"; + this.Source.Name = "Source"; + this.Source.ReadOnly = true; + this.Source.Resizable = System.Windows.Forms.DataGridViewTriState.False; + this.Source.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; + // + // Addr + // + this.Addr.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCellsExceptHeader; + dataGridViewCellStyle3.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.Addr.DefaultCellStyle = dataGridViewCellStyle3; + this.Addr.HeaderText = "Addr"; + this.Addr.Name = "Addr"; + this.Addr.ReadOnly = true; + this.Addr.Resizable = System.Windows.Forms.DataGridViewTriState.False; + this.Addr.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; + this.Addr.Width = 5; + // + // T + // + this.T.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCellsExceptHeader; + dataGridViewCellStyle2.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.T.DefaultCellStyle = dataGridViewCellStyle2; + this.T.HeaderText = "T"; + this.T.Name = "T"; + this.T.ReadOnly = true; + this.T.Resizable = System.Windows.Forms.DataGridViewTriState.False; + this.T.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; + this.T.Width = 5; + // + // Breakpoint + // + this.Breakpoint.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells; + this.Breakpoint.FalseValue = "false"; + this.Breakpoint.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.Breakpoint.HeaderText = "B"; + this.Breakpoint.IndeterminateValue = "null"; + this.Breakpoint.Name = "Breakpoint"; + this.Breakpoint.ReadOnly = true; + this.Breakpoint.Resizable = System.Windows.Forms.DataGridViewTriState.False; + this.Breakpoint.TrueValue = "true"; + this.Breakpoint.Width = 20; + // + // SourceTabs + // + this.SourceTabs.Controls.Add(this.Rom0Page); + this.SourceTabs.Controls.Add(this.Rom1Page); + this.SourceTabs.Controls.Add(this.Ram0Page); + this.SourceTabs.Controls.Add(this.Ram1Page); + this.SourceTabs.Controls.Add(this.Ram2Page); + this.SourceTabs.Location = new System.Drawing.Point(6, 19); + this.SourceTabs.Name = "SourceTabs"; + this.SourceTabs.SelectedIndex = 0; + this.SourceTabs.Size = new System.Drawing.Size(590, 580); + this.SourceTabs.TabIndex = 14; + this.SourceTabs.SelectedIndexChanged += new System.EventHandler(this.OnTabChanged); + // + // Ram1Page + // + this.Ram1Page.Controls.Add(this._ram1SourceViewer); + this.Ram1Page.Location = new System.Drawing.Point(4, 22); + this.Ram1Page.Name = "Ram1Page"; + this.Ram1Page.Padding = new System.Windows.Forms.Padding(3); + this.Ram1Page.Size = new System.Drawing.Size(582, 554); + this.Ram1Page.TabIndex = 3; + this.Ram1Page.Text = "RAM1"; + this.Ram1Page.UseVisualStyleBackColor = true; + // + // Ram2Page + // + this.Ram2Page.Controls.Add(this._ram2SourceViewer); + this.Ram2Page.Location = new System.Drawing.Point(4, 22); + this.Ram2Page.Name = "Ram2Page"; + this.Ram2Page.Padding = new System.Windows.Forms.Padding(3); + this.Ram2Page.Size = new System.Drawing.Size(582, 554); + this.Ram2Page.TabIndex = 4; + this.Ram2Page.Text = "RAM2"; + this.Ram2Page.UseVisualStyleBackColor = true; + // + // _ram1SourceViewer + // + this._ram1SourceViewer.AllowUserToAddRows = false; + this._ram1SourceViewer.AllowUserToDeleteRows = false; + this._ram1SourceViewer.AllowUserToResizeColumns = false; + this._ram1SourceViewer.AllowUserToResizeRows = false; + dataGridViewCellStyle16.BackColor = System.Drawing.Color.Silver; + this._ram1SourceViewer.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle16; + this._ram1SourceViewer.CellBorderStyle = System.Windows.Forms.DataGridViewCellBorderStyle.SingleVertical; + this._ram1SourceViewer.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this._ram1SourceViewer.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { + this.dataGridViewCheckBoxColumn3, + this.dataGridViewTextBoxColumn1, + this.dataGridViewTextBoxColumn2, + this.dataGridViewTextBoxColumn12}); + this._ram1SourceViewer.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically; + this._ram1SourceViewer.Location = new System.Drawing.Point(0, 0); + this._ram1SourceViewer.Name = "_ram1SourceViewer"; + this._ram1SourceViewer.ReadOnly = true; + this._ram1SourceViewer.RowHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single; + dataGridViewCellStyle20.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle20.BackColor = System.Drawing.SystemColors.Control; + dataGridViewCellStyle20.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + dataGridViewCellStyle20.ForeColor = System.Drawing.SystemColors.WindowText; + dataGridViewCellStyle20.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle20.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle20.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this._ram1SourceViewer.RowHeadersDefaultCellStyle = dataGridViewCellStyle20; + this._ram1SourceViewer.RowHeadersVisible = false; + this._ram1SourceViewer.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing; + this._ram1SourceViewer.RowTemplate.Height = 18; + this._ram1SourceViewer.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect; + this._ram1SourceViewer.ShowCellErrors = false; + this._ram1SourceViewer.ShowEditingIcon = false; + this._ram1SourceViewer.ShowRowErrors = false; + this._ram1SourceViewer.Size = new System.Drawing.Size(582, 554); + this._ram1SourceViewer.TabIndex = 3; + this._ram1SourceViewer.TabStop = false; + this._ram1SourceViewer.Tag = "RAM1"; + this._ram1SourceViewer.VirtualMode = true; + this._ram1SourceViewer.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.Ram1SourceViewCellClick); + this._ram1SourceViewer.CellValueNeeded += new System.Windows.Forms.DataGridViewCellValueEventHandler(this.OnMicrocodeSourceValueNeeded); + // + // dataGridViewCheckBoxColumn3 + // + this.dataGridViewCheckBoxColumn3.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells; + this.dataGridViewCheckBoxColumn3.FalseValue = "false"; + this.dataGridViewCheckBoxColumn3.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.dataGridViewCheckBoxColumn3.HeaderText = "B"; + this.dataGridViewCheckBoxColumn3.IndeterminateValue = "null"; + this.dataGridViewCheckBoxColumn3.Name = "dataGridViewCheckBoxColumn3"; + this.dataGridViewCheckBoxColumn3.ReadOnly = true; + this.dataGridViewCheckBoxColumn3.Resizable = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewCheckBoxColumn3.TrueValue = "true"; + this.dataGridViewCheckBoxColumn3.Width = 20; + // + // dataGridViewTextBoxColumn1 + // + this.dataGridViewTextBoxColumn1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCellsExceptHeader; + dataGridViewCellStyle17.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.dataGridViewTextBoxColumn1.DefaultCellStyle = dataGridViewCellStyle17; + this.dataGridViewTextBoxColumn1.HeaderText = "Addr"; + this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1"; + this.dataGridViewTextBoxColumn1.ReadOnly = true; + this.dataGridViewTextBoxColumn1.Resizable = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewTextBoxColumn1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; + this.dataGridViewTextBoxColumn1.Width = 5; + // + // dataGridViewTextBoxColumn2 + // + this.dataGridViewTextBoxColumn2.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCellsExceptHeader; + dataGridViewCellStyle18.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + dataGridViewCellStyle18.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewTextBoxColumn2.DefaultCellStyle = dataGridViewCellStyle18; + this.dataGridViewTextBoxColumn2.HeaderText = "Word"; + this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2"; + this.dataGridViewTextBoxColumn2.ReadOnly = true; + this.dataGridViewTextBoxColumn2.Resizable = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewTextBoxColumn2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; + this.dataGridViewTextBoxColumn2.Width = 5; + // + // dataGridViewTextBoxColumn12 + // + this.dataGridViewTextBoxColumn12.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + dataGridViewCellStyle19.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.dataGridViewTextBoxColumn12.DefaultCellStyle = dataGridViewCellStyle19; + this.dataGridViewTextBoxColumn12.HeaderText = "Disassembly"; + this.dataGridViewTextBoxColumn12.Name = "dataGridViewTextBoxColumn12"; + this.dataGridViewTextBoxColumn12.ReadOnly = true; + this.dataGridViewTextBoxColumn12.Resizable = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewTextBoxColumn12.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; + // + // _ram2SourceViewer + // + this._ram2SourceViewer.AllowUserToAddRows = false; + this._ram2SourceViewer.AllowUserToDeleteRows = false; + this._ram2SourceViewer.AllowUserToResizeColumns = false; + this._ram2SourceViewer.AllowUserToResizeRows = false; + dataGridViewCellStyle21.BackColor = System.Drawing.Color.Silver; + this._ram2SourceViewer.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle21; + this._ram2SourceViewer.CellBorderStyle = System.Windows.Forms.DataGridViewCellBorderStyle.SingleVertical; + this._ram2SourceViewer.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this._ram2SourceViewer.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { + this.dataGridViewCheckBoxColumn4, + this.dataGridViewTextBoxColumn13, + this.dataGridViewTextBoxColumn14, + this.dataGridViewTextBoxColumn15}); + this._ram2SourceViewer.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically; + this._ram2SourceViewer.Location = new System.Drawing.Point(0, 0); + this._ram2SourceViewer.Name = "_ram2SourceViewer"; + this._ram2SourceViewer.ReadOnly = true; + this._ram2SourceViewer.RowHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single; + dataGridViewCellStyle25.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle25.BackColor = System.Drawing.SystemColors.Control; + dataGridViewCellStyle25.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + dataGridViewCellStyle25.ForeColor = System.Drawing.SystemColors.WindowText; + dataGridViewCellStyle25.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle25.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle25.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this._ram2SourceViewer.RowHeadersDefaultCellStyle = dataGridViewCellStyle25; + this._ram2SourceViewer.RowHeadersVisible = false; + this._ram2SourceViewer.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing; + this._ram2SourceViewer.RowTemplate.Height = 18; + this._ram2SourceViewer.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect; + this._ram2SourceViewer.ShowCellErrors = false; + this._ram2SourceViewer.ShowEditingIcon = false; + this._ram2SourceViewer.ShowRowErrors = false; + this._ram2SourceViewer.Size = new System.Drawing.Size(582, 554); + this._ram2SourceViewer.TabIndex = 3; + this._ram2SourceViewer.TabStop = false; + this._ram2SourceViewer.Tag = "RAM2"; + this._ram2SourceViewer.VirtualMode = true; + this._ram2SourceViewer.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.Ram2SourceViewCellClick); + this._ram2SourceViewer.CellValueNeeded += new System.Windows.Forms.DataGridViewCellValueEventHandler(this.OnMicrocodeSourceValueNeeded); + // + // dataGridViewCheckBoxColumn4 + // + this.dataGridViewCheckBoxColumn4.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells; + this.dataGridViewCheckBoxColumn4.FalseValue = "false"; + this.dataGridViewCheckBoxColumn4.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.dataGridViewCheckBoxColumn4.HeaderText = "B"; + this.dataGridViewCheckBoxColumn4.IndeterminateValue = "null"; + this.dataGridViewCheckBoxColumn4.Name = "dataGridViewCheckBoxColumn4"; + this.dataGridViewCheckBoxColumn4.ReadOnly = true; + this.dataGridViewCheckBoxColumn4.Resizable = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewCheckBoxColumn4.TrueValue = "true"; + this.dataGridViewCheckBoxColumn4.Width = 20; + // + // dataGridViewTextBoxColumn13 + // + this.dataGridViewTextBoxColumn13.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCellsExceptHeader; + dataGridViewCellStyle22.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.dataGridViewTextBoxColumn13.DefaultCellStyle = dataGridViewCellStyle22; + this.dataGridViewTextBoxColumn13.HeaderText = "Addr"; + this.dataGridViewTextBoxColumn13.Name = "dataGridViewTextBoxColumn13"; + this.dataGridViewTextBoxColumn13.ReadOnly = true; + this.dataGridViewTextBoxColumn13.Resizable = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewTextBoxColumn13.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; + this.dataGridViewTextBoxColumn13.Width = 5; + // + // dataGridViewTextBoxColumn14 + // + this.dataGridViewTextBoxColumn14.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCellsExceptHeader; + dataGridViewCellStyle23.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + dataGridViewCellStyle23.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewTextBoxColumn14.DefaultCellStyle = dataGridViewCellStyle23; + this.dataGridViewTextBoxColumn14.HeaderText = "Word"; + this.dataGridViewTextBoxColumn14.Name = "dataGridViewTextBoxColumn14"; + this.dataGridViewTextBoxColumn14.ReadOnly = true; + this.dataGridViewTextBoxColumn14.Resizable = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewTextBoxColumn14.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; + this.dataGridViewTextBoxColumn14.Width = 5; + // + // dataGridViewTextBoxColumn15 + // + this.dataGridViewTextBoxColumn15.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + dataGridViewCellStyle24.Font = new System.Drawing.Font("Consolas", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.dataGridViewTextBoxColumn15.DefaultCellStyle = dataGridViewCellStyle24; + this.dataGridViewTextBoxColumn15.HeaderText = "Disassembly"; + this.dataGridViewTextBoxColumn15.Name = "dataGridViewTextBoxColumn15"; + this.dataGridViewTextBoxColumn15.ReadOnly = true; + this.dataGridViewTextBoxColumn15.Resizable = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewTextBoxColumn15.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; // // Debugger // @@ -1007,13 +1244,6 @@ this.Load += new System.EventHandler(this.Debugger_Load); this.Microcode.ResumeLayout(false); this.Microcode.PerformLayout(); - this.SourceTabs.ResumeLayout(false); - this.Rom0Page.ResumeLayout(false); - ((System.ComponentModel.ISupportInitialize)(this._rom0SourceViewer)).EndInit(); - this.Rom1Page.ResumeLayout(false); - ((System.ComponentModel.ISupportInitialize)(this._rom1SourceViewer)).EndInit(); - this.Rom2Page.ResumeLayout(false); - ((System.ComponentModel.ISupportInitialize)(this._ram0SourceViewer)).EndInit(); this.groupBox1.ResumeLayout(false); ((System.ComponentModel.ISupportInitialize)(this._registerData)).EndInit(); this.groupBox2.ResumeLayout(false); @@ -1025,6 +1255,17 @@ ((System.ComponentModel.ISupportInitialize)(this._memoryData)).EndInit(); this.groupBox6.ResumeLayout(false); ((System.ComponentModel.ISupportInitialize)(this._reservedMemory)).EndInit(); + this.Ram0Page.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this._ram0SourceViewer)).EndInit(); + this.Rom1Page.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this._rom1SourceViewer)).EndInit(); + this.Rom0Page.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this._rom0SourceViewer)).EndInit(); + this.SourceTabs.ResumeLayout(false); + this.Ram1Page.ResumeLayout(false); + this.Ram2Page.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this._ram1SourceViewer)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this._ram2SourceViewer)).EndInit(); this.ResumeLayout(false); this.PerformLayout(); @@ -1033,7 +1274,6 @@ #endregion private System.Windows.Forms.GroupBox Microcode; - private System.Windows.Forms.DataGridView _rom0SourceViewer; private System.Windows.Forms.GroupBox groupBox1; private System.Windows.Forms.Button StepButton; private System.Windows.Forms.Button AutoStep; @@ -1054,10 +1294,6 @@ private System.Windows.Forms.DataGridViewTextBoxColumn RegValue; private System.Windows.Forms.GroupBox groupBox4; private System.Windows.Forms.DataGridView _memoryData; - private System.Windows.Forms.DataGridViewCheckBoxColumn Breakpoint; - private System.Windows.Forms.DataGridViewTextBoxColumn T; - private System.Windows.Forms.DataGridViewTextBoxColumn Addr; - private System.Windows.Forms.DataGridViewTextBoxColumn Source; private System.Windows.Forms.Label label1; private System.Windows.Forms.Label ExecutionStateLabel; private System.Windows.Forms.TextBox JumpToAddress; @@ -1069,16 +1305,6 @@ private System.Windows.Forms.DataGridViewTextBoxColumn Address; private System.Windows.Forms.DataGridViewTextBoxColumn Data; private System.Windows.Forms.DataGridViewTextBoxColumn Disassembly; - private System.Windows.Forms.TabControl SourceTabs; - private System.Windows.Forms.TabPage Rom0Page; - private System.Windows.Forms.TabPage Rom1Page; - private System.Windows.Forms.DataGridView _rom1SourceViewer; - private System.Windows.Forms.TabPage Rom2Page; - private System.Windows.Forms.DataGridView _ram0SourceViewer; - private System.Windows.Forms.DataGridViewCheckBoxColumn dataGridViewCheckBoxColumn2; - private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn7; - private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn6; - private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn8; private System.Windows.Forms.GroupBox groupBox6; private System.Windows.Forms.DataGridView _reservedMemory; private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn9; @@ -1086,9 +1312,36 @@ private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn11; private System.Windows.Forms.TextBox MemoryJumpToAddress; private System.Windows.Forms.Label label3; + private System.Windows.Forms.TabControl SourceTabs; + private System.Windows.Forms.TabPage Rom0Page; + private System.Windows.Forms.DataGridView _rom0SourceViewer; + private System.Windows.Forms.DataGridViewCheckBoxColumn Breakpoint; + private System.Windows.Forms.DataGridViewTextBoxColumn T; + private System.Windows.Forms.DataGridViewTextBoxColumn Addr; + private System.Windows.Forms.DataGridViewTextBoxColumn Source; + private System.Windows.Forms.TabPage Rom1Page; + private System.Windows.Forms.DataGridView _rom1SourceViewer; private System.Windows.Forms.DataGridViewCheckBoxColumn dataGridViewCheckBoxColumn1; private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn4; private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn3; private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn5; + private System.Windows.Forms.TabPage Ram0Page; + private System.Windows.Forms.DataGridView _ram0SourceViewer; + private System.Windows.Forms.DataGridViewCheckBoxColumn dataGridViewCheckBoxColumn2; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn7; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn6; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn8; + private System.Windows.Forms.TabPage Ram1Page; + private System.Windows.Forms.DataGridView _ram1SourceViewer; + private System.Windows.Forms.DataGridViewCheckBoxColumn dataGridViewCheckBoxColumn3; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn2; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn12; + private System.Windows.Forms.TabPage Ram2Page; + private System.Windows.Forms.DataGridView _ram2SourceViewer; + private System.Windows.Forms.DataGridViewCheckBoxColumn dataGridViewCheckBoxColumn4; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn13; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn14; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn15; } } \ No newline at end of file diff --git a/Contralto/UI/Debugger.cs b/Contralto/UI/Debugger.cs index ab3216d..d085b94 100644 --- a/Contralto/UI/Debugger.cs +++ b/Contralto/UI/Debugger.cs @@ -26,7 +26,7 @@ namespace Contralto { _system = system; _controller = controller; - _microcodeBreakpointEnabled = new bool[3,1024]; + _microcodeBreakpointEnabled = new bool[5, 1024]; _novaBreakpointEnabled = new bool[65536]; _controller.StepCallback += OnExecutionStep; @@ -37,9 +37,9 @@ namespace Contralto _execType = _controller.IsRunning ? ExecutionType.Normal : ExecutionType.None; InitializeComponent(); - InitControls(); - RefreshUI(); - } + InitControls(); + RefreshUI(); + } public void LoadSourceCode(MicrocodeBank bank, string path) { @@ -76,7 +76,7 @@ namespace Contralto } // Ensure the UI view gets refreshed to display the current MPC source - Refresh(); + Refresh(); } public override void Refresh() @@ -122,7 +122,7 @@ namespace Contralto //_otherRegs.Rows[4].Cells[1].Value = OctalHelpers.ToOctal(_system.CPU.Skip, 1); _otherRegs.Rows[5].Cells[1].Value = Conversion.ToOctal(_system.MemoryBus.MAR, 6); _otherRegs.Rows[6].Cells[1].Value = Conversion.ToOctal(_system.MemoryBus.MD, 6); - _otherRegs.Rows[7].Cells[1].Value = Conversion.ToOctal(_system.MemoryBus.Cycle & 0x3f, 2); + _otherRegs.Rows[7].Cells[1].Value = Conversion.ToOctal(_system.MemoryBus.Cycle & 0x3f, 2); // Reserved memory locations for (int i = 0; i < _reservedMemoryEntries.Length; i++) @@ -148,7 +148,7 @@ namespace Contralto case MicrocodeBank.RAM0: SourceTabs.SelectedIndex = 2; break; - } + } RefreshMicrocodeDisassembly(_system.CPU.CurrentTask.MPC); @@ -186,7 +186,7 @@ namespace Contralto break; } - this.BringToFront(); + this.BringToFront(); } private void RefreshMicrocodeDisassembly(ushort address) @@ -199,13 +199,20 @@ namespace Contralto HighlightMicrocodeSourceLine(_rom0SourceViewer, address); break; - case 1: + case 1: HighlightMicrocodeSourceLine(_rom1SourceViewer, address); break; - case 2: - UpdateMicrocodeDisassembly(MicrocodeBank.RAM0); - HighlightMicrocodeSourceLine(_ram0SourceViewer, address); + case 2: + HighlightMicrocodeDisassemblyLine(_ram0SourceViewer, address); + break; + + case 3: + HighlightMicrocodeDisassemblyLine(_ram1SourceViewer, address); + break; + + case 4: + HighlightMicrocodeDisassemblyLine(_ram2SourceViewer, address); break; } } @@ -214,7 +221,7 @@ namespace Contralto { for (int i = 0; i < 32; i++) { - _registerData.Rows.Add(-1, -1 ,-1); + _registerData.Rows.Add(-1, -1, -1); } for (int i = 0; i < 16; i++) @@ -223,7 +230,10 @@ namespace Contralto } // TODO: handle extended memory - _memoryData.RowCount = 65536; + _memoryData.RowCount = 65536; + _ram0SourceViewer.RowCount = 1024; + _ram1SourceViewer.RowCount = 1024; + _ram2SourceViewer.RowCount = 1024; _otherRegs.Rows.Add("L", "0"); _otherRegs.Rows.Add("T", "0"); @@ -234,9 +244,9 @@ namespace Contralto //_otherRegs.Rows.Add("SKIP", "0"); _otherRegs.Rows.Add("MAR", "0"); _otherRegs.Rows.Add("MD", "0"); - _otherRegs.Rows.Add("MCycle", "0"); - - for(int i=0;i< _reservedMemoryEntries.Length;i++) + _otherRegs.Rows.Add("MCycle", "0"); + + for (int i = 0; i < _reservedMemoryEntries.Length; i++) { _reservedMemory.Rows.Add( Conversion.ToOctal(_reservedMemoryEntries[i].Address, 3), @@ -244,7 +254,7 @@ namespace Contralto Conversion.ToOctal(0, 6)); } } - + /// /// Handle breakpoint placement on column 0. @@ -252,20 +262,20 @@ namespace Contralto /// /// private void Rom0SourceViewCellClick(object sender, DataGridViewCellEventArgs e) - { + { // Check for breakpoint column click. if (e.ColumnIndex == 0) { - SetBreakpointFromCellClick(MicrocodeBank.ROM0, e.RowIndex); + SetBreakpointFromCellClickForSourceView(MicrocodeBank.ROM0, e.RowIndex); } - } + } private void Rom1SourceViewCellClick(object sender, DataGridViewCellEventArgs e) { // Check for breakpoint column click. if (e.ColumnIndex == 0) { - SetBreakpointFromCellClick(MicrocodeBank.ROM1, e.RowIndex); + SetBreakpointFromCellClickForSourceView(MicrocodeBank.ROM1, e.RowIndex); } } @@ -274,15 +284,33 @@ namespace Contralto // Check for breakpoint column click. if (e.ColumnIndex == 0) { - SetBreakpointFromCellClick(MicrocodeBank.RAM0, e.RowIndex); + SetBreakpointFromCellClickForDisassemblyView(MicrocodeBank.RAM0, e.RowIndex); } } - private void SetBreakpointFromCellClick(MicrocodeBank bank, int index) + private void Ram1SourceViewCellClick(object sender, DataGridViewCellEventArgs e) + { + // Check for breakpoint column click. + if (e.ColumnIndex == 0) + { + SetBreakpointFromCellClickForDisassemblyView(MicrocodeBank.RAM1, e.RowIndex); + } + } + + private void Ram2SourceViewCellClick(object sender, DataGridViewCellEventArgs e) + { + // Check for breakpoint column click. + if (e.ColumnIndex == 0) + { + SetBreakpointFromCellClickForDisassemblyView(MicrocodeBank.RAM2, e.RowIndex); + } + } + + private void SetBreakpointFromCellClickForSourceView(MicrocodeBank bank, int index) { DataGridView view = null; - switch(bank) + switch (bank) { case MicrocodeBank.ROM0: view = _rom0SourceViewer; @@ -292,9 +320,8 @@ namespace Contralto view = _rom1SourceViewer; break; - case MicrocodeBank.RAM0: - view = _ram0SourceViewer; - break; + default: + throw new InvalidOperationException("Bank does not have a source view."); } // See if this is a source line, if so check/uncheck the box @@ -308,6 +335,35 @@ namespace Contralto } } + private void SetBreakpointFromCellClickForDisassemblyView(MicrocodeBank bank, int index) + { + DataGridView view = null; + + switch (bank) + { + case MicrocodeBank.RAM0: + view = _rom0SourceViewer; + break; + + case MicrocodeBank.RAM1: + view = _ram1SourceViewer; + break; + + case MicrocodeBank.RAM2: + view = _ram2SourceViewer; + break; + + default: + throw new InvalidOperationException("Bank does not have a disassembly view."); + } + + // Set/unset the breakpoint + bool value = (bool)view.Rows[index].Cells[0].Value; + view.Rows[index].Cells[0].Value = !value; + + ModifyMicrocodeBreakpoint(bank, (UInt16)index, !value); + } + private void MemoryViewCellClick(object sender, DataGridViewCellEventArgs e) { // Check for breakpoint column click. @@ -321,55 +377,8 @@ namespace Contralto } } - private void UpdateMicrocodeDisassembly(MicrocodeBank bank) - { - DataGridView view = null; - uint[] uCode = null; - switch (bank) - { - case MicrocodeBank.ROM1: - view = _rom1SourceViewer; - uCode = UCodeMemory.UCodeROM; - break; - - case MicrocodeBank.RAM0: - view = _ram0SourceViewer; - uCode = UCodeMemory.UCodeRAM; - break; - } - - bool bFirstTime = view.Rows.Count == 0; - - - for(int i=0;i<1024;i++) - { - int address = (bank == MicrocodeBank.RAM0) ? i : 1024 + i; - MicroInstruction instruction = new MicroInstruction(uCode[address]); - - if (bFirstTime) - { - // Create new row - int index = view.Rows.Add( - false, // breakpoint - Conversion.ToOctal(address, 4), - Conversion.ToOctal((int)uCode[address], 11), - UCodeDisassembler.DisassembleInstruction(instruction, TaskType.Emulator)); - - view.Rows[index].Tag = (ushort)i; - } - else - { - // Update existing row - view.Rows[i].Cells[1].Value = Conversion.ToOctal(address, 4); - view.Rows[i].Cells[2].Value = Conversion.ToOctal((int)uCode[address], 11); - view.Rows[i].Cells[3].Value = UCodeDisassembler.DisassembleInstruction(instruction, TaskType.Emulator); - } - } - } - - private void HighlightMicrocodeSourceLine(DataGridView view, UInt16 address) - { + { foreach (DataGridViewRow row in view.Rows) { if (row.Tag != null && @@ -383,13 +392,22 @@ namespace Contralto } } + private void HighlightMicrocodeDisassemblyLine(DataGridView view, UInt16 address) + { + DataGridViewRow row = view.Rows[address]; + + view.ClearSelection(); + row.Selected = true; + view.CurrentCell = row.Cells[0]; + } + private void HighlightNovaSourceLine(UInt16 address) { if (address < _memoryData.Rows.Count) { _memoryData.ClearSelection(); _memoryData.Rows[address].Selected = true; - _memoryData.CurrentCell = _memoryData.Rows[address].Cells[0]; + _memoryData.CurrentCell = _memoryData.Rows[address].Cells[0]; } } @@ -408,7 +426,7 @@ namespace Contralto return; } - switch(_memoryData.Columns[e.ColumnIndex].Name) + switch (_memoryData.Columns[e.ColumnIndex].Name) { case "Bkpt": e.Value = GetNovaBreakpoint((UInt16)e.RowIndex); @@ -420,21 +438,82 @@ namespace Contralto case "Data": e.Value = Conversion.ToOctal(_system.MemoryBus.DebugReadWord((ushort)e.RowIndex), 6); - + break; case "Disassembly": e.Value = CPU.Nova.NovaDisassembler.DisassembleInstruction( - (ushort)e.RowIndex, + (ushort)e.RowIndex, _system.MemoryBus.DebugReadWord((ushort)e.RowIndex)); break; } } + private void OnMicrocodeSourceValueNeeded(object sender, DataGridViewCellValueEventArgs e) + { + if (e.RowIndex > 1024) + { + // Top of uCode memory, nothing to do. + return; + } + + DataGridView view = (DataGridView)sender; + + int bank = 0; + switch ((string)view.Tag) + { + case "RAM0": + bank = 0; + break; + + case "RAM1": + bank = 1; + break; + + case "RAM2": + bank = 2; + break; + + default: + throw new InvalidOperationException("Invalid view Tag for disassembly view."); + } + + ushort address = (ushort)(e.RowIndex + (bank * 1024)); + + // Yes, switching on the Header Text seems clumsy and awful but this is + // what WinForms has driven me to do. + switch (((DataGridView)sender).Columns[e.ColumnIndex].HeaderText) + { + case "B": + e.Value = GetMicrocodeBreakpoint(MicrocodeBank.RAM0 + bank, (ushort)(address % 1024)); + break; + + case "Addr": + e.Value = Conversion.ToOctal(e.RowIndex, 4); + break; + + case "Word": + e.Value = Conversion.ToOctal((int)UCodeMemory.UCodeRAM[address], 11); + + break; + + case "Disassembly": + // TODO: should provide means to disassemble as specific task, not just Emulator. + MicroInstruction instruction = new MicroInstruction(UCodeMemory.UCodeRAM[address]); + e.Value = UCodeDisassembler.DisassembleInstruction(instruction, TaskType.Emulator); + break; + } + } + private void ModifyMicrocodeBreakpoint(MicrocodeBank bank, UInt16 address, bool set) { - _microcodeBreakpointEnabled[(int)bank,address] = set; + _microcodeBreakpointEnabled[(int)bank, address] = set; + } + + private bool GetMicrocodeBreakpoint(MicrocodeBank bank, UInt16 address) + { + return _microcodeBreakpointEnabled[(int)bank, address]; } private bool GetNovaBreakpoint(UInt16 address) @@ -530,7 +609,7 @@ namespace Contralto { return taskColors[(int)task]; } - } + } private struct SourceLine { @@ -546,7 +625,7 @@ namespace Contralto string[] tokens = sourceText.Split(new char[] { ' ', '\t' }, StringSplitOptions.RemoveEmptyEntries); bool annotated = false; - + // Make the compiler happy Text = sourceText; Address = String.Empty; @@ -557,7 +636,7 @@ namespace Contralto tokens[0].EndsWith(">")) { // Close enough. Look for the task tag and parse out the (octal) address - switch(tokens[0].Substring(0,2)) + switch (tokens[0].Substring(0, 2)) { case "EM": Task = TaskType.Emulator; @@ -604,7 +683,7 @@ namespace Contralto break; default: - Task = TaskType.Invalid; + Task = TaskType.Invalid; break; } @@ -621,16 +700,16 @@ namespace Contralto annotated = false; } - Text = sourceText.Substring(tokens[0].Length + 1, sourceText.Length - tokens[0].Length -1); + Text = sourceText.Substring(tokens[0].Length + 1, sourceText.Length - tokens[0].Length - 1); annotated = true; } else { // We will just display this as a non-source line annotated = false; - } + } } - + if (!annotated) { Text = sourceText; @@ -653,7 +732,7 @@ namespace Contralto private void Debugger_Load(object sender, EventArgs e) { - } + } private void OnJumpAddressKeyDown(object sender, KeyEventArgs e) { @@ -665,7 +744,7 @@ namespace Contralto UInt16 address = Convert.ToUInt16(JumpToAddress.Text, 8); // find the source address that matches this, if any. - RefreshMicrocodeDisassembly(address); + RefreshMicrocodeDisassembly(address); } catch { @@ -697,7 +776,7 @@ namespace Contralto { _execType = ExecutionType.Step; SetExecutionState(ExecutionState.SingleStep); - _controller.StartExecution(AlternateBootType.None); + _controller.StartExecution(AlternateBootType.None); } private void OnAutoStepButtonClicked(object sender, EventArgs e) @@ -719,11 +798,11 @@ namespace Contralto // _execType = ExecutionType.Normal; SetExecutionState(ExecutionState.Running); - _controller.StartExecution(AlternateBootType.None); + _controller.StartExecution(AlternateBootType.None); } private void RunToNextTaskButton_Click(object sender, EventArgs e) - { + { _execType = ExecutionType.NextTask; SetExecutionState(ExecutionState.Running); _controller.StartExecution(AlternateBootType.None); @@ -742,7 +821,7 @@ namespace Contralto _execType = ExecutionType.NextNovaInstruction; SetExecutionState(ExecutionState.Running); _controller.StartExecution(AlternateBootType.None); - + } private void OnStopButtonClicked(object sender, EventArgs e) @@ -750,14 +829,14 @@ namespace Contralto _controller.StopExecution(); Refresh(); } - + private void ResetButton_Click(object sender, EventArgs e) { - _controller.Reset(AlternateBootType.None); + _controller.Reset(AlternateBootType.None); Refresh(); - } - + } + private void OnExecutionError(Exception e) { _lastExceptionText = e.Message; @@ -776,12 +855,12 @@ namespace Contralto this.BeginInvoke(new StepDelegate(Invalidate)); System.Threading.Thread.Sleep(10); return false; /* break always */ - } + } case ExecutionType.Step: - return true; /* break always */ - - case ExecutionType.Normal: + return true; /* break always */ + + case ExecutionType.Normal: case ExecutionType.NextTask: case ExecutionType.NextNovaInstruction: @@ -810,9 +889,9 @@ namespace Contralto _system._novaInst++; } - // See if we need to stop here + // See if we need to stop here if (_execAbort || // The Stop button was hit - _microcodeBreakpointEnabled[(int)UCodeMemory.GetBank(_system.CPU.CurrentTask.TaskType),_system.CPU.CurrentTask.MPC] || // A microcode breakpoint was hit + _microcodeBreakpointEnabled[(int)UCodeMemory.GetBank(_system.CPU.CurrentTask.TaskType), _system.CPU.CurrentTask.MPC] || // A microcode breakpoint was hit (_execType == ExecutionType.NextTask && _system.CPU.NextTask != null && _system.CPU.NextTask != _system.CPU.CurrentTask) || // The next task was switched to @@ -1237,7 +1316,7 @@ namespace Contralto Running, BreakpointStop, InternalError, - } + } private struct ReservedMemoryEntry { @@ -1332,12 +1411,6 @@ namespace Contralto private bool[,] _microcodeBreakpointEnabled; // Nova Debugger breakpoints; same as above - private bool[] _novaBreakpointEnabled; - - private void HackButton_Click(object sender, EventArgs e) - { - //_system.CPU.HAX = true; - Log.Write(Logging.LogComponent.Debug, "***** HACK HIT ******"); - } + private bool[] _novaBreakpointEnabled; } } diff --git a/Contralto/UI/Debugger.resx b/Contralto/UI/Debugger.resx index 29bc6e5..a03a29e 100644 --- a/Contralto/UI/Debugger.resx +++ b/Contralto/UI/Debugger.resx @@ -153,6 +153,30 @@ True + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + True