예제 #1
0
파일: DSP.cs 프로젝트: MiLO83/snesbox
        public void serialize(Serializer s)
        {
            Processor.serialize(s);
            s.array(samplebuffer, "samplebuffer");

            byte[] state = new byte[5000];
            MemoryStream p = new MemoryStream();
            if (s.mode() == Serializer.Mode.Save)
            {
                spc_dsp.copy_state(p, dsp_state_save);
                p.Position = 0;
                p.Read(state, 0, (int)p.Length);
                s.array(state, (uint)p.Length, "state");
            }
            else if (s.mode() == Serializer.Mode.Load)
            {
                s.array(state, "state");
                p.Write(state, 0, state.Length);
                p.Position = 0;
                spc_dsp.copy_state(p, dsp_state_load);
            }
            else
            {
                s.array(state, "state");
            }
        }