From f60a4a07e778019e9583c216f073493bf8d7721b Mon Sep 17 00:00:00 2001
From: adelikat <adelikat@tasvideos.org>
Date: Mon, 17 Jul 2017 20:36:04 -0500
Subject: [PATCH] UI for multi-disc Sega-CD support.  Note that the ui will
 technically allow you to bundle a mix of dics and carts, but tom loading for
 now will only take multiple discs.

---
 BizHawk.Client.Common/RomLoader.cs                       | 9 +++++++++
 .../tools/MultiDiskBundler/MultiDiskBundler.Designer.cs  | 9 +++++----
 2 files changed, 14 insertions(+), 4 deletions(-)

diff --git a/BizHawk.Client.Common/RomLoader.cs b/BizHawk.Client.Common/RomLoader.cs
index 546658b4e9..9a9e0338ab 100644
--- a/BizHawk.Client.Common/RomLoader.cs
+++ b/BizHawk.Client.Common/RomLoader.cs
@@ -729,6 +729,15 @@ namespace BizHawk.Client.Common
 									nextEmulator = new Tst(nextComm, pcfxDiscs,
 										(Tst.Settings)GetCoreSettings<Tst>(), (Tst.SyncSettings)GetCoreSyncSettings<Tst>());
 									break;
+								case "GEN":
+									// We are assuming discs only, for now
+									var genDiscs = DiscsFromXml(xmlGame, "GEN", DiscType.MegaCD);
+									if (!genDiscs.Any())
+									{
+										return false;
+									}
+									nextEmulator = new GPGX(nextComm, null, genDiscs, GetCoreSettings<GPGX>(), GetCoreSyncSettings<GPGX>());
+									break;
 								default:
 									return false;
 							}
diff --git a/BizHawk.Client.EmuHawk/tools/MultiDiskBundler/MultiDiskBundler.Designer.cs b/BizHawk.Client.EmuHawk/tools/MultiDiskBundler/MultiDiskBundler.Designer.cs
index def046ab2e..e159fc03ca 100644
--- a/BizHawk.Client.EmuHawk/tools/MultiDiskBundler/MultiDiskBundler.Designer.cs
+++ b/BizHawk.Client.EmuHawk/tools/MultiDiskBundler/MultiDiskBundler.Designer.cs
@@ -138,12 +138,13 @@
             this.SystemDropDown.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
             this.SystemDropDown.FormattingEnabled = true;
             this.SystemDropDown.Items.AddRange(new object[] {
-            "GB",
             "AppleII",
-            "PSX",
             "C64",
-            "SAT",
-            "PCFX"});
+            "GB",
+            "GEN",
+            "PCFX",
+            "PSX",
+            "SAT"});
             this.SystemDropDown.Location = new System.Drawing.Point(425, 75);
             this.SystemDropDown.Name = "SystemDropDown";
             this.SystemDropDown.Size = new System.Drawing.Size(69, 21);