void C64::saveToSnapshot(Snapshot *snapshot) { if (snapshot == NULL) return; snapshot->setTimestamp(time(NULL)); snapshot->takeScreenshot((uint32_t *)vic.screenBuffer(), isPAL()); snapshot->alloc(stateSize()); uint8_t *ptr = snapshot->getData(); saveToBuffer(&ptr); }
void C64::dumpState() { msg("C64:\n"); msg("----\n\n"); msg(" Machine type : %s\n", isPAL() ? "PAL" : "NTSC"); msg(" Frames per second : %d\n", vic->getFramesPerSecond()); msg(" Rasterlines per frame : %d\n", vic->getRasterlinesPerFrame()); msg(" Cycles per rasterline : %d\n", vic->getCyclesPerRasterline()); msg(" Current cycle : %llu\n", cycles); msg(" Current frame : %d\n", frame); msg(" Current rasterline : %d\n", rasterline); msg("Current rasterline cycle : %d\n", rasterlineCycle); msg("\n"); }