mirror of
https://github.com/bsnes-emu/bsnes.git
synced 2025-04-02 10:42:14 -04:00
byuu says: The problems with the Windows and Qt4 ports have all been resolved, although there's a fairly gross hack on a few Qt widgets to not destruct once Application::quit() is called to avoid a double free crash (I'm unsure where Qt is destructing the widgets internally.) The Cocoa port compiles again at least, though it's bound to have endless problems. I improved the Label painting in the GTK ports, which fixes the background color on labels inside TabFrame widgets. I've optimized the Makefile system even further. I added a "redo state" command to bsnes, which is created whenever you load the undo state. There are also hotkeys for both now, although I don't think they're really something you want to map hotkeys to. I moved the nall::Locale object inside hiro::Application, so that it can be used to translate the BrowserDialog and MessageDialog window strings. I improved the Super Game Boy emulation of `MLT_REQ`, fixing Pokemon Yellow's custom border and probably more stuff. Lots of other small fixes and improvements. Things are finally stable once again after the harrowing layout redesign catastrophe. Errata: - ICD::joypID should be set to 3 on reset(). joypWrite() may as well take uint1 instead of bool. - hiro/Qt: remove pWindow::setMaximumSize() comment; found a workaround for it - nall/GNUmakefile: don't set object.path if it's already set (allow overrides before including the file)
55 lines
1.3 KiB
C++
55 lines
1.3 KiB
C++
auto CPU::serialize(serializer& s) -> void {
|
|
LR35902::serialize(s);
|
|
Thread::serialize(s);
|
|
|
|
s.array(wram);
|
|
s.array(hram);
|
|
|
|
s.integer(status.clock);
|
|
|
|
s.integer(status.p15);
|
|
s.integer(status.p14);
|
|
s.integer(status.joyp);
|
|
|
|
s.integer(status.serialData);
|
|
s.integer(status.serialBits);
|
|
|
|
s.integer(status.serialTransfer);
|
|
s.integer(status.serialClock);
|
|
|
|
s.integer(status.div);
|
|
s.integer(status.tima);
|
|
s.integer(status.tma);
|
|
s.integer(status.timerEnable);
|
|
s.integer(status.timerClock);
|
|
|
|
s.integer(status.interruptRequestJoypad);
|
|
s.integer(status.interruptRequestSerial);
|
|
s.integer(status.interruptRequestTimer);
|
|
s.integer(status.interruptRequestStat);
|
|
s.integer(status.interruptRequestVblank);
|
|
|
|
s.integer(status.speedDouble);
|
|
s.integer(status.speedSwitch);
|
|
|
|
s.integer(status.dmaSource);
|
|
s.integer(status.dmaTarget);
|
|
s.integer(status.dmaMode);
|
|
s.integer(status.dmaLength);
|
|
s.integer(status.dmaCompleted);
|
|
|
|
s.integer(status.ff6c);
|
|
|
|
s.integer(status.wramBank);
|
|
|
|
s.integer(status.ff72);
|
|
s.integer(status.ff73);
|
|
s.integer(status.ff74);
|
|
s.integer(status.ff75);
|
|
|
|
s.integer(status.interruptEnableJoypad);
|
|
s.integer(status.interruptEnableSerial);
|
|
s.integer(status.interruptEnableTimer);
|
|
s.integer(status.interruptEnableStat);
|
|
s.integer(status.interruptEnableVblank);
|
|
}
|