2011-01-07 11:11:56 +00:00
|
|
|
#ifdef CPU_CPP
|
|
|
|
|
|
|
|
void CPU::serialize(serializer &s) {
|
2012-04-26 10:51:13 +00:00
|
|
|
LR35902::serialize(s);
|
2012-03-23 10:43:39 +00:00
|
|
|
Thread::serialize(s);
|
2011-10-18 10:05:29 +00:00
|
|
|
|
2011-01-07 11:11:56 +00:00
|
|
|
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.mlt_req);
|
|
|
|
|
Update to v074r11 release.
byuu says:
Changelog:
- debugger compiles on all three profiles
- libsnes compiles on all three platforms (no API changes to libsnes)
- memory.cpp : namespace memory removed (wram -> cpu, apuram -> smp,
vram, oam, cgram -> ppu)
- sa1.cpp : namespace memory removed (SA-1 specific functions merged
inline to SA1::bus_read,write)
- GameBoy: added serial link support with interrupts and proper 8192hz
timing, but obviously it acts as if no other GB is connected to it
- GameBoy: added STAT OAM interrupt, and better STAT d1,d0 mode values
- UI: since Qt is dead, I've renamed the config files back to bsnes.cfg
and bsnes-geometry.cfg
- SA1: IRAM was not syncing to CPU on SA-1 side
- PPU/Accuracy and PPU/Performance needed Sprite oam renamed to Sprite
sprite; so that I could add uint8 oam[544]
- makes more sense anyway, OAM = object attribute memory, obj or
sprite are better names for Sprite rendering class
- more cleanup
2011-01-24 09:03:17 +00:00
|
|
|
s.integer(status.serial_data);
|
|
|
|
s.integer(status.serial_bits);
|
|
|
|
|
|
|
|
s.integer(status.serial_transfer);
|
|
|
|
s.integer(status.serial_clock);
|
|
|
|
|
2011-01-07 11:11:56 +00:00
|
|
|
s.integer(status.div);
|
|
|
|
s.integer(status.tima);
|
|
|
|
s.integer(status.tma);
|
|
|
|
s.integer(status.timer_enable);
|
|
|
|
s.integer(status.timer_clock);
|
|
|
|
|
|
|
|
s.integer(status.interrupt_request_joypad);
|
|
|
|
s.integer(status.interrupt_request_serial);
|
|
|
|
s.integer(status.interrupt_request_timer);
|
|
|
|
s.integer(status.interrupt_request_stat);
|
|
|
|
s.integer(status.interrupt_request_vblank);
|
|
|
|
|
2011-10-27 00:00:17 +00:00
|
|
|
s.integer(status.speed_double);
|
|
|
|
s.integer(status.speed_switch);
|
|
|
|
|
|
|
|
s.integer(status.dma_source);
|
|
|
|
s.integer(status.dma_target);
|
|
|
|
s.integer(status.dma_mode);
|
|
|
|
s.integer(status.dma_length);
|
|
|
|
|
|
|
|
s.integer(status.ff6c);
|
|
|
|
|
|
|
|
s.integer(status.wram_bank);
|
|
|
|
|
|
|
|
s.integer(status.ff72);
|
|
|
|
s.integer(status.ff73);
|
|
|
|
s.integer(status.ff74);
|
|
|
|
s.integer(status.ff75);
|
|
|
|
|
2011-01-07 11:11:56 +00:00
|
|
|
s.integer(status.interrupt_enable_joypad);
|
|
|
|
s.integer(status.interrupt_enable_serial);
|
|
|
|
s.integer(status.interrupt_enable_timer);
|
|
|
|
s.integer(status.interrupt_enable_stat);
|
|
|
|
s.integer(status.interrupt_enable_vblank);
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif
|