Merge pull request #651 from alyosha-tas/master

PPU viewer and APU open bus fixes
This commit is contained in:
alyosha-tas 2016-06-26 16:18:55 -04:00 committed by GitHub
commit 0225c89fbb
2 changed files with 154 additions and 110 deletions

View File

@ -127,9 +127,11 @@
this.PatternGroup.Controls.Add(this.Table1PaletteLabel);
this.PatternGroup.Controls.Add(this.Table0PaletteLabel);
this.PatternGroup.Controls.Add(this.PatternView);
this.PatternGroup.Location = new System.Drawing.Point(293, 37);
this.PatternGroup.Location = new System.Drawing.Point(391, 46);
this.PatternGroup.Margin = new System.Windows.Forms.Padding(4);
this.PatternGroup.Name = "PatternGroup";
this.PatternGroup.Size = new System.Drawing.Size(272, 169);
this.PatternGroup.Padding = new System.Windows.Forms.Padding(4);
this.PatternGroup.Size = new System.Drawing.Size(363, 208);
this.PatternGroup.TabIndex = 0;
this.PatternGroup.TabStop = false;
this.PatternGroup.Text = "Pattern Tables";
@ -137,18 +139,20 @@
// Table1PaletteLabel
//
this.Table1PaletteLabel.AutoSize = true;
this.Table1PaletteLabel.Location = new System.Drawing.Point(129, 150);
this.Table1PaletteLabel.Location = new System.Drawing.Point(172, 185);
this.Table1PaletteLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.Table1PaletteLabel.Name = "Table1PaletteLabel";
this.Table1PaletteLabel.Size = new System.Drawing.Size(52, 13);
this.Table1PaletteLabel.Size = new System.Drawing.Size(68, 17);
this.Table1PaletteLabel.TabIndex = 2;
this.Table1PaletteLabel.Text = "Palette: 0";
//
// Table0PaletteLabel
//
this.Table0PaletteLabel.AutoSize = true;
this.Table0PaletteLabel.Location = new System.Drawing.Point(6, 150);
this.Table0PaletteLabel.Location = new System.Drawing.Point(8, 185);
this.Table0PaletteLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.Table0PaletteLabel.Name = "Table0PaletteLabel";
this.Table0PaletteLabel.Size = new System.Drawing.Size(52, 13);
this.Table0PaletteLabel.Size = new System.Drawing.Size(68, 17);
this.Table0PaletteLabel.TabIndex = 1;
this.Table0PaletteLabel.Text = "Palette: 0";
//
@ -156,9 +160,10 @@
//
this.PatternView.BackColor = System.Drawing.Color.Transparent;
this.PatternView.ContextMenuStrip = this.PatternContext;
this.PatternView.Location = new System.Drawing.Point(7, 20);
this.PatternView.Location = new System.Drawing.Point(9, 25);
this.PatternView.Margin = new System.Windows.Forms.Padding(4);
this.PatternView.Name = "PatternView";
this.PatternView.Size = new System.Drawing.Size(256, 128);
this.PatternView.Size = new System.Drawing.Size(341, 158);
this.PatternView.TabIndex = 0;
this.PatternView.Text = "Pattern Tables";
this.PatternView.MouseClick += new System.Windows.Forms.MouseEventHandler(this.PatternView_Click);
@ -168,40 +173,43 @@
//
// PatternContext
//
this.PatternContext.ImageScalingSize = new System.Drawing.Size(20, 20);
this.PatternContext.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.PatternSaveImageMenuItem,
this.PatternImageToClipboardMenuItem,
this.PatternRefreshMenuItem});
this.PatternContext.Name = "PatternContext";
this.PatternContext.Size = new System.Drawing.Size(177, 70);
this.PatternContext.Size = new System.Drawing.Size(215, 82);
//
// PatternSaveImageMenuItem
//
this.PatternSaveImageMenuItem.Name = "PatternSaveImageMenuItem";
this.PatternSaveImageMenuItem.Size = new System.Drawing.Size(176, 22);
this.PatternSaveImageMenuItem.Size = new System.Drawing.Size(214, 26);
this.PatternSaveImageMenuItem.Text = "&Save Image...";
this.PatternSaveImageMenuItem.Click += new System.EventHandler(this.SavePatternScreenshotMenuItem_Click);
//
// PatternImageToClipboardMenuItem
//
this.PatternImageToClipboardMenuItem.Name = "PatternImageToClipboardMenuItem";
this.PatternImageToClipboardMenuItem.Size = new System.Drawing.Size(176, 22);
this.PatternImageToClipboardMenuItem.Size = new System.Drawing.Size(214, 26);
this.PatternImageToClipboardMenuItem.Text = "Image to &Clipboard";
this.PatternImageToClipboardMenuItem.Click += new System.EventHandler(this.CopyPatternToClipboardMenuItem_Click);
//
// PatternRefreshMenuItem
//
this.PatternRefreshMenuItem.Name = "PatternRefreshMenuItem";
this.PatternRefreshMenuItem.Size = new System.Drawing.Size(176, 22);
this.PatternRefreshMenuItem.Size = new System.Drawing.Size(214, 26);
this.PatternRefreshMenuItem.Text = "&Refresh";
this.PatternRefreshMenuItem.Click += new System.EventHandler(this.PatternRefreshMenuItem_Click);
//
// PalettesGroup
//
this.PalettesGroup.Controls.Add(this.PaletteView);
this.PalettesGroup.Location = new System.Drawing.Point(12, 271);
this.PalettesGroup.Location = new System.Drawing.Point(16, 334);
this.PalettesGroup.Margin = new System.Windows.Forms.Padding(4);
this.PalettesGroup.Name = "PalettesGroup";
this.PalettesGroup.Size = new System.Drawing.Size(272, 65);
this.PalettesGroup.Padding = new System.Windows.Forms.Padding(4);
this.PalettesGroup.Size = new System.Drawing.Size(363, 80);
this.PalettesGroup.TabIndex = 1;
this.PalettesGroup.TabStop = false;
this.PalettesGroup.Text = "Palettes";
@ -210,7 +218,8 @@
//
this.PaletteView.BackColor = System.Drawing.Color.Transparent;
this.PaletteView.ContextMenuStrip = this.PaletteContext;
this.PaletteView.Location = new System.Drawing.Point(6, 19);
this.PaletteView.Location = new System.Drawing.Point(8, 23);
this.PaletteView.Margin = new System.Windows.Forms.Padding(4);
this.PaletteView.Name = "PaletteView";
this.PaletteView.Size = new System.Drawing.Size(256, 32);
this.PaletteView.TabIndex = 0;
@ -222,31 +231,32 @@
//
// PaletteContext
//
this.PaletteContext.ImageScalingSize = new System.Drawing.Size(20, 20);
this.PaletteContext.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.PaletteSaveImageMenuItem,
this.PaletteImageToClipboardMenuItem,
this.PaletteRefreshMenuItem});
this.PaletteContext.Name = "PaletteContext";
this.PaletteContext.Size = new System.Drawing.Size(177, 70);
this.PaletteContext.Size = new System.Drawing.Size(215, 82);
//
// PaletteSaveImageMenuItem
//
this.PaletteSaveImageMenuItem.Name = "PaletteSaveImageMenuItem";
this.PaletteSaveImageMenuItem.Size = new System.Drawing.Size(176, 22);
this.PaletteSaveImageMenuItem.Size = new System.Drawing.Size(214, 26);
this.PaletteSaveImageMenuItem.Text = "&Save Image...";
this.PaletteSaveImageMenuItem.Click += new System.EventHandler(this.SavePaletteScreenshotMenuItem_Click);
//
// PaletteImageToClipboardMenuItem
//
this.PaletteImageToClipboardMenuItem.Name = "PaletteImageToClipboardMenuItem";
this.PaletteImageToClipboardMenuItem.Size = new System.Drawing.Size(176, 22);
this.PaletteImageToClipboardMenuItem.Size = new System.Drawing.Size(214, 26);
this.PaletteImageToClipboardMenuItem.Text = "Image to &Clipboard";
this.PaletteImageToClipboardMenuItem.Click += new System.EventHandler(this.CopyPaletteToClipboardMenuItem_Click);
//
// PaletteRefreshMenuItem
//
this.PaletteRefreshMenuItem.Name = "PaletteRefreshMenuItem";
this.PaletteRefreshMenuItem.Size = new System.Drawing.Size(176, 22);
this.PaletteRefreshMenuItem.Size = new System.Drawing.Size(214, 26);
this.PaletteRefreshMenuItem.Text = "&Refresh";
this.PaletteRefreshMenuItem.Click += new System.EventHandler(this.PaletteRefreshMenuItem_Click);
//
@ -261,9 +271,11 @@
this.DetailsBox.Controls.Add(this.Value2Label);
this.DetailsBox.Controls.Add(this.ValueLabel);
this.DetailsBox.Controls.Add(this.AddressLabel);
this.DetailsBox.Location = new System.Drawing.Point(12, 95);
this.DetailsBox.Location = new System.Drawing.Point(16, 117);
this.DetailsBox.Margin = new System.Windows.Forms.Padding(4);
this.DetailsBox.Name = "DetailsBox";
this.DetailsBox.Size = new System.Drawing.Size(272, 170);
this.DetailsBox.Padding = new System.Windows.Forms.Padding(4);
this.DetailsBox.Size = new System.Drawing.Size(363, 209);
this.DetailsBox.TabIndex = 2;
this.DetailsBox.TabStop = false;
this.DetailsBox.Text = "Details";
@ -271,44 +283,49 @@
// label2
//
this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(6, 31);
this.label2.Location = new System.Drawing.Point(8, 38);
this.label2.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(159, 13);
this.label2.Size = new System.Drawing.Size(212, 17);
this.label2.TabIndex = 10;
this.label2.Text = "Shift-click to remember selection";
//
// Value5Label
//
this.Value5Label.AutoSize = true;
this.Value5Label.Location = new System.Drawing.Point(144, 148);
this.Value5Label.Location = new System.Drawing.Point(192, 182);
this.Value5Label.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.Value5Label.Name = "Value5Label";
this.Value5Label.Size = new System.Drawing.Size(43, 13);
this.Value5Label.Size = new System.Drawing.Size(56, 17);
this.Value5Label.TabIndex = 9;
this.Value5Label.Text = "Value 5";
//
// Value4Label
//
this.Value4Label.AutoSize = true;
this.Value4Label.Location = new System.Drawing.Point(144, 120);
this.Value4Label.Location = new System.Drawing.Point(192, 148);
this.Value4Label.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.Value4Label.Name = "Value4Label";
this.Value4Label.Size = new System.Drawing.Size(43, 13);
this.Value4Label.Size = new System.Drawing.Size(56, 17);
this.Value4Label.TabIndex = 8;
this.Value4Label.Text = "Value 4";
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(6, 16);
this.label1.Location = new System.Drawing.Point(8, 20);
this.label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(152, 13);
this.label1.Size = new System.Drawing.Size(200, 17);
this.label1.TabIndex = 7;
this.label1.Text = "Hover over item to view details";
//
// ZoomBox
//
this.ZoomBox.Location = new System.Drawing.Point(196, 16);
this.ZoomBox.Location = new System.Drawing.Point(261, 20);
this.ZoomBox.Margin = new System.Windows.Forms.Padding(4);
this.ZoomBox.Name = "ZoomBox";
this.ZoomBox.Size = new System.Drawing.Size(64, 64);
this.ZoomBox.Size = new System.Drawing.Size(85, 79);
this.ZoomBox.TabIndex = 6;
this.ZoomBox.TabStop = false;
this.ZoomBox.Text = "Details";
@ -316,45 +333,51 @@
// Value3Label
//
this.Value3Label.AutoSize = true;
this.Value3Label.Location = new System.Drawing.Point(144, 92);
this.Value3Label.Location = new System.Drawing.Point(192, 113);
this.Value3Label.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.Value3Label.Name = "Value3Label";
this.Value3Label.Size = new System.Drawing.Size(43, 13);
this.Value3Label.Size = new System.Drawing.Size(56, 17);
this.Value3Label.TabIndex = 5;
this.Value3Label.Text = "Value 3";
//
// Value2Label
//
this.Value2Label.AutoSize = true;
this.Value2Label.Location = new System.Drawing.Point(10, 148);
this.Value2Label.Location = new System.Drawing.Point(13, 182);
this.Value2Label.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.Value2Label.Name = "Value2Label";
this.Value2Label.Size = new System.Drawing.Size(43, 13);
this.Value2Label.Size = new System.Drawing.Size(56, 17);
this.Value2Label.TabIndex = 3;
this.Value2Label.Text = "Value 2";
//
// ValueLabel
//
this.ValueLabel.AutoSize = true;
this.ValueLabel.Location = new System.Drawing.Point(10, 120);
this.ValueLabel.Location = new System.Drawing.Point(13, 148);
this.ValueLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.ValueLabel.Name = "ValueLabel";
this.ValueLabel.Size = new System.Drawing.Size(43, 13);
this.ValueLabel.Size = new System.Drawing.Size(56, 17);
this.ValueLabel.TabIndex = 2;
this.ValueLabel.Text = "Value 1";
//
// AddressLabel
//
this.AddressLabel.AutoSize = true;
this.AddressLabel.Location = new System.Drawing.Point(10, 92);
this.AddressLabel.Location = new System.Drawing.Point(13, 113);
this.AddressLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.AddressLabel.Name = "AddressLabel";
this.AddressLabel.Size = new System.Drawing.Size(45, 13);
this.AddressLabel.Size = new System.Drawing.Size(60, 17);
this.AddressLabel.TabIndex = 1;
this.AddressLabel.Text = "Address";
//
// SpriteViewerBox
//
this.SpriteViewerBox.Controls.Add(this.SpriteView);
this.SpriteViewerBox.Location = new System.Drawing.Point(293, 212);
this.SpriteViewerBox.Location = new System.Drawing.Point(391, 261);
this.SpriteViewerBox.Margin = new System.Windows.Forms.Padding(4);
this.SpriteViewerBox.Name = "SpriteViewerBox";
this.SpriteViewerBox.Size = new System.Drawing.Size(272, 124);
this.SpriteViewerBox.Padding = new System.Windows.Forms.Padding(4);
this.SpriteViewerBox.Size = new System.Drawing.Size(363, 153);
this.SpriteViewerBox.TabIndex = 5;
this.SpriteViewerBox.TabStop = false;
this.SpriteViewerBox.Text = "Sprites";
@ -363,9 +386,10 @@
//
this.SpriteView.BackColor = System.Drawing.Color.Transparent;
this.SpriteView.ContextMenuStrip = this.SpriteContext;
this.SpriteView.Location = new System.Drawing.Point(6, 18);
this.SpriteView.Location = new System.Drawing.Point(8, 22);
this.SpriteView.Margin = new System.Windows.Forms.Padding(4);
this.SpriteView.Name = "SpriteView";
this.SpriteView.Size = new System.Drawing.Size(256, 96);
this.SpriteView.Size = new System.Drawing.Size(256, 90);
this.SpriteView.TabIndex = 0;
this.SpriteView.Text = "Sprites";
this.SpriteView.MouseClick += new System.Windows.Forms.MouseEventHandler(this.SpriteView_MouseClick);
@ -375,39 +399,41 @@
//
// SpriteContext
//
this.SpriteContext.ImageScalingSize = new System.Drawing.Size(20, 20);
this.SpriteContext.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.SpriteSaveImageMenuItem,
this.SpriteImageToClipboardMenuItem,
this.SpriteRefreshMenuItem});
this.SpriteContext.Name = "SpriteContext";
this.SpriteContext.Size = new System.Drawing.Size(177, 70);
this.SpriteContext.Size = new System.Drawing.Size(215, 82);
//
// SpriteSaveImageMenuItem
//
this.SpriteSaveImageMenuItem.Name = "SpriteSaveImageMenuItem";
this.SpriteSaveImageMenuItem.Size = new System.Drawing.Size(176, 22);
this.SpriteSaveImageMenuItem.Size = new System.Drawing.Size(214, 26);
this.SpriteSaveImageMenuItem.Text = "&Save Image...";
this.SpriteSaveImageMenuItem.Click += new System.EventHandler(this.SaveSpriteScreenshotMenuItem_Click);
//
// SpriteImageToClipboardMenuItem
//
this.SpriteImageToClipboardMenuItem.Name = "SpriteImageToClipboardMenuItem";
this.SpriteImageToClipboardMenuItem.Size = new System.Drawing.Size(176, 22);
this.SpriteImageToClipboardMenuItem.Size = new System.Drawing.Size(214, 26);
this.SpriteImageToClipboardMenuItem.Text = "Image to &Clipboard";
this.SpriteImageToClipboardMenuItem.Click += new System.EventHandler(this.CopySpriteToClipboardMenuItem_Click);
//
// SpriteRefreshMenuItem
//
this.SpriteRefreshMenuItem.Name = "SpriteRefreshMenuItem";
this.SpriteRefreshMenuItem.Size = new System.Drawing.Size(176, 22);
this.SpriteRefreshMenuItem.Size = new System.Drawing.Size(214, 26);
this.SpriteRefreshMenuItem.Text = "&Refresh";
this.SpriteRefreshMenuItem.Click += new System.EventHandler(this.SpriteRefreshMenuItem_Click);
//
// txtScanline
//
this.txtScanline.Location = new System.Drawing.Point(7, 16);
this.txtScanline.Location = new System.Drawing.Point(9, 20);
this.txtScanline.Margin = new System.Windows.Forms.Padding(4);
this.txtScanline.Name = "txtScanline";
this.txtScanline.Size = new System.Drawing.Size(60, 20);
this.txtScanline.Size = new System.Drawing.Size(79, 22);
this.txtScanline.TabIndex = 6;
this.txtScanline.Text = "0";
this.txtScanline.TextChanged += new System.EventHandler(this.ScanlineTextbox_TextChanged);
@ -415,9 +441,11 @@
// groupBox1
//
this.groupBox1.Controls.Add(this.txtScanline);
this.groupBox1.Location = new System.Drawing.Point(12, 37);
this.groupBox1.Location = new System.Drawing.Point(16, 46);
this.groupBox1.Margin = new System.Windows.Forms.Padding(4);
this.groupBox1.Name = "groupBox1";
this.groupBox1.Size = new System.Drawing.Size(75, 52);
this.groupBox1.Padding = new System.Windows.Forms.Padding(4);
this.groupBox1.Size = new System.Drawing.Size(100, 64);
this.groupBox1.TabIndex = 8;
this.groupBox1.TabStop = false;
this.groupBox1.Text = "Scanline";
@ -427,9 +455,11 @@
this.groupBox2.Controls.Add(this.label4);
this.groupBox2.Controls.Add(this.label3);
this.groupBox2.Controls.Add(this.RefreshRate);
this.groupBox2.Location = new System.Drawing.Point(93, 37);
this.groupBox2.Location = new System.Drawing.Point(124, 46);
this.groupBox2.Margin = new System.Windows.Forms.Padding(4);
this.groupBox2.Name = "groupBox2";
this.groupBox2.Size = new System.Drawing.Size(191, 52);
this.groupBox2.Padding = new System.Windows.Forms.Padding(4);
this.groupBox2.Size = new System.Drawing.Size(255, 64);
this.groupBox2.TabIndex = 9;
this.groupBox2.TabStop = false;
this.groupBox2.Text = "Refresh";
@ -437,18 +467,20 @@
// label4
//
this.label4.AutoSize = true;
this.label4.Location = new System.Drawing.Point(140, 20);
this.label4.Location = new System.Drawing.Point(187, 25);
this.label4.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(29, 13);
this.label4.Size = new System.Drawing.Size(38, 17);
this.label4.TabIndex = 11;
this.label4.Text = "Less";
//
// label3
//
this.label3.AutoSize = true;
this.label3.Location = new System.Drawing.Point(6, 19);
this.label3.Location = new System.Drawing.Point(8, 23);
this.label3.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(31, 13);
this.label3.Size = new System.Drawing.Size(40, 17);
this.label3.TabIndex = 10;
this.label3.Text = "More";
//
@ -456,11 +488,12 @@
//
this.RefreshRate.AutoSize = false;
this.RefreshRate.LargeChange = 2;
this.RefreshRate.Location = new System.Drawing.Point(39, 15);
this.RefreshRate.Location = new System.Drawing.Point(52, 18);
this.RefreshRate.Margin = new System.Windows.Forms.Padding(4);
this.RefreshRate.Maximum = 8;
this.RefreshRate.Minimum = 1;
this.RefreshRate.Name = "RefreshRate";
this.RefreshRate.Size = new System.Drawing.Size(104, 31);
this.RefreshRate.Size = new System.Drawing.Size(139, 38);
this.RefreshRate.TabIndex = 0;
this.RefreshRate.TickFrequency = 8;
this.RefreshRate.Value = 1;
@ -468,13 +501,15 @@
// NesPPUMenu
//
this.NesPPUMenu.ClickThrough = true;
this.NesPPUMenu.ImageScalingSize = new System.Drawing.Size(20, 20);
this.NesPPUMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.FileSubMenu,
this.PatternSubMenu,
this.SettingsSubMenu});
this.NesPPUMenu.Location = new System.Drawing.Point(0, 0);
this.NesPPUMenu.Name = "NesPPUMenu";
this.NesPPUMenu.Size = new System.Drawing.Size(854, 24);
this.NesPPUMenu.Padding = new System.Windows.Forms.Padding(8, 2, 0, 2);
this.NesPPUMenu.Size = new System.Drawing.Size(1139, 28);
this.NesPPUMenu.TabIndex = 10;
this.NesPPUMenu.Text = "menuStrip1";
//
@ -491,65 +526,65 @@
this.toolStripSeparator2,
this.ExitMenuItem});
this.FileSubMenu.Name = "FileSubMenu";
this.FileSubMenu.Size = new System.Drawing.Size(37, 20);
this.FileSubMenu.Size = new System.Drawing.Size(44, 24);
this.FileSubMenu.Text = "&File";
//
// SavePaletteScreenshotMenuItem
//
this.SavePaletteScreenshotMenuItem.Name = "SavePaletteScreenshotMenuItem";
this.SavePaletteScreenshotMenuItem.Size = new System.Drawing.Size(212, 22);
this.SavePaletteScreenshotMenuItem.Size = new System.Drawing.Size(256, 26);
this.SavePaletteScreenshotMenuItem.Text = "Save Palette Screenshot...";
this.SavePaletteScreenshotMenuItem.Click += new System.EventHandler(this.SavePaletteScreenshotMenuItem_Click);
//
// SavePatternScreenshotMenuItem
//
this.SavePatternScreenshotMenuItem.Name = "SavePatternScreenshotMenuItem";
this.SavePatternScreenshotMenuItem.Size = new System.Drawing.Size(212, 22);
this.SavePatternScreenshotMenuItem.Size = new System.Drawing.Size(256, 26);
this.SavePatternScreenshotMenuItem.Text = "Save Pattern Screenshot...";
this.SavePatternScreenshotMenuItem.Click += new System.EventHandler(this.SavePatternScreenshotMenuItem_Click);
//
// SaveSpriteScreenshotMenuItem
//
this.SaveSpriteScreenshotMenuItem.Name = "SaveSpriteScreenshotMenuItem";
this.SaveSpriteScreenshotMenuItem.Size = new System.Drawing.Size(212, 22);
this.SaveSpriteScreenshotMenuItem.Size = new System.Drawing.Size(256, 26);
this.SaveSpriteScreenshotMenuItem.Text = "Save Sprite Screenshot...";
this.SaveSpriteScreenshotMenuItem.Click += new System.EventHandler(this.SaveSpriteScreenshotMenuItem_Click);
//
// toolStripSeparator1
//
this.toolStripSeparator1.Name = "toolStripSeparator1";
this.toolStripSeparator1.Size = new System.Drawing.Size(209, 6);
this.toolStripSeparator1.Size = new System.Drawing.Size(253, 6);
//
// CopyPaletteToClipboardMenuItem
//
this.CopyPaletteToClipboardMenuItem.Name = "CopyPaletteToClipboardMenuItem";
this.CopyPaletteToClipboardMenuItem.Size = new System.Drawing.Size(212, 22);
this.CopyPaletteToClipboardMenuItem.Size = new System.Drawing.Size(256, 26);
this.CopyPaletteToClipboardMenuItem.Text = "Copy Palette to Clipboard";
this.CopyPaletteToClipboardMenuItem.Click += new System.EventHandler(this.CopyPaletteToClipboardMenuItem_Click);
//
// CopyPatternToClipboardMenuItem
//
this.CopyPatternToClipboardMenuItem.Name = "CopyPatternToClipboardMenuItem";
this.CopyPatternToClipboardMenuItem.Size = new System.Drawing.Size(212, 22);
this.CopyPatternToClipboardMenuItem.Size = new System.Drawing.Size(256, 26);
this.CopyPatternToClipboardMenuItem.Text = "Copy Pattern to Clipboard";
this.CopyPatternToClipboardMenuItem.Click += new System.EventHandler(this.CopyPatternToClipboardMenuItem_Click);
//
// CopySpriteToClipboardMenuItem
//
this.CopySpriteToClipboardMenuItem.Name = "CopySpriteToClipboardMenuItem";
this.CopySpriteToClipboardMenuItem.Size = new System.Drawing.Size(212, 22);
this.CopySpriteToClipboardMenuItem.Size = new System.Drawing.Size(256, 26);
this.CopySpriteToClipboardMenuItem.Text = "Copy Sprite to Clipboard";
this.CopySpriteToClipboardMenuItem.Click += new System.EventHandler(this.CopySpriteToClipboardMenuItem_Click);
//
// toolStripSeparator2
//
this.toolStripSeparator2.Name = "toolStripSeparator2";
this.toolStripSeparator2.Size = new System.Drawing.Size(209, 6);
this.toolStripSeparator2.Size = new System.Drawing.Size(253, 6);
//
// ExitMenuItem
//
this.ExitMenuItem.Name = "ExitMenuItem";
this.ExitMenuItem.Size = new System.Drawing.Size(212, 22);
this.ExitMenuItem.Size = new System.Drawing.Size(256, 26);
this.ExitMenuItem.Text = "E&xit";
this.ExitMenuItem.Click += new System.EventHandler(this.ExitMenuItem_Click);
//
@ -559,7 +594,7 @@
this.Table0PaletteSubMenu,
this.Table1PaletteSubMenu});
this.PatternSubMenu.Name = "PatternSubMenu";
this.PatternSubMenu.Size = new System.Drawing.Size(57, 20);
this.PatternSubMenu.Size = new System.Drawing.Size(67, 24);
this.PatternSubMenu.Text = "&Pattern";
//
// Table0PaletteSubMenu
@ -574,63 +609,63 @@
this.Table0P6MenuItem,
this.Table0P7MenuItem});
this.Table0PaletteSubMenu.Name = "Table0PaletteSubMenu";
this.Table0PaletteSubMenu.Size = new System.Drawing.Size(151, 22);
this.Table0PaletteSubMenu.Size = new System.Drawing.Size(180, 26);
this.Table0PaletteSubMenu.Text = "Table 0 Palette";
this.Table0PaletteSubMenu.DropDownOpened += new System.EventHandler(this.Table0PaletteSubMenu_DropDownOpened);
//
// Table0P0MenuItem
//
this.Table0P0MenuItem.Name = "Table0P0MenuItem";
this.Table0P0MenuItem.Size = new System.Drawing.Size(80, 22);
this.Table0P0MenuItem.Size = new System.Drawing.Size(92, 26);
this.Table0P0MenuItem.Text = "0";
this.Table0P0MenuItem.Click += new System.EventHandler(this.Palette_Click);
//
// Table0P1MenuItem
//
this.Table0P1MenuItem.Name = "Table0P1MenuItem";
this.Table0P1MenuItem.Size = new System.Drawing.Size(80, 22);
this.Table0P1MenuItem.Size = new System.Drawing.Size(92, 26);
this.Table0P1MenuItem.Text = "1";
this.Table0P1MenuItem.Click += new System.EventHandler(this.Palette_Click);
//
// Table0P2MenuItem
//
this.Table0P2MenuItem.Name = "Table0P2MenuItem";
this.Table0P2MenuItem.Size = new System.Drawing.Size(80, 22);
this.Table0P2MenuItem.Size = new System.Drawing.Size(92, 26);
this.Table0P2MenuItem.Text = "2";
this.Table0P2MenuItem.Click += new System.EventHandler(this.Palette_Click);
//
// Table0P3MenuItem
//
this.Table0P3MenuItem.Name = "Table0P3MenuItem";
this.Table0P3MenuItem.Size = new System.Drawing.Size(80, 22);
this.Table0P3MenuItem.Size = new System.Drawing.Size(92, 26);
this.Table0P3MenuItem.Text = "3";
this.Table0P3MenuItem.Click += new System.EventHandler(this.Palette_Click);
//
// Table0P4MenuItem
//
this.Table0P4MenuItem.Name = "Table0P4MenuItem";
this.Table0P4MenuItem.Size = new System.Drawing.Size(80, 22);
this.Table0P4MenuItem.Size = new System.Drawing.Size(92, 26);
this.Table0P4MenuItem.Text = "4";
this.Table0P4MenuItem.Click += new System.EventHandler(this.Palette_Click);
//
// Table0P5MenuItem
//
this.Table0P5MenuItem.Name = "Table0P5MenuItem";
this.Table0P5MenuItem.Size = new System.Drawing.Size(80, 22);
this.Table0P5MenuItem.Size = new System.Drawing.Size(92, 26);
this.Table0P5MenuItem.Text = "5";
this.Table0P5MenuItem.Click += new System.EventHandler(this.Palette_Click);
//
// Table0P6MenuItem
//
this.Table0P6MenuItem.Name = "Table0P6MenuItem";
this.Table0P6MenuItem.Size = new System.Drawing.Size(80, 22);
this.Table0P6MenuItem.Size = new System.Drawing.Size(92, 26);
this.Table0P6MenuItem.Text = "6";
this.Table0P6MenuItem.Click += new System.EventHandler(this.Palette_Click);
//
// Table0P7MenuItem
//
this.Table0P7MenuItem.Name = "Table0P7MenuItem";
this.Table0P7MenuItem.Size = new System.Drawing.Size(80, 22);
this.Table0P7MenuItem.Size = new System.Drawing.Size(92, 26);
this.Table0P7MenuItem.Text = "7";
this.Table0P7MenuItem.Click += new System.EventHandler(this.Palette_Click);
//
@ -646,63 +681,63 @@
this.Table1P6MenuItem,
this.Table1P7MenuItem});
this.Table1PaletteSubMenu.Name = "Table1PaletteSubMenu";
this.Table1PaletteSubMenu.Size = new System.Drawing.Size(151, 22);
this.Table1PaletteSubMenu.Size = new System.Drawing.Size(180, 26);
this.Table1PaletteSubMenu.Text = "Table 1 Palette";
this.Table1PaletteSubMenu.DropDownOpened += new System.EventHandler(this.Table1PaletteSubMenu_DropDownOpened);
//
// Table1P0MenuItem
//
this.Table1P0MenuItem.Name = "Table1P0MenuItem";
this.Table1P0MenuItem.Size = new System.Drawing.Size(80, 22);
this.Table1P0MenuItem.Size = new System.Drawing.Size(92, 26);
this.Table1P0MenuItem.Text = "0";
this.Table1P0MenuItem.Click += new System.EventHandler(this.Palette_Click);
//
// Table1P1MenuItem
//
this.Table1P1MenuItem.Name = "Table1P1MenuItem";
this.Table1P1MenuItem.Size = new System.Drawing.Size(80, 22);
this.Table1P1MenuItem.Size = new System.Drawing.Size(92, 26);
this.Table1P1MenuItem.Text = "1";
this.Table1P1MenuItem.Click += new System.EventHandler(this.Palette_Click);
//
// Table1P2MenuItem
//
this.Table1P2MenuItem.Name = "Table1P2MenuItem";
this.Table1P2MenuItem.Size = new System.Drawing.Size(80, 22);
this.Table1P2MenuItem.Size = new System.Drawing.Size(92, 26);
this.Table1P2MenuItem.Text = "2";
this.Table1P2MenuItem.Click += new System.EventHandler(this.Palette_Click);
//
// Table1P3MenuItem
//
this.Table1P3MenuItem.Name = "Table1P3MenuItem";
this.Table1P3MenuItem.Size = new System.Drawing.Size(80, 22);
this.Table1P3MenuItem.Size = new System.Drawing.Size(92, 26);
this.Table1P3MenuItem.Text = "3";
this.Table1P3MenuItem.Click += new System.EventHandler(this.Palette_Click);
//
// Table1P4MenuItem
//
this.Table1P4MenuItem.Name = "Table1P4MenuItem";
this.Table1P4MenuItem.Size = new System.Drawing.Size(80, 22);
this.Table1P4MenuItem.Size = new System.Drawing.Size(92, 26);
this.Table1P4MenuItem.Text = "4";
this.Table1P4MenuItem.Click += new System.EventHandler(this.Palette_Click);
//
// Table1P5MenuItem
//
this.Table1P5MenuItem.Name = "Table1P5MenuItem";
this.Table1P5MenuItem.Size = new System.Drawing.Size(80, 22);
this.Table1P5MenuItem.Size = new System.Drawing.Size(92, 26);
this.Table1P5MenuItem.Text = "5";
this.Table1P5MenuItem.Click += new System.EventHandler(this.Palette_Click);
//
// Table1P6MenuItem
//
this.Table1P6MenuItem.Name = "Table1P6MenuItem";
this.Table1P6MenuItem.Size = new System.Drawing.Size(80, 22);
this.Table1P6MenuItem.Size = new System.Drawing.Size(92, 26);
this.Table1P6MenuItem.Text = "6";
this.Table1P6MenuItem.Click += new System.EventHandler(this.Palette_Click);
//
// Table1P7MenuItem
//
this.Table1P7MenuItem.Name = "Table1P7MenuItem";
this.Table1P7MenuItem.Size = new System.Drawing.Size(80, 22);
this.Table1P7MenuItem.Size = new System.Drawing.Size(92, 26);
this.Table1P7MenuItem.Text = "7";
this.Table1P7MenuItem.Click += new System.EventHandler(this.Palette_Click);
//
@ -711,25 +746,27 @@
this.SettingsSubMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.cHRROMTileViewerToolStripMenuItem});
this.SettingsSubMenu.Name = "SettingsSubMenu";
this.SettingsSubMenu.Size = new System.Drawing.Size(61, 20);
this.SettingsSubMenu.Size = new System.Drawing.Size(74, 24);
this.SettingsSubMenu.Text = "&Settings";
this.SettingsSubMenu.DropDownOpened += new System.EventHandler(this.SettingsSubMenu_DropDownOpened);
//
// cHRROMTileViewerToolStripMenuItem
//
this.cHRROMTileViewerToolStripMenuItem.Name = "cHRROMTileViewerToolStripMenuItem";
this.cHRROMTileViewerToolStripMenuItem.Size = new System.Drawing.Size(188, 22);
this.cHRROMTileViewerToolStripMenuItem.Size = new System.Drawing.Size(227, 26);
this.cHRROMTileViewerToolStripMenuItem.Text = "CHR ROM Tile Viewer";
this.cHRROMTileViewerToolStripMenuItem.Click += new System.EventHandler(this.cHRROMTileViewerToolStripMenuItem_Click);
//
// NesPPUStatusBar
//
this.NesPPUStatusBar.ClickThrough = true;
this.NesPPUStatusBar.ImageScalingSize = new System.Drawing.Size(20, 20);
this.NesPPUStatusBar.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.toolStripStatusLabel1});
this.NesPPUStatusBar.Location = new System.Drawing.Point(0, 349);
this.NesPPUStatusBar.Location = new System.Drawing.Point(0, 432);
this.NesPPUStatusBar.Name = "NesPPUStatusBar";
this.NesPPUStatusBar.Size = new System.Drawing.Size(854, 22);
this.NesPPUStatusBar.Padding = new System.Windows.Forms.Padding(1, 0, 19, 0);
this.NesPPUStatusBar.Size = new System.Drawing.Size(1139, 25);
this.NesPPUStatusBar.SizingGrip = false;
this.NesPPUStatusBar.TabIndex = 11;
this.NesPPUStatusBar.Text = "statusStrip1";
@ -737,7 +774,7 @@
// toolStripStatusLabel1
//
this.toolStripStatusLabel1.Name = "toolStripStatusLabel1";
this.toolStripStatusLabel1.Size = new System.Drawing.Size(348, 17);
this.toolStripStatusLabel1.Size = new System.Drawing.Size(434, 20);
this.toolStripStatusLabel1.Text = "Use CTRL+C to copy the pane under the mouse to the clipboard.";
//
// Messagetimer
@ -750,9 +787,11 @@
this.CHRROMGroup.Controls.Add(this.label5);
this.CHRROMGroup.Controls.Add(this.numericUpDownCHRROMBank);
this.CHRROMGroup.Controls.Add(this.CHRROMView);
this.CHRROMGroup.Location = new System.Drawing.Point(574, 37);
this.CHRROMGroup.Location = new System.Drawing.Point(765, 46);
this.CHRROMGroup.Margin = new System.Windows.Forms.Padding(4);
this.CHRROMGroup.Name = "CHRROMGroup";
this.CHRROMGroup.Size = new System.Drawing.Size(272, 299);
this.CHRROMGroup.Padding = new System.Windows.Forms.Padding(4);
this.CHRROMGroup.Size = new System.Drawing.Size(363, 368);
this.CHRROMGroup.TabIndex = 12;
this.CHRROMGroup.TabStop = false;
this.CHRROMGroup.Text = "CHR ROM Tiles";
@ -760,34 +799,37 @@
// label5
//
this.label5.AutoSize = true;
this.label5.Location = new System.Drawing.Point(6, 156);
this.label5.Location = new System.Drawing.Point(8, 192);
this.label5.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
this.label5.Name = "label5";
this.label5.Size = new System.Drawing.Size(35, 13);
this.label5.Size = new System.Drawing.Size(44, 17);
this.label5.TabIndex = 2;
this.label5.Text = "Bank:";
//
// numericUpDownCHRROMBank
//
this.numericUpDownCHRROMBank.Location = new System.Drawing.Point(47, 154);
this.numericUpDownCHRROMBank.Location = new System.Drawing.Point(63, 190);
this.numericUpDownCHRROMBank.Margin = new System.Windows.Forms.Padding(4);
this.numericUpDownCHRROMBank.Name = "numericUpDownCHRROMBank";
this.numericUpDownCHRROMBank.Size = new System.Drawing.Size(120, 20);
this.numericUpDownCHRROMBank.Size = new System.Drawing.Size(160, 22);
this.numericUpDownCHRROMBank.TabIndex = 1;
this.numericUpDownCHRROMBank.ValueChanged += new System.EventHandler(this.numericUpDownCHRROMBank_ValueChanged);
//
// CHRROMView
//
this.CHRROMView.BackColor = System.Drawing.Color.Transparent;
this.CHRROMView.Location = new System.Drawing.Point(7, 20);
this.CHRROMView.Location = new System.Drawing.Point(9, 25);
this.CHRROMView.Margin = new System.Windows.Forms.Padding(4);
this.CHRROMView.Name = "CHRROMView";
this.CHRROMView.Size = new System.Drawing.Size(256, 128);
this.CHRROMView.Size = new System.Drawing.Size(341, 158);
this.CHRROMView.TabIndex = 0;
this.CHRROMView.Text = "patternViewer1";
//
// NesPPU
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(854, 371);
this.ClientSize = new System.Drawing.Size(1139, 457);
this.Controls.Add(this.CHRROMGroup);
this.Controls.Add(this.NesPPUStatusBar);
this.Controls.Add(this.groupBox2);
@ -801,7 +843,8 @@
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.KeyPreview = true;
this.MainMenuStrip = this.NesPPUMenu;
this.MinimumSize = new System.Drawing.Size(580, 370);
this.Margin = new System.Windows.Forms.Padding(4);
this.MinimumSize = new System.Drawing.Size(767, 445);
this.Name = "NesPPU";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "PPU Viewer";

