diff sega_mapper.c @ 1444:14a2834d010c

Save/restore mapper state in native save states
author Michael Pavone <pavone@retrodev.com>
date Sun, 27 Aug 2017 18:15:00 -0700
parents f7d653bb8899
children 75172d440900 d60f2d7c02a5
line wrap: on
line diff
--- a/sega_mapper.c	Sat Aug 26 11:29:46 2017 -0700
+++ b/sega_mapper.c	Sun Aug 27 18:15:00 2017 -0700
@@ -133,3 +133,16 @@
 	}
 	return context;
 }
+
+void sega_mapper_serialize(genesis_context *gen, serialize_buffer *buf)
+{
+	save_buffer8(buf, gen->bank_regs, sizeof(gen->bank_regs));
+}
+
+void sega_mapper_deserialize(deserialize_buffer *buf, genesis_context *gen)
+{
+	for (int i = 0; i < sizeof(gen->bank_regs); i++)
+	{
+		write_bank_reg_w(i * 2, gen->m68k, load_int8(buf));
+	}
+}