mirror of https://github.com/bsnes-emu/bsnes.git
60 lines
1.5 KiB
C++
60 lines
1.5 KiB
C++
void DSP::serialize(serializer& s) {
|
|
Thread::serialize(s);
|
|
|
|
s.array(state.regs, 128);
|
|
state.echoHistory[0].serialize(s);
|
|
state.echoHistory[1].serialize(s);
|
|
s.integer(state.echoHistoryOffset);
|
|
|
|
s.integer(state.everyOtherSample);
|
|
s.integer(state.kon);
|
|
s.integer(state.noise);
|
|
s.integer(state.counter);
|
|
s.integer(state.echoOffset);
|
|
s.integer(state.echoLength);
|
|
|
|
s.integer(state.konBuffer);
|
|
s.integer(state.endxBuffer);
|
|
s.integer(state.envxBuffer);
|
|
s.integer(state.outxBuffer);
|
|
|
|
s.integer(state._pmon);
|
|
s.integer(state._non);
|
|
s.integer(state._eon);
|
|
s.integer(state._dir);
|
|
s.integer(state._koff);
|
|
|
|
s.integer(state._brrNextAddress);
|
|
s.integer(state._adsr0);
|
|
s.integer(state._brrHeader);
|
|
s.integer(state._brrByte);
|
|
s.integer(state._srcn);
|
|
s.integer(state._esa);
|
|
s.integer(state._echoDisabled);
|
|
|
|
s.integer(state._dirAddress);
|
|
s.integer(state._pitch);
|
|
s.integer(state._output);
|
|
s.integer(state._looped);
|
|
s.integer(state._echoPointer);
|
|
|
|
s.array(state._mainOut, 2);
|
|
s.array(state._echoOut, 2);
|
|
s.array(state._echoIn, 2);
|
|
|
|
for(auto n : range(8)) {
|
|
voice[n].buffer.serialize(s);
|
|
s.integer(voice[n].bufferOffset);
|
|
s.integer(voice[n].gaussianOffset);
|
|
s.integer(voice[n].brrAddress);
|
|
s.integer(voice[n].brrOffset);
|
|
s.integer(voice[n].vbit);
|
|
s.integer(voice[n].vidx);
|
|
s.integer(voice[n].konDelay);
|
|
s.integer(voice[n].envelopeMode);
|
|
s.integer(voice[n].envelope);
|
|
s.integer(voice[n].hiddenEnvelope);
|
|
s.integer(voice[n]._envxOut);
|
|
}
|
|
}
|