summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author smf- <smf-@users.noreply.github.com>2025-04-28 17:21:51 +0100
committer smf- <smf-@users.noreply.github.com>2025-04-28 17:21:51 +0100
commitb8cac9a5899b61b3f4f08f80368e938cdbfac815 (patch)
treec922eee7ef75280f0b4fac1bda7e42e52d6002fe
parent6738b8f67c1605d09f9fb73f79f26a0d10da38bc (diff)
simulate sh3 sci transmitter emptying, fixes https://github.com/mamedev/mame/issues/13634
-rw-r--r--src/devices/cpu/sh/sh3comn.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/devices/cpu/sh/sh3comn.cpp b/src/devices/cpu/sh/sh3comn.cpp
index 7829097750b..3d5942aa363 100644
--- a/src/devices/cpu/sh/sh3comn.cpp
+++ b/src/devices/cpu/sh/sh3comn.cpp
@@ -1046,6 +1046,11 @@ uint8_t sh3_base_device::scssr_r(offs_t offset, uint8_t mem_mask)
void sh3_base_device::scssr_w(offs_t offset, uint8_t data, uint8_t mem_mask)
{
m_scssr = (m_scssr | (data & 1)) & (data | 6);
+ if (!(m_scssr & 0x80))
+ {
+ //printf("%c", m_sctdr);
+ m_scssr |= 0x80;
+ }
logerror("'%s' (%08x): SCI unmapped internal write %02x & %02x (SCSSR)\n", tag(), m_sh2_state->pc, data, mem_mask);
}