Fix gpgx_swap_disc sig mismatch

This commit is contained in:
CasualPokePlayer 2024-10-06 14:21:40 -07:00
parent 6c2661fdac
commit 2c2efc6fb8
3 changed files with 3 additions and 6 deletions

View File

@ -22,8 +22,6 @@ namespace BizHawk.Emulation.Cores.Consoles.Sega.gpgx
if (_cds != null)
{
Console.WriteLine("======= GPGX.FrameAdvance");
Console.WriteLine($"was: |{_discIndex}|{(_prevDiskPressed ? 'P' : '.')}{(_nextDiskPressed ? 'N' : '.')}|");
var prev = controller.IsPressed("Previous Disk");
var next = controller.IsPressed("Next Disk");
var newDisk = _discIndex;
@ -53,9 +51,8 @@ namespace BizHawk.Emulation.Cores.Consoles.Sega.gpgx
if (newDisk != _discIndex)
{
_discIndex = newDisk;
Core.gpgx_swap_disc(_discIndex == -1 ? null : GetCDDataStruct(_cds[_discIndex]));
Core.gpgx_swap_disc(_discIndex == -1 ? null : GetCDDataStruct(_cds[_discIndex]), (sbyte)_discIndex);
}
Console.WriteLine($"now: |{_discIndex}|{(_prevDiskPressed ? 'P' : '.')}{(_nextDiskPressed ? 'N' : '.')}|");
}
// this shouldn't be needed, as nothing has changed

View File

@ -89,7 +89,7 @@ namespace BizHawk.Emulation.Cores.Consoles.Sega.gpgx
if (lp.Discs.Count > 0)
{
if (lp.Discs.Count > 128)
if (lp.Discs.Count > sbyte.MaxValue)
{
throw new ArgumentException(paramName: nameof(lp), message: "Too many discs loaded at once!");
}

View File

@ -351,7 +351,7 @@ namespace BizHawk.Emulation.Cores.Consoles.Sega.gpgx
public abstract void gpgx_set_cdd_callback(cd_read_cb cddcb);
[BizImport(CallingConvention.Cdecl, Compatibility = true)]
public abstract void gpgx_swap_disc([In] CDData toc);
public abstract void gpgx_swap_disc([In] CDData toc, sbyte discIndex);
[StructLayout(LayoutKind.Sequential)]
public struct VDPNameTable