diff options
Diffstat (limited to 'src/devices/cpu/unsp/unsp_exxx.cpp')
-rw-r--r-- | src/devices/cpu/unsp/unsp_exxx.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/devices/cpu/unsp/unsp_exxx.cpp b/src/devices/cpu/unsp/unsp_exxx.cpp index 25f754bb2e8..d631e096588 100644 --- a/src/devices/cpu/unsp/unsp_exxx.cpp +++ b/src/devices/cpu/unsp/unsp_exxx.cpp @@ -181,9 +181,9 @@ void unsp_12_device::execute_exxx_group(uint16_t op) case 0x02: logerror("pc:%06x: %s = %s lsl %s (%04x %04x) : ", UNSP_LPC, regs[rd], regs[rd], regs[rs], m_core->m_r[rd], m_core->m_r[rs]); - + m_core->m_r[rd] = (uint16_t)((m_core->m_r[rd]&0xffff) << (m_core->m_r[rs] & 0x01f)); - + logerror("result %04x\n", m_core->m_r[rd]); return; @@ -197,8 +197,8 @@ void unsp_12_device::execute_exxx_group(uint16_t op) unimplemented_opcode(op); uint32_t res = (uint16_t)(m_core->m_r[rd]); - - res <<= (m_core->m_r[rs] & 0x01f); + + res <<= (m_core->m_r[rs] & 0x01f); m_core->m_r[rd] = (res & 0xffff); m_core->m_r[rd + 1] |= (res >> 16); // register bleeding? @@ -208,7 +208,7 @@ void unsp_12_device::execute_exxx_group(uint16_t op) } case 0x04: - // smartfp loops increasing shift by 4 up to values of 28? (but regs are 16-bit?) + // smartfp loops increasing shift by 4 up to values of 28? (but regs are 16-bit?) logerror("pc:%06x: %s = %s lsr %s (%04x %04x) : ", UNSP_LPC, regs[rd], regs[rd], regs[rs], m_core->m_r[rd], m_core->m_r[rs]); m_core->m_r[rd] = (uint16_t)((m_core->m_r[rd]&0xffff) >> (m_core->m_r[rs] & 0x1f)); logerror("result %04x\n", m_core->m_r[rd]); @@ -224,7 +224,7 @@ void unsp_12_device::execute_exxx_group(uint16_t op) uint32_t res = (uint16_t)(m_core->m_r[rd]); res <<= 16; - + res = res >> (m_core->m_r[rs] & 0x01f); // register bleeding behavior needed (for example) in jak_cars2 nand browser when increasing upper digits of address |