Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
alexbevi
GitHub Repository: alexbevi/BizHawk
Path: blob/master/libsnes/bsnes/snes/alt/cpu/serialization.cpp
2 views
1
#ifdef CPU_CPP
2
3
void CPU::serialize(serializer &s) {
4
Processor::serialize(s);
5
CPUcore::core_serialize(s);
6
PPUcounter::serialize(s);
7
8
s.array(wram, 128 * 1024);
9
10
queue.serialize(s);
11
s.array(port_data);
12
13
for(unsigned i = 0; i < 8; i++) {
14
s.integer(channel[i].dma_enabled);
15
s.integer(channel[i].hdma_enabled);
16
17
s.integer(channel[i].direction);
18
s.integer(channel[i].indirect);
19
s.integer(channel[i].unused);
20
s.integer(channel[i].reverse_transfer);
21
s.integer(channel[i].fixed_transfer);
22
s.integer(channel[i].transfer_mode);
23
24
s.integer(channel[i].dest_addr);
25
s.integer(channel[i].source_addr);
26
s.integer(channel[i].source_bank);
27
28
s.integer(channel[i].transfer_size);
29
30
s.integer(channel[i].indirect_bank);
31
s.integer(channel[i].hdma_addr);
32
s.integer(channel[i].line_counter);
33
s.integer(channel[i].unknown);
34
35
s.integer(channel[i].hdma_completed);
36
s.integer(channel[i].hdma_do_transfer);
37
}
38
39
s.integer(status.nmi_valid);
40
s.integer(status.nmi_line);
41
s.integer(status.nmi_transition);
42
s.integer(status.nmi_pending);
43
44
s.integer(status.irq_valid);
45
s.integer(status.irq_line);
46
s.integer(status.irq_transition);
47
s.integer(status.irq_pending);
48
49
s.integer(status.irq_lock);
50
s.integer(status.hdma_pending);
51
52
s.integer(status.wram_addr);
53
54
s.integer(status.joypad_strobe_latch);
55
56
s.integer(status.nmi_enabled);
57
s.integer(status.virq_enabled);
58
s.integer(status.hirq_enabled);
59
s.integer(status.auto_joypad_poll_enabled);
60
61
s.integer(status.pio);
62
63
s.integer(status.wrmpya);
64
s.integer(status.wrmpyb);
65
s.integer(status.wrdiva);
66
s.integer(status.wrdivb);
67
68
s.integer(status.htime);
69
s.integer(status.vtime);
70
71
s.integer(status.rom_speed);
72
73
s.integer(status.rddiv);
74
s.integer(status.rdmpy);
75
76
s.integer(status.joy1l);
77
s.integer(status.joy1h);
78
s.integer(status.joy2l);
79
s.integer(status.joy2h);
80
s.integer(status.joy3l);
81
s.integer(status.joy3h);
82
s.integer(status.joy4l);
83
s.integer(status.joy4h);
84
}
85
86
#endif
87
88