summaryrefslogtreecommitdiffstats
path: root/src/devices/machine/am9513.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/machine/am9513.cpp')
-rw-r--r--src/devices/machine/am9513.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/devices/machine/am9513.cpp b/src/devices/machine/am9513.cpp
index 43b163a25df..14d8d3eb88c 100644
--- a/src/devices/machine/am9513.cpp
+++ b/src/devices/machine/am9513.cpp
@@ -447,6 +447,7 @@ void am9513_device::set_counter_mode(int c, u16 data)
break;
case 0x0002:
+ case 0x0003: // SCP-300F sets this up; why?
if (c < 2 && BIT(m_mmr, c + 2))
set_output(c, m_count[c] == m_alarm[c]);
else
@@ -541,7 +542,7 @@ void am9513_device::set_output(int c, bool state)
void am9513_device::set_toggle(int c, bool state)
{
m_toggle[c] = state;
- if ((m_counter_mode[c] & 0x0007) == 0x0002)
+ if ((m_counter_mode[c] & 0x0006) == 0x0002)
set_output(c, state);
}
@@ -564,6 +565,7 @@ void am9513_device::set_tc(int c, bool state)
set_output(c, state);
break;
case 0x0002:
+ case 0x0003: // SCP-300F sets this up; why?
// TC toggled output
if (!state)
set_toggle(c, !m_toggle[c]);