diff --git a/BizHawk.Client.Common/config/Config.cs b/BizHawk.Client.Common/config/Config.cs index f3e34b79d1..2918938e37 100644 --- a/BizHawk.Client.Common/config/Config.cs +++ b/BizHawk.Client.Common/config/Config.cs @@ -353,6 +353,10 @@ namespace BizHawk.Client.Common public ToolDialogSettings PceVdpSettings = new ToolDialogSettings(); public bool PceVdpAutoLoad = false; + // Genesis VDP Viewer Settings + public ToolDialogSettings GenVdpSettings = new ToolDialogSettings(); + public bool GenVdpAutoLoad = false; + // NESPPU Settings public ToolDialogSettings NesPPUSettings = new ToolDialogSettings(); public bool AutoLoadNESPPU = false; diff --git a/BizHawk.Client.EmuHawk/MainForm.Designer.cs b/BizHawk.Client.EmuHawk/MainForm.Designer.cs index dd13dde9ed..c239906844 100644 --- a/BizHawk.Client.EmuHawk/MainForm.Designer.cs +++ b/BizHawk.Client.EmuHawk/MainForm.Designer.cs @@ -293,8 +293,9 @@ this.DGBSubMenu = new System.Windows.Forms.ToolStripMenuItem(); this.DGBsettingsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.GenesisSubMenu = new System.Windows.Forms.ToolStripMenuItem(); - this.GenesisSettingsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.vDPViewerToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripSeparator26 = new System.Windows.Forms.ToolStripSeparator(); + this.GenesisSettingsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.HelpSubMenu = new System.Windows.Forms.ToolStripMenuItem(); this.OnlineHelpMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.ForumsMenuItem = new System.Windows.Forms.ToolStripMenuItem(); @@ -387,7 +388,7 @@ this.MainformMenu.LayoutStyle = System.Windows.Forms.ToolStripLayoutStyle.Flow; this.MainformMenu.Location = new System.Drawing.Point(0, 0); this.MainformMenu.Name = "MainformMenu"; - this.MainformMenu.Size = new System.Drawing.Size(470, 61); + this.MainformMenu.Size = new System.Drawing.Size(470, 42); this.MainformMenu.TabIndex = 0; this.MainformMenu.Text = "menuStrip1"; this.MainformMenu.MenuActivate += new System.EventHandler(this.MainformMenu_MenuActivate); @@ -1964,6 +1965,7 @@ // // NESGraphicSettingsMenuItem // + this.NESGraphicSettingsMenuItem.Image = global::BizHawk.Client.EmuHawk.Properties.Resources.tvIcon; this.NESGraphicSettingsMenuItem.Name = "NESGraphicSettingsMenuItem"; this.NESGraphicSettingsMenuItem.Size = new System.Drawing.Size(233, 22); this.NESGraphicSettingsMenuItem.Text = "Graphics Settings"; @@ -1971,6 +1973,7 @@ // // NESSoundChannelsMenuItem // + this.NESSoundChannelsMenuItem.Image = global::BizHawk.Client.EmuHawk.Properties.Resources.AudioHS; this.NESSoundChannelsMenuItem.Name = "NESSoundChannelsMenuItem"; this.NESSoundChannelsMenuItem.Size = new System.Drawing.Size(233, 22); this.NESSoundChannelsMenuItem.Text = "Sound Channels"; @@ -2105,21 +2108,21 @@ // SMSregionExportToolStripMenuItem // this.SMSregionExportToolStripMenuItem.Name = "SMSregionExportToolStripMenuItem"; - this.SMSregionExportToolStripMenuItem.Size = new System.Drawing.Size(152, 22); + this.SMSregionExportToolStripMenuItem.Size = new System.Drawing.Size(107, 22); this.SMSregionExportToolStripMenuItem.Text = "Export"; this.SMSregionExportToolStripMenuItem.Click += new System.EventHandler(this.SMS_RegionExport_Click); // // SMSregionJapanToolStripMenuItem // this.SMSregionJapanToolStripMenuItem.Name = "SMSregionJapanToolStripMenuItem"; - this.SMSregionJapanToolStripMenuItem.Size = new System.Drawing.Size(152, 22); + this.SMSregionJapanToolStripMenuItem.Size = new System.Drawing.Size(107, 22); this.SMSregionJapanToolStripMenuItem.Text = "Japan"; this.SMSregionJapanToolStripMenuItem.Click += new System.EventHandler(this.SMS_RegionJapan_Click); // // SMSregionAutoToolStripMenuItem // this.SMSregionAutoToolStripMenuItem.Name = "SMSregionAutoToolStripMenuItem"; - this.SMSregionAutoToolStripMenuItem.Size = new System.Drawing.Size(152, 22); + this.SMSregionAutoToolStripMenuItem.Size = new System.Drawing.Size(107, 22); this.SMSregionAutoToolStripMenuItem.Text = "Auto"; this.SMSregionAutoToolStripMenuItem.Click += new System.EventHandler(this.SMS_RegionAuto_Click); // @@ -2136,21 +2139,21 @@ // SMSdisplayNtscToolStripMenuItem // this.SMSdisplayNtscToolStripMenuItem.Name = "SMSdisplayNtscToolStripMenuItem"; - this.SMSdisplayNtscToolStripMenuItem.Size = new System.Drawing.Size(152, 22); + this.SMSdisplayNtscToolStripMenuItem.Size = new System.Drawing.Size(104, 22); this.SMSdisplayNtscToolStripMenuItem.Text = "NTSC"; this.SMSdisplayNtscToolStripMenuItem.Click += new System.EventHandler(this.SMS_DisplayNTSC_Click); // // SMSdisplayPalToolStripMenuItem // this.SMSdisplayPalToolStripMenuItem.Name = "SMSdisplayPalToolStripMenuItem"; - this.SMSdisplayPalToolStripMenuItem.Size = new System.Drawing.Size(152, 22); + this.SMSdisplayPalToolStripMenuItem.Size = new System.Drawing.Size(104, 22); this.SMSdisplayPalToolStripMenuItem.Text = "PAL"; this.SMSdisplayPalToolStripMenuItem.Click += new System.EventHandler(this.SMS_DisplayPAL_Click); // // SMSdisplayAutoToolStripMenuItem // this.SMSdisplayAutoToolStripMenuItem.Name = "SMSdisplayAutoToolStripMenuItem"; - this.SMSdisplayAutoToolStripMenuItem.Size = new System.Drawing.Size(152, 22); + this.SMSdisplayAutoToolStripMenuItem.Size = new System.Drawing.Size(104, 22); this.SMSdisplayAutoToolStripMenuItem.Text = "Auto"; this.SMSdisplayAutoToolStripMenuItem.Click += new System.EventHandler(this.SMS_DisplayAuto_Click); // @@ -2567,19 +2570,13 @@ // GenesisSubMenu // this.GenesisSubMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.GenesisSettingsToolStripMenuItem, - this.vDPViewerToolStripMenuItem}); + this.vDPViewerToolStripMenuItem, + this.toolStripSeparator26, + this.GenesisSettingsToolStripMenuItem}); this.GenesisSubMenu.Name = "GenesisSubMenu"; this.GenesisSubMenu.Size = new System.Drawing.Size(59, 19); this.GenesisSubMenu.Text = "&Genesis"; // - // GenesisSettingsToolStripMenuItem - // - this.GenesisSettingsToolStripMenuItem.Name = "GenesisSettingsToolStripMenuItem"; - this.GenesisSettingsToolStripMenuItem.Size = new System.Drawing.Size(134, 22); - this.GenesisSettingsToolStripMenuItem.Text = "&Settings..."; - this.GenesisSettingsToolStripMenuItem.Click += new System.EventHandler(this.GenesisSettingsToolStripMenuItem_Click); - // // vDPViewerToolStripMenuItem // this.vDPViewerToolStripMenuItem.Name = "vDPViewerToolStripMenuItem"; @@ -2587,6 +2584,18 @@ this.vDPViewerToolStripMenuItem.Text = "&VDP Viewer"; this.vDPViewerToolStripMenuItem.Click += new System.EventHandler(this.vDPViewerToolStripMenuItem_Click); // + // toolStripSeparator26 + // + this.toolStripSeparator26.Name = "toolStripSeparator26"; + this.toolStripSeparator26.Size = new System.Drawing.Size(131, 6); + // + // GenesisSettingsToolStripMenuItem + // + this.GenesisSettingsToolStripMenuItem.Name = "GenesisSettingsToolStripMenuItem"; + this.GenesisSettingsToolStripMenuItem.Size = new System.Drawing.Size(134, 22); + this.GenesisSettingsToolStripMenuItem.Text = "&Settings..."; + this.GenesisSettingsToolStripMenuItem.Click += new System.EventHandler(this.GenesisSettingsToolStripMenuItem_Click); + // // HelpSubMenu // this.HelpSubMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { @@ -3475,6 +3484,7 @@ private System.Windows.Forms.ToolStripMenuItem SMSdisplayNtscToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem SMSdisplayPalToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem SMSdisplayAutoToolStripMenuItem; + private System.Windows.Forms.ToolStripSeparator toolStripSeparator26; } } diff --git a/BizHawk.Client.EmuHawk/MainForm.cs b/BizHawk.Client.EmuHawk/MainForm.cs index 8f3704ad98..d3d8239d19 100644 --- a/BizHawk.Client.EmuHawk/MainForm.cs +++ b/BizHawk.Client.EmuHawk/MainForm.cs @@ -10,6 +10,7 @@ using BizHawk.Client.Common; using BizHawk.Common; using BizHawk.Emulation.Common; using BizHawk.Emulation.Cores.Calculators; +using BizHawk.Emulation.Cores.Consoles.Sega.gpgx; using BizHawk.Emulation.Cores.Nintendo.Gameboy; using BizHawk.Emulation.Cores.Nintendo.GBA; using BizHawk.Emulation.Cores.Nintendo.NES; @@ -359,6 +360,11 @@ namespace BizHawk.Client.EmuHawk GlobalWin.Tools.Load(); } + if (Global.Config.GenVdpAutoLoad && Global.Emulator is GPGX) + { + GlobalWin.Tools.Load(); + } + if (Global.Config.AutoLoadSNESGraphicsDebugger && Global.Emulator is LibsnesCore) { GlobalWin.Tools.Load(); @@ -3098,8 +3104,7 @@ namespace BizHawk.Client.EmuHawk private void vDPViewerToolStripMenuItem_Click(object sender, EventArgs e) { - GlobalWin.Tools.Load(); + GlobalWin.Tools.Load(); } - } } diff --git a/BizHawk.Client.EmuHawk/tools/Genesis/VDPViewer.Designer.cs b/BizHawk.Client.EmuHawk/tools/Genesis/VDPViewer.Designer.cs index 15ca3c43bb..7f4c6d1312 100644 --- a/BizHawk.Client.EmuHawk/tools/Genesis/VDPViewer.Designer.cs +++ b/BizHawk.Client.EmuHawk/tools/Genesis/VDPViewer.Designer.cs @@ -1,6 +1,6 @@ -namespace BizHawk.Client.EmuHawk.tools.Genesis +namespace BizHawk.Client.EmuHawk { - partial class VDPViewer + partial class GenVDPViewer { /// /// Required designer variable. @@ -29,67 +29,115 @@ private void InitializeComponent() { this.groupBox1 = new System.Windows.Forms.GroupBox(); + this.bmpViewTiles = new BizHawk.Client.EmuHawk.BmpView(); this.groupBox2 = new System.Windows.Forms.GroupBox(); + this.bmpViewPal = new BizHawk.Client.EmuHawk.BmpView(); this.groupBox3 = new System.Windows.Forms.GroupBox(); + this.bmpViewNTW = new BizHawk.Client.EmuHawk.BmpView(); this.groupBox4 = new System.Windows.Forms.GroupBox(); + this.bmpViewNTA = new BizHawk.Client.EmuHawk.BmpView(); this.groupBox5 = new System.Windows.Forms.GroupBox(); this.bmpViewNTB = new BizHawk.Client.EmuHawk.BmpView(); - this.bmpViewNTA = new BizHawk.Client.EmuHawk.BmpView(); - this.bmpViewNTW = new BizHawk.Client.EmuHawk.BmpView(); - this.bmpViewPal = new BizHawk.Client.EmuHawk.BmpView(); - this.bmpViewTiles = new BizHawk.Client.EmuHawk.BmpView(); this.label1 = new System.Windows.Forms.Label(); + this.menuStrip1 = new MenuStripEx(); + this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.saveBGAScreenshotToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.saveBGBScreenshotToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.saveTilesScreenshotToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.saveWindowScreenshotToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.savePaletteScreenshotToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator(); + this.closeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.OptionsSubMenu = new System.Windows.Forms.ToolStripMenuItem(); + this.AutoloadMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.SaveWindowPositionMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.AlwaysOnTopMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.FloatingWindowMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.groupBox1.SuspendLayout(); this.groupBox2.SuspendLayout(); this.groupBox3.SuspendLayout(); this.groupBox4.SuspendLayout(); this.groupBox5.SuspendLayout(); + this.menuStrip1.SuspendLayout(); this.SuspendLayout(); // // groupBox1 // this.groupBox1.Controls.Add(this.bmpViewTiles); - this.groupBox1.Location = new System.Drawing.Point(12, 555); + this.groupBox1.Location = new System.Drawing.Point(12, 568); this.groupBox1.Name = "groupBox1"; this.groupBox1.Size = new System.Drawing.Size(524, 281); this.groupBox1.TabIndex = 5; this.groupBox1.TabStop = false; this.groupBox1.Text = "Tiles"; // + // bmpViewTiles + // + this.bmpViewTiles.Location = new System.Drawing.Point(6, 19); + this.bmpViewTiles.Name = "bmpViewTiles"; + this.bmpViewTiles.Size = new System.Drawing.Size(512, 256); + this.bmpViewTiles.TabIndex = 0; + this.bmpViewTiles.Text = "bmpView1"; + // // groupBox2 // this.groupBox2.Controls.Add(this.bmpViewPal); - this.groupBox2.Location = new System.Drawing.Point(12, 842); + this.groupBox2.Location = new System.Drawing.Point(12, 855); this.groupBox2.Name = "groupBox2"; this.groupBox2.Size = new System.Drawing.Size(268, 89); this.groupBox2.TabIndex = 6; this.groupBox2.TabStop = false; this.groupBox2.Text = "Palettes"; // + // bmpViewPal + // + this.bmpViewPal.Location = new System.Drawing.Point(6, 19); + this.bmpViewPal.Name = "bmpViewPal"; + this.bmpViewPal.Size = new System.Drawing.Size(256, 64); + this.bmpViewPal.TabIndex = 4; + this.bmpViewPal.Text = "bmpView1"; + this.bmpViewPal.MouseClick += new System.Windows.Forms.MouseEventHandler(this.bmpViewPal_MouseClick); + // // groupBox3 // this.groupBox3.Controls.Add(this.bmpViewNTW); - this.groupBox3.Location = new System.Drawing.Point(542, 555); + this.groupBox3.Location = new System.Drawing.Point(542, 568); this.groupBox3.Name = "groupBox3"; this.groupBox3.Size = new System.Drawing.Size(524, 281); this.groupBox3.TabIndex = 7; this.groupBox3.TabStop = false; this.groupBox3.Text = "Window"; // + // bmpViewNTW + // + this.bmpViewNTW.Location = new System.Drawing.Point(6, 19); + this.bmpViewNTW.Name = "bmpViewNTW"; + this.bmpViewNTW.Size = new System.Drawing.Size(75, 23); + this.bmpViewNTW.TabIndex = 3; + this.bmpViewNTW.Text = "bmpView1"; + // // groupBox4 // this.groupBox4.Controls.Add(this.bmpViewNTA); - this.groupBox4.Location = new System.Drawing.Point(12, 12); + this.groupBox4.Location = new System.Drawing.Point(12, 25); this.groupBox4.Name = "groupBox4"; this.groupBox4.Size = new System.Drawing.Size(524, 537); this.groupBox4.TabIndex = 8; this.groupBox4.TabStop = false; this.groupBox4.Text = "BG A"; // + // bmpViewNTA + // + this.bmpViewNTA.Location = new System.Drawing.Point(6, 19); + this.bmpViewNTA.Name = "bmpViewNTA"; + this.bmpViewNTA.Size = new System.Drawing.Size(75, 23); + this.bmpViewNTA.TabIndex = 1; + this.bmpViewNTA.Text = "bmpView1"; + // // groupBox5 // this.groupBox5.Controls.Add(this.bmpViewNTB); - this.groupBox5.Location = new System.Drawing.Point(542, 12); + this.groupBox5.Location = new System.Drawing.Point(542, 25); this.groupBox5.Name = "groupBox5"; this.groupBox5.Size = new System.Drawing.Size(524, 537); this.groupBox5.TabIndex = 9; @@ -104,68 +152,155 @@ this.bmpViewNTB.TabIndex = 2; this.bmpViewNTB.Text = "bmpView1"; // - // bmpViewNTA - // - this.bmpViewNTA.Location = new System.Drawing.Point(6, 19); - this.bmpViewNTA.Name = "bmpViewNTA"; - this.bmpViewNTA.Size = new System.Drawing.Size(75, 23); - this.bmpViewNTA.TabIndex = 1; - this.bmpViewNTA.Text = "bmpView1"; - // - // bmpViewNTW - // - this.bmpViewNTW.Location = new System.Drawing.Point(6, 19); - this.bmpViewNTW.Name = "bmpViewNTW"; - this.bmpViewNTW.Size = new System.Drawing.Size(75, 23); - this.bmpViewNTW.TabIndex = 3; - this.bmpViewNTW.Text = "bmpView1"; - // - // bmpViewPal - // - this.bmpViewPal.Location = new System.Drawing.Point(6, 19); - this.bmpViewPal.Name = "bmpViewPal"; - this.bmpViewPal.Size = new System.Drawing.Size(256, 64); - this.bmpViewPal.TabIndex = 4; - this.bmpViewPal.Text = "bmpView1"; - this.bmpViewPal.MouseClick += new System.Windows.Forms.MouseEventHandler(this.bmpViewPal_MouseClick); - // - // bmpViewTiles - // - this.bmpViewTiles.Location = new System.Drawing.Point(6, 19); - this.bmpViewTiles.Name = "bmpViewTiles"; - this.bmpViewTiles.Size = new System.Drawing.Size(512, 256); - this.bmpViewTiles.TabIndex = 0; - this.bmpViewTiles.Text = "bmpView1"; - // // label1 // this.label1.AutoSize = true; - this.label1.Location = new System.Drawing.Point(743, 842); + this.label1.Location = new System.Drawing.Point(743, 855); this.label1.Name = "label1"; this.label1.Size = new System.Drawing.Size(323, 13); this.label1.TabIndex = 10; this.label1.Text = "CTRL+C copies the pane under the mouse pointer to the clipboard."; // - // VDPViewer + // menuStrip1 + // + this.menuStrip1.ClickThrough = true; + this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.fileToolStripMenuItem, + this.OptionsSubMenu}); + this.menuStrip1.Location = new System.Drawing.Point(0, 0); + this.menuStrip1.Name = "menuStrip1"; + this.menuStrip1.Size = new System.Drawing.Size(1078, 24); + this.menuStrip1.TabIndex = 11; + this.menuStrip1.Text = "menuStrip1"; + // + // fileToolStripMenuItem + // + this.fileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.saveBGAScreenshotToolStripMenuItem, + this.saveBGBScreenshotToolStripMenuItem, + this.saveTilesScreenshotToolStripMenuItem, + this.saveWindowScreenshotToolStripMenuItem, + this.savePaletteScreenshotToolStripMenuItem, + this.toolStripSeparator1, + this.closeToolStripMenuItem}); + this.fileToolStripMenuItem.Name = "fileToolStripMenuItem"; + this.fileToolStripMenuItem.Size = new System.Drawing.Size(37, 20); + this.fileToolStripMenuItem.Text = "&File"; + // + // saveBGAScreenshotToolStripMenuItem + // + this.saveBGAScreenshotToolStripMenuItem.Name = "saveBGAScreenshotToolStripMenuItem"; + this.saveBGAScreenshotToolStripMenuItem.Size = new System.Drawing.Size(215, 22); + this.saveBGAScreenshotToolStripMenuItem.Text = "Save BG A Screenshot..."; + this.saveBGAScreenshotToolStripMenuItem.Click += new System.EventHandler(this.saveBGAScreenshotToolStripMenuItem_Click); + // + // saveBGBScreenshotToolStripMenuItem + // + this.saveBGBScreenshotToolStripMenuItem.Name = "saveBGBScreenshotToolStripMenuItem"; + this.saveBGBScreenshotToolStripMenuItem.Size = new System.Drawing.Size(215, 22); + this.saveBGBScreenshotToolStripMenuItem.Text = "Save BG B Screenshot..."; + this.saveBGBScreenshotToolStripMenuItem.Click += new System.EventHandler(this.saveBGBScreenshotToolStripMenuItem_Click); + // + // saveTilesScreenshotToolStripMenuItem + // + this.saveTilesScreenshotToolStripMenuItem.Name = "saveTilesScreenshotToolStripMenuItem"; + this.saveTilesScreenshotToolStripMenuItem.Size = new System.Drawing.Size(215, 22); + this.saveTilesScreenshotToolStripMenuItem.Text = "Save Tiles Screenshot..."; + this.saveTilesScreenshotToolStripMenuItem.Click += new System.EventHandler(this.saveTilesScreenshotToolStripMenuItem_Click); + // + // saveWindowScreenshotToolStripMenuItem + // + this.saveWindowScreenshotToolStripMenuItem.Name = "saveWindowScreenshotToolStripMenuItem"; + this.saveWindowScreenshotToolStripMenuItem.Size = new System.Drawing.Size(215, 22); + this.saveWindowScreenshotToolStripMenuItem.Text = "Save Window Screenshot..."; + this.saveWindowScreenshotToolStripMenuItem.Click += new System.EventHandler(this.saveWindowScreenshotToolStripMenuItem_Click); + // + // savePaletteScreenshotToolStripMenuItem + // + this.savePaletteScreenshotToolStripMenuItem.Name = "savePaletteScreenshotToolStripMenuItem"; + this.savePaletteScreenshotToolStripMenuItem.Size = new System.Drawing.Size(215, 22); + this.savePaletteScreenshotToolStripMenuItem.Text = "Save Palette Screenshot..."; + this.savePaletteScreenshotToolStripMenuItem.Click += new System.EventHandler(this.savePaletteScreenshotToolStripMenuItem_Click); + // + // toolStripSeparator1 + // + this.toolStripSeparator1.Name = "toolStripSeparator1"; + this.toolStripSeparator1.Size = new System.Drawing.Size(212, 6); + // + // closeToolStripMenuItem + // + this.closeToolStripMenuItem.Name = "closeToolStripMenuItem"; + this.closeToolStripMenuItem.ShortcutKeyDisplayString = "Alt+F4"; + this.closeToolStripMenuItem.Size = new System.Drawing.Size(215, 22); + this.closeToolStripMenuItem.Text = "&Close"; + this.closeToolStripMenuItem.Click += new System.EventHandler(this.closeToolStripMenuItem_Click); + // + // OptionsSubMenu + // + this.OptionsSubMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.AutoloadMenuItem, + this.SaveWindowPositionMenuItem, + this.AlwaysOnTopMenuItem, + this.FloatingWindowMenuItem}); + this.OptionsSubMenu.Name = "OptionsSubMenu"; + this.OptionsSubMenu.Size = new System.Drawing.Size(61, 20); + this.OptionsSubMenu.Text = "&Options"; + this.OptionsSubMenu.DropDownOpened += new System.EventHandler(this.OptionsSubMenu_DropDownOpened); + // + // AutoloadMenuItem + // + this.AutoloadMenuItem.Name = "AutoloadMenuItem"; + this.AutoloadMenuItem.Size = new System.Drawing.Size(191, 22); + this.AutoloadMenuItem.Text = "&Autoload"; + this.AutoloadMenuItem.Click += new System.EventHandler(this.AutoloadMenuItem_Click); + // + // SaveWindowPositionMenuItem + // + this.SaveWindowPositionMenuItem.Name = "SaveWindowPositionMenuItem"; + this.SaveWindowPositionMenuItem.Size = new System.Drawing.Size(191, 22); + this.SaveWindowPositionMenuItem.Text = "Save Window Position"; + this.SaveWindowPositionMenuItem.Click += new System.EventHandler(this.SaveWindowPositionMenuItem_Click); + // + // AlwaysOnTopMenuItem + // + this.AlwaysOnTopMenuItem.Name = "AlwaysOnTopMenuItem"; + this.AlwaysOnTopMenuItem.Size = new System.Drawing.Size(191, 22); + this.AlwaysOnTopMenuItem.Text = "Always On Top"; + this.AlwaysOnTopMenuItem.Click += new System.EventHandler(this.AlwaysOnTopMenuItem_Click); + // + // FloatingWindowMenuItem + // + this.FloatingWindowMenuItem.Name = "FloatingWindowMenuItem"; + this.FloatingWindowMenuItem.Size = new System.Drawing.Size(191, 22); + this.FloatingWindowMenuItem.Text = "Floating Window"; + this.FloatingWindowMenuItem.Click += new System.EventHandler(this.FloatingWindowMenuItem_Click); + // + // GenVDPViewer // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(1078, 943); + this.ClientSize = new System.Drawing.Size(1078, 954); this.Controls.Add(this.label1); this.Controls.Add(this.groupBox5); this.Controls.Add(this.groupBox2); this.Controls.Add(this.groupBox1); this.Controls.Add(this.groupBox4); this.Controls.Add(this.groupBox3); + this.Controls.Add(this.menuStrip1); this.KeyPreview = true; - this.Name = "VDPViewer"; - this.Text = "VDPViewer"; + this.MainMenuStrip = this.menuStrip1; + this.Name = "GenVDPViewer"; + this.ShowIcon = false; + this.Text = "VDP Viewer"; + this.Load += new System.EventHandler(this.GenVDPViewer_Load); this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.VDPViewer_KeyDown); this.groupBox1.ResumeLayout(false); this.groupBox2.ResumeLayout(false); this.groupBox3.ResumeLayout(false); this.groupBox4.ResumeLayout(false); this.groupBox5.ResumeLayout(false); + this.menuStrip1.ResumeLayout(false); + this.menuStrip1.PerformLayout(); this.ResumeLayout(false); this.PerformLayout(); @@ -184,5 +319,19 @@ private System.Windows.Forms.GroupBox groupBox4; private System.Windows.Forms.GroupBox groupBox5; private System.Windows.Forms.Label label1; + private MenuStripEx menuStrip1; + private System.Windows.Forms.ToolStripMenuItem fileToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem saveBGAScreenshotToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem saveBGBScreenshotToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem saveTilesScreenshotToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem saveWindowScreenshotToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem savePaletteScreenshotToolStripMenuItem; + private System.Windows.Forms.ToolStripSeparator toolStripSeparator1; + private System.Windows.Forms.ToolStripMenuItem closeToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem OptionsSubMenu; + private System.Windows.Forms.ToolStripMenuItem AutoloadMenuItem; + private System.Windows.Forms.ToolStripMenuItem SaveWindowPositionMenuItem; + private System.Windows.Forms.ToolStripMenuItem AlwaysOnTopMenuItem; + private System.Windows.Forms.ToolStripMenuItem FloatingWindowMenuItem; } } \ No newline at end of file diff --git a/BizHawk.Client.EmuHawk/tools/Genesis/VDPViewer.cs b/BizHawk.Client.EmuHawk/tools/Genesis/VDPViewer.cs index 6390e0d24e..16dada284d 100644 --- a/BizHawk.Client.EmuHawk/tools/Genesis/VDPViewer.cs +++ b/BizHawk.Client.EmuHawk/tools/Genesis/VDPViewer.cs @@ -10,15 +10,15 @@ using BizHawk.Client.Common; using BizHawk.Emulation.Cores.Consoles.Sega.gpgx; using System.Drawing.Imaging; -namespace BizHawk.Client.EmuHawk.tools.Genesis +namespace BizHawk.Client.EmuHawk { - public partial class VDPViewer : Form, IToolForm + public partial class GenVDPViewer : Form, IToolForm { private LibGPGX.VDPView View = new LibGPGX.VDPView(); private GPGX Emu; int palindex = 0; - public VDPViewer() + public GenVDPViewer() { InitializeComponent(); bmpViewTiles.ChangeBitmapSize(512, 256); @@ -179,5 +179,84 @@ namespace BizHawk.Client.EmuHawk.tools.Genesis } } } + + private void saveBGAScreenshotToolStripMenuItem_Click(object sender, EventArgs e) + { + bmpViewNTA.SaveFile(); + } + + private void saveBGBScreenshotToolStripMenuItem_Click(object sender, EventArgs e) + { + bmpViewNTB.SaveFile(); + } + + private void saveTilesScreenshotToolStripMenuItem_Click(object sender, EventArgs e) + { + bmpViewTiles.SaveFile(); + } + + private void saveWindowScreenshotToolStripMenuItem_Click(object sender, EventArgs e) + { + bmpViewNTW.SaveFile(); + } + + private void savePaletteScreenshotToolStripMenuItem_Click(object sender, EventArgs e) + { + bmpViewPal.SaveFile(); + } + + private void closeToolStripMenuItem_Click(object sender, EventArgs e) + { + Close(); + } + + private void OptionsSubMenu_DropDownOpened(object sender, EventArgs e) + { + AutoloadMenuItem.Checked = Global.Config.GenVdpAutoLoad; + SaveWindowPositionMenuItem.Checked = Global.Config.GenVdpSettings.SaveWindowPosition; + AlwaysOnTopMenuItem.Checked = Global.Config.GenVdpSettings.TopMost; + FloatingWindowMenuItem.Checked = Global.Config.GenVdpSettings.FloatingWindow; + } + + private void AutoloadMenuItem_Click(object sender, EventArgs e) + { + Global.Config.GenVdpAutoLoad ^= true; + } + + private void SaveWindowPositionMenuItem_Click(object sender, EventArgs e) + { + Global.Config.GenVdpSettings.SaveWindowPosition ^= true; + } + + private void AlwaysOnTopMenuItem_Click(object sender, EventArgs e) + { + TopMost = Global.Config.GenVdpSettings.TopMost ^= true; + } + + private void FloatingWindowMenuItem_Click(object sender, EventArgs e) + { + Global.Config.GenVdpSettings.FloatingWindow ^= true; + RefreshFloatingWindowControl(); + } + + private void RefreshFloatingWindowControl() + { + Owner = Global.Config.GenVdpSettings.FloatingWindow ? null : GlobalWin.MainForm; + } + + protected override void OnShown(EventArgs e) + { + RefreshFloatingWindowControl(); + base.OnShown(e); + } + + private void GenVDPViewer_Load(object sender, EventArgs e) + { + TopMost = Global.Config.GenVdpSettings.TopMost; + if (Global.Config.GenVdpSettings.UseWindowPosition) + { + Location = Global.Config.GenVdpSettings.WindowPosition; + } + } } } diff --git a/BizHawk.Client.EmuHawk/tools/Genesis/VDPViewer.resx b/BizHawk.Client.EmuHawk/tools/Genesis/VDPViewer.resx index 29dcb1b3a3..0f6d8eb42b 100644 --- a/BizHawk.Client.EmuHawk/tools/Genesis/VDPViewer.resx +++ b/BizHawk.Client.EmuHawk/tools/Genesis/VDPViewer.resx @@ -117,4 +117,7 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 17, 17 + \ No newline at end of file diff --git a/BizHawk.Client.EmuHawk/tools/ToolBox.Designer.cs b/BizHawk.Client.EmuHawk/tools/ToolBox.Designer.cs index ca9109e117..d0b8b967fb 100644 --- a/BizHawk.Client.EmuHawk/tools/ToolBox.Designer.cs +++ b/BizHawk.Client.EmuHawk/tools/ToolBox.Designer.cs @@ -47,12 +47,13 @@ this.GGGameGenieToolbarItem = new System.Windows.Forms.ToolStripButton(); this.GbGpuViewerToolBarItem = new System.Windows.Forms.ToolStripButton(); this.GBGameGenieToolbarItem = new System.Windows.Forms.ToolStripButton(); + this.PceTileToolbarItem = new System.Windows.Forms.ToolStripButton(); this.PceCdlToolbarItem = new System.Windows.Forms.ToolStripButton(); this.PceBgViewerToolbarItem = new System.Windows.Forms.ToolStripButton(); this.GbaGpuViewerToolBarItem = new System.Windows.Forms.ToolStripButton(); this.GenesisGameGenieToolBarItem = new System.Windows.Forms.ToolStripButton(); this.SmsVdpToolbarItem = new System.Windows.Forms.ToolStripButton(); - this.PceTileToolbarItem = new System.Windows.Forms.ToolStripButton(); + this.GenesisVdpToolBarItem = new System.Windows.Forms.ToolStripButton(); this.ToolBoxStrip.SuspendLayout(); this.SuspendLayout(); // @@ -88,6 +89,7 @@ this.PceCdlToolbarItem, this.PceBgViewerToolbarItem, this.GbaGpuViewerToolBarItem, + this.GenesisVdpToolBarItem, this.GenesisGameGenieToolBarItem, this.SmsVdpToolbarItem}); this.ToolBoxStrip.LayoutStyle = System.Windows.Forms.ToolStripLayoutStyle.Flow; @@ -261,6 +263,16 @@ this.GBGameGenieToolbarItem.ToolTipText = "Gameboy Game Genie Encoder/Decoder"; this.GBGameGenieToolbarItem.Click += new System.EventHandler(this.GBGameGenieToolbarItem_Click); // + // PceTileToolbarItem + // + this.PceTileToolbarItem.Image = global::BizHawk.Client.EmuHawk.Properties.Resources.pcejin1; + this.PceTileToolbarItem.ImageTransparentColor = System.Drawing.Color.Magenta; + this.PceTileToolbarItem.Name = "PceTileToolbarItem"; + this.PceTileToolbarItem.Size = new System.Drawing.Size(46, 20); + this.PceTileToolbarItem.Text = "Tile"; + this.PceTileToolbarItem.ToolTipText = "PC Engine Tile Viewer"; + this.PceTileToolbarItem.Click += new System.EventHandler(this.PceTileToolbarItem_Click); + // // PceCdlToolbarItem // this.PceCdlToolbarItem.Image = global::BizHawk.Client.EmuHawk.Properties.Resources.pcejin1; @@ -311,15 +323,15 @@ this.SmsVdpToolbarItem.ToolTipText = "SMS VDP Viewer"; this.SmsVdpToolbarItem.Click += new System.EventHandler(this.SmsVdpToolbarItem_Click); // - // PceTileToolbarItem + // GenesisVdpToolBarItem // - this.PceTileToolbarItem.Image = global::BizHawk.Client.EmuHawk.Properties.Resources.pcejin1; - this.PceTileToolbarItem.ImageTransparentColor = System.Drawing.Color.Magenta; - this.PceTileToolbarItem.Name = "PceTileToolbarItem"; - this.PceTileToolbarItem.Size = new System.Drawing.Size(46, 20); - this.PceTileToolbarItem.Text = "Tile"; - this.PceTileToolbarItem.ToolTipText = "PC Engine Tile Viewer"; - this.PceTileToolbarItem.Click += new System.EventHandler(this.PceTileToolbarItem_Click); + this.GenesisVdpToolBarItem.Image = global::BizHawk.Client.EmuHawk.Properties.Resources.GenesisControllerIcon; + this.GenesisVdpToolBarItem.ImageTransparentColor = System.Drawing.Color.Magenta; + this.GenesisVdpToolBarItem.Name = "GenesisVdpToolBarItem"; + this.GenesisVdpToolBarItem.Size = new System.Drawing.Size(49, 20); + this.GenesisVdpToolBarItem.Text = "VDP"; + this.GenesisVdpToolBarItem.ToolTipText = "Genesis VDP/Tile Viewer"; + this.GenesisVdpToolBarItem.Click += new System.EventHandler(this.GenesisVdpToolBarItem_Click); // // ToolBox // @@ -365,6 +377,7 @@ private System.Windows.Forms.ToolStripButton PceCdlToolbarItem; private System.Windows.Forms.ToolStripButton SmsVdpToolbarItem; private System.Windows.Forms.ToolStripButton PceTileToolbarItem; + private System.Windows.Forms.ToolStripButton GenesisVdpToolBarItem; } } \ No newline at end of file diff --git a/BizHawk.Client.EmuHawk/tools/ToolBox.cs b/BizHawk.Client.EmuHawk/tools/ToolBox.cs index f2e2059a01..f61037aa4d 100644 --- a/BizHawk.Client.EmuHawk/tools/ToolBox.cs +++ b/BizHawk.Client.EmuHawk/tools/ToolBox.cs @@ -3,9 +3,9 @@ using System.Collections.Generic; using System.Drawing; using System.Linq; using System.Windows.Forms; - using BizHawk.Client.Common; using BizHawk.Emulation.Cores.Calculators; +using BizHawk.Emulation.Cores.Consoles.Sega.gpgx; using BizHawk.Emulation.Cores.Nintendo.GBA; using BizHawk.Emulation.Cores.Nintendo.NES; using BizHawk.Emulation.Cores.Nintendo.SNES; @@ -74,6 +74,7 @@ namespace BizHawk.Client.EmuHawk GbaGpuViewerToolBarItem.Visible = Global.Emulator is GBA; GenesisGameGenieToolBarItem.Visible = Global.Emulator.SystemId == "GEN" && VersionInfo.INTERIM; + GenesisVdpToolBarItem.Visible = Global.Emulator is GPGX; SmsVdpToolbarItem.Visible = Global.Emulator is SMS; @@ -234,6 +235,11 @@ namespace BizHawk.Client.EmuHawk GlobalWin.Tools.Load(); } + private void GenesisVdpToolBarItem_Click(object sender, EventArgs e) + { + GlobalWin.Tools.Load(); + } + #endregion } }