apply ares64 changes to frontend
This commit is contained in:
parent
28cfb1aa74
commit
c3e6a08b42
|
@ -44,6 +44,11 @@ namespace BizHawk.Emulation.Cores.Consoles.Nintendo.Ares64
|
||||||
[DefaultValue(LibAres64.ControllerType.Unplugged)]
|
[DefaultValue(LibAres64.ControllerType.Unplugged)]
|
||||||
public LibAres64.ControllerType P4Controller { get; set; }
|
public LibAres64.ControllerType P4Controller { get; set; }
|
||||||
|
|
||||||
|
[DisplayName("Restrict Analog Range")]
|
||||||
|
[Description("Restricts analog range to account for physical limitations.")]
|
||||||
|
[DefaultValue(false)]
|
||||||
|
public bool RestrictAnalogRange { get; set; }
|
||||||
|
|
||||||
public Ares64SyncSettings() => SettingsUtil.SetDefaultValues(this);
|
public Ares64SyncSettings() => SettingsUtil.SetDefaultValues(this);
|
||||||
|
|
||||||
public Ares64SyncSettings Clone() => MemberwiseClone() as Ares64SyncSettings;
|
public Ares64SyncSettings Clone() => MemberwiseClone() as Ares64SyncSettings;
|
||||||
|
|
|
@ -73,7 +73,7 @@ namespace BizHawk.Emulation.Cores.Consoles.Nintendo.Ares64
|
||||||
_exe.AddReadonlyFile(pif, pal ? "pif.pal.rom" : "pif.ntsc.rom");
|
_exe.AddReadonlyFile(pif, pal ? "pif.pal.rom" : "pif.ntsc.rom");
|
||||||
_exe.AddReadonlyFile(rom, "program.rom");
|
_exe.AddReadonlyFile(rom, "program.rom");
|
||||||
|
|
||||||
if (!_core.Init(ControllerSettings, pal))
|
if (!_core.Init(ControllerSettings, _syncSettings.RestrictAnalogRange, pal))
|
||||||
{
|
{
|
||||||
throw new InvalidOperationException("Init returned false!");
|
throw new InvalidOperationException("Init returned false!");
|
||||||
}
|
}
|
||||||
|
@ -114,7 +114,7 @@ namespace BizHawk.Emulation.Cores.Consoles.Nintendo.Ares64
|
||||||
ret.BoolButtons.Add($"P{i + 1} C Right");
|
ret.BoolButtons.Add($"P{i + 1} C Right");
|
||||||
ret.BoolButtons.Add($"P{i + 1} L");
|
ret.BoolButtons.Add($"P{i + 1} L");
|
||||||
ret.BoolButtons.Add($"P{i + 1} R");
|
ret.BoolButtons.Add($"P{i + 1} R");
|
||||||
ret.AddXYPair($"P{i + 1} {{0}} Axis", AxisPairOrientation.RightAndDown, (-32768).RangeTo(32767), 0);
|
ret.AddXYPair($"P{i + 1} {{0}} Axis", AxisPairOrientation.RightAndUp, (-128).RangeTo(127), 0);
|
||||||
if (controllerSettings[i] == LibAres64.ControllerType.Rumblepak)
|
if (controllerSettings[i] == LibAres64.ControllerType.Rumblepak)
|
||||||
{
|
{
|
||||||
ret.HapticsChannels.Add($"P{i + 1} Rumble Pak");
|
ret.HapticsChannels.Add($"P{i + 1} Rumble Pak");
|
||||||
|
|
|
@ -59,7 +59,7 @@ namespace BizHawk.Emulation.Cores.Consoles.Nintendo.Ares64
|
||||||
}
|
}
|
||||||
|
|
||||||
[BizImport(CC)]
|
[BizImport(CC)]
|
||||||
public abstract bool Init(ControllerType[] controllerSettings, bool pal);
|
public abstract bool Init(ControllerType[] controllerSettings, bool restrictAnalogRange, bool pal);
|
||||||
|
|
||||||
[BizImport(CC)]
|
[BizImport(CC)]
|
||||||
public abstract bool GetRumbleStatus(int num);
|
public abstract bool GetRumbleStatus(int num);
|
||||||
|
|
|
@ -22,7 +22,7 @@ namespace BizHawk.Emulation.Cores
|
||||||
{
|
{
|
||||||
if (ss.Controllers[i].IsConnected)
|
if (ss.Controllers[i].IsConnected)
|
||||||
{
|
{
|
||||||
yield return StandardController(i + 1, MupenRange);
|
yield return StandardController(i + 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -32,16 +32,15 @@ namespace BizHawk.Emulation.Cores
|
||||||
{
|
{
|
||||||
if (ares64.ControllerSettings[i] != LibAres64.ControllerType.Unplugged)
|
if (ares64.ControllerSettings[i] != LibAres64.ControllerType.Unplugged)
|
||||||
{
|
{
|
||||||
yield return StandardController(i + 1, AresRange);
|
yield return StandardController(i + 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static readonly Func<bool, AxisSpec> MupenRange = (bool isY) => new((-128).RangeTo(127), 0, false);
|
private static readonly Func<AxisSpec> MakeRange = () => new((-128).RangeTo(127), 0);
|
||||||
private static readonly Func<bool, AxisSpec> AresRange = (bool isY) => new((-32768).RangeTo(32767), 0, isY);
|
|
||||||
|
|
||||||
private static PadSchema StandardController(int controller, Func<bool, AxisSpec> makeRange)
|
private static PadSchema StandardController(int controller)
|
||||||
{
|
{
|
||||||
return new PadSchema
|
return new PadSchema
|
||||||
{
|
{
|
||||||
|
@ -64,8 +63,8 @@ namespace BizHawk.Emulation.Cores
|
||||||
new ButtonSchema(194, 221, controller, "C Right") { Icon = VGamepadButtonImage.YellowArrE },
|
new ButtonSchema(194, 221, controller, "C Right") { Icon = VGamepadButtonImage.YellowArrE },
|
||||||
new AnalogSchema(6, 14, $"P{controller} X Axis")
|
new AnalogSchema(6, 14, $"P{controller} X Axis")
|
||||||
{
|
{
|
||||||
Spec = makeRange(false),
|
Spec = MakeRange(),
|
||||||
SecondarySpec = makeRange(true)
|
SecondarySpec = MakeRange()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in New Issue