diff --git a/BizHawk.MultiClient/BizHawk.MultiClient.csproj b/BizHawk.MultiClient/BizHawk.MultiClient.csproj
index 47f940d230..755593c0c4 100644
--- a/BizHawk.MultiClient/BizHawk.MultiClient.csproj
+++ b/BizHawk.MultiClient/BizHawk.MultiClient.csproj
@@ -480,9 +480,6 @@
SNESOptions.cs
-
- Component
-
Form
@@ -501,7 +498,6 @@
HexFind.cs
-
Component
@@ -543,70 +539,98 @@
TraceLogger.cs
-
+
+ Component
+
+
+
+ Component
+
+
+ Component
+
+
+ Component
+
+
UserControl
-
+
VirtualPadA78.cs
-
+
UserControl
-
+
VirtualPadA78Control.cs
-
+
UserControl
-
+
VirtualPadC64Keyboard.cs
-
+
UserControl
-
+
VirtualPadColeco.cs
-
+
Form
-
+
VirtualPadForm.cs
-
+
Component
-
+
Component
-
+
Component
-
+
Component
-
+
UserControl
-
+
VirtualPadN64.cs
-
- UserControl
-
-
- VirtualPadSaturn.cs
-
-
- UserControl
-
-
- VirtualPadSaturnControl.cs
-
-
+
Component
-
+
+ Component
+
+
+ Component
+
+
+ UserControl
+
+
+ VirtualPadSaturn.cs
+
+
+ UserControl
+
+
+ VirtualPadSaturnControl.cs
+
+
+ Component
+
+
+ Component
+
+
+ Component
+
+
Component
@@ -762,28 +786,31 @@
Resources.resx
True
-
+
+ VirtualPad.cs
+
+
VirtualPadA78.cs
-
+
VirtualPadA78Control.cs
-
+
VirtualPadC64Keyboard.cs
-
+
VirtualPadColeco.cs
-
+
VirtualPadForm.cs
-
+
VirtualPadN64.cs
-
+
VirtualPadSaturn.cs
-
+
VirtualPadSaturnControl.cs
@@ -825,9 +852,6 @@
LuaFunctionList.cs
-
- Component
-
Form
@@ -892,27 +916,6 @@
ToolBox.cs
-
- Component
-
-
- Component
-
-
- Component
-
-
- Component
-
-
- Component
-
-
- Component
-
-
- Component
-
@@ -999,10 +1002,6 @@
TraceLogger.cs
-
- VirtualPad.cs
- Designer
-
HexEditor.cs
Designer
diff --git a/BizHawk.MultiClient/BizHawk.MultiClient_v4.5.csproj b/BizHawk.MultiClient/BizHawk.MultiClient_v4.5.csproj
index 06df2c9589..73bbb81a03 100644
--- a/BizHawk.MultiClient/BizHawk.MultiClient_v4.5.csproj
+++ b/BizHawk.MultiClient/BizHawk.MultiClient_v4.5.csproj
@@ -488,9 +488,6 @@
SNESOptions.cs
-
- Component
-
Form
@@ -503,7 +500,6 @@
HexFind.cs
-
Component
@@ -545,70 +541,98 @@
TraceLogger.cs
-
+
+ Component
+
+
+
+ Component
+
+
+ Component
+
+
+ Component
+
+
UserControl
-
- VirtualPadN64.cs
-
-
- UserControl
-
-
+
VirtualPadA78.cs
-
+
UserControl
-
+
VirtualPadA78Control.cs
-
+
UserControl
-
+
VirtualPadC64Keyboard.cs
-
+
UserControl
-
+
VirtualPadColeco.cs
-
+
Form
-
+
VirtualPadForm.cs
-
+
Component
-
+
Component
-
+
Component
-
+
Component
-
+
UserControl
-
+
+ VirtualPadN64.cs
+
+
+ Component
+
+
+ Component
+
+
+ Component
+
+
+ UserControl
+
+
VirtualPadSaturn.cs
-
+
UserControl
-
+
VirtualPadSaturnControl.cs
-
+
Component
-
+
+ Component
+
+
+ Component
+
+
Component
@@ -762,28 +786,31 @@
Resources.resx
True
-
- VirtualPadN64.cs
+
+ VirtualPad.cs
-
+
VirtualPadA78.cs
-
+
VirtualPadA78Control.cs
-
+
VirtualPadC64Keyboard.cs
-
+
VirtualPadColeco.cs
-
+
VirtualPadForm.cs
-
+
+ VirtualPadN64.cs
+
+
VirtualPadSaturn.cs
-
+
VirtualPadSaturnControl.cs
@@ -825,9 +852,6 @@
LuaFunctionList.cs
-
- Component
-
Form
@@ -892,27 +916,6 @@
ToolBox.cs
-
- Component
-
-
- Component
-
-
- Component
-
-
- Component
-
-
- Component
-
-
- Component
-
-
- Component
-
@@ -999,10 +1002,6 @@
TraceLogger.cs
-
- VirtualPad.cs
- Designer
-
HexEditor.cs
Designer
diff --git a/BizHawk.MultiClient/tools/AnalogControlPanel.cs b/BizHawk.MultiClient/tools/VirtualPads/AnalogControlPanel.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/AnalogControlPanel.cs
rename to BizHawk.MultiClient/tools/VirtualPads/AnalogControlPanel.cs
diff --git a/BizHawk.MultiClient/tools/IVirtualPad.cs b/BizHawk.MultiClient/tools/VirtualPads/IVirtualPad.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/IVirtualPad.cs
rename to BizHawk.MultiClient/tools/VirtualPads/IVirtualPad.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPad.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPad.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPad.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPad.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPad.resx b/BizHawk.MultiClient/tools/VirtualPads/VirtualPad.resx
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPad.resx
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPad.resx
diff --git a/BizHawk.MultiClient/tools/VirtualPadA26.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadA26.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadA26.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadA26.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadA26Control.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadA26Control.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadA26Control.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadA26Control.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadA78.Designer.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadA78.Designer.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadA78.Designer.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadA78.Designer.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadA78.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadA78.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadA78.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadA78.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadA78.resx b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadA78.resx
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadA78.resx
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadA78.resx
diff --git a/BizHawk.MultiClient/tools/VirtualPadA78Control.Designer.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadA78Control.Designer.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadA78Control.Designer.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadA78Control.Designer.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadA78Control.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadA78Control.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadA78Control.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadA78Control.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadA78Control.resx b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadA78Control.resx
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadA78Control.resx
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadA78Control.resx
diff --git a/BizHawk.MultiClient/tools/VirtualPadC64Keyboard.Designer.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadC64Keyboard.Designer.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadC64Keyboard.Designer.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadC64Keyboard.Designer.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadC64Keyboard.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadC64Keyboard.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadC64Keyboard.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadC64Keyboard.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadC64Keyboard.resx b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadC64Keyboard.resx
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadC64Keyboard.resx
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadC64Keyboard.resx
diff --git a/BizHawk.MultiClient/tools/VirtualPadColeco.Designer.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadColeco.Designer.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadColeco.Designer.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadColeco.Designer.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadColeco.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadColeco.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadColeco.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadColeco.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadColeco.resx b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadColeco.resx
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadColeco.resx
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadColeco.resx
diff --git a/BizHawk.MultiClient/tools/VirtualPadForm.Designer.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadForm.Designer.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadForm.Designer.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadForm.Designer.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadForm.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadForm.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadForm.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadForm.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadForm.resx b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadForm.resx
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadForm.resx
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadForm.resx
diff --git a/BizHawk.MultiClient/tools/VirtualPadGB.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadGB.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadGB.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadGB.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadGBA.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadGBA.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadGBA.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadGBA.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadGBControl.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadGBControl.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadGBControl.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadGBControl.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadGen3Button.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadGen3Button.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadGen3Button.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadGen3Button.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadN64.Designer.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadN64.Designer.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadN64.Designer.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadN64.Designer.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadN64.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadN64.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadN64.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadN64.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadN64.resx b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadN64.resx
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadN64.resx
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadN64.resx
diff --git a/BizHawk.MultiClient/tools/VirtualPadNES.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadNES.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadNES.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadNES.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadNESControl.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadNESControl.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadNESControl.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadNESControl.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadPCE.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadPCE.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadPCE.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadPCE.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadSMS.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadSMS.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadSMS.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadSMS.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadSMSControl.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadSMSControl.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadSMSControl.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadSMSControl.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadSNES.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadSNES.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadSNES.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadSNES.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadSNESControl.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadSNESControl.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadSNESControl.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadSNESControl.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadSaturn.Designer.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadSaturn.Designer.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadSaturn.Designer.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadSaturn.Designer.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadSaturn.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadSaturn.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadSaturn.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadSaturn.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadSaturn.resx b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadSaturn.resx
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadSaturn.resx
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadSaturn.resx
diff --git a/BizHawk.MultiClient/tools/VirtualPadSaturnControl.Designer.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadSaturnControl.Designer.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadSaturnControl.Designer.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadSaturnControl.Designer.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadSaturnControl.cs b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadSaturnControl.cs
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadSaturnControl.cs
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadSaturnControl.cs
diff --git a/BizHawk.MultiClient/tools/VirtualPadSaturnControl.resx b/BizHawk.MultiClient/tools/VirtualPads/VirtualPadSaturnControl.resx
similarity index 100%
rename from BizHawk.MultiClient/tools/VirtualPadSaturnControl.resx
rename to BizHawk.MultiClient/tools/VirtualPads/VirtualPadSaturnControl.resx