summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--multi_game.c2
-rw-r--r--realtec.c4
-rw-r--r--xband.c2
3 files changed, 4 insertions, 4 deletions
diff --git a/multi_game.c b/multi_game.c
index ccf77a0..791dcf3 100644
--- a/multi_game.c
+++ b/multi_game.c
@@ -33,5 +33,5 @@ void multi_game_serialize(genesis_context *gen, serialize_buffer *buf)
void multi_game_deserialize(deserialize_buffer *buf, genesis_context *gen)
{
- write_multi_game_b(load_int8(buf), gen, 0);
+ write_multi_game_b(load_int8(buf), gen->m68k, 0);
}
diff --git a/realtec.c b/realtec.c
index f3b50c9..e3c33fa 100644
--- a/realtec.c
+++ b/realtec.c
@@ -42,7 +42,7 @@ static void *realtec_write_b(uint32_t address, void *context, uint8_t value)
//other regs are only 3 bits, so assume 3 for this one too
uint32_t size = (r->regs[1] & 0x7) << 17;
uint32_t start = (r->regs[2] & 7) << 17 | (r->regs[0] & 6) << 19;
- if (size > 512*1024) {
+ if (!size || size > 512*1024) {
size = 512*1024;
}
for(uint32_t cur = 0; cur < 512*1024; cur += size)
@@ -76,7 +76,7 @@ void realtec_deserialize(deserialize_buffer *buf, genesis_context *gen)
realtec *r = get_realtec(gen);
for (int i = 0; i < sizeof(r->regs); i++)
{
- realtec_write_b(i << 13, gen, load_int8(buf));
+ realtec_write_b(i << 13, gen->m68k, load_int8(buf));
}
}
diff --git a/xband.c b/xband.c
index 26f5244..1a72839 100644
--- a/xband.c
+++ b/xband.c
@@ -308,7 +308,7 @@ void xband_deserialize(deserialize_buffer *buf, genesis_context *gen)
update_control(gen, load_int8(buf));
for (int i = 0; i < XBAND_REGS; i++)
{
- xband_write_b(0x3BC001 + i*2, gen, load_int8(buf));
+ xband_write_b(0x3BC001 + i*2, gen->m68k, load_int8(buf));
}
}