GBHawkLink cores - opt out of text states

This commit is contained in:
adelikat 2020-02-16 13:25:44 -06:00
parent da8199160d
commit 77598ce2b2
6 changed files with 24 additions and 76 deletions

View File

@ -5,24 +5,10 @@ using BizHawk.Emulation.Common;
namespace BizHawk.Emulation.Cores.Nintendo.GBHawkLink
{
public partial class GBHawkLink : ITextStatable
public partial class GBHawkLink : IStatable
{
private readonly ITextStatable _lStates;
private readonly ITextStatable _rStates;
public void SaveStateText(TextWriter writer)
{
_lStates.SaveStateText(writer);
_rStates.SaveStateText(writer);
SyncState(new Serializer(writer));
}
public void LoadStateText(TextReader reader)
{
_lStates.LoadStateText(reader);
_rStates.LoadStateText(reader);
SyncState(new Serializer(reader));
}
private readonly IStatable _lStates;
private readonly IStatable _rStates;
public void SaveStateBinary(BinaryWriter bw)
{

View File

@ -74,8 +74,8 @@ namespace BizHawk.Emulation.Cores.Nintendo.GBHawkLink
ServiceProvider = ser;
_lStates = (ITextStatable)L.ServiceProvider.GetService<IStatable>();
_rStates = (ITextStatable)R.ServiceProvider.GetService<IStatable>();
_lStates = L.ServiceProvider.GetService<IStatable>();
_rStates = R.ServiceProvider.GetService<IStatable>();
SetupMemoryDomains();

View File

@ -4,27 +4,11 @@ using BizHawk.Emulation.Common;
namespace BizHawk.Emulation.Cores.Nintendo.GBHawkLink3x
{
public partial class GBHawkLink3x : ITextStatable
public partial class GBHawkLink3x : IStatable
{
private readonly ITextStatable _lStates;
private readonly ITextStatable _cStates;
private readonly ITextStatable _rStates;
public void SaveStateText(TextWriter writer)
{
_lStates.SaveStateText(writer);
_cStates.SaveStateText(writer);
_rStates.SaveStateText(writer);
SyncState(new Serializer(writer));
}
public void LoadStateText(TextReader reader)
{
_lStates.LoadStateText(reader);
_cStates.LoadStateText(reader);
_rStates.LoadStateText(reader);
SyncState(new Serializer(reader));
}
private readonly IStatable _lStates;
private readonly IStatable _cStates;
private readonly IStatable _rStates;
public void SaveStateBinary(BinaryWriter bw)
{

View File

@ -77,9 +77,9 @@ namespace BizHawk.Emulation.Cores.Nintendo.GBHawkLink3x
_tracer = new TraceBuffer { Header = L.cpu.TraceHeader };
ser.Register<ITraceable>(_tracer);
_lStates = (ITextStatable)L.ServiceProvider.GetService<IStatable>();
_cStates = (ITextStatable)C.ServiceProvider.GetService<IStatable>();
_rStates = (ITextStatable)R.ServiceProvider.GetService<IStatable>();
_lStates = L.ServiceProvider.GetService<IStatable>();
_cStates = C.ServiceProvider.GetService<IStatable>();
_rStates = R.ServiceProvider.GetService<IStatable>();
SetupMemoryDomains();

View File

@ -5,30 +5,12 @@ using BizHawk.Emulation.Common;
namespace BizHawk.Emulation.Cores.Nintendo.GBHawkLink4x
{
public partial class GBHawkLink4x : ITextStatable
public partial class GBHawkLink4x : IStatable
{
private readonly ITextStatable _aStates;
private readonly ITextStatable _bStates;
private readonly ITextStatable _cStates;
private readonly ITextStatable _dStates;
public void SaveStateText(TextWriter writer)
{
_aStates.SaveStateText(writer);
_bStates.SaveStateText(writer);
_cStates.SaveStateText(writer);
_dStates.SaveStateText(writer);
SyncState(new Serializer(writer));
}
public void LoadStateText(TextReader reader)
{
_aStates.LoadStateText(reader);
_bStates.LoadStateText(reader);
_cStates.LoadStateText(reader);
_dStates.LoadStateText(reader);
SyncState(new Serializer(reader));
}
private readonly IStatable _aStates;
private readonly IStatable _bStates;
private readonly IStatable _cStates;
private readonly IStatable _dStates;
public void SaveStateBinary(BinaryWriter bw)
{
@ -52,8 +34,8 @@ namespace BizHawk.Emulation.Cores.Nintendo.GBHawkLink4x
public byte[] SaveStateBinary()
{
MemoryStream ms = new MemoryStream();
BinaryWriter bw = new BinaryWriter(ms);
using var ms = new MemoryStream();
using var bw = new BinaryWriter(ms);
SaveStateBinary(bw);
bw.Flush();
return ms.ToArray();

View File

@ -1,8 +1,4 @@
using System;
using BizHawk.Emulation.Common;
using BizHawk.Emulation.Cores.Nintendo.GBHawk;
using BizHawk.Emulation.Common;
namespace BizHawk.Emulation.Cores.Nintendo.GBHawkLink4x
{
@ -94,10 +90,10 @@ namespace BizHawk.Emulation.Cores.Nintendo.GBHawkLink4x
ServiceProvider = ser;
_aStates = (ITextStatable)A.ServiceProvider.GetService<IStatable>();
_bStates = (ITextStatable)B.ServiceProvider.GetService<IStatable>();
_cStates = (ITextStatable)C.ServiceProvider.GetService<IStatable>();
_dStates = (ITextStatable)D.ServiceProvider.GetService<IStatable>();
_aStates = A.ServiceProvider.GetService<IStatable>();
_bStates = B.ServiceProvider.GetService<IStatable>();
_cStates = C.ServiceProvider.GetService<IStatable>();
_dStates = D.ServiceProvider.GetService<IStatable>();
SetupMemoryDomains();