summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Vas Crabb <vas@vastheman.com>2024-08-24 03:59:52 +1000
committer Vas Crabb <vas@vastheman.com>2024-08-24 03:59:52 +1000
commitfa52f9a8ff4c9cce1bd2cf9189a053743c657ccc (patch)
tree6dec29db80f4d30bb464213016bd8b6af5d6b6a0
parent35f1ec96be9e097247f13680acb4f62d6e63e538 (diff)
casio/pv1000.cpp: Acrually return two bits of joystick input rather than giving spurious interrupt flags.
-rw-r--r--src/mame/casio/pv1000.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/mame/casio/pv1000.cpp b/src/mame/casio/pv1000.cpp
index 1bc0cbb826f..1e5cb1b5934 100644
--- a/src/mame/casio/pv1000.cpp
+++ b/src/mame/casio/pv1000.cpp
@@ -317,8 +317,10 @@ uint8_t pv1000_state::io_r(offs_t offset)
{
case 4: // port $FC returns player 2 joystick and interrupt status
return 0x80
- | (BIT(m_io_regs[5], 3) ? m_joysticks[3]->read() : 0)
- | (BIT(m_io_regs[5], 2) ? m_joysticks[2]->read() : 0)
+ | (((BIT(m_io_regs[5], 3) ? m_joysticks[3]->read() : 0)
+ | (BIT(m_io_regs[5], 2) ? m_joysticks[2]->read() : 0)
+ | (BIT(m_io_regs[5], 1) ? m_joysticks[1]->read() : 0)
+ | (BIT(m_io_regs[5], 0) ? m_joysticks[0]->read() : 0)) & 0x0c)
| (m_irq_active & 3); // Bit 1 = Matrix IRQ, Bit 0 = Prerender IRQ
case 5: // port $FD returns both joysticks and acknowledges matrix scan IRQ