genesis: virtual pad support multitap
This commit is contained in:
parent
903ea5a2f3
commit
a1b03a4a20
|
@ -12,34 +12,25 @@ namespace BizHawk.Client.EmuHawk
|
||||||
{
|
{
|
||||||
public IEnumerable<PadSchema> GetPadSchemas()
|
public IEnumerable<PadSchema> GetPadSchemas()
|
||||||
{
|
{
|
||||||
var ss = (GPGX.GPGXSyncSettings)Global.Emulator.GetSyncSettings();
|
var devs = ((GPGX)Global.Emulator).GetDevices();
|
||||||
if (ss.ControlType == GPGX.ControlType.OnePlayer)
|
int player = 1;
|
||||||
|
foreach (var dev in devs)
|
||||||
{
|
{
|
||||||
if (ss.UseSixButton)
|
switch (dev)
|
||||||
{
|
{
|
||||||
yield return SixButtonController(1);
|
case LibGPGX.INPUT_DEVICE.DEVICE_NONE:
|
||||||
|
continue; // do not increment player number
|
||||||
|
case LibGPGX.INPUT_DEVICE.DEVICE_PAD3B:
|
||||||
|
yield return ThreeButtonController(player);
|
||||||
|
break;
|
||||||
|
case LibGPGX.INPUT_DEVICE.DEVICE_PAD6B:
|
||||||
|
yield return SixButtonController(player);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
// todo
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
else
|
player++;
|
||||||
{
|
|
||||||
yield return ThreeButtonController(2);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else if (ss.ControlType == GPGX.ControlType.Normal)
|
|
||||||
{
|
|
||||||
if (ss.UseSixButton)
|
|
||||||
{
|
|
||||||
yield return SixButtonController(1);
|
|
||||||
yield return SixButtonController(2);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
yield return ThreeButtonController(1);
|
|
||||||
yield return ThreeButtonController(2);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
yield return null;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue