2014-11-30 15:22:08 +00:00
|
|
|
|
namespace BizHawk.Emulation.Common
|
|
|
|
|
{
|
2016-03-02 02:10:09 +00:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// This service provdes the system by which a client can request SRam data to be stored by the client
|
|
|
|
|
/// SaveRam encompasses things like battery backed ram, memory cards, and data saved to disk drives
|
2016-12-14 15:11:07 +00:00
|
|
|
|
/// If available, save files will be automatically loaded when loading a ROM,
|
|
|
|
|
/// In addition the client will provide features like sram-anchored movies, and ways to clear SaveRam
|
2016-03-02 02:10:09 +00:00
|
|
|
|
/// </summary>
|
2014-12-15 01:01:02 +00:00
|
|
|
|
public interface ISaveRam : IEmulatorService
|
2014-11-30 15:22:08 +00:00
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// return a copy of the saveram. editing it won't do you any good unless you later call StoreSaveRam()
|
|
|
|
|
/// </summary>
|
|
|
|
|
byte[] CloneSaveRam();
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// store new saveram to the emu core. the data should be the same size as the return from ReadSaveRam()
|
|
|
|
|
/// </summary>
|
|
|
|
|
void StoreSaveRam(byte[] data);
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Whether or not Save ram has been modified since the last save
|
|
|
|
|
/// </summary>
|
|
|
|
|
bool SaveRamModified { get; }
|
|
|
|
|
}
|
|
|
|
|
}
|