diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/A26Schema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/A26Schema.cs
index 9bece296bd..e61cdb3c54 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/A26Schema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/A26Schema.cs
@@ -56,36 +56,31 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(23, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(23, 36),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 36)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(44, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(44, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Button",
 						DisplayName = "B",
-						Location = new Point(124, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(124, 24)
 					}
 				}
 			};
@@ -105,15 +100,13 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Button 1",
 						DisplayName = "B1",
-						Location = new Point(5, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(5, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Button 2",
 						DisplayName = "B2",
-						Location = new Point(5, 48),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(5, 48)
 					},
 					new PadSchema.ButtonSchema
 					{
@@ -134,7 +127,7 @@ namespace BizHawk.Client.EmuHawk
 						TargetSize = new Size(128, 69),
 						MaxValue = 127,
 						MinValue = -127
-					},
+					}
 				}
 			};
 		}
@@ -153,50 +146,43 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(23, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(23, 36),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 36)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(44, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(44, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Button",
 						DisplayName = "B",
-						Location = new Point(132, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(132, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Button 1",
 						DisplayName = "B1",
-						Location = new Point(68, 36),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(68, 36)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Button 2",
 						DisplayName = "B2",
-						Location = new Point(100, 36),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(100, 36)
 					}
 				}
 			};
@@ -216,8 +202,7 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Button",
 						DisplayName = "B1",
-						Location = new Point(5, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(5, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
@@ -238,7 +223,7 @@ namespace BizHawk.Client.EmuHawk
 						TargetSize = new Size(128, 69),
 						MaxValue = 127,
 						MinValue = -127
-					},
+					}
 				}
 			};
 		}
@@ -255,35 +240,30 @@ namespace BizHawk.Client.EmuHawk
 					new PadSchema.ButtonSchema
 					{
 						Name = "Select",
-						Location = new Point(10, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(10, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Reset",
-						Location = new Point(60, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(60, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Power",
-						Location = new Point(108, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(108, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Toggle Left Difficulty",
 						DisplayName = "Left Difficulty",
-						Location = new Point(10, 40),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(10, 40)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Toggle Right Difficulty",
 						DisplayName = "Right Difficulty",
-						Location = new Point(92, 40),
-						Type = PadSchema.PadInputType.Boolean
-					},
+						Location = new Point(92, 40)
+					}
 				}
 			};
 		}
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/A78Schema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/A78Schema.cs
index 9781fae108..d8ced24ca4 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/A78Schema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/A78Schema.cs
@@ -65,43 +65,37 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(23, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(23, 36),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 36)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(44, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(44, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Trigger",
 						DisplayName = "1",
-						Location = new Point(120, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(120, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Trigger 2",
 						DisplayName = "2",
-						Location = new Point(145, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(145, 24)
 					}
 				}
 			};
@@ -121,36 +115,31 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(23, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(23, 36),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 36)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(44, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(44, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Button",
 						DisplayName = "1",
-						Location = new Point(120, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(120, 24)
 					}
 				}
 			};
@@ -176,8 +165,7 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Trigger",
 						DisplayName = "1",
-						Location = new Point(12, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(12, 90)
 					}
 				}
 			};
@@ -201,15 +189,14 @@ namespace BizHawk.Client.EmuHawk
 						TargetSize = new Size(256, 240),
 						SecondaryNames = new[]
 						{
-							$"P{controller} HPos",
+							$"P{controller} HPos"
 						}
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Trigger",
 						DisplayName = "Trigger",
-						Location = new Point(284, 17),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(284, 17)
 					}
 				}
 			};
