controller config: delete 2000 lines of code

This commit is contained in:
goyuken 2013-07-14 02:36:20 +00:00
parent 454e94a4bb
commit 5cf95ae5f1
2 changed files with 1 additions and 2035 deletions

File diff suppressed because it is too large Load Diff

View File

@ -804,838 +804,7 @@ namespace BizHawk.MultiClient
Global.NullControls = new Controller(NullEmulator.NullController);
Global.AutofireNullControls = new AutofireController(NullEmulator.NullController);
/*
var smsControls = new Controller(SMS.SmsController);
smsControls.BindMulti("Reset", Global.Config.SMSConsoleButtons.Reset);
smsControls.BindMulti("Pause", Global.Config.SMSConsoleButtons.Pause);
for (int i = 0; i < 2; i++)
{
smsControls.BindMulti(string.Format("P{0} Up", i + 1), Global.Config.SMSController[i].Up);
smsControls.BindMulti(string.Format("P{0} Left", i + 1), Global.Config.SMSController[i].Left);
smsControls.BindMulti(string.Format("P{0} Right", i + 1), Global.Config.SMSController[i].Right);
smsControls.BindMulti(string.Format("P{0} Down", i + 1), Global.Config.SMSController[i].Down);
smsControls.BindMulti(string.Format("P{0} B1", i + 1), Global.Config.SMSController[i].B1);
smsControls.BindMulti(string.Format("P{0} B2", i + 1), Global.Config.SMSController[i].B2);
}
Global.SMSControls = smsControls;
var asmsControls = new AutofireController(SMS.SmsController) {Autofire = true};
asmsControls.BindMulti("Reset", Global.Config.SMSConsoleButtons.Reset);
asmsControls.BindMulti("Pause", Global.Config.SMSConsoleButtons.Pause);
for (int i = 0; i < 2; i++)
{
asmsControls.BindMulti(string.Format("P{0} Up", i + 1), Global.Config.SMSAutoController[i].Up);
asmsControls.BindMulti(string.Format("P{0} Left", i + 1), Global.Config.SMSAutoController[i].Left);
asmsControls.BindMulti(string.Format("P{0} Right", i + 1), Global.Config.SMSAutoController[i].Right);
asmsControls.BindMulti(string.Format("P{0} Down", i + 1), Global.Config.SMSAutoController[i].Down);
asmsControls.BindMulti(string.Format("P{0} B1", i + 1), Global.Config.SMSAutoController[i].B1);
asmsControls.BindMulti(string.Format("P{0} B2", i + 1), Global.Config.SMSAutoController[i].B2);
}
Global.AutofireSMSControls = asmsControls;
var pceControls = new Controller(PCEngine.PCEngineController);
for (int i = 0; i < 5; i++)
{
pceControls.BindMulti("P" + (i + 1) + " Up", Global.Config.PCEController[i].Up);
pceControls.BindMulti("P" + (i + 1) + " Down", Global.Config.PCEController[i].Down);
pceControls.BindMulti("P" + (i + 1) + " Left", Global.Config.PCEController[i].Left);
pceControls.BindMulti("P" + (i + 1) + " Right", Global.Config.PCEController[i].Right);
pceControls.BindMulti("P" + (i + 1) + " B2", Global.Config.PCEController[i].II);
pceControls.BindMulti("P" + (i + 1) + " B1", Global.Config.PCEController[i].I);
pceControls.BindMulti("P" + (i + 1) + " Select", Global.Config.PCEController[i].Select);
pceControls.BindMulti("P" + (i + 1) + " Run", Global.Config.PCEController[i].Run);
}
Global.PCEControls = pceControls;
var apceControls = new AutofireController(PCEngine.PCEngineController) {Autofire = true};
for (int i = 0; i < 5; i++)
{
apceControls.BindMulti("P" + (i + 1) + " Up", Global.Config.PCEAutoController[i].Up);
apceControls.BindMulti("P" + (i + 1) + " Down", Global.Config.PCEAutoController[i].Down);
apceControls.BindMulti("P" + (i + 1) + " Left", Global.Config.PCEAutoController[i].Left);
apceControls.BindMulti("P" + (i + 1) + " Right", Global.Config.PCEAutoController[i].Right);
apceControls.BindMulti("P" + (i + 1) + " B2", Global.Config.PCEAutoController[i].II);
apceControls.BindMulti("P" + (i + 1) + " B1", Global.Config.PCEAutoController[i].I);
apceControls.BindMulti("P" + (i + 1) + " Select", Global.Config.PCEAutoController[i].Select);
apceControls.BindMulti("P" + (i + 1) + " Run", Global.Config.PCEAutoController[i].Run);
}
Global.AutofirePCEControls = apceControls;
var snesControls = new Controller(LibsnesCore.SNESController);
for (int i = 0; i < 4; i++)
{
snesControls.BindMulti("P" + (i + 1) + " Up", Global.Config.SNESController[i].Up);
snesControls.BindMulti("P" + (i + 1) + " Down", Global.Config.SNESController[i].Down);
snesControls.BindMulti("P" + (i + 1) + " Left", Global.Config.SNESController[i].Left);
snesControls.BindMulti("P" + (i + 1) + " Right", Global.Config.SNESController[i].Right);
snesControls.BindMulti("P" + (i + 1) + " A", Global.Config.SNESController[i].A);
snesControls.BindMulti("P" + (i + 1) + " B", Global.Config.SNESController[i].B);
snesControls.BindMulti("P" + (i + 1) + " X", Global.Config.SNESController[i].X);
snesControls.BindMulti("P" + (i + 1) + " Y", Global.Config.SNESController[i].Y);
snesControls.BindMulti("P" + (i + 1) + " L", Global.Config.SNESController[i].L);
snesControls.BindMulti("P" + (i + 1) + " R", Global.Config.SNESController[i].R);
snesControls.BindMulti("P" + (i + 1) + " Select", Global.Config.SNESController[i].Select);
snesControls.BindMulti("P" + (i + 1) + " Start", Global.Config.SNESController[i].Start);
}
snesControls.BindMulti("Reset", Global.Config.SNESConsoleButtons.Reset);
snesControls.BindMulti("Power", Global.Config.SNESConsoleButtons.Power);
Global.SNESControls = snesControls;
var asnesControls = new AutofireController(LibsnesCore.SNESController) {Autofire = true};
for (int i = 0; i < 4; i++)
{
asnesControls.BindMulti("P" + (i + 1) + " Up", Global.Config.SNESAutoController[i].Up);
asnesControls.BindMulti("P" + (i + 1) + " Down", Global.Config.SNESAutoController[i].Down);
asnesControls.BindMulti("P" + (i + 1) + " Left", Global.Config.SNESAutoController[i].Left);
asnesControls.BindMulti("P" + (i + 1) + " Right", Global.Config.SNESAutoController[i].Right);
asnesControls.BindMulti("P" + (i + 1) + " A", Global.Config.SNESAutoController[i].A);
asnesControls.BindMulti("P" + (i + 1) + " B", Global.Config.SNESAutoController[i].B);
asnesControls.BindMulti("P" + (i + 1) + " X", Global.Config.SNESAutoController[i].X);
asnesControls.BindMulti("P" + (i + 1) + " Y", Global.Config.SNESAutoController[i].Y);
asnesControls.BindMulti("P" + (i + 1) + " L", Global.Config.SNESAutoController[i].L);
asnesControls.BindMulti("P" + (i + 1) + " R", Global.Config.SNESAutoController[i].R);
asnesControls.BindMulti("P" + (i + 1) + " Select", Global.Config.SNESAutoController[i].Select);
asnesControls.BindMulti("P" + (i + 1) + " Start", Global.Config.SNESAutoController[i].Start);
}
Global.AutofireSNESControls = asnesControls;
var nesControls = new Controller(NES.NESController);
for (int i = 0; i < 2; i++) // TODO: more than 2
{
nesControls.BindMulti("P" + (i + 1) + " Up", Global.Config.NESController[i].Up);
nesControls.BindMulti("P" + (i + 1) + " Down", Global.Config.NESController[i].Down);
nesControls.BindMulti("P" + (i + 1) + " Left", Global.Config.NESController[i].Left);
nesControls.BindMulti("P" + (i + 1) + " Right", Global.Config.NESController[i].Right);
nesControls.BindMulti("P" + (i + 1) + " A", Global.Config.NESController[i].A);
nesControls.BindMulti("P" + (i + 1) + " B", Global.Config.NESController[i].B);
nesControls.BindMulti("P" + (i + 1) + " Select", Global.Config.NESController[i].Select);
nesControls.BindMulti("P" + (i + 1) + " Start", Global.Config.NESController[i].Start);
}
nesControls.BindMulti("Reset", Global.Config.NESConsoleButtons.Reset);
nesControls.BindMulti("Power", Global.Config.NESConsoleButtons.Power);
//nesControls.BindMulti("FDS Eject", Global.Config.NESConsoleButtons.FDS_Eject);
//nesControls.BindMulti("VS Coin 1", Global.Config.NESConsoleButtons.VS_Coin_1);
//nesControls.BindMulti("VS Coin 2", Global.Config.NESConsoleButtons.VS_Coin_2);
Global.NESControls = nesControls;
var anesControls = new AutofireController(NES.NESController) {Autofire = true};
for (int i = 0; i < 2; i++) // TODO: more than 2
{
anesControls.BindMulti("P" + (i + 1) + " Up", Global.Config.NESAutoController[i].Up);
anesControls.BindMulti("P" + (i + 1) + " Down", Global.Config.NESAutoController[i].Down);
anesControls.BindMulti("P" + (i + 1) + " Left", Global.Config.NESAutoController[i].Left);
anesControls.BindMulti("P" + (i + 1) + " Right", Global.Config.NESAutoController[i].Right);
anesControls.BindMulti("P" + (i + 1) + " A", Global.Config.NESAutoController[i].A);
anesControls.BindMulti("P" + (i + 1) + " B", Global.Config.NESAutoController[i].B);
anesControls.BindMulti("P" + (i + 1) + " Select", Global.Config.NESAutoController[i].Select);
anesControls.BindMulti("P" + (i + 1) + " Start", Global.Config.NESAutoController[i].Start);
}
Global.AutofireNESControls = anesControls;
var gbControls = new Controller(Gameboy.GbController);
gbControls.BindMulti("Up", Global.Config.GBController[0].Up);
gbControls.BindMulti("Down", Global.Config.GBController[0].Down);
gbControls.BindMulti("Left", Global.Config.GBController[0].Left);
gbControls.BindMulti("Right", Global.Config.GBController[0].Right);
gbControls.BindMulti("A", Global.Config.GBController[0].A);
gbControls.BindMulti("B", Global.Config.GBController[0].B);
gbControls.BindMulti("Select", Global.Config.GBController[0].Select);
gbControls.BindMulti("Start", Global.Config.GBController[0].Start);
gbControls.BindMulti("Power", Global.Config.GBController[0].Power);
Global.GBControls = gbControls;
var agbControls = new AutofireController(Gameboy.GbController) {Autofire = true};
agbControls.BindMulti("Up", Global.Config.GBAutoController[0].Up);
agbControls.BindMulti("Down", Global.Config.GBAutoController[0].Down);
agbControls.BindMulti("Left", Global.Config.GBAutoController[0].Left);
agbControls.BindMulti("Right", Global.Config.GBAutoController[0].Right);
agbControls.BindMulti("A", Global.Config.GBAutoController[0].A);
agbControls.BindMulti("B", Global.Config.GBAutoController[0].B);
agbControls.BindMulti("Select", Global.Config.GBAutoController[0].Select);
agbControls.BindMulti("Start", Global.Config.GBAutoController[0].Start);
Global.AutofireGBControls = agbControls;
var dualgbControls = new Controller(Gameboy.GbController);
dualgbControls.BindMulti("P1 Up", Global.Config.DualGBController[0].P1_Up);
dualgbControls.BindMulti("P1 Down", Global.Config.DualGBController[0].P1_Down);
dualgbControls.BindMulti("P1 Left", Global.Config.DualGBController[0].P1_Left);
dualgbControls.BindMulti("P1 Right", Global.Config.DualGBController[0].P1_Right);
dualgbControls.BindMulti("P1 A", Global.Config.DualGBController[0].P1_A);
dualgbControls.BindMulti("P1 B", Global.Config.DualGBController[0].P1_B);
dualgbControls.BindMulti("P1 Select", Global.Config.DualGBController[0].P1_Select);
dualgbControls.BindMulti("P1 Start", Global.Config.DualGBController[0].P1_Start);
dualgbControls.BindMulti("P1 Power", Global.Config.DualGBController[0].P1_Power);
dualgbControls.BindMulti("P2 Up", Global.Config.DualGBController[0].P2_Up);
dualgbControls.BindMulti("P2 Down", Global.Config.DualGBController[0].P2_Down);
dualgbControls.BindMulti("P2 Left", Global.Config.DualGBController[0].P2_Left);
dualgbControls.BindMulti("P2 Right", Global.Config.DualGBController[0].P2_Right);
dualgbControls.BindMulti("P2 A", Global.Config.DualGBController[0].P2_A);
dualgbControls.BindMulti("P2 B", Global.Config.DualGBController[0].P2_B);
dualgbControls.BindMulti("P2 Select", Global.Config.DualGBController[0].P2_Select);
dualgbControls.BindMulti("P2 Start", Global.Config.DualGBController[0].P2_Start);
dualgbControls.BindMulti("P2 Power", Global.Config.DualGBController[0].P2_Power);
Global.DualGBControls = dualgbControls;
var adualgbControls = new AutofireController(Gameboy.GbController) {Autofire = true};
adualgbControls.BindMulti("P1 Up", Global.Config.AutoDualGBController[0].P1_Up);
adualgbControls.BindMulti("P1 Down", Global.Config.AutoDualGBController[0].P1_Down);
adualgbControls.BindMulti("P1 Left", Global.Config.AutoDualGBController[0].P1_Left);
adualgbControls.BindMulti("P1 Right", Global.Config.AutoDualGBController[0].P1_Right);
adualgbControls.BindMulti("P1 A", Global.Config.AutoDualGBController[0].P1_A);
adualgbControls.BindMulti("P1 B", Global.Config.AutoDualGBController[0].P1_B);
adualgbControls.BindMulti("P1 Select", Global.Config.AutoDualGBController[0].P1_Select);
adualgbControls.BindMulti("P1 Start", Global.Config.AutoDualGBController[0].P1_Start);
adualgbControls.BindMulti("P2 Up", Global.Config.AutoDualGBController[0].P2_Up);
adualgbControls.BindMulti("P2 Down", Global.Config.AutoDualGBController[0].P2_Down);
adualgbControls.BindMulti("P2 Left", Global.Config.AutoDualGBController[0].P2_Left);
adualgbControls.BindMulti("P2 Right", Global.Config.AutoDualGBController[0].P2_Right);
adualgbControls.BindMulti("P2 A", Global.Config.AutoDualGBController[0].P2_A);
adualgbControls.BindMulti("P2 B", Global.Config.AutoDualGBController[0].P2_B);
adualgbControls.BindMulti("P2 Select", Global.Config.AutoDualGBController[0].P2_Select);
adualgbControls.BindMulti("P2 Start", Global.Config.AutoDualGBController[0].P2_Start);
Global.DualAutofireGBControls = adualgbControls;
var gbaControls = new Controller(GBA.GBAController);
gbaControls.BindMulti("Up", Global.Config.GBAController[0].Up);
gbaControls.BindMulti("Down", Global.Config.GBAController[0].Down);
gbaControls.BindMulti("Left", Global.Config.GBAController[0].Left);
gbaControls.BindMulti("Right", Global.Config.GBAController[0].Right);
gbaControls.BindMulti("A", Global.Config.GBAController[0].A);
gbaControls.BindMulti("B", Global.Config.GBAController[0].B);
gbaControls.BindMulti("Select", Global.Config.GBAController[0].Select);
gbaControls.BindMulti("Start", Global.Config.GBAController[0].Start);
gbaControls.BindMulti("L", Global.Config.GBAController[0].L);
gbaControls.BindMulti("R", Global.Config.GBAController[0].R);
gbaControls.BindMulti("Power", Global.Config.GBAController[0].Power);
Global.GBAControls = gbaControls;
var agbaControls = new AutofireController(GBA.GBAController);
agbaControls.BindMulti("Up", Global.Config.GBAAutoController[0].Up);
agbaControls.BindMulti("Down", Global.Config.GBAAutoController[0].Down);
agbaControls.BindMulti("Left", Global.Config.GBAAutoController[0].Left);
agbaControls.BindMulti("Right", Global.Config.GBAAutoController[0].Right);
agbaControls.BindMulti("A", Global.Config.GBAAutoController[0].A);
agbaControls.BindMulti("B", Global.Config.GBAAutoController[0].B);
agbaControls.BindMulti("Select", Global.Config.GBAAutoController[0].Select);
agbaControls.BindMulti("Start", Global.Config.GBAAutoController[0].Start);
agbaControls.BindMulti("L", Global.Config.GBAAutoController[0].L);
agbaControls.BindMulti("R", Global.Config.GBAAutoController[0].R);
agbaControls.BindMulti("Power", Global.Config.GBAAutoController[0].Power);
Global.AutofireGBAControls = agbaControls;
var satControls = new Controller(Emulation.Consoles.Sega.Saturn.Yabause.SaturnController);
satControls.BindMulti("Power", Global.Config.SaturnConsoleButtons.Power);
satControls.BindMulti("Reset", Global.Config.SaturnConsoleButtons.Reset);
satControls.BindMulti("P1 Up", Global.Config.SaturnController[0].Up);
satControls.BindMulti("P1 Down", Global.Config.SaturnController[0].Down);
satControls.BindMulti("P1 Left", Global.Config.SaturnController[0].Left);
satControls.BindMulti("P1 Right", Global.Config.SaturnController[0].Right);
satControls.BindMulti("P1 A", Global.Config.SaturnController[0].A);
satControls.BindMulti("P1 B", Global.Config.SaturnController[0].B);
satControls.BindMulti("P1 C", Global.Config.SaturnController[0].C);
satControls.BindMulti("P1 X", Global.Config.SaturnController[0].X);
satControls.BindMulti("P1 Y", Global.Config.SaturnController[0].Y);
satControls.BindMulti("P1 Z", Global.Config.SaturnController[0].Z);
satControls.BindMulti("P1 L", Global.Config.SaturnController[0].L);
satControls.BindMulti("P1 R", Global.Config.SaturnController[0].R);
satControls.BindMulti("P1 Start", Global.Config.SaturnController[0].Start);
satControls.BindMulti("P2 Up", Global.Config.SaturnController[1].Up);
satControls.BindMulti("P2 Down", Global.Config.SaturnController[1].Down);
satControls.BindMulti("P2 Left", Global.Config.SaturnController[1].Left);
satControls.BindMulti("P2 Right", Global.Config.SaturnController[1].Right);
satControls.BindMulti("P2 A", Global.Config.SaturnController[1].A);
satControls.BindMulti("P2 B", Global.Config.SaturnController[1].B);
satControls.BindMulti("P2 C", Global.Config.SaturnController[1].C);
satControls.BindMulti("P2 X", Global.Config.SaturnController[1].X);
satControls.BindMulti("P2 Y", Global.Config.SaturnController[1].Y);
satControls.BindMulti("P2 Z", Global.Config.SaturnController[1].Z);
satControls.BindMulti("P2 L", Global.Config.SaturnController[1].L);
satControls.BindMulti("P2 R", Global.Config.SaturnController[1].R);
satControls.BindMulti("P2 Start", Global.Config.SaturnController[1].Start);
Global.SaturnControls = satControls;
var asatControls = new AutofireController(Emulation.Consoles.Sega.Saturn.Yabause.SaturnController);
asatControls.BindMulti("P1 Up", Global.Config.SaturnAutoController[0].Up);
asatControls.BindMulti("P1 Down", Global.Config.SaturnAutoController[0].Down);
asatControls.BindMulti("P1 Left", Global.Config.SaturnAutoController[0].Left);
asatControls.BindMulti("P1 Right", Global.Config.SaturnAutoController[0].Right);
asatControls.BindMulti("P1 A", Global.Config.SaturnAutoController[0].A);
asatControls.BindMulti("P1 B", Global.Config.SaturnAutoController[0].B);
asatControls.BindMulti("P1 C", Global.Config.SaturnAutoController[0].C);
asatControls.BindMulti("P1 X", Global.Config.SaturnAutoController[0].X);
asatControls.BindMulti("P1 Y", Global.Config.SaturnAutoController[0].Y);
asatControls.BindMulti("P1 Z", Global.Config.SaturnAutoController[0].Z);
asatControls.BindMulti("P1 L", Global.Config.SaturnAutoController[0].L);
asatControls.BindMulti("P1 R", Global.Config.SaturnAutoController[0].R);
asatControls.BindMulti("P1 Start", Global.Config.SaturnAutoController[0].Start);
asatControls.BindMulti("P2 Up", Global.Config.SaturnAutoController[1].Up);
asatControls.BindMulti("P2 Down", Global.Config.SaturnAutoController[1].Down);
asatControls.BindMulti("P2 Left", Global.Config.SaturnAutoController[1].Left);
asatControls.BindMulti("P2 Right", Global.Config.SaturnAutoController[1].Right);
asatControls.BindMulti("P2 A", Global.Config.SaturnAutoController[1].A);
asatControls.BindMulti("P2 B", Global.Config.SaturnAutoController[1].B);
asatControls.BindMulti("P2 C", Global.Config.SaturnAutoController[1].C);
asatControls.BindMulti("P2 X", Global.Config.SaturnAutoController[1].X);
asatControls.BindMulti("P2 Y", Global.Config.SaturnAutoController[1].Y);
asatControls.BindMulti("P2 Z", Global.Config.SaturnAutoController[1].Z);
asatControls.BindMulti("P2 L", Global.Config.SaturnAutoController[1].L);
asatControls.BindMulti("P2 R", Global.Config.SaturnAutoController[1].R);
asatControls.BindMulti("P2 Start", Global.Config.SaturnAutoController[1].Start);
Global.AutofireSaturnControls = asatControls;
var genControls = new Controller(Genesis.GenesisController);
genControls.BindMulti("P1 Up", Global.Config.GenesisController[0].Up);
genControls.BindMulti("P1 Left", Global.Config.GenesisController[0].Left);
genControls.BindMulti("P1 Right", Global.Config.GenesisController[0].Right);
genControls.BindMulti("P1 Down", Global.Config.GenesisController[0].Down);
genControls.BindMulti("P1 A", Global.Config.GenesisController[0].A);
genControls.BindMulti("P1 B", Global.Config.GenesisController[0].B);
genControls.BindMulti("P1 C", Global.Config.GenesisController[0].C);
genControls.BindMulti("P1 Start", Global.Config.GenesisController[0].Start);
genControls.BindMulti("Reset", Global.Config.GenesisConsoleButtons.Reset);
Global.GenControls = genControls;
var agenControls = new AutofireController(Genesis.GenesisController);
agenControls.BindMulti("P1 Up", Global.Config.GenesisAutoController[0].Up);
agenControls.BindMulti("P1 Left", Global.Config.GenesisAutoController[0].Left);
agenControls.BindMulti("P1 Right", Global.Config.GenesisAutoController[0].Right);
agenControls.BindMulti("P1 Down", Global.Config.GenesisAutoController[0].Down);
agenControls.BindMulti("P1 A", Global.Config.GenesisAutoController[0].A);
agenControls.BindMulti("P1 B", Global.Config.GenesisAutoController[0].B);
agenControls.BindMulti("P1 C", Global.Config.GenesisAutoController[0].C);
agenControls.BindMulti("P1 Start", Global.Config.GenesisAutoController[0].Start);
Global.AutofireGenControls = agenControls;
var a2600Controls = new Controller(Atari2600.Atari2600ControllerDefinition);
a2600Controls.BindMulti("P1 Up", Global.Config.Atari2600Controller[0].Up);
a2600Controls.BindMulti("P1 Left", Global.Config.Atari2600Controller[0].Left);
a2600Controls.BindMulti("P1 Right", Global.Config.Atari2600Controller[0].Right);
a2600Controls.BindMulti("P1 Down", Global.Config.Atari2600Controller[0].Down);
a2600Controls.BindMulti("P1 Button", Global.Config.Atari2600Controller[0].Button);
a2600Controls.BindMulti("P2 Up", Global.Config.Atari2600Controller[1].Up);
a2600Controls.BindMulti("P2 Left", Global.Config.Atari2600Controller[1].Left);
a2600Controls.BindMulti("P2 Right", Global.Config.Atari2600Controller[1].Right);
a2600Controls.BindMulti("P2 Down", Global.Config.Atari2600Controller[1].Down);
a2600Controls.BindMulti("P2 Button", Global.Config.Atari2600Controller[1].Button);
a2600Controls.BindMulti("Reset", Global.Config.Atari2600ConsoleButtons[0].Reset);
a2600Controls.BindMulti("Select", Global.Config.Atari2600ConsoleButtons[0].Select);
Global.Atari2600Controls = a2600Controls;
var autofireA2600Controls = new AutofireController(Atari2600.Atari2600ControllerDefinition);
autofireA2600Controls.BindMulti("P1 Up", Global.Config.Atari2600AutoController[0].Up);
autofireA2600Controls.BindMulti("P1 Left", Global.Config.Atari2600AutoController[0].Left);
autofireA2600Controls.BindMulti("P1 Right", Global.Config.Atari2600AutoController[0].Right);
autofireA2600Controls.BindMulti("P1 Down", Global.Config.Atari2600AutoController[0].Down);
autofireA2600Controls.BindMulti("P1 Button", Global.Config.Atari2600AutoController[0].Button);
autofireA2600Controls.BindMulti("P2 Up", Global.Config.Atari2600AutoController[1].Up);
autofireA2600Controls.BindMulti("P2 Left", Global.Config.Atari2600AutoController[1].Left);
autofireA2600Controls.BindMulti("P2 Right", Global.Config.Atari2600AutoController[1].Right);
autofireA2600Controls.BindMulti("P2 Down", Global.Config.Atari2600AutoController[1].Down);
autofireA2600Controls.BindMulti("P2 Button", Global.Config.Atari2600AutoController[1].Button);
Global.AutofireAtari2600Controls = autofireA2600Controls;
var a7800Controls = new Controller(Atari7800Control.ProLineJoystick);
a7800Controls.BindMulti("Power", Global.Config.Atari7800ConsoleButtons[0].Power);
a7800Controls.BindMulti("Reset", Global.Config.Atari7800ConsoleButtons[0].Reset);
a7800Controls.BindMulti("Select", Global.Config.Atari7800ConsoleButtons[0].Select);
a7800Controls.BindMulti("Pause", Global.Config.Atari7800ConsoleButtons[0].Pause);
a7800Controls.BindMulti("P1 Up", Global.Config.Atari7800Controller[0].Up);
a7800Controls.BindMulti("P1 Left", Global.Config.Atari7800Controller[0].Left);
a7800Controls.BindMulti("P1 Right", Global.Config.Atari7800Controller[0].Right);
a7800Controls.BindMulti("P1 Down", Global.Config.Atari7800Controller[0].Down);
a7800Controls.BindMulti("P1 Trigger", Global.Config.Atari7800Controller[0].Button1);
a7800Controls.BindMulti("P1 Trigger 2", Global.Config.Atari7800Controller[0].Button2);
a7800Controls.BindMulti("P2 Up", Global.Config.Atari7800Controller[1].Up);
a7800Controls.BindMulti("P2 Left", Global.Config.Atari7800Controller[1].Left);
a7800Controls.BindMulti("P2 Right", Global.Config.Atari7800Controller[1].Right);
a7800Controls.BindMulti("P2 Down", Global.Config.Atari7800Controller[1].Down);
a7800Controls.BindMulti("P2 Trigger", Global.Config.Atari7800Controller[1].Button1);
a7800Controls.BindMulti("P2 Trigger 2", Global.Config.Atari7800Controller[1].Button2);
Global.Atari7800Controls = a7800Controls;
var autofireA7800Controls = new AutofireController(Atari7800Control.ProLineJoystick);
autofireA7800Controls.BindMulti("P1 Up", Global.Config.Atari7800AutoController[0].Up);
autofireA7800Controls.BindMulti("P1 Left", Global.Config.Atari7800AutoController[0].Left);
autofireA7800Controls.BindMulti("P1 Right", Global.Config.Atari7800AutoController[0].Right);
autofireA7800Controls.BindMulti("P1 Down", Global.Config.Atari7800AutoController[0].Down);
autofireA7800Controls.BindMulti("P1 Trigger", Global.Config.Atari7800Controller[0].Button1);
autofireA7800Controls.BindMulti("P1 Trigger 2", Global.Config.Atari7800Controller[0].Button2);
autofireA7800Controls.BindMulti("P2 Up", Global.Config.Atari7800AutoController[1].Up);
autofireA7800Controls.BindMulti("P2 Left", Global.Config.Atari7800AutoController[1].Left);
autofireA7800Controls.BindMulti("P2 Right", Global.Config.Atari7800AutoController[1].Right);
autofireA7800Controls.BindMulti("P2 Down", Global.Config.Atari7800AutoController[1].Down);
autofireA7800Controls.BindMulti("P2 Trigger", Global.Config.Atari7800Controller[1].Button1);
autofireA7800Controls.BindMulti("P2 Trigger 2", Global.Config.Atari7800Controller[1].Button2);
Global.AutofireAtari7800Controls = autofireA2600Controls;
var colecoControls = new Controller(ColecoVision.ColecoVisionControllerDefinition);
colecoControls.BindMulti("P1 Up", Global.Config.ColecoController[0].Up);
colecoControls.BindMulti("P1 Left", Global.Config.ColecoController[0].Left);
colecoControls.BindMulti("P1 Right", Global.Config.ColecoController[0].Right);
colecoControls.BindMulti("P1 Down", Global.Config.ColecoController[0].Down);
colecoControls.BindMulti("P1 L", Global.Config.ColecoController[0].L);
colecoControls.BindMulti("P1 R", Global.Config.ColecoController[0].R);
colecoControls.BindMulti("P1 Key0", Global.Config.ColecoController[0]._0);
colecoControls.BindMulti("P1 Key1", Global.Config.ColecoController[0]._1);
colecoControls.BindMulti("P1 Key2", Global.Config.ColecoController[0]._2);
colecoControls.BindMulti("P1 Key3", Global.Config.ColecoController[0]._3);
colecoControls.BindMulti("P1 Key4", Global.Config.ColecoController[0]._4);
colecoControls.BindMulti("P1 Key5", Global.Config.ColecoController[0]._5);
colecoControls.BindMulti("P1 Key6", Global.Config.ColecoController[0]._6);
colecoControls.BindMulti("P1 Key7", Global.Config.ColecoController[0]._7);
colecoControls.BindMulti("P1 Key8", Global.Config.ColecoController[0]._8);
colecoControls.BindMulti("P1 Key9", Global.Config.ColecoController[0]._9);
colecoControls.BindMulti("P1 Star", Global.Config.ColecoController[0].Star);
colecoControls.BindMulti("P1 Pound", Global.Config.ColecoController[0].Pound);
colecoControls.BindMulti("P2 Up", Global.Config.ColecoController[1].Up);
colecoControls.BindMulti("P2 Left", Global.Config.ColecoController[1].Left);
colecoControls.BindMulti("P2 Right", Global.Config.ColecoController[1].Right);
colecoControls.BindMulti("P2 Down", Global.Config.ColecoController[1].Down);
colecoControls.BindMulti("P2 L", Global.Config.ColecoController[1].L);
colecoControls.BindMulti("P2 R", Global.Config.ColecoController[1].R);
colecoControls.BindMulti("P2 Key0", Global.Config.ColecoController[1]._0);
colecoControls.BindMulti("P2 Key1", Global.Config.ColecoController[1]._1);
colecoControls.BindMulti("P2 Key2", Global.Config.ColecoController[1]._2);
colecoControls.BindMulti("P2 Key3", Global.Config.ColecoController[1]._3);
colecoControls.BindMulti("P2 Key4", Global.Config.ColecoController[1]._4);
colecoControls.BindMulti("P2 Key5", Global.Config.ColecoController[1]._5);
colecoControls.BindMulti("P2 Key6", Global.Config.ColecoController[1]._6);
colecoControls.BindMulti("P2 Key7", Global.Config.ColecoController[1]._7);
colecoControls.BindMulti("P2 Key8", Global.Config.ColecoController[1]._8);
colecoControls.BindMulti("P2 Key9", Global.Config.ColecoController[1]._9);
colecoControls.BindMulti("P2 Star", Global.Config.ColecoController[1].Star);
colecoControls.BindMulti("P2 Pound", Global.Config.ColecoController[1].Pound);
Global.ColecoControls = colecoControls;
var acolecoControls = new AutofireController(ColecoVision.ColecoVisionControllerDefinition);
acolecoControls.BindMulti("P1 Up", Global.Config.ColecoAutoController[0].Up);
acolecoControls.BindMulti("P1 Left", Global.Config.ColecoAutoController[0].Left);
acolecoControls.BindMulti("P1 Right", Global.Config.ColecoAutoController[0].Right);
acolecoControls.BindMulti("P1 Down", Global.Config.ColecoAutoController[0].Down);
acolecoControls.BindMulti("P1 L", Global.Config.ColecoAutoController[0].L);
acolecoControls.BindMulti("P1 R", Global.Config.ColecoAutoController[0].R);
acolecoControls.BindMulti("P1 Key0", Global.Config.ColecoAutoController[0]._0);
acolecoControls.BindMulti("P1 Key1", Global.Config.ColecoAutoController[0]._1);
acolecoControls.BindMulti("P1 Key2", Global.Config.ColecoAutoController[0]._2);
acolecoControls.BindMulti("P1 Key3", Global.Config.ColecoAutoController[0]._3);
acolecoControls.BindMulti("P1 Key4", Global.Config.ColecoAutoController[0]._4);
acolecoControls.BindMulti("P1 Key5", Global.Config.ColecoAutoController[0]._5);
acolecoControls.BindMulti("P1 Key6", Global.Config.ColecoAutoController[0]._6);
acolecoControls.BindMulti("P1 Key7", Global.Config.ColecoAutoController[0]._7);
acolecoControls.BindMulti("P1 Key8", Global.Config.ColecoAutoController[0]._8);
acolecoControls.BindMulti("P1 Key9", Global.Config.ColecoAutoController[0]._9);
acolecoControls.BindMulti("P1 Star", Global.Config.ColecoAutoController[0].Star);
acolecoControls.BindMulti("P1 Pound", Global.Config.ColecoController[0].Pound);
acolecoControls.BindMulti("P2 Up", Global.Config.ColecoAutoController[1].Up);
acolecoControls.BindMulti("P2 Left", Global.Config.ColecoAutoController[1].Left);
acolecoControls.BindMulti("P2 Right", Global.Config.ColecoAutoController[1].Right);
acolecoControls.BindMulti("P2 Down", Global.Config.ColecoAutoController[1].Down);
acolecoControls.BindMulti("P2 L", Global.Config.ColecoAutoController[1].L);
acolecoControls.BindMulti("P2 R", Global.Config.ColecoAutoController[1].R);
acolecoControls.BindMulti("P2 Key0", Global.Config.ColecoAutoController[1]._0);
acolecoControls.BindMulti("P2 Key1", Global.Config.ColecoAutoController[1]._1);
acolecoControls.BindMulti("P2 Key2", Global.Config.ColecoAutoController[1]._2);
acolecoControls.BindMulti("P2 Key3", Global.Config.ColecoAutoController[1]._3);
acolecoControls.BindMulti("P2 Key4", Global.Config.ColecoAutoController[1]._4);
acolecoControls.BindMulti("P2 Key5", Global.Config.ColecoAutoController[1]._5);
acolecoControls.BindMulti("P2 Key6", Global.Config.ColecoAutoController[1]._6);
acolecoControls.BindMulti("P2 Key7", Global.Config.ColecoAutoController[1]._7);
acolecoControls.BindMulti("P2 Key8", Global.Config.ColecoAutoController[1]._8);
acolecoControls.BindMulti("P2 Key9", Global.Config.ColecoAutoController[1]._9);
acolecoControls.BindMulti("P2 Star", Global.Config.ColecoAutoController[1].Star);
acolecoControls.BindMulti("P2 Pound", Global.Config.ColecoController[1].Pound);
Global.AutofireColecoControls = acolecoControls;
var intelliControls = new Controller(Intellivision.IntellivisionController);
intelliControls.BindMulti("P1 Up", Global.Config.IntellivisionController[0].Up);
intelliControls.BindMulti("P1 Left", Global.Config.IntellivisionController[0].Left);
intelliControls.BindMulti("P1 Right", Global.Config.IntellivisionController[0].Right);
intelliControls.BindMulti("P1 Down", Global.Config.IntellivisionController[0].Down);
intelliControls.BindMulti("P1 L", Global.Config.IntellivisionController[0].L);
intelliControls.BindMulti("P1 R", Global.Config.IntellivisionController[0].R);
intelliControls.BindMulti("P1 Key0", Global.Config.IntellivisionController[0]._0);
intelliControls.BindMulti("P1 Key1", Global.Config.IntellivisionController[0]._1);
intelliControls.BindMulti("P1 Key2", Global.Config.IntellivisionController[0]._2);
intelliControls.BindMulti("P1 Key3", Global.Config.IntellivisionController[0]._3);
intelliControls.BindMulti("P1 Key4", Global.Config.IntellivisionController[0]._4);
intelliControls.BindMulti("P1 Key5", Global.Config.IntellivisionController[0]._5);
intelliControls.BindMulti("P1 Key6", Global.Config.IntellivisionController[0]._6);
intelliControls.BindMulti("P1 Key7", Global.Config.IntellivisionController[0]._7);
intelliControls.BindMulti("P1 Key8", Global.Config.IntellivisionController[0]._8);
intelliControls.BindMulti("P1 Key9", Global.Config.IntellivisionController[0]._9);
intelliControls.BindMulti("P1 Clear", Global.Config.IntellivisionController[0].Clear);
intelliControls.BindMulti("P1 Enter", Global.Config.IntellivisionController[0].Enter);
intelliControls.BindMulti("P2 Up", Global.Config.IntellivisionController[1].Up);
intelliControls.BindMulti("P2 Left", Global.Config.IntellivisionController[1].Left);
intelliControls.BindMulti("P2 Right", Global.Config.IntellivisionController[1].Right);
intelliControls.BindMulti("P2 Down", Global.Config.IntellivisionController[1].Down);
intelliControls.BindMulti("P2 L", Global.Config.IntellivisionController[1].L);
intelliControls.BindMulti("P2 R", Global.Config.IntellivisionController[1].R);
intelliControls.BindMulti("P2 Key0", Global.Config.IntellivisionController[1]._0);
intelliControls.BindMulti("P2 Key1", Global.Config.IntellivisionController[1]._1);
intelliControls.BindMulti("P2 Key2", Global.Config.IntellivisionController[1]._2);
intelliControls.BindMulti("P2 Key3", Global.Config.IntellivisionController[1]._3);
intelliControls.BindMulti("P2 Key4", Global.Config.IntellivisionController[1]._4);
intelliControls.BindMulti("P2 Key5", Global.Config.IntellivisionController[1]._5);
intelliControls.BindMulti("P2 Key6", Global.Config.IntellivisionController[1]._6);
intelliControls.BindMulti("P2 Key7", Global.Config.IntellivisionController[1]._7);
intelliControls.BindMulti("P2 Key8", Global.Config.IntellivisionController[1]._8);
intelliControls.BindMulti("P2 Key9", Global.Config.IntellivisionController[1]._9);
intelliControls.BindMulti("P2 Clear", Global.Config.IntellivisionController[1].Clear);
intelliControls.BindMulti("P2 Enter", Global.Config.IntellivisionController[1].Enter);
Global.IntellivisionControls = intelliControls;
var aintelliControls = new AutofireController(Intellivision.IntellivisionController);
aintelliControls.BindMulti("P1 Up", Global.Config.IntellivisionAutoController[0].Up);
aintelliControls.BindMulti("P1 Left", Global.Config.IntellivisionAutoController[0].Left);
aintelliControls.BindMulti("P1 Right", Global.Config.IntellivisionAutoController[0].Right);
aintelliControls.BindMulti("P1 Down", Global.Config.IntellivisionAutoController[0].Down);
aintelliControls.BindMulti("P1 L", Global.Config.IntellivisionAutoController[0].L);
aintelliControls.BindMulti("P1 R", Global.Config.IntellivisionAutoController[0].R);
aintelliControls.BindMulti("P1 Key0", Global.Config.IntellivisionAutoController[0]._0);
aintelliControls.BindMulti("P1 Key1", Global.Config.IntellivisionAutoController[0]._1);
aintelliControls.BindMulti("P1 Key2", Global.Config.IntellivisionAutoController[0]._2);
aintelliControls.BindMulti("P1 Key3", Global.Config.IntellivisionAutoController[0]._3);
aintelliControls.BindMulti("P1 Key4", Global.Config.IntellivisionAutoController[0]._4);
aintelliControls.BindMulti("P1 Key5", Global.Config.IntellivisionAutoController[0]._5);
aintelliControls.BindMulti("P1 Key6", Global.Config.IntellivisionAutoController[0]._6);
aintelliControls.BindMulti("P1 Key7", Global.Config.IntellivisionAutoController[0]._7);
aintelliControls.BindMulti("P1 Key8", Global.Config.IntellivisionAutoController[0]._8);
aintelliControls.BindMulti("P1 Key9", Global.Config.IntellivisionAutoController[0]._9);
aintelliControls.BindMulti("P1 Clear", Global.Config.IntellivisionAutoController[0].Clear);
aintelliControls.BindMulti("P1 Enter", Global.Config.IntellivisionAutoController[0].Enter);
aintelliControls.BindMulti("P2 Up", Global.Config.IntellivisionAutoController[1].Up);
aintelliControls.BindMulti("P2 Left", Global.Config.IntellivisionAutoController[1].Left);
aintelliControls.BindMulti("P2 Right", Global.Config.IntellivisionAutoController[1].Right);
aintelliControls.BindMulti("P2 Down", Global.Config.IntellivisionAutoController[1].Down);
aintelliControls.BindMulti("P2 L", Global.Config.IntellivisionAutoController[1].L);
aintelliControls.BindMulti("P2 R", Global.Config.IntellivisionAutoController[1].R);
aintelliControls.BindMulti("P2 Key0", Global.Config.IntellivisionAutoController[1]._0);
aintelliControls.BindMulti("P2 Key1", Global.Config.IntellivisionAutoController[1]._1);
aintelliControls.BindMulti("P2 Key2", Global.Config.IntellivisionAutoController[1]._2);
aintelliControls.BindMulti("P2 Key3", Global.Config.IntellivisionAutoController[1]._3);
aintelliControls.BindMulti("P2 Key4", Global.Config.IntellivisionAutoController[1]._4);
aintelliControls.BindMulti("P2 Key5", Global.Config.IntellivisionAutoController[1]._5);
aintelliControls.BindMulti("P2 Key6", Global.Config.IntellivisionAutoController[1]._6);
aintelliControls.BindMulti("P2 Key7", Global.Config.IntellivisionAutoController[1]._7);
aintelliControls.BindMulti("P2 Key8", Global.Config.IntellivisionAutoController[1]._8);
aintelliControls.BindMulti("P2 Key9", Global.Config.IntellivisionAutoController[1]._9);
aintelliControls.BindMulti("P2 Clear", Global.Config.IntellivisionAutoController[1].Clear);
aintelliControls.BindMulti("P2 Enter", Global.Config.IntellivisionAutoController[1].Enter);
Global.AutofireIntellivisionControls = aintelliControls;
var TI83Controls = new Controller(TI83.TI83Controller);
TI83Controls.BindMulti("0", Global.Config.TI83Controller[0]._0);
TI83Controls.BindMulti("1", Global.Config.TI83Controller[0]._1);
TI83Controls.BindMulti("2", Global.Config.TI83Controller[0]._2);
TI83Controls.BindMulti("3", Global.Config.TI83Controller[0]._3);
TI83Controls.BindMulti("4", Global.Config.TI83Controller[0]._4);
TI83Controls.BindMulti("5", Global.Config.TI83Controller[0]._5);
TI83Controls.BindMulti("6", Global.Config.TI83Controller[0]._6);
TI83Controls.BindMulti("7", Global.Config.TI83Controller[0]._7);
TI83Controls.BindMulti("8", Global.Config.TI83Controller[0]._8);
TI83Controls.BindMulti("9", Global.Config.TI83Controller[0]._9);
TI83Controls.BindMulti("ON", Global.Config.TI83Controller[0].ON);
TI83Controls.BindMulti("ENTER", Global.Config.TI83Controller[0].ENTER);
TI83Controls.BindMulti("DOWN", Global.Config.TI83Controller[0].DOWN);
TI83Controls.BindMulti("LEFT", Global.Config.TI83Controller[0].LEFT);
TI83Controls.BindMulti("RIGHT", Global.Config.TI83Controller[0].RIGHT);
TI83Controls.BindMulti("UP", Global.Config.TI83Controller[0].UP);
TI83Controls.BindMulti("PLUS", Global.Config.TI83Controller[0].PLUS);
TI83Controls.BindMulti("MINUS", Global.Config.TI83Controller[0].MINUS);
TI83Controls.BindMulti("MULTIPLY", Global.Config.TI83Controller[0].MULTIPLY);
TI83Controls.BindMulti("DIVIDE", Global.Config.TI83Controller[0].DIVIDE);
TI83Controls.BindMulti("CLEAR", Global.Config.TI83Controller[0].CLEAR);
TI83Controls.BindMulti("DOT", Global.Config.TI83Controller[0].DOT);
TI83Controls.BindMulti("EXP", Global.Config.TI83Controller[0].EXP);
TI83Controls.BindMulti("DASH", Global.Config.TI83Controller[0].DASH);
TI83Controls.BindMulti("PARACLOSE", Global.Config.TI83Controller[0].DASH);
TI83Controls.BindMulti("TAN", Global.Config.TI83Controller[0].TAN);
TI83Controls.BindMulti("VARS", Global.Config.TI83Controller[0].VARS);
TI83Controls.BindMulti("PARAOPEN", Global.Config.TI83Controller[0].PARAOPEN);
TI83Controls.BindMulti("COS", Global.Config.TI83Controller[0].COS);
TI83Controls.BindMulti("PRGM", Global.Config.TI83Controller[0].PRGM);
TI83Controls.BindMulti("STAT", Global.Config.TI83Controller[0].STAT);
TI83Controls.BindMulti("COMMA", Global.Config.TI83Controller[0].COMMA);
TI83Controls.BindMulti("SIN", Global.Config.TI83Controller[0].SIN);
TI83Controls.BindMulti("MATRIX", Global.Config.TI83Controller[0].MATRIX);
TI83Controls.BindMulti("X", Global.Config.TI83Controller[0].X);
TI83Controls.BindMulti("STO", Global.Config.TI83Controller[0].STO);
TI83Controls.BindMulti("LN", Global.Config.TI83Controller[0].LN);
TI83Controls.BindMulti("LOG", Global.Config.TI83Controller[0].LOG);
TI83Controls.BindMulti("SQUARED", Global.Config.TI83Controller[0].SQUARED);
TI83Controls.BindMulti("NEG1", Global.Config.TI83Controller[0].NEG1);
TI83Controls.BindMulti("MATH", Global.Config.TI83Controller[0].MATH);
TI83Controls.BindMulti("ALPHA", Global.Config.TI83Controller[0].ALPHA);
TI83Controls.BindMulti("GRAPH", Global.Config.TI83Controller[0].GRAPH);
TI83Controls.BindMulti("TRACE", Global.Config.TI83Controller[0].TRACE);
TI83Controls.BindMulti("ZOOM", Global.Config.TI83Controller[0].ZOOM);
TI83Controls.BindMulti("WINDOW", Global.Config.TI83Controller[0].WINDOW);
TI83Controls.BindMulti("Y", Global.Config.TI83Controller[0].Y);
TI83Controls.BindMulti("2ND", Global.Config.TI83Controller[0].SECOND);
TI83Controls.BindMulti("MODE", Global.Config.TI83Controller[0].MODE);
TI83Controls.BindMulti("DEL", Global.Config.TI83Controller[0].DEL);
Global.TI83Controls = TI83Controls;
var CommodoreControls = new Controller(C64.C64ControllerDefinition);
CommodoreControls.BindMulti("P1 Up", Global.Config.C64Joysticks[0].Up);
CommodoreControls.BindMulti("P1 Left", Global.Config.C64Joysticks[0].Left);
CommodoreControls.BindMulti("P1 Right", Global.Config.C64Joysticks[0].Right);
CommodoreControls.BindMulti("P1 Down", Global.Config.C64Joysticks[0].Down);
CommodoreControls.BindMulti("P1 Button", Global.Config.C64Joysticks[0].Button);
CommodoreControls.BindMulti("P2 Up", Global.Config.C64Joysticks[1].Up);
CommodoreControls.BindMulti("P2 Left", Global.Config.C64Joysticks[1].Left);
CommodoreControls.BindMulti("P2 Right", Global.Config.C64Joysticks[1].Right);
CommodoreControls.BindMulti("P2 Down", Global.Config.C64Joysticks[1].Down);
CommodoreControls.BindMulti("P2 Button", Global.Config.C64Joysticks[1].Button);
CommodoreControls.BindMulti("Key F1", Global.Config.C64Keyboard.F1);
CommodoreControls.BindMulti("Key F3", Global.Config.C64Keyboard.F3);
CommodoreControls.BindMulti("Key F5", Global.Config.C64Keyboard.F5);
CommodoreControls.BindMulti("Key F7", Global.Config.C64Keyboard.F7);
CommodoreControls.BindMulti("Key Left Arrow", Global.Config.C64Keyboard.Left_Arrow);
CommodoreControls.BindMulti("Key 1", Global.Config.C64Keyboard._1);
CommodoreControls.BindMulti("Key 2", Global.Config.C64Keyboard._2);
CommodoreControls.BindMulti("Key 3", Global.Config.C64Keyboard._3);
CommodoreControls.BindMulti("Key 4", Global.Config.C64Keyboard._4);
CommodoreControls.BindMulti("Key 5", Global.Config.C64Keyboard._5);
CommodoreControls.BindMulti("Key 6", Global.Config.C64Keyboard._6);
CommodoreControls.BindMulti("Key 7", Global.Config.C64Keyboard._7);
CommodoreControls.BindMulti("Key 8", Global.Config.C64Keyboard._8);
CommodoreControls.BindMulti("Key 9", Global.Config.C64Keyboard._9);
CommodoreControls.BindMulti("Key 0", Global.Config.C64Keyboard._0);
CommodoreControls.BindMulti("Key Plus", Global.Config.C64Keyboard.Plus);
CommodoreControls.BindMulti("Key Minus", Global.Config.C64Keyboard.Minus);
CommodoreControls.BindMulti("Key Pound", Global.Config.C64Keyboard.Pound);
CommodoreControls.BindMulti("Key Clear/Home", Global.Config.C64Keyboard.Clear_Home);
CommodoreControls.BindMulti("Key Insert/Delete", Global.Config.C64Keyboard.Insert_Delete);
CommodoreControls.BindMulti("Key Control", Global.Config.C64Keyboard.Control);
CommodoreControls.BindMulti("Key Q", Global.Config.C64Keyboard.Q);
CommodoreControls.BindMulti("Key W", Global.Config.C64Keyboard.W);
CommodoreControls.BindMulti("Key E", Global.Config.C64Keyboard.E);
CommodoreControls.BindMulti("Key R", Global.Config.C64Keyboard.R);
CommodoreControls.BindMulti("Key T", Global.Config.C64Keyboard.T);
CommodoreControls.BindMulti("Key Y", Global.Config.C64Keyboard.Y);
CommodoreControls.BindMulti("Key U", Global.Config.C64Keyboard.U);
CommodoreControls.BindMulti("Key I", Global.Config.C64Keyboard.I);
CommodoreControls.BindMulti("Key O", Global.Config.C64Keyboard.O);
CommodoreControls.BindMulti("Key P", Global.Config.C64Keyboard.P);
CommodoreControls.BindMulti("Key At", Global.Config.C64Keyboard.At);
CommodoreControls.BindMulti("Key Asterisk", Global.Config.C64Keyboard.Asterisk);
CommodoreControls.BindMulti("Key Up Arrow", Global.Config.C64Keyboard.Up_Arrow);
CommodoreControls.BindMulti("Key Restore", Global.Config.C64Keyboard.Restore);
CommodoreControls.BindMulti("Key Run/Stop", Global.Config.C64Keyboard.Run_Stop);
CommodoreControls.BindMulti("Key Lck", Global.Config.C64Keyboard.Lck);
CommodoreControls.BindMulti("Key A", Global.Config.C64Keyboard.A);
CommodoreControls.BindMulti("Key S", Global.Config.C64Keyboard.S);
CommodoreControls.BindMulti("Key D", Global.Config.C64Keyboard.D);
CommodoreControls.BindMulti("Key F", Global.Config.C64Keyboard.F);
CommodoreControls.BindMulti("Key G", Global.Config.C64Keyboard.G);
CommodoreControls.BindMulti("Key H", Global.Config.C64Keyboard.H);
CommodoreControls.BindMulti("Key J", Global.Config.C64Keyboard.J);
CommodoreControls.BindMulti("Key K", Global.Config.C64Keyboard.K);
CommodoreControls.BindMulti("Key L", Global.Config.C64Keyboard.L);
CommodoreControls.BindMulti("Key Colon", Global.Config.C64Keyboard.Colon);
CommodoreControls.BindMulti("Key Semicolon", Global.Config.C64Keyboard.Semicolon);
CommodoreControls.BindMulti("Key Equal", Global.Config.C64Keyboard.Equal);
CommodoreControls.BindMulti("Key Return", Global.Config.C64Keyboard.Return);
CommodoreControls.BindMulti("Key Commodore", Global.Config.C64Keyboard.Commodore);
CommodoreControls.BindMulti("Key Left Shift", Global.Config.C64Keyboard.Left_Shift);
CommodoreControls.BindMulti("Key Z", Global.Config.C64Keyboard.Z);
CommodoreControls.BindMulti("Key X", Global.Config.C64Keyboard.X);
CommodoreControls.BindMulti("Key C", Global.Config.C64Keyboard.C);
CommodoreControls.BindMulti("Key V", Global.Config.C64Keyboard.V);
CommodoreControls.BindMulti("Key B", Global.Config.C64Keyboard.B);
CommodoreControls.BindMulti("Key N", Global.Config.C64Keyboard.N);
CommodoreControls.BindMulti("Key M", Global.Config.C64Keyboard.M);
CommodoreControls.BindMulti("Key Comma", Global.Config.C64Keyboard.Comma);
CommodoreControls.BindMulti("Key Period", Global.Config.C64Keyboard.Period);
CommodoreControls.BindMulti("Key Period", Global.Config.C64Keyboard.Period);
CommodoreControls.BindMulti("Key Slash", Global.Config.C64Keyboard.Slash);
CommodoreControls.BindMulti("Key Right Shift", Global.Config.C64Keyboard.Right_Shift);
CommodoreControls.BindMulti("Key Cursor Up/Down", Global.Config.C64Keyboard.Cursor_Up_Down);
CommodoreControls.BindMulti("Key Cursor Left/Right", Global.Config.C64Keyboard.Cursor_Left_Right);
CommodoreControls.BindMulti("Key Space", Global.Config.C64Keyboard.Space);
Global.Commodore64Controls = CommodoreControls;
var autofireC64Controls = new AutofireController(C64.C64ControllerDefinition);
autofireC64Controls.BindMulti("P1 Up", Global.Config.C64AutoJoysticks[0].Up);
autofireC64Controls.BindMulti("P1 Left", Global.Config.C64AutoJoysticks[0].Left);
autofireC64Controls.BindMulti("P1 Right", Global.Config.C64AutoJoysticks[0].Right);
autofireC64Controls.BindMulti("P1 Down", Global.Config.C64AutoJoysticks[0].Down);
autofireC64Controls.BindMulti("P1 Button", Global.Config.C64AutoJoysticks[0].Button);
autofireC64Controls.BindMulti("P2 Up", Global.Config.C64AutoJoysticks[1].Up);
autofireC64Controls.BindMulti("P2 Left", Global.Config.C64AutoJoysticks[1].Left);
autofireC64Controls.BindMulti("P2 Right", Global.Config.C64AutoJoysticks[1].Right);
autofireC64Controls.BindMulti("P2 Down", Global.Config.C64AutoJoysticks[1].Down);
autofireC64Controls.BindMulti("P2 Button", Global.Config.C64AutoJoysticks[1].Button);
Global.AutofireCommodore64Controls = autofireC64Controls;
var N64Controls = new Controller(N64.N64ControllerDefinition);
N64Controls.BindMulti("Power", Global.Config.N64ConsoleButtons.Power);
N64Controls.BindMulti("Reset", Global.Config.N64ConsoleButtons.Reset);
N64Controls.BindMulti("P1 DPad U", Global.Config.N64Controller[0].DPadU);
N64Controls.BindMulti("P1 DPad L", Global.Config.N64Controller[0].DPadL);
N64Controls.BindMulti("P1 DPad R", Global.Config.N64Controller[0].DPadR);
N64Controls.BindMulti("P1 DPad D", Global.Config.N64Controller[0].DPadD);
N64Controls.BindMulti("P1 Start", Global.Config.N64Controller[0].Start);
N64Controls.BindMulti("P1 Z", Global.Config.N64Controller[0].Z);
N64Controls.BindMulti("P1 B", Global.Config.N64Controller[0].B);
N64Controls.BindMulti("P1 A", Global.Config.N64Controller[0].A);
N64Controls.BindMulti("P1 C Up", Global.Config.N64Controller[0].CUp);
N64Controls.BindMulti("P1 C Down", Global.Config.N64Controller[0].CDown);
N64Controls.BindMulti("P1 C Left", Global.Config.N64Controller[0].CLeft);
N64Controls.BindMulti("P1 C Right", Global.Config.N64Controller[0].CRight);
N64Controls.BindMulti("P1 L", Global.Config.N64Controller[0].L);
N64Controls.BindMulti("P1 R", Global.Config.N64Controller[0].R);
N64Controls.BindMulti("P2 DPad U", Global.Config.N64Controller[1].DPadU);
N64Controls.BindMulti("P2 DPad L", Global.Config.N64Controller[1].DPadL);
N64Controls.BindMulti("P2 DPad R", Global.Config.N64Controller[1].DPadR);
N64Controls.BindMulti("P2 DPad D", Global.Config.N64Controller[1].DPadD);
N64Controls.BindMulti("P2 Start", Global.Config.N64Controller[1].Start);
N64Controls.BindMulti("P2 Z", Global.Config.N64Controller[1].Z);
N64Controls.BindMulti("P2 B", Global.Config.N64Controller[1].B);
N64Controls.BindMulti("P2 A", Global.Config.N64Controller[1].A);
N64Controls.BindMulti("P2 C Up", Global.Config.N64Controller[1].CUp);
N64Controls.BindMulti("P2 C Down", Global.Config.N64Controller[1].CDown);
N64Controls.BindMulti("P2 C Left", Global.Config.N64Controller[1].CLeft);
N64Controls.BindMulti("P2 C Right", Global.Config.N64Controller[1].CRight);
N64Controls.BindMulti("P2 L", Global.Config.N64Controller[1].L);
N64Controls.BindMulti("P2 R", Global.Config.N64Controller[1].R);
N64Controls.BindMulti("P3 DPad U", Global.Config.N64Controller[2].DPadU);
N64Controls.BindMulti("P3 DPad L", Global.Config.N64Controller[2].DPadL);
N64Controls.BindMulti("P3 DPad R", Global.Config.N64Controller[2].DPadR);
N64Controls.BindMulti("P3 DPad D", Global.Config.N64Controller[2].DPadD);
N64Controls.BindMulti("P3 Start", Global.Config.N64Controller[2].Start);
N64Controls.BindMulti("P3 Z", Global.Config.N64Controller[2].Z);
N64Controls.BindMulti("P3 B", Global.Config.N64Controller[2].B);
N64Controls.BindMulti("P3 A", Global.Config.N64Controller[2].A);
N64Controls.BindMulti("P3 C Up", Global.Config.N64Controller[2].CUp);
N64Controls.BindMulti("P3 C Down", Global.Config.N64Controller[2].CDown);
N64Controls.BindMulti("P3 C Left", Global.Config.N64Controller[2].CLeft);
N64Controls.BindMulti("P3 C Right", Global.Config.N64Controller[2].CRight);
N64Controls.BindMulti("P3 L", Global.Config.N64Controller[2].L);
N64Controls.BindMulti("P3 R", Global.Config.N64Controller[2].R);
N64Controls.BindMulti("P4 DPad U", Global.Config.N64Controller[3].DPadU);
N64Controls.BindMulti("P4 DPad L", Global.Config.N64Controller[3].DPadL);
N64Controls.BindMulti("P4 DPad R", Global.Config.N64Controller[3].DPadR);
N64Controls.BindMulti("P4 DPad D", Global.Config.N64Controller[3].DPadD);
N64Controls.BindMulti("P4 Start", Global.Config.N64Controller[3].Start);
N64Controls.BindMulti("P4 Z", Global.Config.N64Controller[3].Z);
N64Controls.BindMulti("P4 B", Global.Config.N64Controller[3].B);
N64Controls.BindMulti("P4 A", Global.Config.N64Controller[3].A);
N64Controls.BindMulti("P4 C Up", Global.Config.N64Controller[3].CUp);
N64Controls.BindMulti("P4 C Down", Global.Config.N64Controller[3].CDown);
N64Controls.BindMulti("P4 C Left", Global.Config.N64Controller[3].CLeft);
N64Controls.BindMulti("P4 C Right", Global.Config.N64Controller[3].CRight);
N64Controls.BindMulti("P4 L", Global.Config.N64Controller[3].L);
N64Controls.BindMulti("P4 R", Global.Config.N64Controller[3].R);
Global.N64Controls = N64Controls;
var N64AControls = new AutofireController(N64.N64ControllerDefinition);
N64AControls.BindMulti("P1 DPad U", Global.Config.N64AutoController[0].DPadU);
N64AControls.BindMulti("P1 DPad L", Global.Config.N64AutoController[0].DPadL);
N64AControls.BindMulti("P1 DPad R", Global.Config.N64AutoController[0].DPadR);
N64AControls.BindMulti("P1 DPad D", Global.Config.N64AutoController[0].DPadD);
N64AControls.BindMulti("P1 Start", Global.Config.N64AutoController[0].Start);
N64AControls.BindMulti("P1 Z", Global.Config.N64AutoController[0].Z);
N64AControls.BindMulti("P1 B", Global.Config.N64AutoController[0].B);
N64AControls.BindMulti("P1 A", Global.Config.N64AutoController[0].A);
N64AControls.BindMulti("P1 C Up", Global.Config.N64AutoController[0].CUp);
N64AControls.BindMulti("P1 C Down", Global.Config.N64AutoController[0].CDown);
N64AControls.BindMulti("P1 C Left", Global.Config.N64AutoController[0].CLeft);
N64AControls.BindMulti("P1 C Right", Global.Config.N64AutoController[0].CRight);
N64AControls.BindMulti("P1 L", Global.Config.N64AutoController[0].L);
N64AControls.BindMulti("P1 R", Global.Config.N64AutoController[0].R);
N64AControls.BindMulti("P2 DPad U", Global.Config.N64AutoController[1].DPadU);
N64AControls.BindMulti("P2 DPad L", Global.Config.N64AutoController[1].DPadL);
N64AControls.BindMulti("P2 DPad R", Global.Config.N64AutoController[1].DPadR);
N64AControls.BindMulti("P2 DPad D", Global.Config.N64AutoController[1].DPadD);
N64AControls.BindMulti("P2 Start", Global.Config.N64AutoController[1].Start);
N64AControls.BindMulti("P2 Z", Global.Config.N64AutoController[1].Z);
N64AControls.BindMulti("P2 B", Global.Config.N64AutoController[1].B);
N64AControls.BindMulti("P2 A", Global.Config.N64AutoController[1].A);
N64AControls.BindMulti("P2 C Up", Global.Config.N64AutoController[1].CUp);
N64AControls.BindMulti("P2 C Down", Global.Config.N64AutoController[1].CDown);
N64AControls.BindMulti("P2 C Left", Global.Config.N64AutoController[1].CLeft);
N64AControls.BindMulti("P2 C Right", Global.Config.N64AutoController[1].CRight);
N64AControls.BindMulti("P2 L", Global.Config.N64AutoController[1].L);
N64AControls.BindMulti("P2 R", Global.Config.N64AutoController[1].R);
N64AControls.BindMulti("P3 DPad U", Global.Config.N64AutoController[2].DPadU);
N64AControls.BindMulti("P3 DPad L", Global.Config.N64AutoController[2].DPadL);
N64AControls.BindMulti("P3 DPad R", Global.Config.N64AutoController[2].DPadR);
N64AControls.BindMulti("P3 DPad D", Global.Config.N64AutoController[2].DPadD);
N64AControls.BindMulti("P3 Start", Global.Config.N64AutoController[2].Start);
N64AControls.BindMulti("P3 Z", Global.Config.N64AutoController[2].Z);
N64AControls.BindMulti("P3 B", Global.Config.N64AutoController[2].B);
N64AControls.BindMulti("P3 A", Global.Config.N64AutoController[2].A);
N64AControls.BindMulti("P3 C Up", Global.Config.N64AutoController[2].CUp);
N64AControls.BindMulti("P3 C Down", Global.Config.N64AutoController[2].CDown);
N64AControls.BindMulti("P3 C Left", Global.Config.N64AutoController[2].CLeft);
N64AControls.BindMulti("P3 C Right", Global.Config.N64AutoController[2].CRight);
N64AControls.BindMulti("P3 L", Global.Config.N64AutoController[2].L);
N64AControls.BindMulti("P3 R", Global.Config.N64AutoController[2].R);
N64AControls.BindMulti("P4 DPad U", Global.Config.N64AutoController[3].DPadU);
N64AControls.BindMulti("P4 DPad L", Global.Config.N64AutoController[3].DPadL);
N64AControls.BindMulti("P4 DPad R", Global.Config.N64AutoController[3].DPadR);
N64AControls.BindMulti("P4 DPad D", Global.Config.N64AutoController[3].DPadD);
N64AControls.BindMulti("P4 Start", Global.Config.N64AutoController[3].Start);
N64AControls.BindMulti("P4 Z", Global.Config.N64AutoController[3].Z);
N64AControls.BindMulti("P4 B", Global.Config.N64AutoController[3].B);
N64AControls.BindMulti("P4 A", Global.Config.N64AutoController[3].A);
N64AControls.BindMulti("P4 C Up", Global.Config.N64AutoController[3].CUp);
N64AControls.BindMulti("P4 C Down", Global.Config.N64AutoController[3].CDown);
N64AControls.BindMulti("P4 C Left", Global.Config.N64AutoController[3].CLeft);
N64AControls.BindMulti("P4 C Right", Global.Config.N64AutoController[3].CRight);
N64AControls.BindMulti("P4 L", Global.Config.N64AutoController[3].L);
N64AControls.BindMulti("P4 R", Global.Config.N64AutoController[3].R);
Global.AutofireN64Controls = N64AControls;
*/
}
private static void FormDragEnter(object sender, DragEventArgs e)
@ -1947,90 +1116,6 @@ namespace BizHawk.MultiClient
Global.ActiveController = BindToDefinition(def, Global.Config.AllTrollers);
Global.AutoFireController = BindToDefinitionAF(def, Global.Config.AllTrollersAutoFire);
/*
if (Global.Game == null) return;
switch (Global.Game.System)
{
case "SG":
case "SMS":
Global.ActiveController = Global.SMSControls;
Global.AutoFireController = Global.AutofireSMSControls;
break;
case "GG":
Global.ActiveController = Global.SMSControls;
Global.AutoFireController = Global.AutofireSMSControls;
break;
case "A26":
Global.ActiveController = Global.Atari2600Controls;
Global.AutoFireController = Global.AutofireAtari2600Controls;
break;
case "A78":
Global.ActiveController = Global.Atari7800Controls;
Global.AutoFireController = Global.AutofireAtari7800Controls;
break;
case "PCE":
case "PCECD":
Global.ActiveController = Global.PCEControls;
Global.AutoFireController = Global.AutofirePCEControls;
break;
case "SGX":
Global.ActiveController = Global.PCEControls;
Global.AutoFireController = Global.AutofirePCEControls;
break;
case "GEN":
Global.ActiveController = Global.GenControls;
Global.AutoFireController = Global.AutofireGenControls;
break;
case "TI83":
Global.ActiveController = Global.TI83Controls;
break;
case "NES":
Global.ActiveController = Global.NESControls;
Global.AutoFireController = Global.AutofireNESControls;
break;
case "SNES":
Global.ActiveController = Global.SNESControls;
Global.AutoFireController = Global.AutofireSNESControls;
break;
case "GB":
case "GBC":
Global.ActiveController = Global.GBControls;
Global.AutoFireController = Global.AutofireGBControls;
break;
case "GBA":
Global.ActiveController = Global.GBAControls;
Global.AutoFireController = Global.AutofireGBAControls;
break;
case "Coleco":
Global.ActiveController = Global.ColecoControls;
Global.AutoFireController = Global.AutofireColecoControls;
break;
case "N64":
Global.ActiveController = Global.N64Controls;
Global.AutoFireController = Global.AutofireN64Controls;
break;
case "SAT":
Global.ActiveController = Global.SaturnControls;
Global.AutoFireController = Global.AutofireSaturnControls;
break;
case "C64":
Global.ActiveController = Global.Commodore64Controls;
Global.AutoFireController = Global.AutofireCommodore64Controls;
break;
case "INTV":
Global.ActiveController = Global.IntellivisionControls;
Global.AutoFireController = Global.AutofireIntellivisionControls;
break;
case "DGB":
Global.ActiveController = Global.DualGBControls;
Global.AutoFireController = Global.DualAutofireGBControls;
break;
default:
Global.ActiveController = Global.NullControls;
break;
}
*/
// allow propogating controls that are in the current controller definition but not in the prebaked one
Global.ActiveController.ForceType(new ControllerDefinition(Global.Emulator.ControllerDefinition));
Global.ClickyVirtualPadController.Type = new ControllerDefinition(Global.Emulator.ControllerDefinition);