public bool CartData(string id)
        {
            if (Ready)
            {
                Flush();
            }

            slotID = id;

            bool hasKey = PlayerPrefs.HasKey(slotID);

            if (hasKey)
            {
                var slotData = PlayerPrefs.GetString(slotID);
                var data     = Convert.FromBase64String(slotData);

                if (data.Length != Length)
                {
                    buffer = new byte[Length];
                    Buffer.BlockCopy(data, 0, buffer, 0, Mathf.Min(Length, data.Length));
                }
                else
                {
                    buffer = data;
                }
            }
            else
            {
                buffer = new byte[Length];
            }

            mem.CopyFrom(buffer, 0, Address, Length);

            return(hasKey);
        }
示例#2
0
        public void LoadCartridge(ACartridge cart)
        {
            memory.CopyFrom(cart.Rom, 0, 0, MemoryModule.ADDR_GENERAL);

            var script = cart.Lua;

            Run(script);
            Call("_init");
        }