summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/cpu/amis2000/amis2000op.inc
diff options
context:
space:
mode:
Diffstat (limited to 'src/emu/cpu/amis2000/amis2000op.inc')
-rw-r--r--src/emu/cpu/amis2000/amis2000op.inc13
1 files changed, 7 insertions, 6 deletions
diff --git a/src/emu/cpu/amis2000/amis2000op.inc b/src/emu/cpu/amis2000/amis2000op.inc
index 5859516124c..e6a0822a15b 100644
--- a/src/emu/cpu/amis2000/amis2000op.inc
+++ b/src/emu/cpu/amis2000/amis2000op.inc
@@ -45,8 +45,7 @@ void amis2000_device::op_lai()
{
UINT8 param = m_op & 0x0f;
m_acc = param;
- m_i = m_read_i(0, 0xff) & param;
- m_k = m_read_k(0, 0xff) & param;
+ m_ki_mask = param;
}
}
@@ -371,14 +370,16 @@ void amis2000_device::op_szm()
void amis2000_device::op_szi()
{
- // SZI: skip next on zero I pin(s)
- m_skip = !m_i;
+ // SZI: skip next on I pin(s)
+ // note: AMI's manual is ambiguous here
+ m_skip = ((m_read_i(0, 0xff) & m_ki_mask) != 0);
}
void amis2000_device::op_szk()
{
- // SZK: skip next on zero K pin(s)
- m_skip = !m_k;
+ // SZK: skip next on K pin(s)
+ // note: AMI's manual is ambiguous here
+ m_skip = ((m_read_k(0, 0xff) & m_ki_mask) != 0);
}
void amis2000_device::op_sbe()