diff --git a/BizHawk.Client.EmuHawk/BizHawk.Client.EmuHawk.csproj b/BizHawk.Client.EmuHawk/BizHawk.Client.EmuHawk.csproj
index 71c6402e30..6d040811d6 100644
--- a/BizHawk.Client.EmuHawk/BizHawk.Client.EmuHawk.csproj
+++ b/BizHawk.Client.EmuHawk/BizHawk.Client.EmuHawk.csproj
@@ -419,6 +419,12 @@
PSXControllerConfig.cs
+
+ Form
+
+
+ PSXHashDiscs.cs
+
Form
@@ -1240,6 +1246,9 @@
PSXControllerConfig.cs
+
+ PSXHashDiscs.cs
+
PSXOptions.cs
diff --git a/BizHawk.Client.EmuHawk/MainForm.Designer.cs b/BizHawk.Client.EmuHawk/MainForm.Designer.cs
index cef06a4ce6..713f84d079 100644
--- a/BizHawk.Client.EmuHawk/MainForm.Designer.cs
+++ b/BizHawk.Client.EmuHawk/MainForm.Designer.cs
@@ -318,6 +318,7 @@
this.AppleSubMenu = new System.Windows.Forms.ToolStripMenuItem();
this.AppleDisksSubMenu = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator31 = new System.Windows.Forms.ToolStripSeparator();
+ this.settingsToolStripMenuItem1 = 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();
@@ -395,7 +396,7 @@
this.ClearSRAMContextMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.ShowMenuContextMenuSeparator = new System.Windows.Forms.ToolStripSeparator();
this.ShowMenuContextMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.settingsToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
+ this.PSXHashDiscsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.MainformMenu.SuspendLayout();
this.MainStatusBar.SuspendLayout();
this.MainFormContextMenu.SuspendLayout();
@@ -2494,7 +2495,8 @@
this.PSXSubMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.PSXControllerSettingsMenuItem,
this.PSXOptionsMenuItem,
- this.PSXDiscControlsMenuItem});
+ this.PSXDiscControlsMenuItem,
+ this.PSXHashDiscsToolStripMenuItem});
this.PSXSubMenu.Name = "PSXSubMenu";
this.PSXSubMenu.Size = new System.Drawing.Size(37, 17);
this.PSXSubMenu.Text = "PSX";
@@ -2811,7 +2813,7 @@
this.AppleDisksSubMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.toolStripSeparator31});
this.AppleDisksSubMenu.Name = "AppleDisksSubMenu";
- this.AppleDisksSubMenu.Size = new System.Drawing.Size(152, 22);
+ this.AppleDisksSubMenu.Size = new System.Drawing.Size(125, 22);
this.AppleDisksSubMenu.Text = "Disks";
this.AppleDisksSubMenu.DropDownOpened += new System.EventHandler(this.AppleDisksSubMenu_DropDownOpened);
//
@@ -2820,6 +2822,13 @@
this.toolStripSeparator31.Name = "toolStripSeparator31";
this.toolStripSeparator31.Size = new System.Drawing.Size(57, 6);
//
+ // settingsToolStripMenuItem1
+ //
+ this.settingsToolStripMenuItem1.Name = "settingsToolStripMenuItem1";
+ this.settingsToolStripMenuItem1.Size = new System.Drawing.Size(125, 22);
+ this.settingsToolStripMenuItem1.Text = "&Settings...";
+ this.settingsToolStripMenuItem1.Click += new System.EventHandler(this.settingsToolStripMenuItem1_Click_1);
+ //
// HelpSubMenu
//
this.HelpSubMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
@@ -3135,7 +3144,7 @@
this.ShowMenuContextMenuSeparator,
this.ShowMenuContextMenuItem});
this.MainFormContextMenu.Name = "contextMenuStrip1";
- this.MainFormContextMenu.Size = new System.Drawing.Size(217, 468);
+ this.MainFormContextMenu.Size = new System.Drawing.Size(202, 468);
this.MainFormContextMenu.Closing += new System.Windows.Forms.ToolStripDropDownClosingEventHandler(this.MainFormContextMenu_Closing);
this.MainFormContextMenu.Opening += new System.ComponentModel.CancelEventHandler(this.MainFormContextMenu_Opening);
//
@@ -3143,7 +3152,7 @@
//
this.OpenRomContextMenuItem.Image = global::BizHawk.Client.EmuHawk.Properties.Resources.OpenFile;
this.OpenRomContextMenuItem.Name = "OpenRomContextMenuItem";
- this.OpenRomContextMenuItem.Size = new System.Drawing.Size(216, 22);
+ this.OpenRomContextMenuItem.Size = new System.Drawing.Size(201, 22);
this.OpenRomContextMenuItem.Text = "Open Rom";
this.OpenRomContextMenuItem.Click += new System.EventHandler(this.OpenRomMenuItem_Click);
//
@@ -3151,7 +3160,7 @@
//
this.LoadLastRomContextMenuItem.Image = global::BizHawk.Client.EmuHawk.Properties.Resources.Recent;
this.LoadLastRomContextMenuItem.Name = "LoadLastRomContextMenuItem";
- this.LoadLastRomContextMenuItem.Size = new System.Drawing.Size(216, 22);
+ this.LoadLastRomContextMenuItem.Size = new System.Drawing.Size(201, 22);
this.LoadLastRomContextMenuItem.Text = "Load Last ROM";
this.LoadLastRomContextMenuItem.Click += new System.EventHandler(this.LoadLastRomContextMenuItem_Click);
//
@@ -3159,20 +3168,20 @@
//
this.StopAVContextMenuItem.Image = global::BizHawk.Client.EmuHawk.Properties.Resources.Stop;
this.StopAVContextMenuItem.Name = "StopAVContextMenuItem";
- this.StopAVContextMenuItem.Size = new System.Drawing.Size(216, 22);
+ this.StopAVContextMenuItem.Size = new System.Drawing.Size(201, 22);
this.StopAVContextMenuItem.Text = "Stop AVI/WAV";
this.StopAVContextMenuItem.Click += new System.EventHandler(this.StopAVMenuItem_Click);
//
// ContextSeparator_AfterROM
//
this.ContextSeparator_AfterROM.Name = "ContextSeparator_AfterROM";
- this.ContextSeparator_AfterROM.Size = new System.Drawing.Size(213, 6);
+ this.ContextSeparator_AfterROM.Size = new System.Drawing.Size(198, 6);
//
// RecordMovieContextMenuItem
//
this.RecordMovieContextMenuItem.Image = global::BizHawk.Client.EmuHawk.Properties.Resources.RecordHS;
this.RecordMovieContextMenuItem.Name = "RecordMovieContextMenuItem";
- this.RecordMovieContextMenuItem.Size = new System.Drawing.Size(216, 22);
+ this.RecordMovieContextMenuItem.Size = new System.Drawing.Size(201, 22);
this.RecordMovieContextMenuItem.Text = "Record Movie";
this.RecordMovieContextMenuItem.Click += new System.EventHandler(this.RecordMovieMenuItem_Click);
//
@@ -3180,7 +3189,7 @@
//
this.PlayMovieContextMenuItem.Image = global::BizHawk.Client.EmuHawk.Properties.Resources.Play;
this.PlayMovieContextMenuItem.Name = "PlayMovieContextMenuItem";
- this.PlayMovieContextMenuItem.Size = new System.Drawing.Size(216, 22);
+ this.PlayMovieContextMenuItem.Size = new System.Drawing.Size(201, 22);
this.PlayMovieContextMenuItem.Text = "Play Movie";
this.PlayMovieContextMenuItem.Click += new System.EventHandler(this.PlayMovieMenuItem_Click);
//
@@ -3188,7 +3197,7 @@
//
this.RestartMovieContextMenuItem.Image = global::BizHawk.Client.EmuHawk.Properties.Resources.restart;
this.RestartMovieContextMenuItem.Name = "RestartMovieContextMenuItem";
- this.RestartMovieContextMenuItem.Size = new System.Drawing.Size(216, 22);
+ this.RestartMovieContextMenuItem.Size = new System.Drawing.Size(201, 22);
this.RestartMovieContextMenuItem.Text = "Restart Movie";
this.RestartMovieContextMenuItem.Click += new System.EventHandler(this.PlayFromBeginningMenuItem_Click);
//
@@ -3196,7 +3205,7 @@
//
this.StopMovieContextMenuItem.Image = global::BizHawk.Client.EmuHawk.Properties.Resources.Stop;
this.StopMovieContextMenuItem.Name = "StopMovieContextMenuItem";
- this.StopMovieContextMenuItem.Size = new System.Drawing.Size(216, 22);
+ this.StopMovieContextMenuItem.Size = new System.Drawing.Size(201, 22);
this.StopMovieContextMenuItem.Text = "Stop Movie";
this.StopMovieContextMenuItem.Click += new System.EventHandler(this.StopMovieMenuItem_Click);
//
@@ -3204,14 +3213,14 @@
//
this.LoadLastMovieContextMenuItem.Image = global::BizHawk.Client.EmuHawk.Properties.Resources.Recent;
this.LoadLastMovieContextMenuItem.Name = "LoadLastMovieContextMenuItem";
- this.LoadLastMovieContextMenuItem.Size = new System.Drawing.Size(216, 22);
+ this.LoadLastMovieContextMenuItem.Size = new System.Drawing.Size(201, 22);
this.LoadLastMovieContextMenuItem.Text = "Load Last Movie";
this.LoadLastMovieContextMenuItem.Click += new System.EventHandler(this.LoadLastMovieContextMenuItem_Click);
//
// BackupMovieContextMenuItem
//
this.BackupMovieContextMenuItem.Name = "BackupMovieContextMenuItem";
- this.BackupMovieContextMenuItem.Size = new System.Drawing.Size(216, 22);
+ this.BackupMovieContextMenuItem.Size = new System.Drawing.Size(201, 22);
this.BackupMovieContextMenuItem.Text = "Backup Movie";
this.BackupMovieContextMenuItem.Click += new System.EventHandler(this.BackupMovieContextMenuItem_Click);
//
@@ -3219,28 +3228,28 @@
//
this.StopNoSaveContextMenuItem.Image = global::BizHawk.Client.EmuHawk.Properties.Resources.Stop;
this.StopNoSaveContextMenuItem.Name = "StopNoSaveContextMenuItem";
- this.StopNoSaveContextMenuItem.Size = new System.Drawing.Size(216, 22);
+ this.StopNoSaveContextMenuItem.Size = new System.Drawing.Size(201, 22);
this.StopNoSaveContextMenuItem.Text = "Stop Movie without Saving";
this.StopNoSaveContextMenuItem.Click += new System.EventHandler(this.StopMovieWithoutSavingMenuItem_Click);
//
// ViewSubtitlesContextMenuItem
//
this.ViewSubtitlesContextMenuItem.Name = "ViewSubtitlesContextMenuItem";
- this.ViewSubtitlesContextMenuItem.Size = new System.Drawing.Size(216, 22);
+ this.ViewSubtitlesContextMenuItem.Size = new System.Drawing.Size(201, 22);
this.ViewSubtitlesContextMenuItem.Text = "View Subtitles";
this.ViewSubtitlesContextMenuItem.Click += new System.EventHandler(this.ViewSubtitlesContextMenuItem_Click);
//
// AddSubtitleContextMenuItem
//
this.AddSubtitleContextMenuItem.Name = "AddSubtitleContextMenuItem";
- this.AddSubtitleContextMenuItem.Size = new System.Drawing.Size(216, 22);
+ this.AddSubtitleContextMenuItem.Size = new System.Drawing.Size(201, 22);
this.AddSubtitleContextMenuItem.Text = "Add Subtitle";
this.AddSubtitleContextMenuItem.Click += new System.EventHandler(this.AddSubtitleContextMenuItem_Click);
//
// ViewCommentsContextMenuItem
//
this.ViewCommentsContextMenuItem.Name = "ViewCommentsContextMenuItem";
- this.ViewCommentsContextMenuItem.Size = new System.Drawing.Size(216, 22);
+ this.ViewCommentsContextMenuItem.Size = new System.Drawing.Size(201, 22);
this.ViewCommentsContextMenuItem.Text = "View Comments";
this.ViewCommentsContextMenuItem.Click += new System.EventHandler(this.ViewCommentsContextMenuItem_Click);
//
@@ -3248,27 +3257,27 @@
//
this.SaveMovieContextMenuItem.Image = global::BizHawk.Client.EmuHawk.Properties.Resources.SaveAs;
this.SaveMovieContextMenuItem.Name = "SaveMovieContextMenuItem";
- this.SaveMovieContextMenuItem.Size = new System.Drawing.Size(216, 22);
+ this.SaveMovieContextMenuItem.Size = new System.Drawing.Size(201, 22);
this.SaveMovieContextMenuItem.Text = "Save Movie";
this.SaveMovieContextMenuItem.Click += new System.EventHandler(this.SaveMovieMenuItem_Click);
//
// ContextSeparator_AfterMovie
//
this.ContextSeparator_AfterMovie.Name = "ContextSeparator_AfterMovie";
- this.ContextSeparator_AfterMovie.Size = new System.Drawing.Size(213, 6);
+ this.ContextSeparator_AfterMovie.Size = new System.Drawing.Size(198, 6);
//
// UndoSavestateContextMenuItem
//
this.UndoSavestateContextMenuItem.Image = global::BizHawk.Client.EmuHawk.Properties.Resources.undo;
this.UndoSavestateContextMenuItem.Name = "UndoSavestateContextMenuItem";
- this.UndoSavestateContextMenuItem.Size = new System.Drawing.Size(216, 22);
+ this.UndoSavestateContextMenuItem.Size = new System.Drawing.Size(201, 22);
this.UndoSavestateContextMenuItem.Text = "Undo Savestate";
this.UndoSavestateContextMenuItem.Click += new System.EventHandler(this.UndoSavestateContextMenuItem_Click);
//
// ContextSeparator_AfterUndo
//
this.ContextSeparator_AfterUndo.Name = "ContextSeparator_AfterUndo";
- this.ContextSeparator_AfterUndo.Size = new System.Drawing.Size(213, 6);
+ this.ContextSeparator_AfterUndo.Size = new System.Drawing.Size(198, 6);
//
// ConfigContextMenuItem
//
@@ -3291,7 +3300,7 @@
this.toolStripMenuItem66,
this.toolStripMenuItem67});
this.ConfigContextMenuItem.Name = "ConfigContextMenuItem";
- this.ConfigContextMenuItem.Size = new System.Drawing.Size(216, 22);
+ this.ConfigContextMenuItem.Size = new System.Drawing.Size(201, 22);
this.ConfigContextMenuItem.Text = "Config";
//
// toolStripMenuItem6
@@ -3459,7 +3468,7 @@
//
this.ScreenshotContextMenuItem.Image = global::BizHawk.Client.EmuHawk.Properties.Resources.camera;
this.ScreenshotContextMenuItem.Name = "ScreenshotContextMenuItem";
- this.ScreenshotContextMenuItem.Size = new System.Drawing.Size(216, 22);
+ this.ScreenshotContextMenuItem.Size = new System.Drawing.Size(201, 22);
this.ScreenshotContextMenuItem.Text = "Screenshot";
this.ScreenshotContextMenuItem.Click += new System.EventHandler(this.ScreenshotMenuItem_Click);
//
@@ -3467,35 +3476,35 @@
//
this.CloseRomContextMenuItem.Image = global::BizHawk.Client.EmuHawk.Properties.Resources.Close;
this.CloseRomContextMenuItem.Name = "CloseRomContextMenuItem";
- this.CloseRomContextMenuItem.Size = new System.Drawing.Size(216, 22);
+ this.CloseRomContextMenuItem.Size = new System.Drawing.Size(201, 22);
this.CloseRomContextMenuItem.Text = "Close ROM";
this.CloseRomContextMenuItem.Click += new System.EventHandler(this.CloseRomMenuItem_Click);
//
// ClearSRAMContextMenuItem
//
this.ClearSRAMContextMenuItem.Name = "ClearSRAMContextMenuItem";
- this.ClearSRAMContextMenuItem.Size = new System.Drawing.Size(216, 22);
+ this.ClearSRAMContextMenuItem.Size = new System.Drawing.Size(201, 22);
this.ClearSRAMContextMenuItem.Text = "Close and Clear SRAM";
this.ClearSRAMContextMenuItem.Click += new System.EventHandler(this.ClearSRAMContextMenuItem_Click);
//
// ShowMenuContextMenuSeparator
//
this.ShowMenuContextMenuSeparator.Name = "ShowMenuContextMenuSeparator";
- this.ShowMenuContextMenuSeparator.Size = new System.Drawing.Size(213, 6);
+ this.ShowMenuContextMenuSeparator.Size = new System.Drawing.Size(198, 6);
//
// ShowMenuContextMenuItem
//
this.ShowMenuContextMenuItem.Name = "ShowMenuContextMenuItem";
- this.ShowMenuContextMenuItem.Size = new System.Drawing.Size(216, 22);
+ this.ShowMenuContextMenuItem.Size = new System.Drawing.Size(201, 22);
this.ShowMenuContextMenuItem.Text = "Show Menu";
this.ShowMenuContextMenuItem.Click += new System.EventHandler(this.ShowMenuContextMenuItem_Click);
//
- // settingsToolStripMenuItem1
+ // PSXHashDiscsToolStripMenuItem
//
- this.settingsToolStripMenuItem1.Name = "settingsToolStripMenuItem1";
- this.settingsToolStripMenuItem1.Size = new System.Drawing.Size(152, 22);
- this.settingsToolStripMenuItem1.Text = "&Settings...";
- this.settingsToolStripMenuItem1.Click += new System.EventHandler(this.settingsToolStripMenuItem1_Click_1);
+ this.PSXHashDiscsToolStripMenuItem.Name = "PSXHashDiscsToolStripMenuItem";
+ this.PSXHashDiscsToolStripMenuItem.Size = new System.Drawing.Size(163, 22);
+ this.PSXHashDiscsToolStripMenuItem.Text = "&Hash Discs";
+ this.PSXHashDiscsToolStripMenuItem.Click += new System.EventHandler(this.PSXHashDiscsToolStripMenuItem_Click);
//
// MainForm
//
@@ -3903,6 +3912,7 @@
private System.Windows.Forms.ToolStripMenuItem gBAWithMGBAToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem AutoHawkMenuItem;
private System.Windows.Forms.ToolStripMenuItem settingsToolStripMenuItem1;
+ private System.Windows.Forms.ToolStripMenuItem PSXHashDiscsToolStripMenuItem;
}
}
diff --git a/BizHawk.Client.EmuHawk/MainForm.cs b/BizHawk.Client.EmuHawk/MainForm.cs
index e4431fce41..9ee2275cb6 100644
--- a/BizHawk.Client.EmuHawk/MainForm.cs
+++ b/BizHawk.Client.EmuHawk/MainForm.cs
@@ -3793,5 +3793,10 @@ namespace BizHawk.Client.EmuHawk
{
GenericCoreConfig.DoDialog(this, "Apple II Settings");
}
+
+ private void PSXHashDiscsToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ new PSXHashDiscs().ShowDialog();
+ }
}
}
diff --git a/BizHawk.Client.EmuHawk/config/PSX/PSXHashDiscs.Designer.cs b/BizHawk.Client.EmuHawk/config/PSX/PSXHashDiscs.Designer.cs
new file mode 100644
index 0000000000..b378d4951e
--- /dev/null
+++ b/BizHawk.Client.EmuHawk/config/PSX/PSXHashDiscs.Designer.cs
@@ -0,0 +1,116 @@
+namespace BizHawk.Client.EmuHawk
+{
+ partial class PSXHashDiscs
+ {
+ ///
+ /// Required designer variable.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Clean up any resources being used.
+ ///
+ /// true if managed resources should be disposed; otherwise, false.
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Windows Form Designer generated code
+
+ ///
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ ///
+ private void InitializeComponent()
+ {
+ this.btnClose = new System.Windows.Forms.Button();
+ this.btnHash = new System.Windows.Forms.Button();
+ this.txtHashes = new System.Windows.Forms.TextBox();
+ this.label1 = new System.Windows.Forms.Label();
+ this.label2 = new System.Windows.Forms.Label();
+ this.SuspendLayout();
+ //
+ // btnClose
+ //
+ this.btnClose.DialogResult = System.Windows.Forms.DialogResult.OK;
+ this.btnClose.Location = new System.Drawing.Point(347, 239);
+ this.btnClose.Name = "btnClose";
+ this.btnClose.Size = new System.Drawing.Size(75, 23);
+ this.btnClose.TabIndex = 0;
+ this.btnClose.Text = "Close";
+ this.btnClose.UseVisualStyleBackColor = true;
+ //
+ // btnHash
+ //
+ this.btnHash.Location = new System.Drawing.Point(27, 239);
+ this.btnHash.Name = "btnHash";
+ this.btnHash.Size = new System.Drawing.Size(75, 23);
+ this.btnHash.TabIndex = 1;
+ this.btnHash.Text = "Hash";
+ this.btnHash.UseVisualStyleBackColor = true;
+ this.btnHash.Click += new System.EventHandler(this.btnHash_Click);
+ //
+ // txtHashes
+ //
+ this.txtHashes.Font = new System.Drawing.Font("Courier New", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.txtHashes.Location = new System.Drawing.Point(27, 51);
+ this.txtHashes.Multiline = true;
+ this.txtHashes.Name = "txtHashes";
+ this.txtHashes.ReadOnly = true;
+ this.txtHashes.Size = new System.Drawing.Size(395, 146);
+ this.txtHashes.TabIndex = 2;
+ //
+ // label1
+ //
+ this.label1.AutoSize = true;
+ this.label1.Location = new System.Drawing.Point(24, 211);
+ this.label1.Name = "label1";
+ this.label1.Size = new System.Drawing.Size(200, 13);
+ this.label1.TabIndex = 3;
+ this.label1.Text = "Sorry, this is gonna freeze while it hashes";
+ //
+ // label2
+ //
+ this.label2.AutoSize = true;
+ this.label2.Location = new System.Drawing.Point(96, 9);
+ this.label2.Name = "label2";
+ this.label2.Size = new System.Drawing.Size(223, 26);
+ this.label2.TabIndex = 4;
+ this.label2.Text = "This tool hashes your discs in a standard way.\r\nCheck against redump.org \"Total\" " +
+ "CRC-32";
+ //
+ // PSXHashDiscs
+ //
+ this.AcceptButton = this.btnClose;
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.CancelButton = this.btnClose;
+ this.ClientSize = new System.Drawing.Size(446, 276);
+ this.Controls.Add(this.label2);
+ this.Controls.Add(this.label1);
+ this.Controls.Add(this.txtHashes);
+ this.Controls.Add(this.btnHash);
+ this.Controls.Add(this.btnClose);
+ this.MaximizeBox = false;
+ this.MinimizeBox = false;
+ this.Name = "PSXHashDiscs";
+ this.Text = "PSX Disc Hasher";
+ this.ResumeLayout(false);
+ this.PerformLayout();
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.Button btnClose;
+ private System.Windows.Forms.Button btnHash;
+ private System.Windows.Forms.TextBox txtHashes;
+ private System.Windows.Forms.Label label1;
+ private System.Windows.Forms.Label label2;
+ }
+}
\ No newline at end of file
diff --git a/BizHawk.Client.EmuHawk/config/PSX/PSXHashDiscs.cs b/BizHawk.Client.EmuHawk/config/PSX/PSXHashDiscs.cs
new file mode 100644
index 0000000000..2a927733eb
--- /dev/null
+++ b/BizHawk.Client.EmuHawk/config/PSX/PSXHashDiscs.cs
@@ -0,0 +1,43 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+
+using BizHawk.Client.Common;
+using BizHawk.Emulation.DiscSystem;
+using BizHawk.Emulation.Cores.Sony.PSX;
+
+namespace BizHawk.Client.EmuHawk
+{
+ public partial class PSXHashDiscs : Form
+ {
+ public PSXHashDiscs()
+ {
+ InitializeComponent();
+ }
+
+ private void btnHash_Click(object sender, EventArgs e)
+ {
+ txtHashes.Text = "";
+ btnHash.Enabled = false;
+ try
+ {
+ var psx = ((Octoshock)Global.Emulator);
+ foreach (var disc in psx.Discs)
+ {
+ DiscHasher hasher = new DiscHasher(disc);
+ uint hash = hasher.Calculate_PSX_RedumpHash();
+ txtHashes.Text += string.Format("{0:X8} {1}\r\n", hash, disc.Name);
+ }
+ }
+ finally
+ {
+ btnHash.Enabled = true;
+ }
+ }
+ }
+}
diff --git a/BizHawk.Client.EmuHawk/config/PSX/PSXHashDiscs.resx b/BizHawk.Client.EmuHawk/config/PSX/PSXHashDiscs.resx
new file mode 100644
index 0000000000..1af7de150c
--- /dev/null
+++ b/BizHawk.Client.EmuHawk/config/PSX/PSXHashDiscs.resx
@@ -0,0 +1,120 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
\ No newline at end of file
diff --git a/BizHawk.Emulation.Cores/Consoles/Sony/PSX/Octoshock.cs b/BizHawk.Emulation.Cores/Consoles/Sony/PSX/Octoshock.cs
index daa0bf3e90..75db10fd13 100644
--- a/BizHawk.Emulation.Cores/Consoles/Sony/PSX/Octoshock.cs
+++ b/BizHawk.Emulation.Cores/Consoles/Sony/PSX/Octoshock.cs
@@ -191,29 +191,16 @@ namespace BizHawk.Emulation.Cores.Sony.PSX
{
cbActivity(this);
- //lets you check subcode generation by logging it and checking against the CCD subcode
- bool subcodeLog = false;
- bool readLog = false;
-
- if (subcodeLog) Console.Write("{0}|", lba);
- else if (readLog) Console.WriteLine("Read Sector: " + lba);
-
//todo - cache reader
DiscSystem.DiscSectorReader dsr = new DiscSystem.DiscSectorReader(Disc);
dsr.ReadLBA_2448(lba, SectorBuffer, 0);
Marshal.Copy(SectorBuffer, 0, new IntPtr(dst), 2448);
- //if (subcodeLog)
- //{
- // for (int i = 0; i < 24; i++)
- // Console.Write("{0:X2}", *((byte*)dst + 2352 + i));
- // Console.WriteLine();
- //}
-
return OctoshockDll.SHOCK_OK;
}
}
+ public List Discs;
List discInterfaces = new List();
DiscInterface currentDiscInterface;
@@ -238,6 +225,8 @@ namespace BizHawk.Emulation.Cores.Sony.PSX
_Settings = (Settings)settings ?? new Settings();
_SyncSettings = (SyncSettings)syncSettings ?? new SyncSettings();
+ Discs = discs;
+
Attach();
HackyDiscButtons.AddRange(discNames);
diff --git a/BizHawk.Emulation.DiscSystem/Disc.cs b/BizHawk.Emulation.DiscSystem/Disc.cs
index 5fc2acae9e..e9334f3485 100644
--- a/BizHawk.Emulation.DiscSystem/Disc.cs
+++ b/BizHawk.Emulation.DiscSystem/Disc.cs
@@ -42,6 +42,11 @@ namespace BizHawk.Emulation.DiscSystem
///
public DiscStructure.Session Session1 { get { return Structure.Sessions[1]; } }
+ ///
+ /// The name of a disc. Loosely based on the filename. Just for informational purposes.
+ ///
+ public string Name;
+
///
/// The DiscTOCRaw corresponding to the RawTOCEntries.
/// TODO - there's one of these for every session, so... having one here doesnt make sense
diff --git a/BizHawk.Emulation.DiscSystem/DiscMountJob.cs b/BizHawk.Emulation.DiscSystem/DiscMountJob.cs
index 64a0fd3539..4850da25de 100644
--- a/BizHawk.Emulation.DiscSystem/DiscMountJob.cs
+++ b/BizHawk.Emulation.DiscSystem/DiscMountJob.cs
@@ -63,6 +63,8 @@ namespace BizHawk.Emulation.DiscSystem
if (OUT_Disc != null)
{
+ OUT_Disc.Name = Path.GetFileName(IN_FromPath);
+
//generate toc and structure:
//1. TOCRaw from RawTOCEntries
var tocSynth = new Synthesize_DiscTOC_From_RawTOCEntries_Job() { Entries = OUT_Disc.RawTOCEntries };