From 9a60ca1e77bbc7dda0b315bd1c7f1733accdf4d2 Mon Sep 17 00:00:00 2001 From: OBattler Date: Wed, 24 May 2023 22:12:42 +0200 Subject: [PATCH] Correctly implemented the two MM67 half-registers, closes #3347. --- src/device/isartc.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/device/isartc.c b/src/device/isartc.c index 7c12ae032..d2127146d 100644 --- a/src/device/isartc.c +++ b/src/device/isartc.c @@ -401,6 +401,14 @@ mm67_read(uint16_t port, void *priv) picintc(1 << dev->irq); break; + case MM67_AL_MSEC: + ret = dev->nvr.regs[reg] & 0xf0; + break; + + case MM67_AL_DOW: + ret = dev->nvr.regs[reg] & 0x0f; + break; + default: ret = dev->nvr.regs[reg]; break; @@ -477,6 +485,14 @@ mm67_write(uint16_t port, uint8_t val, void *priv) isartc_log("RTC: write test=%02x\n", val); break; + case MM67_AL_MSEC: + dev->nvr.regs[reg] = val & 0xf0; + break; + + case MM67_AL_DOW: + dev->nvr.regs[reg] = val & 0x0f; + break; + default: dev->nvr.regs[reg] = val; break;