summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
author hap <happppp@users.noreply.github.com>2021-01-06 16:30:16 +0100
committer hap <happppp@users.noreply.github.com>2021-01-06 16:30:28 +0100
commitf6031017f6e107ecc8839f149075f34fb7708aaf (patch)
tree1062730d27dcf1ab26b622b1bd3893f56fd99390 /src
parent486a4e5ca3e7f2e9d469fcc1f6dc94292a53f55b (diff)
hh_cop400: fix mdallas keypad problem
Diffstat (limited to 'src')
-rw-r--r--src/devices/sound/s14001a.cpp4
-rw-r--r--src/mame/drivers/hh_cop400.cpp2
2 files changed, 2 insertions, 4 deletions
diff --git a/src/devices/sound/s14001a.cpp b/src/devices/sound/s14001a.cpp
index aa4506ba1c8..f107b6767bf 100644
--- a/src/devices/sound/s14001a.cpp
+++ b/src/devices/sound/s14001a.cpp
@@ -116,7 +116,7 @@ uint8_t Mux8To2(bool bVoicedP2, uint8_t uPPQtrP2, uint8_t uDeltaAdrP2, uint8_t u
uDeltaAdrP2 ^= 0x03; // count backwards
// emulate 8 to 2 mux to obtain delta from byte (bigendian)
- switch (uDeltaAdrP2)
+ switch (uDeltaAdrP2 & 0x03)
{
case 0x00:
return (uRomDataP2 & 0xC0) >> 6;
@@ -126,8 +126,6 @@ uint8_t Mux8To2(bool bVoicedP2, uint8_t uPPQtrP2, uint8_t uDeltaAdrP2, uint8_t u
return (uRomDataP2 & 0x0C) >> 2;
case 0x03:
return (uRomDataP2 & 0x03) >> 0;
- default:
- return 0xFF;
}
}
diff --git a/src/mame/drivers/hh_cop400.cpp b/src/mame/drivers/hh_cop400.cpp
index e1cae755e17..292c60dff99 100644
--- a/src/mame/drivers/hh_cop400.cpp
+++ b/src/mame/drivers/hh_cop400.cpp
@@ -1076,7 +1076,7 @@ void mdallas_state::write_l(u8 data)
void mdallas_state::write_d(u8 data)
{
// D: select digit, input mux high
- m_inp_mux = (m_inp_mux & 0xf) | (data << 4 & 3);
+ m_inp_mux = (m_inp_mux & 0xf) | (data << 4 & 0x30);
m_d = data & 0xf;
update_display();
}