View File

@ -25,6 +25,7 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES
internal INESBoard Board; //the board hardware that is currently driving things
EDetectionOrigin origin = EDetectionOrigin.None;
int sprdma_countdown;
bool _irq_apu; //various irq signals that get merged to the cpu irq pin
/// <summary>clock speed of the main cpu in hz</summary>
public int cpuclockrate { get; private set; }
@ -365,9 +366,10 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES
case 0x4008: case 0x4009: case 0x400A: case 0x400B:
case 0x400C: case 0x400D: case 0x400E: case 0x400F:
case 0x4010: case 0x4011: case 0x4012: case 0x4013:
return apu.ReadReg(addr);
return DB;
//return apu.ReadReg(addr);
case 0x4014: /*OAM DMA*/ break;
case 0x4015: return apu.ReadReg(addr);
case 0x4015: return (byte)((byte)(apu.ReadReg(addr) & 0xCF) + (byte)(DB&0x20));
case 0x4016:
case 0x4017:
return read_joyport(addr);
@ -376,7 +378,7 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES
break;
}
return 0xFF;
return DB;
}
public byte PeekReg(int addr)
@ -591,7 +593,7 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES
}
else if (addr < 0x4020)
{
ret = ReadReg(addr); //we're not rebasing the register just to keep register names canonical
ret = ReadReg(addr); //we're not rebasing the register just to keep register names canonical
}
else if (addr < 0x6000)
{
@ -614,7 +616,6 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES
MemoryCallbacks.CallReads(addr);
DB = ret;
return ret;
}