auto Cartridge::serialize(serializer& s) -> void { Thread::serialize(s); if(ram.size) s.array(ram.data, ram.size); if(eeprom.size()) eeprom.serialize(s); if(rtc.size) s.array(rtc.data, rtc.size); if(rtc.size) { s.integer(rtc.command); s.integer(rtc.index); s.integer(rtc.alarm); s.integer(rtc.alarmHour); s.integer(rtc.alarmMinute); } s.integer(r.romBank0); s.integer(r.romBank1); s.integer(r.romBank2); s.integer(r.sramBank); s.integer(r.gpoEnable); s.integer(r.gpoData); }