Skip to content

Commit 63df6f7

Browse files
committed
misc: bump to latest pinmame. fix disable mechs. update audio to use PinMameAudioFormat.AudioFormatFloat
1 parent d00b677 commit 63df6f7

File tree

3 files changed

+12
-12
lines changed

3 files changed

+12
-12
lines changed

VisualPinball.Engine.PinMAME.Unity/Editor/PinMameGamelogicEngineInspector.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -220,7 +220,7 @@ public override void OnInspectorGUI()
220220
private void CreateDisplays(IEnumerable<DisplayComponent> sceneDisplays)
221221
{
222222
// retrieve layouts from pinmame
223-
var pinMame = PinMame.PinMame.Instance(AudioSettings.outputSampleRate);
223+
var pinMame = PinMame.PinMame.Instance(PinMameAudioFormat.AudioFormatFloat, AudioSettings.outputSampleRate);
224224
var displayLayouts = pinMame.GetAvailableDisplays(_gle.romId);
225225

226226
// retrieve already existing displays from scene

VisualPinball.Engine.PinMAME.Unity/Runtime/PinMameGamelogicEngine.cs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -138,10 +138,10 @@ public void OnInit(Player player, TableApi tableApi, BallManager ballManager)
138138
}
139139

140140
Logger.Info($"New PinMAME instance at {(double)AudioSettings.outputSampleRate / 1000}kHz");
141-
_pinMame = PinMame.PinMame.Instance(AudioSettings.outputSampleRate);
141+
_pinMame = PinMame.PinMame.Instance(PinMameAudioFormat.AudioFormatFloat, AudioSettings.outputSampleRate);
142142

143143
_pinMame.SetHandleKeyboard(false);
144-
_pinMame.SetHandleMechanics(DisableMechs ? 0 : 1);
144+
_pinMame.SetHandleMechanics(DisableMechs ? 0 : 0xFF);
145145

146146
_pinMame.OnGameStarted += OnGameStarted;
147147
_pinMame.OnGameEnded += OnGameEnded;
@@ -304,28 +304,28 @@ private int OnAudioUpdated(IntPtr framePtr, int frameSize)
304304
if (_audioFilterChannels == _audioInfo.Channels) { // n channels -> n channels
305305
frame = new float[frameSize];
306306
unsafe {
307-
var src = (short*)framePtr;
307+
var src = (float*)framePtr;
308308
for (var i = 0; i < frameSize; i++) {
309-
frame[i] = src[i] / 32768f;
309+
frame[i] = src[i];
310310
}
311311
}
312312

313313
} else if (_audioFilterChannels > _audioInfo.Channels) { // 1 channel -> 2 channels
314314
frame = new float[frameSize * 2];
315315
unsafe {
316-
var src = (short*)framePtr;
316+
var src = (float*)framePtr;
317317
for (var i = 0; i < frameSize; i++) {
318-
frame[i * 2] = src[i] / 32768f;
318+
frame[i * 2] = src[i];
319319
frame[i * 2 + 1] = frame[i * 2];
320320
}
321321
}
322322

323323
} else { // 2 channels -> 1 channel
324324
frame = new float[frameSize / 2];
325325
unsafe {
326-
var src = (short*)framePtr;
326+
var src = (float*)framePtr;
327327
for (var i = 0; i < frameSize; i += 2) {
328-
frame[i] = src[i] / 32768f;
328+
frame[i] = src[i];
329329
}
330330
}
331331
}

VisualPinball.Engine.PinMAME/VisualPinball.Engine.PinMAME.csproj

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@
1616
</PropertyGroup>
1717

1818
<ItemGroup>
19-
<PackageReference Include="PinMame" Version="0.1.0-preview.44" />
20-
<PackageReference Include="PinMame.Native" Version="3.4.0-preview.307" />
21-
<PackageReference Include="VisualPinball.Engine" Version="0.0.1-preview.70" />
19+
<PackageReference Include="PinMame" Version="0.1.0-preview.45" />
20+
<PackageReference Include="PinMame.Native" Version="3.4.0-preview.311" />
21+
<PackageReference Include="VisualPinball.Engine" Version="0.0.1-preview.71" />
2222
</ItemGroup>
2323

2424
<Target Name="PluginsDeploy" AfterTargets="Build">

0 commit comments

Comments
 (0)