@@ -227,32 +214,27 @@ namespace BizHawk.Client.EmuHawk
 					new PadSchema.ButtonSchema
 					{
 						Name = "Select",
-						Location = new Point(10, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(10, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Reset",
-						Location = new Point(60, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(60, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Power",
-						Location = new Point(108, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(108, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Pause",
-						Location = new Point(158, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(158, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "BW",
-						Location = new Point(158, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(158, 15)
 					}
 				}
 			};
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/AppleIISchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/AppleIISchema.cs
index 4ca65da58c..2c59e6c131 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/AppleIISchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/AppleIISchema.cs
@@ -29,86 +29,72 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = "Escape",
 						DisplayName = "Esc",
-						Location = new Point(10, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(10, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "1",
-						Location = new Point(46, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(46, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "2",
-						Location = new Point(70, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(70, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "3",
-						Location = new Point(94, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(94, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "4",
-						Location = new Point(118, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(118, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "5",
-						Location = new Point(142, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(142, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "6",
-						Location = new Point(166, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(166, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "7",
-						Location = new Point(190, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(190, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "8",
-						Location = new Point(214, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(214, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "9",
-						Location = new Point(238, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(238, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "0",
-						Location = new Point(262, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(262, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "-",
-						Location = new Point(286, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(286, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "=",
-						Location = new Point(307, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(307, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Delete",
-						Location = new Point(331, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(331, 18)
 					},
 					
 					/************************** Row 2 **************************/
@@ -116,88 +102,74 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = "Tab",
 						DisplayName = " Tab ",
-						Location = new Point(10, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(10, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Q",
-						Location = new Point(52, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(52, 42)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = "W",
-						Location = new Point(78, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(78, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "E",
-						Location = new Point(106, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(106, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "R",
-						Location = new Point(130, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(130, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "T",
-						Location = new Point(156, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(156, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Y",
-						Location = new Point(180, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(180, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "U",
-						Location = new Point(204, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(204, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "I",
-						Location = new Point(230, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(230, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "O",
-						Location = new Point(250, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(250, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "P",
-						Location = new Point(276, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(276, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "[",
-						Location = new Point(302, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(302, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "]",
-						Location = new Point(325, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(325, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "\\",
 						DisplayName = " \\ ",
-						Location = new Point(349, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(349, 42)
 					},
 
 					/************************** Row 3 **************************/
@@ -205,80 +177,66 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = "Control",
 						DisplayName = " Control ",
-						Location = new Point(10, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(10, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "A",
-						Location = new Point(66, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(66, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "S",
-						Location = new Point(90, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(90, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "D",
-						Location = new Point(114, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(114, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "F",
-						Location = new Point(140, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(140, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "G",
-						Location = new Point(164, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(164, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "H",
-						Location = new Point(190, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(190, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "J",
-						Location = new Point(216, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(216, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "K",
-						Location = new Point(238, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(238, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
-						Name = "L",
-						Location = new Point(262, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Name = "L"
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = ";",
-						Location = new Point(286, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(286, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "'",
-						Location = new Point(307, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(307, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Return",
-						Location = new Point(328, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(328, 66)
 					},
 
 					/************************** Row 4 **************************/
@@ -286,75 +244,63 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = "Shift",
 						DisplayName = "     Shift     ",
-						Location = new Point(10, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(10, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Z",
-						Location = new Point(80, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(80, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "X",
-						Location = new Point(106, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(106, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "C",
-						Location = new Point(130, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(130, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "V",
-						Location = new Point(154, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(154, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "B",
-						Location = new Point(178, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(178, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "N",
-						Location = new Point(202, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(202, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "M",
-						Location = new Point(226, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(226, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = ",",
-						Location = new Point(252, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(252, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = ".",
-						Location = new Point(272, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(272, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "/",
-						Location = new Point(292, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(292, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Shift",
 						DisplayName = "    Shift    ",
-						Location = new Point(315, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(315, 90)
 					},
 
 					/************************** Row 5 **************************/
@@ -363,70 +309,61 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = "Caps Lock",
 						DisplayName = "Caps",
-						Location = new Point(10, 114),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(10, 114)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "`",
 						DisplayName = "~",
-						Location = new Point(52, 114),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(52, 114)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "White Apple",
 						DisplayName = "<",
-						Location = new Point(96, 114),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(96, 114)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = "Space",
 						DisplayName = "                Space                ",
-						Location = new Point(120, 114),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(120, 114)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = "Black Apple",
 						DisplayName = ">",
-						Location = new Point(265, 114),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(265, 114)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = "Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(289, 114),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(289, 114)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = "Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(311, 114),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(311, 114)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = "Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(333, 114),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(333, 114)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = "Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(355, 114),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(355, 114)
 					}
 				}
 			};
@@ -445,16 +382,14 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = "Next Disk",
 						DisplayName = "Next",
-						Location = new Point(10, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(10, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Previous Disk",
 						DisplayName = "Previous",
-						Location = new Point(50, 18),
-						Type = PadSchema.PadInputType.Boolean
-					},
+						Location = new Point(50, 18)
+					}
 				}
 			};
 		}
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/C64Schema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/C64Schema.cs
index e6ced9059a..8cb8557bbe 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/C64Schema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/C64Schema.cs
@@ -30,36 +30,31 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(23, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(23, 36),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 36)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(44, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(44, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Button",
 						DisplayName = "B",
-						Location = new Point(124, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(124, 24)
 					}
 				}
 			};
@@ -78,463 +73,397 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = "Key Left Arrow",
 						DisplayName = "←",
-						Location = new Point(16, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(16, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key 1",
 						DisplayName = "1",
-						Location = new Point(46, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(46, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key 2",
 						DisplayName = "2",
-						Location = new Point(70, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(70, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key 3",
 						DisplayName = "3",
-						Location = new Point(94, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(94, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key 4",
 						DisplayName = "4",
-						Location = new Point(118, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(118, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key 5",
 						DisplayName = "5",
-						Location = new Point(142, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(142, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key 6",
 						DisplayName = "6",
-						Location = new Point(166, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(166, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key 7",
 						DisplayName = "7",
-						Location = new Point(190, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(190, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key 8",
 						DisplayName = "8",
-						Location = new Point(214, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(214, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key 9",
 						DisplayName = "9",
-						Location = new Point(238, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(238, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key 0",
 						DisplayName = "0",
-						Location = new Point(262, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(262, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Plus",
 						DisplayName = "+",
-						Location = new Point(286, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(286, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Minus",
 						DisplayName = "-",
-						Location = new Point(310, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(310, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Pound",
 						DisplayName = "£",
-						Location = new Point(330, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(330, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Clear/Home",
 						DisplayName = "C/H",
-						Location = new Point(354, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(354, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Insert/Delete",
 						DisplayName = "I/D",
-						Location = new Point(392, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(392, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key F1",
 						DisplayName = "F 1",
-						Location = new Point(450, 18),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(450, 18)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key F3",
 						DisplayName = "F 3",
-						Location = new Point(450, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(450, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key F5",
 						DisplayName = "F 5",
-						Location = new Point(450, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(450, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key F7",
 						DisplayName = "F 7",
-						Location = new Point(450, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(450, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Control",
 						DisplayName = "CTRL",
-						Location = new Point(16, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(16, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Q",
 						DisplayName = "Q",
-						Location = new Point(62, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(62, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key W",
 						DisplayName = "W",
-						Location = new Point(88, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(88, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key E",
 						DisplayName = "E",
-						Location = new Point(116, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(116, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key R",
 						DisplayName = "R",
-						Location = new Point(140, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(140, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key T",
 						DisplayName = "T",
-						Location = new Point(166, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(166, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Y",
 						DisplayName = "Y",
-						Location = new Point(190, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(190, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key U",
 						DisplayName = "U",
-						Location = new Point(214, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(214, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key I",
 						DisplayName = "I",
-						Location = new Point(240, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(240, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key O",
 						DisplayName = "O",
-						Location = new Point(260, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(260, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key P",
 						DisplayName = "P",
-						Location = new Point(286, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(286, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key At",
 						DisplayName = "@",
-						Location = new Point(310, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(310, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Asterisk",
 						DisplayName = "*",
-						Location = new Point(338, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(338, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Up Arrow",
 						DisplayName = "↑",
-						Location = new Point(360, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(360, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Restore",
 						DisplayName = "RST",
-						Location = new Point(390, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(390, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Run/Stop",
 						DisplayName = "R/S",
-						Location = new Point(12, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(12, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Lck",
 						DisplayName = "Lck",
-						Location = new Point(50, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(50, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key A",
 						DisplayName = "A",
-						Location = new Point(86, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(86, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key S",
 						DisplayName = "S",
-						Location = new Point(110, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(110, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key D",
 						DisplayName = "D",
-						Location = new Point(134, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(134, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key F",
 						DisplayName = "F",
-						Location = new Point(160, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(160, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key G",
 						DisplayName = "G",
-						Location = new Point(184, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(184, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key H",
 						DisplayName = "H",
-						Location = new Point(210, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(210, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key J",
 						DisplayName = "J",
-						Location = new Point(236, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(236, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key K",
 						DisplayName = "K",
-						Location = new Point(258, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(258, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key L",
 						DisplayName = "L",
-						Location = new Point(282, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(282, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Colon",
 						DisplayName = ":",
-						Location = new Point(306, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(306, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Semicolon",
 						DisplayName = ";",
-						Location = new Point(326, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(326, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Equal",
 						DisplayName = "=",
-						Location = new Point(346, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(346, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Return",
 						DisplayName = "Return",
-						Location = new Point(370, 66),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(370, 66)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Commodore",
 						DisplayName = "C64",
-						Location = new Point(8, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(8, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Left Shift",
 						DisplayName = "Shift",
-						Location = new Point(44, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(44, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Z",
 						DisplayName = "Z",
-						Location = new Point(82, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(82, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key X",
 						DisplayName = "X",
-						Location = new Point(106, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(106, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key C",
 						DisplayName = "C",
-						Location = new Point(130, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(130, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key V",
 						DisplayName = "V",
-						Location = new Point(154, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(154, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key B",
 						DisplayName = "B",
-						Location = new Point(178, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(178, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key N",
 						DisplayName = "N",
-						Location = new Point(202, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(202, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key M",
 						DisplayName = "M",
-						Location = new Point(226, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(226, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Comma",
 						DisplayName = ",",
-						Location = new Point(252, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(252, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Period",
 						DisplayName = ".",
-						Location = new Point(272, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(272, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Slash",
 						DisplayName = "/",
-						Location = new Point(292, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(292, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Right Shift",
 						DisplayName = "Shift",
-						Location = new Point(314, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(314, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Cursor Up/Down",
 						DisplayName = "Csr U",
-						Location = new Point(352, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(352, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Cursor Left/Right",
 						DisplayName = "Csr L",
-						Location = new Point(396, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(396, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Key Space",
 						DisplayName = "                          Space                          ",
-						Location = new Point(120, 114),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(120, 114)
 					}
 				}
 			};
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/ColecoSchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/ColecoSchema.cs
index 4ba356a9a3..5e87fd8a17 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/ColecoSchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/ColecoSchema.cs
@@ -49,131 +49,113 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(50, 11),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(50, 11)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(50, 32),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(50, 32)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(29, 22),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(29, 22)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(71, 22),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(71, 22)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} L",
 						DisplayName = "L",
-						Location = new Point(3, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(3, 42)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} R",
 						DisplayName = "R",
-						Location = new Point(100, 42),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(100, 42)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 1",
 						DisplayName = "1",
-						Location = new Point(27, 85),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(27, 85)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 2",
 						DisplayName = "2",
-						Location = new Point(50, 85),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(50, 85)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 3",
 						DisplayName = "3",
-						Location = new Point(73, 85),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(73, 85)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 4",
 						DisplayName = "4",
-						Location = new Point(27, 108),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(27, 108)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 5",
 						DisplayName = "5",
-						Location = new Point(50, 108),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(50, 108)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 6",
 						DisplayName = "6",
-						Location = new Point(73, 108),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(73, 108)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 7",
 						DisplayName = "7",
-						Location = new Point(27, 131),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(27, 131)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 8",
 						DisplayName = "8",
-						Location = new Point(50, 131),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(50, 131)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 9",
 						DisplayName = "9",
-						Location = new Point(73, 131),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(73, 131)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Star",
 						DisplayName = "*",
-						Location = new Point(27, 154),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(27, 154)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 0",
 						DisplayName = "0",
-						Location = new Point(50, 154),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(50, 154)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Pound",
 						DisplayName = "#",
-						Location = new Point(73, 154),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(73, 154)
 					}
 				}
 			};
@@ -200,9 +182,8 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Pedal",
 						DisplayName = "Pedal",
-						Location = new Point(6, 224),
-						Type = PadSchema.PadInputType.Boolean
-					},
+						Location = new Point(6, 224)
+					}
 				}
 			};
 		}
@@ -219,117 +200,101 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(50, 11),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(50, 11)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(50, 32),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(50, 32)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(29, 22),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(29, 22)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(71, 22),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(71, 22)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 1",
 						DisplayName = "1",
-						Location = new Point(27, 85),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(27, 85)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 2",
 						DisplayName = "2",
-						Location = new Point(50, 85),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(50, 85)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 3",
 						DisplayName = "3",
-						Location = new Point(73, 85),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(73, 85)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 4",
 						DisplayName = "4",
-						Location = new Point(27, 108),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(27, 108)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 5",
 						DisplayName = "5",
-						Location = new Point(50, 108),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(50, 108)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 6",
 						DisplayName = "6",
-						Location = new Point(73, 108),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(73, 108)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 7",
 						DisplayName = "7",
-						Location = new Point(27, 131),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(27, 131)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 8",
 						DisplayName = "8",
-						Location = new Point(50, 131),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(50, 131)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 9",
 						DisplayName = "9",
-						Location = new Point(73, 131),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(73, 131)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Star",
 						DisplayName = "*",
-						Location = new Point(27, 154),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(27, 154)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 0",
 						DisplayName = "0",
-						Location = new Point(50, 154),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(50, 154)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Pound",
 						DisplayName = "#",
-						Location = new Point(73, 154),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(73, 154)
 					},
 
 					new PadSchema.ButtonSchema
@@ -347,30 +312,26 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Yellow",
 						DisplayName = "Yellow",
-						Location = new Point(126, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(126, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Red",
 						DisplayName = "Red",
-						Location = new Point(126, 40),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(126, 40)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Purple",
 						DisplayName = "Purple",
-						Location = new Point(126, 65),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(126, 65)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Blue",
 						DisplayName = "Blue",
-						Location = new Point(126, 90),
-						Type = PadSchema.PadInputType.Boolean
-					},
+						Location = new Point(126, 90)
+					}
 				}
 			};
 		}
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/DualGBSchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/DualGBSchema.cs
index 68db62fa24..3c5c48438c 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/DualGBSchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/DualGBSchema.cs
@@ -27,57 +27,49 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(14, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 12)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(14, 56),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 56)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(24, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(24, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B",
 						DisplayName = "B",
-						Location = new Point(122, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(122, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} A",
 						DisplayName = "A",
-						Location = new Point(146, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(146, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Select",
 						DisplayName = "s",
-						Location = new Point(52, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(52, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Start",
 						DisplayName = "S",
-						Location = new Point(74, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(74, 34)
 					}
 				}
 			};
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/GBASchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/GBASchema.cs
index 7f1eb8aa47..16f080c74a 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/GBASchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/GBASchema.cs
@@ -82,67 +82,57 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = "Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(29, 17),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(29, 17)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(29, 61),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(29, 61)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(17, 39),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(17, 39)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(39, 39),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(39, 39)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "B",
-						Location = new Point(130, 39),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(130, 39)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "A",
-						Location = new Point(154, 39),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(154, 39)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Select",
 						DisplayName = "s",
-						Location = new Point(64, 39),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(64, 39)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Start",
 						DisplayName = "S",
-						Location = new Point(86, 39),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(86, 39)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "L",
-						Location = new Point(2, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 12)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "R",
-						Location = new Point(166, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(166, 12)
 					}
 				}
 			};
@@ -160,8 +150,7 @@ namespace BizHawk.Client.EmuHawk
 					new PadSchema.ButtonSchema
 					{
 						Name = "Power",
-						Location = new Point(10, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(10, 15)
 					}
 				}
 			};
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/GBSchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/GBSchema.cs
index 3839c167e4..7547354d33 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/GBSchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/GBSchema.cs
@@ -42,55 +42,47 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = "Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(14, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 12)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(14, 56),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 56)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(24, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(24, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "B",
-						Location = new Point(122, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(122, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "A",
-						Location = new Point(146, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(146, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Select",
 						DisplayName = "s",
-						Location = new Point(52, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(52, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Start",
 						DisplayName = "S",
-						Location = new Point(74, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(74, 34)
 					}
 				}
 			};
@@ -108,8 +100,7 @@ namespace BizHawk.Client.EmuHawk
 					new PadSchema.ButtonSchema
 					{
 						Name = "Power",
-						Location = new Point(10, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(10, 15)
 					}
 				}
 			};
@@ -128,57 +119,49 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = "P1 Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(14, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 12)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "P1 Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(14, 56),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 56)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "P1 Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "P1 Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(24, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(24, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "P1 B",
 						DisplayName = "B",
-						Location = new Point(122, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(122, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "P1 A",
 						DisplayName = "A",
-						Location = new Point(146, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(146, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "P1 Select",
 						DisplayName = "s",
-						Location = new Point(52, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(52, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "P1 Start",
 						DisplayName = "S",
-						Location = new Point(74, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(74, 34)
 					}
 				}
 			};
@@ -196,8 +179,7 @@ namespace BizHawk.Client.EmuHawk
 					new PadSchema.ButtonSchema
 					{
 						Name = "P1 Power",
-						Location = new Point(10, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(10, 15)
 					}
 				}
 			};
@@ -221,7 +203,7 @@ namespace BizHawk.Client.EmuHawk
 						TargetSize = new Size(256, 240),
 						SecondaryNames = new[]
 						{
-							"P1 Tilt Y",
+							"P1 Tilt Y"
 						}
 					}
 				}
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/GGLSchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/GGLSchema.cs
index f926a98cbe..bdde4efdae 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/GGLSchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/GGLSchema.cs
@@ -27,50 +27,43 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(14, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 12)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(14, 56),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 56)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(24, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(24, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Start",
 						DisplayName = "S",
-						Location = new Point(134, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(134, 12)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B1",
 						DisplayName = "1",
-						Location = new Point(122, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(122, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B2",
 						DisplayName = "2",
-						Location = new Point(146, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(146, 34)
 					}
 				}
 			};
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/GenSchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/GenSchema.cs
index 8b340c9b8a..43c009ee4c 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/GenSchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/GenSchema.cs
@@ -78,57 +78,49 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(14, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 12)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(14, 56),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 56)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(24, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(24, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} A",
 						DisplayName = "A",
-						Location = new Point(98, 40),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(98, 40)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B",
 						DisplayName = "B",
-						Location = new Point(122, 40),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(122, 40)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} C",
 						DisplayName = "C",
-						Location = new Point(146, 40),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(146, 40)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Start",
 						DisplayName = "S",
-						Location = new Point(122, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(122, 12)
 					}
 				}
 			};
@@ -146,78 +138,67 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(14, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 12)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(14, 56),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 56)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(24, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(24, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} A",
 						DisplayName = "A",
-						Location = new Point(98, 40),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(98, 40)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B",
 						DisplayName = "B",
-						Location = new Point(122, 40),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(122, 40)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} C",
 						DisplayName = "C",
-						Location = new Point(146, 40),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(146, 40)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} X",
 						DisplayName = "X",
-						Location = new Point(98, 65),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(98, 65)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Y",
 						DisplayName = "Y",
-						Location = new Point(122, 65),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(122, 65)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Z",
 						DisplayName = "Z",
-						Location = new Point(146, 65),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(146, 65)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Start",
 						DisplayName = "S",
-						Location = new Point(122, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(122, 12)
 					}
 				}
 			};
@@ -241,22 +222,20 @@ namespace BizHawk.Client.EmuHawk
 						TargetSize = new Size(320, 240),
 						SecondaryNames = new[]
 						{
-							$"P{controller} Lightgun Y",
+							$"P{controller} Lightgun Y"
 						}
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Lightgun Trigger",
 						DisplayName = "Trigger",
-						Location = new Point(284, 17),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(284, 17)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Lightgun Start",
 						DisplayName = "Start",
-						Location = new Point(284, 40),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(284, 40)
 					}
 				}
 			};
@@ -280,36 +259,32 @@ namespace BizHawk.Client.EmuHawk
 						TargetSize = new Size(520, 570),
 						SecondaryNames = new[]
 						{
-							$"P{controller} Mouse Y",
+							$"P{controller} Mouse Y"
 						}
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Mouse Left",
 						DisplayName = "Left",
-						Location = new Point(365, 17),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(365, 17)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Mouse Center",
 						DisplayName = "Center",
-						Location = new Point(365, 40),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(365, 40)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Mouse Right",
 						DisplayName = "Right",
-						Location = new Point(365, 63),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(365, 63)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Mouse Start",
 						DisplayName = "Start",
-						Location = new Point(365, 86),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(365, 86)
 					}
 				}
 			};
@@ -327,14 +302,12 @@ namespace BizHawk.Client.EmuHawk
 					new PadSchema.ButtonSchema
 					{
 						Name = "Reset",
-						Location = new Point(10, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(10, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Power",
-						Location = new Point(58, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(58, 15)
 					}
 				}
 			};
@@ -352,64 +325,55 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(47, 10),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(47, 10)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(47, 73),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(47, 73)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(15, 43),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(15, 43)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(80, 43),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(80, 43)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} A",
 						DisplayName = "A",
-						Location = new Point(70, 65),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(70, 65)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B",
 						DisplayName = "B",
-						Location = new Point(70, 20),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(70, 20)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} C",
 						DisplayName = "C",
-						Location = new Point(22, 20),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(22, 20)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} A",
 						DisplayName = "A",
-						Location = new Point(22, 65),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(22, 65)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Start",
 						DisplayName = "S",
-						Location = new Point(47, 43),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(47, 43)
 					}
 				}
 			};
@@ -427,57 +391,49 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} A",
 						DisplayName = "A",
-						Location = new Point(98, 40),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(98, 40)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B",
 						DisplayName = "B",
-						Location = new Point(122, 40),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(122, 40)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} C",
 						DisplayName = "C",
-						Location = new Point(146, 40),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(146, 40)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} D",
 						DisplayName = "D",
-						Location = new Point(98, 65),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(98, 65)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} E1",
 						DisplayName = "E¹",
-						Location = new Point(122, 65),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(122, 65)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} E2",
 						DisplayName = "E²",
-						Location = new Point(152, 65),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(152, 65)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Start",
 						DisplayName = "Start",
-						Location = new Point(122, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(122, 12)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Select",
 						DisplayName = "Select",
-						Location = new Point(162, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(162, 12)
 					}
 				}
 			};
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/IntvSchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/IntvSchema.cs
index 58bf02261f..fe068cf113 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/IntvSchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/IntvSchema.cs
@@ -52,115 +52,100 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Key 1",
 						DisplayName = "1",
-						Location = new Point(25, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(25, 15)
+
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 2",
 						DisplayName = "2",
-						Location = new Point(51, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(51, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 3",
 						DisplayName = "3",
-						Location = new Point(77, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(77, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 4",
 						DisplayName = "4",
-						Location = new Point(25, 41),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(25, 41)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 5",
 						DisplayName = "5",
-						Location = new Point(51, 41),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(51, 41)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 6",
 						DisplayName = "6",
-						Location = new Point(77, 41),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(77, 41)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 7",
 						DisplayName = "7",
-						Location = new Point(25, 67),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(25, 67)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 8",
 						DisplayName = "8",
-						Location = new Point(51, 67),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(51, 67)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 9",
 						DisplayName = "9",
-						Location = new Point(77, 67),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(77, 67)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Clear",
 						DisplayName = "C",
-						Location = new Point(25, 93),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(25, 93)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 0",
 						DisplayName = "0",
-						Location = new Point(51, 93),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(51, 93)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Enter",
 						DisplayName = "E",
-						Location = new Point(77, 93),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(77, 93)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Top",
 						DisplayName = "T",
-						Location = new Point(2, 41),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 41)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Top",
 						DisplayName = "T",
-						Location = new Point(100, 41),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(100, 41)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} L",
 						DisplayName = "L",
-						Location = new Point(2, 67),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 67)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} R",
 						DisplayName = "R",
-						Location = new Point(100, 67),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(100, 67)
 					},
 
 					/************** Directional Pad *******************/
@@ -169,114 +154,98 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} N",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(51, 124),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(51, 124)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} NNE",
 						Icon = Properties.Resources.NNE,
-						Location = new Point(63, 145),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(63, 145)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} NNW",
 						Icon = Properties.Resources.NNW,
-						Location = new Point(39, 145),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(39, 145)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} NE",
 						Icon = Properties.Resources.NE,
-						Location = new Point(75, 166),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(75, 166)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} NW",
 						Icon = Properties.Resources.NW,
-						Location = new Point(27, 166),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(27, 166)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} ENE",
 						Icon = Properties.Resources.ENE,
-						Location = new Point(87, 187),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(87, 187)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} WNW",
 						Icon = Properties.Resources.WNW,
-						Location = new Point(15, 187),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(15, 187)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} E",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(99, 208),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(99, 208)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} W",
 						Icon = Properties.Resources.Back,
-						Location = new Point(3, 208),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(3, 208)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} ESE",
 						Icon = Properties.Resources.ESE,
-						Location = new Point(87, 229),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(87, 229)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} WSW",
 						Icon = Properties.Resources.WSW,
-						Location = new Point(15, 229),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(15, 229)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} SE",
 						Icon = Properties.Resources.SE,
-						Location = new Point(75, 250),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(75, 250)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} SW",
 						Icon = Properties.Resources.SW,
-						Location = new Point(27, 250),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(27, 250)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} SSE",
 						Icon = Properties.Resources.SSE,
-						Location = new Point(63, 271),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(63, 271)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} SSW",
 						Icon = Properties.Resources.SSW,
-						Location = new Point(39, 271),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(39, 271)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} S",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(51, 292),
-						Type = PadSchema.PadInputType.Boolean
-					},
+						Location = new Point(51, 292)
+					}
 				}
 			};
 		}
@@ -295,115 +264,99 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Key 1",
 						DisplayName = "1",
-						Location = new Point(91, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(91, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 2",
 						DisplayName = "2",
-						Location = new Point(117, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(117, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 3",
 						DisplayName = "3",
-						Location = new Point(143, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(143, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 4",
 						DisplayName = "4",
-						Location = new Point(91, 41),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(91, 41)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 5",
 						DisplayName = "5",
-						Location = new Point(117, 41),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(117, 41)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 6",
 						DisplayName = "6",
-						Location = new Point(143, 41),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(143, 41)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 7",
 						DisplayName = "7",
-						Location = new Point(91, 67),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(91, 67)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 8",
 						DisplayName = "8",
-						Location = new Point(117, 67),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(117, 67)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 9",
 						DisplayName = "9",
-						Location = new Point(143, 67),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(143, 67)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Clear",
 						DisplayName = "C",
-						Location = new Point(91, 93),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(91, 93)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Key 0",
 						DisplayName = "0",
-						Location = new Point(117, 93),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(117, 93)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Enter",
 						DisplayName = "E",
-						Location = new Point(143, 93),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(143, 93)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Top",
 						DisplayName = "T",
-						Location = new Point(68, 41),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(68, 41)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Top",
 						DisplayName = "T",
-						Location = new Point(166, 41),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(166, 41)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} L",
 						DisplayName = "L",
-						Location = new Point(68, 67),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(68, 67)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} R",
 						DisplayName = "R",
-						Location = new Point(166, 67),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(166, 67)
 					},
 					new PadSchema.ButtonSchema
 					{
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/LynxSchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/LynxSchema.cs
index f9598dfb37..e1a64bd6cc 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/LynxSchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/LynxSchema.cs
@@ -26,64 +26,55 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = "Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(14, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 12)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(14, 56),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 56)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(24, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(24, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "B",
 						DisplayName = "B",
-						Location = new Point(130, 62),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(130, 62)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "A",
 						DisplayName = "A",
-						Location = new Point(154, 62),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(154, 62)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Option 1",
 						DisplayName = "1",
-						Location = new Point(100, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(100, 12)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Option 2",
 						DisplayName = "2",
-						Location = new Point(100, 62),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(100, 62)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Pause",
 						DisplayName = "Pause",
-						Location = new Point(100, 37),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(100, 37)
 					}
 				}
 			};
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/N64Schema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/N64Schema.cs
index 49a3ac37b6..2dd6ca47cf 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/N64Schema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/N64Schema.cs
@@ -35,99 +35,85 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} DPad U",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(24, 230),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(24, 230)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} DPad D",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(24, 251),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(24, 251)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} DPad L",
 						Icon = Properties.Resources.Back,
-						Location = new Point(3, 242),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(3, 242)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} DPad R",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(45, 242),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(45, 242)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} L",
 						DisplayName = "L",
-						Location = new Point(3, 185),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(3, 185)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} R",
 						DisplayName = "R",
-						Location = new Point(191, 185),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(191, 185)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Z",
 						DisplayName = "Z",
-						Location = new Point(81, 269),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(81, 269)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Start",
 						DisplayName = "S",
-						Location = new Point(81, 246),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(81, 246)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B",
 						DisplayName = "B",
-						Location = new Point(127, 246),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(127, 246)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} A",
 						DisplayName = "A",
-						Location = new Point(138, 269),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(138, 269)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} C Up",
 						Icon = Properties.Resources.YellowUp,
-						Location = new Point(173, 210),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(173, 210)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} C Down",
 						Icon = Properties.Resources.YellowDown,
-						Location = new Point(173, 231),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(173, 231)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} C Left",
 						Icon = Properties.Resources.YellowLeft,
-						Location = new Point(152, 221),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(152, 221)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} C Right",
 						Icon = Properties.Resources.YellowRight,
-						Location = new Point(194, 221),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(194, 221)
 					},
 					new PadSchema.ButtonSchema
 					{
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/NdsSchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/NdsSchema.cs
index d18af64b24..c0904de11f 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/NdsSchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/NdsSchema.cs
@@ -25,8 +25,7 @@ namespace BizHawk.Client.EmuHawk.tools.VirtualPads.schema
 					new PadSchema.ButtonSchema
 					{
 						Name = "Lid",
-						Location = new Point(8, 8),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(8, 8)
 					}
 				}
 			};
@@ -44,79 +43,67 @@ namespace BizHawk.Client.EmuHawk.tools.VirtualPads.schema
 					{
 						Name = "Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(14, 79),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 79)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(14, 122),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 122)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 100),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 100)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(24, 100),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(24, 100)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "L",
-						Location = new Point(2, 10),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 10)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "R",
-						Location = new Point(366, 10),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(366, 10)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Start",
-						Location = new Point(341, 179),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(341, 179)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Select",
-						Location = new Point(341, 201),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(341, 201)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = "Y",
-						Location = new Point(341, 100),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(341, 100)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "B",
-						Location = new Point(365, 113),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(365, 113)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "X",
-						Location = new Point(341, 76),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(341, 76)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "A",
 						DisplayName = "A",
-						Location = new Point(366, 86),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(366, 86)
 					},
 
 					// Screen
@@ -134,8 +121,7 @@ namespace BizHawk.Client.EmuHawk.tools.VirtualPads.schema
 					new PadSchema.ButtonSchema
 					{
 						Name = "Touch",
-						Location = new Point(72, 10),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(72, 10)
 					}
 				}
 			};
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/NesSchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/NesSchema.cs
index 46f1367ae6..864068fa43 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/NesSchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/NesSchema.cs
@@ -172,14 +172,12 @@ namespace BizHawk.Client.EmuHawk
 					new PadSchema.ButtonSchema
 					{
 						Name = "Reset",
-						Location = new Point(10, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(10, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Power",
-						Location = new Point(58, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(58, 15)
 					}
 				}
 			};
@@ -192,21 +190,18 @@ namespace BizHawk.Client.EmuHawk
 				new PadSchema.ButtonSchema
 				{
 					Name = "Reset",
-					Location = new Point(10, 15),
-					Type = PadSchema.PadInputType.Boolean
+					Location = new Point(10, 15)
 				},
 				new PadSchema.ButtonSchema
 				{
 					Name = "Power",
-					Location = new Point(58, 15),
-					Type = PadSchema.PadInputType.Boolean
+					Location = new Point(58, 15)
 				},
 				new PadSchema.ButtonSchema
 				{
 					Name = "FDS Eject",
 					DisplayName = "Eject",
-					Location = new Point(108, 15),
-					Type = PadSchema.PadInputType.Boolean
+					Location = new Point(108, 15)
 				}
 			};
 
@@ -216,8 +211,7 @@ namespace BizHawk.Client.EmuHawk
 				{
 					Name = $"FDS Insert {i}",
 					DisplayName = $"Insert {i}",
-					Location = new Point(10 + (i * 58), 50),
-					Type = PadSchema.PadInputType.Boolean
+					Location = new Point(10 + (i * 58), 50)
 				});
 			}
 
@@ -250,57 +244,49 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(23, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(23, 36),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 36)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(44, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(44, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B",
 						DisplayName = "B",
-						Location = new Point(124, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(124, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} A",
 						DisplayName = "A",
-						Location = new Point(147, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(147, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Select",
 						DisplayName = "s",
-						Location = new Point(72, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(72, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Start",
 						DisplayName = "S",
-						Location = new Point(93, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(93, 24)
 					}
 				}
 			};
@@ -321,50 +307,43 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(23, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(23, 36),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 36)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(44, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(44, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B",
 						DisplayName = "B",
-						Location = new Point(124, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(124, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} A",
 						DisplayName = "A",
-						Location = new Point(147, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(147, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Microphone",
 						DisplayName = "Mic",
-						Location = new Point(72, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(72, 24)
 					}
 				}
 			};
@@ -388,15 +367,14 @@ namespace BizHawk.Client.EmuHawk
 						TargetSize = new Size(256, 240),
 						SecondaryNames = new[]
 						{
-							$"P{controller} Zapper Y",
+							$"P{controller} Zapper Y"
 						}
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Fire",
 						DisplayName = "Fire",
-						Location = new Point(284, 17),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(284, 17)
 					}
 				}
 			};
@@ -425,8 +403,7 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Fire",
 						DisplayName = "Fire",
-						Location = new Point(14, 85),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 85)
 					}
 				}
 			};
@@ -445,86 +422,74 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} PP1",
 						DisplayName = "1  ",
-						Location = new Point(14, 17),
-						Type = PadSchema.PadInputType.Boolean,
+						Location = new Point(14, 17)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} PP2",
 						DisplayName = "2  ",
-						Location = new Point(45, 17),
-						Type = PadSchema.PadInputType.Boolean,
+						Location = new Point(45, 17)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} PP3",
 						DisplayName = "3  ",
-						Location = new Point(76, 17),
-						Type = PadSchema.PadInputType.Boolean,
+						Location = new Point(76, 17)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} PP4",
 						DisplayName = "4  ",
-						Location = new Point(107, 17),
-						Type = PadSchema.PadInputType.Boolean,
+						Location = new Point(107, 17)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} PP5",
 						DisplayName = "5  ",
-						Location = new Point(14, 48),
-						Type = PadSchema.PadInputType.Boolean,
+						Location = new Point(14, 48)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} PP6",
 						DisplayName = "6  ",
-						Location = new Point(45, 48),
-						Type = PadSchema.PadInputType.Boolean,
+						Location = new Point(45, 48)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} PP7",
 						DisplayName = "7  ",
-						Location = new Point(76, 48),
-						Type = PadSchema.PadInputType.Boolean,
+						Location = new Point(76, 48)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} PP8",
 						DisplayName = "8  ",
-						Location = new Point(107, 48),
-						Type = PadSchema.PadInputType.Boolean,
+						Location = new Point(107, 48)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} PP9",
 						DisplayName = "9  ",
-						Location = new Point(14, 79),
-						Type = PadSchema.PadInputType.Boolean,
+						Location = new Point(14, 79)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} PP10",
 						DisplayName = "10",
-						Location = new Point(45, 79),
-						Type = PadSchema.PadInputType.Boolean,
+						Location = new Point(45, 79)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} PP11",
 						DisplayName = "11",
-						Location = new Point(76, 79),
-						Type = PadSchema.PadInputType.Boolean,
+						Location = new Point(76, 79)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} PP12",
 						DisplayName = "12",
-						Location = new Point(107, 79),
-						Type = PadSchema.PadInputType.Boolean,
+						Location = new Point(107, 79)
 					}
 				}
 			};
@@ -548,22 +513,20 @@ namespace BizHawk.Client.EmuHawk
 						TargetSize = new Size(256, 240),
 						SecondaryNames = new[]
 						{
-							$"P{controller} Pen Y",
+							$"P{controller} Pen Y"
 						}
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Click",
 						DisplayName = "Click",
-						Location = new Point(284, 17),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(284, 17)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Touch",
 						DisplayName = "Touch",
-						Location = new Point(284, 48),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(284, 48)
 					}
 				}
 			};
@@ -582,505 +545,433 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} F1",
 						DisplayName = "    F1    ",
-						Location = new Point(23, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} F2",
 						DisplayName = "    F2    ",
-						Location = new Point(76, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(76, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} F3",
 						DisplayName = "    F3    ",
-						Location = new Point(129, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(129, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} F4",
 						DisplayName = "    F4    ",
-						Location = new Point(182, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(182, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} F5",
 						DisplayName = "    F5    ",
-						Location = new Point(235, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(235, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} F6",
 						DisplayName = "    F6    ",
-						Location = new Point(288, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(288, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} F7",
 						DisplayName = "    F7    ",
-						Location = new Point(341, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(341, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} F8",
 						DisplayName = "    F8    ",
-						Location = new Point(394, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(394, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} 1",
 						DisplayName = "1",
-						Location = new Point(36, 38),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(36, 38)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} 2",
 						DisplayName = "2",
-						Location = new Point(60, 38),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(60, 38)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} 3",
 						DisplayName = "3",
-						Location = new Point(84, 38),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(84, 38)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} 4",
 						DisplayName = "4",
-						Location = new Point(108, 38),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(108, 38)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} 5",
 						DisplayName = "5",
-						Location = new Point(132, 38),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(132, 38)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} 6",
 						DisplayName = "6",
-						Location = new Point(156, 38),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(156, 38)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} 7",
 						DisplayName = "7",
-						Location = new Point(180, 38),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(180, 38)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} 8",
 						DisplayName = "8",
-						Location = new Point(204, 38),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(204, 38)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} 9",
 						DisplayName = "9",
-						Location = new Point(228, 38),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(228, 38)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} 0",
 						DisplayName = "0",
-						Location = new Point(252, 38),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(252, 38)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Minus",
 						DisplayName = "-",
-						Location = new Point(276, 38),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(276, 38)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Caret",
 						DisplayName = "^",
-						Location = new Point(296, 38),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(296, 38)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Yen",
 						DisplayName = "¥",
-						Location = new Point(320, 38),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(320, 38)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Stop",
 						DisplayName = "STOP",
-						Location = new Point(344, 38),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(344, 38)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Escape",
 						DisplayName = "ESC",
-						Location = new Point(15, 61),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(15, 61)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Q",
 						DisplayName = "Q",
-						Location = new Point(54, 61),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(54, 61)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} W",
 						DisplayName = "W",
-						Location = new Point(80, 61),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(80, 61)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} E",
 						DisplayName = "E",
-						Location = new Point(108, 61),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(108, 61)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} R",
 						DisplayName = "R",
-						Location = new Point(132, 61),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(132, 61)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} T",
 						DisplayName = "T",
-						Location = new Point(158, 61),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(158, 61)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Y",
 						DisplayName = "Y",
-						Location = new Point(182, 61),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(182, 61)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} U",
 						DisplayName = "U",
-						Location = new Point(206, 61),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(206, 61)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} I",
 						DisplayName = "I",
-						Location = new Point(232, 61),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(232, 61)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} O",
 						DisplayName = "O",
-						Location = new Point(252, 61),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(252, 61)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} P",
 						DisplayName = "P",
-						Location = new Point(278, 61),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(278, 61)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} At",
 						DisplayName = "@",
-						Location = new Point(302, 61),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(302, 61)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left Bracket",
 						DisplayName = "[",
-						Location = new Point(330, 61),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(330, 61)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Return",
 						DisplayName = "RETURN",
-						Location = new Point(350, 61),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(350, 61)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Control",
 						DisplayName = "CTR",
-						Location = new Point(30, 84),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(30, 84)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} A",
 						DisplayName = "A",
-						Location = new Point(70, 84),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(70, 84)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} S",
 						DisplayName = "S",
-						Location = new Point(94, 84),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(94, 84)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} D",
 						DisplayName = "D",
-						Location = new Point(118, 84),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(118, 84)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} F",
 						DisplayName = "F",
-						Location = new Point(144, 84),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(144, 84)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} G",
 						DisplayName = "G",
-						Location = new Point(168, 84),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(168, 84)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} H",
 						DisplayName = "H",
-						Location = new Point(194, 84),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(194, 84)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} J",
 						DisplayName = "J",
-						Location = new Point(220, 84),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(220, 84)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} K",
 						DisplayName = "K",
-						Location = new Point(242, 84),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(242, 84)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} L",
 						DisplayName = "L",
-						Location = new Point(266, 84),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(266, 84)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Semicolon",
 						DisplayName = ";",
-						Location = new Point(290, 84),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(290, 84)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Colon",
 						DisplayName = ":",
-						Location = new Point(311, 84),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(311, 84)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right Bracket",
 						DisplayName = "]",
-						Location = new Point(332, 84),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(332, 84)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} カナ",
 						DisplayName = "カナ",
-						Location = new Point(352, 84),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(352, 84)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left Shift",
 						DisplayName = "SHIFT",
-						Location = new Point(10, 107),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(10, 107)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Z",
 						DisplayName = "Z",
-						Location = new Point(58, 107),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(58, 107)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} X",
 						DisplayName = "X",
-						Location = new Point(82, 107),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(82, 107)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} C",
 						DisplayName = "C",
-						Location = new Point(106, 107),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(106, 107)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} V",
 						DisplayName = "V",
-						Location = new Point(130, 107),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(130, 107)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B",
 						DisplayName = "B",
-						Location = new Point(154, 107),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(154, 107)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} N",
 						DisplayName = "N",
-						Location = new Point(178, 107),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(178, 107)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} M",
 						DisplayName = "M",
-						Location = new Point(203, 107),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(203, 107)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Comma",
 						DisplayName = ",",
-						Location = new Point(229, 107),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(229, 107)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Period",
 						DisplayName = ".",
-						Location = new Point(249, 107),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(249, 107)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Slash",
 						DisplayName = "/",
-						Location = new Point(270, 107),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(270, 107)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Underscore",
 						DisplayName = "_",
-						Location = new Point(292, 107),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(292, 107)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right Shift",
 						DisplayName = "SHIFT",
-						Location = new Point(316, 107),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(316, 107)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Graph",
 						DisplayName = "GRPH",
-						Location = new Point(82, 130),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(82, 130)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Space",
 						DisplayName = "                  SPACE                  ",
-						Location = new Point(130, 130),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(130, 130)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Clear/Home",
 						DisplayName = " CLR\nHOME",
-						Location = new Point(420, 46),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(420, 46)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Insert",
 						DisplayName = "\nINS",
-						Location = new Point(470, 46),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(470, 46)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Delete",
 						DisplayName = "\nDEL",
-						Location = new Point(506, 46),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(506, 46)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Up",
 						DisplayName = "  ↑  ",
-						Location = new Point(468, 86),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(468, 86)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						DisplayName = "  ↓  ",
-						Location = new Point(468, 134),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(468, 134)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						DisplayName = "  ←  ",
-						Location = new Point(446, 110),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(446, 110)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						DisplayName = "  ➝  ",
-						Location = new Point(488, 110),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(488, 110)
 					}
 				}
 			};
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/NgpSchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/NgpSchema.cs
index cb3c309f2b..9b67196a6d 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/NgpSchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/NgpSchema.cs
@@ -27,50 +27,43 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = "Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(14, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 12)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(14, 56),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 56)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(24, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(24, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "B",
 						DisplayName = "B",
-						Location = new Point(74, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(74, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "A",
 						DisplayName = "A",
-						Location = new Point(98, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(98, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Option",
 						DisplayName = "O",
-						Location = new Point(146, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(146, 12)
 					}
 				}
 			};
@@ -88,8 +81,7 @@ namespace BizHawk.Client.EmuHawk
 					new PadSchema.ButtonSchema
 					{
 						Name = "Power",
-						Location = new Point(10, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(10, 15)
 					}
 				}
 			};
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/O2Schema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/O2Schema.cs
index ce63566dbf..9c1e616516 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/O2Schema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/O2Schema.cs
@@ -39,36 +39,31 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(14, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 12)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(14, 56),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 56)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(24, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(24, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} F",
 						DisplayName = "F",
-						Location = new Point(74, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(74, 34)
 					}
 				}
 			};
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/PSXSchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/PSXSchema.cs
index 074012a981..ac2dc7c498 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/PSXSchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/PSXSchema.cs
@@ -58,113 +58,97 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(32, 50),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(32, 50)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(32, 71),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(32, 71)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(11, 62),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(11, 62)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(53, 62),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(53, 62)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} L1",
 						DisplayName = "L1",
-						Location = new Point(3, 32),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(3, 32)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} R1",
 						DisplayName = "R1",
-						Location = new Point(191, 32),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(191, 32)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} L2",
 						DisplayName = "L2",
-						Location = new Point(3, 10),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(3, 10)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} R2",
 						DisplayName = "R2",
-						Location = new Point(191, 10),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(191, 10)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} L3",
 						DisplayName = "L3",
-						Location = new Point(72, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(72, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} R3",
 						DisplayName = "R3",
-						Location = new Point(130, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(130, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Square",
 						Icon = Properties.Resources.Square,
-						Location = new Point(148, 62),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(148, 62)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Triangle",
 						Icon = Properties.Resources.Triangle,
-						Location = new Point(169, 50),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(169, 50)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Circle",
 						Icon = Properties.Resources.Circle,
-						Location = new Point(190, 62),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(190, 62)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Cross",
 						Icon = Properties.Resources.Cross,
-						Location = new Point(169, 71),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(169, 71)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Start",
 						DisplayName = "S",
-						Location = new Point(112, 62),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(112, 62)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Select",
 						DisplayName = "s",
-						Location = new Point(90, 62),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(90, 62)
 					},
 					new PadSchema.ButtonSchema
 					{
@@ -199,100 +183,86 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(37, 55),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(37, 55)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(37, 76),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(37, 76)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(16, 67),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(16, 67)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(58, 67),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(58, 67)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} L1",
 						DisplayName = "L1",
-						Location = new Point(8, 37),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(8, 37)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} R1",
 						DisplayName = "R1",
-						Location = new Point(196, 37),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(196, 37)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} L2",
 						DisplayName = "L2",
-						Location = new Point(8, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(8, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} R2",
 						DisplayName = "R2",
-						Location = new Point(196, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(196, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Square",
 						Icon = Properties.Resources.Square,
-						Location = new Point(153, 67),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(153, 67)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Triangle",
 						Icon = Properties.Resources.Triangle,
-						Location = new Point(174, 55),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(174, 55)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Circle",
 						Icon = Properties.Resources.Circle,
-						Location = new Point(195, 67),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(195, 67)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Cross",
 						Icon = Properties.Resources.Cross,
-						Location = new Point(174, 76),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(174, 76)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Start",
 						DisplayName = "S",
-						Location = new Point(112, 67),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(112, 67)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Select",
 						DisplayName = "s",
-						Location = new Point(90, 67),
-						Type = PadSchema.PadInputType.Boolean
-					},
+						Location = new Point(90, 67)
+					}
 				}
 			};
 		}
@@ -310,59 +280,51 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(36, 83),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(36, 83)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(36, 104),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(36, 104)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(15, 95),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(15, 95)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(57, 95),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(57, 95)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Start",
 						DisplayName = "S",
-						Location = new Point(78, 118),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(78, 118)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B",
 						DisplayName = "B",
-						Location = new Point(278, 38),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(278, 38)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} A",
 						DisplayName = "A",
-						Location = new Point(308, 55),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(308, 55)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} R",
 						DisplayName = "R",
-						Location = new Point(308, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(308, 15)
 					},
 
 					new PadSchema.ButtonSchema
@@ -373,7 +335,7 @@ namespace BizHawk.Client.EmuHawk
 						Type = PadSchema.PadInputType.FloatSingle,
 						TargetSize = new Size(128, 55),
 						MinValue = 0,
-						MaxValue = 255,
+						MaxValue = 255
 					},
 					new PadSchema.ButtonSchema
 					{
@@ -394,7 +356,7 @@ namespace BizHawk.Client.EmuHawk
 						Type = PadSchema.PadInputType.FloatSingle,
 						TargetSize = new Size(128, 55),
 						MinValue = 0,
-						MaxValue = 255,
+						MaxValue = 255
 					},
 					new PadSchema.ButtonSchema
 					{
@@ -404,8 +366,8 @@ namespace BizHawk.Client.EmuHawk
 						Type = PadSchema.PadInputType.FloatSingle,
 						TargetSize = new Size(128, 55),
 						MinValue = 0,
-						MaxValue = 255,
-					},
+						MaxValue = 255
+					}
 				}
 			};
 		}
@@ -422,8 +384,7 @@ namespace BizHawk.Client.EmuHawk
 					new PadSchema.ButtonSchema
 					{
 						Name = "Reset",
-						Location = new Point(10, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(10, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/PadSchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/PadSchema.cs
index 4724ec9fff..90fa8ecc05 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/PadSchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/PadSchema.cs
@@ -28,7 +28,7 @@ namespace BizHawk.Client.EmuHawk
 		{
 			public string Name { get; set; }
 			public string DisplayName { get; set; }
-			public PadInputType Type { get; set; }
+			public PadInputType Type { get; set; } = PadInputType.Boolean;
 			public Point Location { get; set; }
 			public Bitmap Icon { get; set; }
 			public Size TargetSize { get; set; } // Specifically for TargetedPair, specifies the screen size
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/PceSchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/PceSchema.cs
index 1da4d819ab..ddda196526 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/PceSchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/PceSchema.cs
@@ -25,7 +25,7 @@ namespace BizHawk.Client.EmuHawk
 				ss.Port2,
 				ss.Port3,
 				ss.Port4,
-				ss.Port5,
+				ss.Port5
 			}
 			.Where(p => p != PceControllerType.Unplugged)
 			.Select((p, i) => GenerateSchemaForPort(p, i + 1))
@@ -60,57 +60,49 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(14, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 12)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(14, 56),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 56)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(24, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(24, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B2",
 						DisplayName = "II",
-						Location = new Point(122, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(122, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B1",
 						DisplayName = "I",
-						Location = new Point(146, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(146, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Select",
 						DisplayName = "s",
-						Location = new Point(52, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(52, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Run",
 						DisplayName = "R",
-						Location = new Point(74, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(74, 34)
 					}
 				}
 			};
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/PcfxSchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/PcfxSchema.cs
index 1becb128be..0fe32455ee 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/PcfxSchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/PcfxSchema.cs
@@ -53,29 +53,25 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(34, 17),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(34, 17)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(34, 61),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(34, 61)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(22, 39),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(22, 39)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(44, 39),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(44, 39)
 					},
 
 
@@ -83,72 +79,62 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Mode 1",
 						DisplayName = "Mode 1",
-						Location = new Point(74, 17),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(74, 17)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Mode 2",
 						DisplayName = "Mode 2",
-						Location = new Point(74, 40),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(74, 40)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Select",
 						DisplayName = "s",
-						Location = new Point(77, 63),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(77, 63)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Run",
 						DisplayName = "R",
-						Location = new Point(101, 63),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(101, 63)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} IV",
 						DisplayName = "IV",
-						Location = new Point(140, 63),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(140, 63)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} V",
 						DisplayName = "V",
-						Location = new Point(166, 53),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(166, 53)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} VI",
 						DisplayName = "VI",
-						Location = new Point(192, 43),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(192, 43)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} I",
 						DisplayName = "I",
-						Location = new Point(140, 40),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(140, 40)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} II",
 						DisplayName = "II",
-						Location = new Point(166, 30),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(166, 30)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} III",
 						DisplayName = "III",
-						Location = new Point(192, 20),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(192, 20)
 					}
 				}
 			};
@@ -175,17 +161,15 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Mouse Left",
 						DisplayName = "Left",
-						Location = new Point(300, 17),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(300, 17)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Mouse Right",
 						DisplayName = "Right",
-						Location = new Point(300, 47),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(300, 47)
 					}
-				},
+				}
 			};
 		}
 	}
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/SGBSchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/SGBSchema.cs
index 3303182751..5a86120cd1 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/SGBSchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/SGBSchema.cs
@@ -29,57 +29,49 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controllerNum} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(14, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 12)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controllerNum} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(14, 56),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 56)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controllerNum} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controllerNum} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(24, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(24, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controllerNum} B",
 						DisplayName = "B",
-						Location = new Point(122, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(122, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controllerNum} A",
 						DisplayName = "A",
-						Location = new Point(146, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(146, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controllerNum} Select",
 						DisplayName = "s",
-						Location = new Point(52, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(52, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controllerNum} Start",
 						DisplayName = "S",
-						Location = new Point(74, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(74, 34)
 					}
 				}
 			};
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/SaturnSchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/SaturnSchema.cs
index b7c2c6bd88..9aa32b0f44 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/SaturnSchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/SaturnSchema.cs
@@ -78,92 +78,79 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(34, 17),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(34, 17)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(34, 61),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(34, 61)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(22, 39),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(22, 39)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(44, 39),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(44, 39)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Start",
 						DisplayName = "S",
-						Location = new Point(78, 52),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(78, 52)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} A",
 						DisplayName = "A",
-						Location = new Point(110, 63),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(110, 63)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B",
 						DisplayName = "B",
-						Location = new Point(134, 53),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(134, 53)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} C",
 						DisplayName = "C",
-						Location = new Point(158, 43),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(158, 43)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} X",
 						DisplayName = "X",
-						Location = new Point(110, 40),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(110, 40)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Y",
 						DisplayName = "Y",
-						Location = new Point(134, 30),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(134, 30)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Z",
 						DisplayName = "Z",
-						Location = new Point(158, 20),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(158, 20)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} L",
 						DisplayName = "L",
-						Location = new Point(2, 10),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 10)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} R",
 						DisplayName = "R",
-						Location = new Point(184, 10),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(184, 10)
 					}
 				}
 			};
@@ -182,78 +169,67 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(290, 77),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(290, 77)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(290, 121),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(290, 121)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(278, 99),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(278, 99)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(300, 99),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(300, 99)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Start",
 						DisplayName = "S",
-						Location = new Point(334, 112),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(334, 112)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} A",
 						DisplayName = "A",
-						Location = new Point(366, 123),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(366, 123)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B",
 						DisplayName = "B",
-						Location = new Point(390, 113),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(390, 113)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} C",
 						DisplayName = "C",
-						Location = new Point(414, 103),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(414, 103)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} X",
 						DisplayName = "X",
-						Location = new Point(366, 100),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(366, 100)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Y",
 						DisplayName = "Y",
-						Location = new Point(390, 90),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(390, 90)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Z",
 						DisplayName = "Z",
-						Location = new Point(414, 80),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(414, 80)
 					},
 					new PadSchema.ButtonSchema
 					{
@@ -272,7 +248,7 @@ namespace BizHawk.Client.EmuHawk
 						Type = PadSchema.PadInputType.FloatSingle,
 						TargetSize = new Size(128, 55),
 						MinValue = 0,
-						MaxValue = 255,
+						MaxValue = 255
 					},
 					new PadSchema.ButtonSchema
 					{
@@ -282,7 +258,7 @@ namespace BizHawk.Client.EmuHawk
 						Type = PadSchema.PadInputType.FloatSingle,
 						TargetSize = new Size(128, 55),
 						MinValue = 0,
-						MaxValue = 255,
+						MaxValue = 255
 					}
 				}
 			};
@@ -309,31 +285,27 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Mouse Left",
 						DisplayName = "Left",
-						Location = new Point(300, 17),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(300, 17)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Mouse Center",
 						DisplayName = "Center",
-						Location = new Point(300, 47),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(300, 47)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Mouse Right",
 						DisplayName = "Right",
-						Location = new Point(300, 77),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(300, 77)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Start",
 						DisplayName = "Start",
-						Location = new Point(300, 107),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(300, 107)
 					}
-				},
+				}
 			};
 		}
 
@@ -354,72 +326,63 @@ namespace BizHawk.Client.EmuHawk
 						Type = PadSchema.PadInputType.FloatSingle,
 						TargetSize = new Size(128, 55),
 						MinValue = 0,
-						MaxValue = 255,
+						MaxValue = 255
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(150, 20),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(150, 20)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(150, 43),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(150, 43)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} A",
 						DisplayName = "A",
-						Location = new Point(180, 63),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(180, 63)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B",
 						DisplayName = "B",
-						Location = new Point(204, 53),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(204, 53)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} C",
 						DisplayName = "C",
-						Location = new Point(228, 43),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(228, 43)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} X",
 						DisplayName = "X",
-						Location = new Point(180, 40),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(180, 40)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Y",
 						DisplayName = "Y",
-						Location = new Point(204, 30),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(204, 30)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Z",
 						DisplayName = "Z",
-						Location = new Point(228, 20),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(228, 20)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Start",
 						DisplayName = "Start",
-						Location = new Point(268, 20),
-						Type = PadSchema.PadInputType.Boolean
-					},
-				},
+						Location = new Point(268, 20)
+					}
+				}
 
 			};
 		}
@@ -438,64 +401,55 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Start",
 						DisplayName = "Start",
-						Location = new Point(45, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(45, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} L",
 						DisplayName = "L",
-						Location = new Point(5, 58),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(5, 58)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} R",
 						DisplayName = "R",
-						Location = new Point(105, 58),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(105, 58)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} X",
 						DisplayName = "X",
-						Location = new Point(30, 43),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(30, 43)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Y",
 						DisplayName = "Y",
-						Location = new Point(55, 43),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(55, 43)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Z",
 						DisplayName = "Z",
-						Location = new Point(80, 43),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(80, 43)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} A",
 						DisplayName = "A",
-						Location = new Point(30, 70),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(30, 70)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B",
 						DisplayName = "B",
-						Location = new Point(55, 70),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(55, 70)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} C",
 						DisplayName = "C",
-						Location = new Point(80, 70),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(80, 70)
 					},
 					new PadSchema.ButtonSchema
 					{
@@ -587,28 +541,24 @@ namespace BizHawk.Client.EmuHawk
 					new PadSchema.ButtonSchema
 					{
 						Name = "Reset",
-						Location = new Point(10, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(10, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Power",
-						Location = new Point(58, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(58, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Previous Disk",
 						DisplayName = "Prev Disc",
-						Location = new Point(108, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(108, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Next Disk",
 						DisplayName = "Next Disc",
-						Location = new Point(175, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(175, 15)
 					}
 				}
 			};
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/SmsSchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/SmsSchema.cs
index b2045dfa91..3aa6018de3 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/SmsSchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/SmsSchema.cs
@@ -37,43 +37,37 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(14, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 12)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(14, 56),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 56)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(24, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(24, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B1",
 						DisplayName = "1",
-						Location = new Point(122, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(122, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B2",
 						DisplayName = "2",
-						Location = new Point(146, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(146, 34)
 					}
 				}
 			};
@@ -91,50 +85,43 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(14, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 12)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(14, 56),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 56)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(24, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(24, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Start",
 						DisplayName = "S",
-						Location = new Point(134, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(134, 12)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B1",
 						DisplayName = "1",
-						Location = new Point(122, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(122, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B2",
 						DisplayName = "2",
-						Location = new Point(146, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(146, 34)
 					}
 				}
 			};
@@ -152,14 +139,12 @@ namespace BizHawk.Client.EmuHawk
 					new PadSchema.ButtonSchema
 					{
 						Name = "Reset",
-						Location = new Point(10, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(10, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Pause",
-						Location = new Point(58, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(58, 15)
 					}
 				}
 			};
@@ -177,8 +162,7 @@ namespace BizHawk.Client.EmuHawk
 					new PadSchema.ButtonSchema
 					{
 						Name = "Reset",
-						Location = new Point(10, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(10, 15)
 					}
 				}
 			};
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/SnesSchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/SnesSchema.cs
index 9e0884b0b8..7829814912 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/SnesSchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/SnesSchema.cs
@@ -120,87 +120,75 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(34, 17),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(34, 17)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(34, 61),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(34, 61)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(22, 39),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(22, 39)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(44, 39),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(44, 39)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} L",
 						DisplayName = "L",
-						Location = new Point(2, 10),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 10)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} R",
 						DisplayName = "R",
-						Location = new Point(174, 10),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(174, 10)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Select",
 						DisplayName = "s",
-						Location = new Point(70, 39),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(70, 39)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Start",
 						DisplayName = "S",
-						Location = new Point(92, 39),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(92, 39)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Y",
 						DisplayName = "Y",
-						Location = new Point(121, 39),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(121, 39)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B",
 						DisplayName = "B",
-						Location = new Point(145, 52),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(145, 52)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} X",
 						DisplayName = "X",
-						Location = new Point(122, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(122, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} A",
 						DisplayName = "A",
-						Location = new Point(146, 25),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(146, 25)
 					}
 				}
 			};
@@ -227,15 +215,13 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Mouse Left",
 						DisplayName = "Left",
-						Location = new Point(275, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(275, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Mouse Right",
 						DisplayName = "Right",
-						Location = new Point(275, 45),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(275, 45)
 					}
 				}
 			};
@@ -259,36 +245,32 @@ namespace BizHawk.Client.EmuHawk
 						TargetSize = new Size(256, 240),
 						SecondaryNames = new[]
 						{
-							$"P{controller} Scope Y",
+							$"P{controller} Scope Y"
 						}
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Trigger",
 						DisplayName = "Trigger",
-						Location = new Point(284, 17),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(284, 17)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Cursor",
 						DisplayName = "Cursor",
-						Location = new Point(284, 47),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(284, 47)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Turbo",
 						DisplayName = "Turbo",
-						Location = new Point(284, 77),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(284, 77)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Pause",
 						DisplayName = "Pause",
-						Location = new Point(284, 107),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(284, 107)
 					}
 				}
 			};
@@ -312,22 +294,20 @@ namespace BizHawk.Client.EmuHawk
 						TargetSize = new Size(256, 240),
 						SecondaryNames = new[]
 						{
-							$"P{controller} Justifier Y",
+							$"P{controller} Justifier Y"
 						}
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Trigger",
 						DisplayName = "Trigger",
-						Location = new Point(284, 17),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(284, 17)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Start",
 						DisplayName = "Start",
-						Location = new Point(284, 47),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(284, 47)
 					}
 				}
 			};
@@ -357,8 +337,7 @@ namespace BizHawk.Client.EmuHawk
 				{
 					Name = $"P{controller} B{i}",
 					DisplayName = i.ToString(),
-					Location = new Point(startX + (i * buttonSpacingX), startY),
-					Type = PadSchema.PadInputType.Boolean
+					Location = new Point(startX + (i * buttonSpacingX), startY)
 				};
 			}
 
@@ -368,8 +347,7 @@ namespace BizHawk.Client.EmuHawk
 				{
 					Name = $"P{controller} B{i + 16}",
 					DisplayName = (i + 16).ToString(),
-					Location = new Point(startX + (i * buttonSpacingX), startY + buttonSpacingY),
-					Type = PadSchema.PadInputType.Boolean
+					Location = new Point(startX + (i * buttonSpacingX), startY + buttonSpacingY)
 				};
 			}
 		}
@@ -386,14 +364,12 @@ namespace BizHawk.Client.EmuHawk
 					new PadSchema.ButtonSchema
 					{
 						Name = "Reset",
-						Location = new Point(10, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(10, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Power",
-						Location = new Point(58, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(58, 15)
 					}
 				}
 			};
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/VECSchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/VECSchema.cs
index e7c6b71c67..fc1ab14fbc 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/VECSchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/VECSchema.cs
@@ -49,57 +49,49 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(14, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 12)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(14, 56),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 56)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(24, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(24, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Button 1",
 						DisplayName = "1",
-						Location = new Point(74, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(74, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Button 2",
 						DisplayName = "2",
-						Location = new Point(98, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(98, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Button 3",
 						DisplayName = "3",
-						Location = new Point(122, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(122, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Button 4",
 						DisplayName = "4",
-						Location = new Point(146, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(146, 34)
 					}
 				}
 			};
@@ -118,29 +110,25 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Button 1",
 						DisplayName = "1",
-						Location = new Point(74, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(74, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Button 2",
 						DisplayName = "2",
-						Location = new Point(98, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(98, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Button 3",
 						DisplayName = "3",
-						Location = new Point(122, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(122, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Button 4",
 						DisplayName = "4",
-						Location = new Point(146, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(146, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
@@ -151,7 +139,7 @@ namespace BizHawk.Client.EmuHawk
 						Type = PadSchema.PadInputType.AnalogStick,
 						SecondaryNames = new[]
 						{
-							$"P{controller} Stick Y",
+							$"P{controller} Stick Y"
 						}
 					}
 				}
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/VirtualBoySchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/VirtualBoySchema.cs
index 53b126f50f..f087165c19 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/VirtualBoySchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/VirtualBoySchema.cs
@@ -27,95 +27,81 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = "L_Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(14, 36),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 36)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "L_Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(14, 80),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(14, 80)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "L_Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 58),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 58)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "L_Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(24, 58),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(24, 58)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "B",
-						Location = new Point(122, 58),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(122, 58)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "A",
-						Location = new Point(146, 58),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(146, 58)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Select",
 						DisplayName = "s",
-						Location = new Point(52, 58),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(52, 58)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Start",
 						DisplayName = "S",
-						Location = new Point(74, 58),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(74, 58)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "R_Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(188, 36),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(188, 36)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "R_Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(188, 80),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(188, 80)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "R_Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(176, 58),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(176, 58)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "R_Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(198, 58),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(198, 58)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "L",
-						Location = new Point(24, 8),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(24, 8)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "R",
-						Location = new Point(176, 8),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(176, 8)
 					}
 				}
 			};
@@ -134,8 +120,7 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = "Power",
 						DisplayName = "Power",
-						Location = new Point(10, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(10, 15)
 					}
 				}
 			};
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/WonderSwanSchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/WonderSwanSchema.cs
index 0ace38291e..4b2804dc0a 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/WonderSwanSchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/WonderSwanSchema.cs
@@ -29,82 +29,71 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Y1",
 						DisplayName = "Y1",
-						Location = new Point(23, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 12)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Y4",
 						DisplayName = "Y4",
-						Location = new Point(9, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(9, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Y2",
 						DisplayName = "Y2",
-						Location = new Point(38, 34),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(38, 34)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Y3",
 						DisplayName = "Y3",
-						Location = new Point(23, 56),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 56)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} X1",
 						DisplayName = "X1",
-						Location = new Point(23, 92),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 92)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} X4",
 						DisplayName = "X4",
-						Location = new Point(9, 114),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(9, 114)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} X2",
 						DisplayName = "X2",
-						Location = new Point(38, 114),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(38, 114)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} X3",
 						DisplayName = "X3",
-						Location = new Point(23, 136),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 136)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Start",
 						DisplayName = "S",
-						Location = new Point(80, 114),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(80, 114)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B",
 						DisplayName = "B",
-						Location = new Point(110, 114),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(110, 114)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} A",
 						DisplayName = "A",
-						Location = new Point(133, 103),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(133, 103)
 					}
 				}
 			};
@@ -123,81 +112,70 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} A",
 						DisplayName = "A",
-						Location = new Point(23, 12),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 12)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} B",
 						DisplayName = "B",
-						Location = new Point(46, 22),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(46, 22)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Start",
 						DisplayName = "S",
-						Location = new Point(32, 58),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(32, 58)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Y2",
 						DisplayName = "Y2",
-						Location = new Point(23, 112),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 112)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Y1",
 						DisplayName = "Y1",
-						Location = new Point(9, 134),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(9, 134)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Y3",
 						DisplayName = "Y3",
-						Location = new Point(38, 134),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(38, 134)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Y4",
 						DisplayName = "Y4",
-						Location = new Point(23, 156),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 156)
 					},
 
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} X2",
 						DisplayName = "X2",
-						Location = new Point(103, 112),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(103, 112)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} X1",
 						DisplayName = "X1",
-						Location = new Point(89, 134),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(89, 134)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} X3",
 						DisplayName = "X3",
-						Location = new Point(118, 134),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(118, 134)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} X4",
 						DisplayName = "X4",
-						Location = new Point(103, 156),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(103, 156)
 					}
 				}
 			};
@@ -215,8 +193,7 @@ namespace BizHawk.Client.EmuHawk
 					new PadSchema.ButtonSchema
 					{
 						Name = "Power",
-						Location = new Point(7, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(7, 15)
 					}
 				}
 			};
diff --git a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/ZXSpectrumSchema.cs b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/ZXSpectrumSchema.cs
index 3eb950fbb3..722a53aa0b 100644
--- a/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/ZXSpectrumSchema.cs
+++ b/BizHawk.Client.EmuHawk/tools/VirtualPads/schema/ZXSpectrumSchema.cs
@@ -32,36 +32,31 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = $"P{controller} Up",
 						Icon = Properties.Resources.BlueUp,
-						Location = new Point(23, 15),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 15)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Down",
 						Icon = Properties.Resources.BlueDown,
-						Location = new Point(23, 36),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 36)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Left",
 						Icon = Properties.Resources.Back,
-						Location = new Point(2, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(2, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Right",
 						Icon = Properties.Resources.Forward,
-						Location = new Point(44, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(44, 24)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = $"P{controller} Button",
 						DisplayName = "B",
-						Location = new Point(124, 24),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(124, 24)
 					}
 				}
 			};
@@ -141,7 +136,7 @@ namespace BizHawk.Client.EmuHawk
 				new ButtonLayout { Name = "Key Up Cursor", DisName = "↑", Row = 4, WidthFactor = 1 },
 				new ButtonLayout { Name = "Key Down Cursor", DisName = "↓", Row = 4, WidthFactor = 1 },
 				new ButtonLayout { Name = "Key Comma", DisName = ",", Row = 4, WidthFactor = 1 },
-				new ButtonLayout { Name = "Key Symbol Shift", DisName = "SS", Row = 4, WidthFactor = 1 },
+				new ButtonLayout { Name = "Key Symbol Shift", DisName = "SS", Row = 4, WidthFactor = 1 }
 			};
 
 			var ps = new PadSchema
@@ -190,8 +185,7 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = b.Name,
 						DisplayName = disp,
-						Location = new Point(xPos, yPos),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(xPos, yPos)
 					};
 					btns.Add(btn);
 				}
@@ -217,39 +211,32 @@ namespace BizHawk.Client.EmuHawk
 					{
 						Name = "Play Tape",
 						Icon = Properties.Resources.Play,
-						Location = new Point(23, 22),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 22)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Stop Tape",
 						Icon = Properties.Resources.Stop,
-						Location = new Point(53, 22),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(53, 22)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "RTZ Tape",
 						Icon = Properties.Resources.BackMore,
-						Location = new Point(83, 22),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(83, 22)
 					},
 					 new PadSchema.ButtonSchema
 					{
 						Name = "Insert Next Tape",
 						DisplayName = "NEXT TAPE",
-						//Icon = Properties.Resources.MoveRight,
-						Location = new Point(23, 52),
-						Type = PadSchema.PadInputType.Boolean
+						Location = new Point(23, 52)
 					},
 					new PadSchema.ButtonSchema
 					{
 						Name = "Insert Previous Tape",
 						DisplayName = "PREV TAPE",
-						//Icon = Properties.Resources.MoveLeft,
-						Location = new Point(100, 52),
-						Type = PadSchema.PadInputType.Boolean
-					},
+						Location = new Point(100, 52)
+					}
 				}
 			};
 		}