Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
alexbevi
GitHub Repository: alexbevi/BizHawk
Path: blob/master/libsnes/bsnes/snes/alt/dsp/serialization.cpp
2 views
1
#ifdef DSP_CPP
2
3
static void dsp_state_save(unsigned char **out, void *in, size_t size) {
4
memcpy(*out, in, size);
5
*out += size;
6
}
7
8
static void dsp_state_load(unsigned char **in, void *out, size_t size) {
9
memcpy(out, *in, size);
10
*in += size;
11
}
12
13
void DSP::serialize(serializer &s) {
14
Processor::serialize(s);
15
s.array(samplebuffer);
16
17
unsigned char state[SPC_DSP::state_size];
18
unsigned char *p = state;
19
memset(&state, 0, SPC_DSP::state_size);
20
if(s.mode() == serializer::Save) {
21
spc_dsp.copy_state(&p, dsp_state_save);
22
s.array(state);
23
} else if(s.mode() == serializer::Load) {
24
s.array(state);
25
spc_dsp.copy_state(&p, dsp_state_load);
26
} else {
27
s.array(state);
28
}
29
}
30
31
#endif
32
33