From c562554ca59360448c10c6e3e9444d35dd464e47 Mon Sep 17 00:00:00 2001 From: Michael Pavone Date: Tue, 3 Jan 2017 20:42:15 -0800 Subject: Fix handling of IO control writes in SMS mode --- sms.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'sms.c') diff --git a/sms.c b/sms.c index cb1805b..e9fff74 100644 --- a/sms.c +++ b/sms.c @@ -12,8 +12,8 @@ static void *memory_io_write(uint32_t location, void *vcontext, uint8_t value) z80_context *z80 = vcontext; sms_context *sms = z80->system; if (location & 1) { - sms->io.ports[0].control = ~(value << 5 & 0x60); - sms->io.ports[1].control = ~(value << 3 & 0x60); + sms->io.ports[0].control = (~value) << 5 & 0x60; + sms->io.ports[1].control = (~value) << 3 & 0x60; io_data_write(sms->io.ports, value << 1, z80->current_cycle); io_data_write(sms->io.ports + 1, value >> 1, z80->current_cycle); } else { -- cgit v1.2.3