summaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
author Vas Crabb <vas@vastheman.com>2024-08-24 03:30:33 +1000
committer Vas Crabb <vas@vastheman.com>2024-08-24 03:36:10 +1000
commit555996eed4e2de153dda2cf1279a7b307568a99c (patch)
treeaf97f052edfd09a09c7d588aba62731912f820a9 /src
parenta266a60699b4fe34fe14a8d11f2415ee4b48ef46 (diff)
-casio/pv1000.cpp: Fixed input port selection removed by PR #12659.
-misc/marywu.cpp: Fixed LED active polarity in layout. -epson/qx10.cpp: At least allow it to build.
Diffstat (limited to 'src')
-rw-r--r--src/mame/casio/pv1000.cpp26
-rw-r--r--src/mame/epson/qx10.cpp2
-rw-r--r--src/mame/layout/marywu.lay6
3 files changed, 19 insertions, 15 deletions
diff --git a/src/mame/casio/pv1000.cpp b/src/mame/casio/pv1000.cpp
index c8cf285ed2e..1bc0cbb826f 100644
--- a/src/mame/casio/pv1000.cpp
+++ b/src/mame/casio/pv1000.cpp
@@ -260,7 +260,7 @@ void pv1000_state::io_w(offs_t offset, uint8_t data)
case 0x03:
//logerror("io_w offset=%02x, data=%02x (%03d)\n", offset, data , data);
m_sound->voice_w(offset, data);
- break;
+ break;
case 0x04:
/* Bit 1 = Matrix IRQ enabled *
@@ -274,12 +274,16 @@ void pv1000_state::io_w(offs_t offset, uint8_t data)
case 0x05:
/* Acknowledge Prerender IRQ */
- m_irq_active &= ~1;
- if (m_irq_active == 0)
- m_maincpu->set_input_line(INPUT_LINE_IRQ0, CLEAR_LINE);
-
+ if (m_irq_active & 1)
+ {
+ m_irq_active &= ~1;
+ if (m_irq_active == 0)
+ m_maincpu->set_input_line(INPUT_LINE_IRQ0, CLEAR_LINE);
+ }
break;
+
//case 0x06 VRAM + PCG location, always fixed at 0xb8xx
+
case 0x07:
/* ---- -xxx unknown, border color? */
m_pcg_bank = (data & 0xe0) >> 5;
@@ -313,8 +317,8 @@ uint8_t pv1000_state::io_r(offs_t offset)
{
case 4: // port $FC returns player 2 joystick and interrupt status
return 0x80
- | m_joysticks[3]->read()
- | m_joysticks[2]->read()
+ | (BIT(m_io_regs[5], 3) ? m_joysticks[3]->read() : 0)
+ | (BIT(m_io_regs[5], 2) ? m_joysticks[2]->read() : 0)
| (m_irq_active & 3); // Bit 1 = Matrix IRQ, Bit 0 = Prerender IRQ
case 5: // port $FD returns both joysticks and acknowledges matrix scan IRQ
@@ -328,10 +332,10 @@ uint8_t pv1000_state::io_r(offs_t offset)
}
}
return 0x80
- | m_joysticks[3]->read()
- | m_joysticks[2]->read()
- | m_joysticks[1]->read()
- | m_joysticks[0]->read();
+ | (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);
default:
/* Ports $F8-$FB, $FE, and $FF are undriven, and pulled high by the
diff --git a/src/mame/epson/qx10.cpp b/src/mame/epson/qx10.cpp
index f6164ac65d7..f76474f586c 100644
--- a/src/mame/epson/qx10.cpp
+++ b/src/mame/epson/qx10.cpp
@@ -286,7 +286,7 @@ UPD7220_DRAW_TEXT_LINE_MEMBER( qx10_state::hgdc_draw_text )
pen = ((tile_data >> xi) & 1) ? color : 0;
if(pen)
- bitmap.pix(res_y+zy, res_x+zx) = palette[pen];
+ bitmap.pix(yi, xi) = palette[pen];
}
}
}
diff --git a/src/mame/layout/marywu.lay b/src/mame/layout/marywu.lay
index c729e26d2a9..bff0eadade5 100644
--- a/src/mame/layout/marywu.lay
+++ b/src/mame/layout/marywu.lay
@@ -11,13 +11,13 @@ license:CC0-1.0
</led7seg>
</element>
- <element name="led" defstate="0">
+ <element name="led" defstate="1">
<text string=""></text>
- <disk state="0">
+ <disk state="1">
<color red="0.1" green="0.025" blue="0.028" />
<bounds x="0.25" y="0.25" width="0.5" height="0.5" />
</disk>
- <disk state="1">
+ <disk state="0">
<color red="1.0" green="0.25" blue="0.28" />
<bounds x="0.25" y="0.25" width="0.5" height="0.5" />
</disk>