fix mouse on the pcfx core
this was a regression from the move around, it worked before
This commit is contained in:
parent
69e30ee33f
commit
ef02263122
|
@ -155,15 +155,17 @@ namespace BizHawk.Emulation.Cores.Waterbox
|
||||||
}
|
}
|
||||||
case InputType.Axis:
|
case InputType.Axis:
|
||||||
{
|
{
|
||||||
// var data = inputInfo.Extra.AsAxis();
|
var data = input.Extra.AsAxis();
|
||||||
ret.AxisControls.Add(name);
|
var fullName = $"{name} {input.Extra.AsAxis().NameNeg} / {input.Extra.AsAxis().NamePos}";
|
||||||
ret.CategoryLabels[name] = category;
|
|
||||||
|
ret.AxisControls.Add(fullName);
|
||||||
|
ret.CategoryLabels[fullName] = category;
|
||||||
ret.AxisRanges.Add(new ControllerDefinition.AxisRange(
|
ret.AxisRanges.Add(new ControllerDefinition.AxisRange(
|
||||||
0, 0x8000, 0xffff, (input.Flags & AxisFlags.InvertCo) != 0
|
0, 0x8000, 0xffff, (input.Flags & AxisFlags.InvertCo) != 0
|
||||||
));
|
));
|
||||||
_thunks.Add((c, b) =>
|
_thunks.Add((c, b) =>
|
||||||
{
|
{
|
||||||
var val = c.AxisValue(name);
|
var val = c.AxisValue(fullName);
|
||||||
b[byteStart] = (byte)val;
|
b[byteStart] = (byte)val;
|
||||||
b[byteStart + 1] = (byte)(val >> 8);
|
b[byteStart + 1] = (byte)(val >> 8);
|
||||||
});
|
});
|
||||||
|
@ -171,15 +173,21 @@ namespace BizHawk.Emulation.Cores.Waterbox
|
||||||
}
|
}
|
||||||
case InputType.AxisRel:
|
case InputType.AxisRel:
|
||||||
{
|
{
|
||||||
// var data = inputInfo.Extra.AsAxis();
|
var data = input.Extra.AsAxis();
|
||||||
ret.AxisControls.Add(name);
|
var fullName = $"{name} {input.Extra.AsAxis().NameNeg} / {input.Extra.AsAxis().NamePos}";
|
||||||
ret.CategoryLabels[name] = category;
|
|
||||||
|
ret.AxisControls.Add(fullName);
|
||||||
|
ret.CategoryLabels[fullName] = category;
|
||||||
ret.AxisRanges.Add(new ControllerDefinition.AxisRange(
|
ret.AxisRanges.Add(new ControllerDefinition.AxisRange(
|
||||||
-0x8000, 0, 0x7fff, (input.Flags & AxisFlags.InvertCo) != 0
|
// TODO: Mednafen docs say this range should be [-32768, 32767], and inspecting the code
|
||||||
|
// reveals that a 16 bit value is read, but using anywhere near this full range makes
|
||||||
|
// PCFX mouse completely unusable. Maybe this is some TAS situation where average users
|
||||||
|
// will want a 1/400 multiplier on sensitivity but TASers might want one frame screenwide movement?
|
||||||
|
-127, 0, 127, (input.Flags & AxisFlags.InvertCo) != 0
|
||||||
));
|
));
|
||||||
_thunks.Add((c, b) =>
|
_thunks.Add((c, b) =>
|
||||||
{
|
{
|
||||||
var val = c.AxisValue(name);
|
var val = c.AxisValue(fullName);
|
||||||
b[byteStart] = (byte)val;
|
b[byteStart] = (byte)val;
|
||||||
b[byteStart + 1] = (byte)(val >> 8);
|
b[byteStart + 1] = (byte)(val >> 8);
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in New Issue