示例#1
0
    public void SaveState()
    {
        var len = LibRetro.retro_serialize_size();
        var buf = new byte[len];

        if (!LibRetro.retro_serialize(buf, len))
        {
            throw new Exception("Serialize failed");
        }
        File.WriteAllBytes(savePath(), buf);
        Debug.Log($"save len={len}");
    }
示例#2
0
    public void LoadState()
    {
        if (!File.Exists(savePath()))
        {
            return;
        }

        var len = LibRetro.retro_serialize_size();
        var buf = File.ReadAllBytes(savePath());

        if (!LibRetro.retro_unserialize(buf, len))
        {
            throw new Exception("Unserialize failed");
        }
        Debug.Log($"load len={len}");
    }