mirror of
https://github.com/holub/mame
synced 2025-10-07 17:27:06 +03:00
sm510: ADX don't carry if adding 10(probably for bcd correction)
This commit is contained in:
parent
a811db6ea1
commit
18a7251918
@ -68,8 +68,8 @@ void sm510_base_device::op_lb()
|
||||
switch (m_bl)
|
||||
{
|
||||
case 0: hi = 0; break;
|
||||
case 1: hi = 0; break;
|
||||
case 2: hi = 0; break;
|
||||
case 1: hi = 3; break;
|
||||
case 2: hi = 3; break;
|
||||
case 3: hi = 3; break;
|
||||
}
|
||||
m_bl |= (hi << 2 & 0xc);
|
||||
@ -290,9 +290,9 @@ void sm510_base_device::op_add11()
|
||||
|
||||
void sm510_base_device::op_adx()
|
||||
{
|
||||
// ADX x: add immediate value to ACC, skip next on carry
|
||||
// ADX x: add immediate value to ACC, skip next on carry except if x = 10
|
||||
m_acc += (m_op & 0xf);
|
||||
m_skip = ((m_acc & 0x10) != 0);
|
||||
m_skip = ((m_op & 0xf) != 10 && (m_acc & 0x10) != 0);
|
||||
m_acc &= 0xf;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user