dev105 - prepare for Game Boy hardware sequences

issue #27
This commit is contained in:
tildearrow 2022-08-07 00:03:27 -05:00
parent 47ea8132b2
commit 9f8c96d45b
5 changed files with 66 additions and 5 deletions

View file

@ -532,6 +532,13 @@ void DivInstrument::putInsData(SafeWriter* w) {
w->writeC(su.useSample);
w->writeC(su.switchRoles);
// GB hardware sequence
w->writeC(gb.hwSeqLen);
for (int i=0; gb.hwSeqLen; i++) {
w->writeC(gb.hwSeq[i].cmd);
w->writeS(gb.hwSeq[i].data);
}
blockEndSeek=w->tell();
w->seek(blockStartSeek,SEEK_SET);
w->writeI(blockEndSeek-blockStartSeek-4);
@ -1085,6 +1092,15 @@ DivDataErrors DivInstrument::readInsData(SafeReader& reader, short version) {
su.switchRoles=reader.readC();
}
// GB hardware sequence
if (version>=105) {
gb.hwSeqLen=reader.readC();
for (int i=0; i<gb.hwSeqLen; i++) {
gb.hwSeq[i].cmd=reader.readC();
gb.hwSeq[i].data=reader.readS();
}
}
return DIV_DATA_SUCCESS;
}