summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/taito/taito_f2.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/taito/taito_f2.cpp')
-rw-r--r--src/mame/taito/taito_f2.cpp56
1 files changed, 13 insertions, 43 deletions
diff --git a/src/mame/taito/taito_f2.cpp b/src/mame/taito/taito_f2.cpp
index 4678a97a862..b3afe0d4c19 100644
--- a/src/mame/taito/taito_f2.cpp
+++ b/src/mame/taito/taito_f2.cpp
@@ -264,9 +264,12 @@ Notes:
#include "emu.h"
#include "taito_f2.h"
+
#include "taitoipt.h"
#include "taitosnd.h"
+#include "mahjong.h"
+
#include "cpu/m68000/m68000.h"
#include "cpu/z80/z80.h"
#include "machine/rp5c01.h"
@@ -274,6 +277,7 @@ Notes:
#include "machine/watchdog.h"
#include "sound/okim6295.h"
#include "sound/ymopn.h"
+
#include "speaker.h"
@@ -340,12 +344,12 @@ u16 mjnquest_state::dsw_r(offs_t offset)
{
case 0x00:
{
- return (m_io_in[5]->read() << 8) + m_io_dsw[0]->read(); /* DSW A + coin */
+ return (m_io_in[0]->read() << 8) | m_io_dsw[0]->read(); /* DSW A + coin */
}
case 0x01:
{
- return (m_io_in[6]->read() << 8) + m_io_dsw[1]->read(); /* DSW B + coin */
+ return (m_io_in[1]->read() << 8) | m_io_dsw[1]->read(); /* DSW B + coin */
}
}
@@ -357,14 +361,13 @@ u16 mjnquest_state::dsw_r(offs_t offset)
u16 mjnquest_state::input_r()
{
- u16 ret = 0xffff;
-
+ u16 ret = 0x3f;
for (int i = 0; i < 5; i++)
{
if (BIT(m_mjnquest_input, i))
- ret &= m_io_in[i]->read();
+ ret &= m_io_key[i]->read();
}
- return ret;
+ return 0xffc0 | ret;
}
void mjnquest_state::inputselect_w(u16 data)
@@ -2592,47 +2595,14 @@ static INPUT_PORTS_START( yuyugogo )
INPUT_PORTS_END
static INPUT_PORTS_START( mjnquest )
- PORT_START("IN0")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_MAHJONG_A )
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_E )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_I )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_M )
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_KAN )
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
- PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED )
-
- PORT_START("IN1")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_MAHJONG_B )
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_F )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_J )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_N )
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_REACH )
- PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNUSED )
+ PORT_INCLUDE(mahjong_matrix_1p)
- PORT_START("IN2")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_MAHJONG_C )
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_G )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_K )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_CHI )
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_RON )
- PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNUSED )
-
- PORT_START("IN3")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_MAHJONG_D )
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_H )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_L )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_PON )
- PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED )
-
- PORT_START("IN4")
- PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
-
- PORT_START("IN5")
+ PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_TILT )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) // ?
PORT_BIT( 0xfc, IP_ACTIVE_LOW, IPT_UNUSED )
- PORT_START("IN6")
+ PORT_START("IN1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0xfc, IP_ACTIVE_LOW, IPT_UNUSED )
@@ -5647,7 +5617,7 @@ GAME( 1990, runark, growl, growl, runark, taitof2_state, empty_i
GAME( 1990, growlp, growl, growl, growl, taitof2_state, empty_init, ROT0, "Taito Corporation Japan", "Growl (World, prototype)", MACHINE_SUPPORTS_SAVE )
GAME( 1990, mjnquest, 0, mjnquest, mjnquest, mjnquest_state, init_mjnquest, ROT0, "Taito Corporation", "Mahjong Quest (Japan)", MACHINE_SUPPORTS_SAVE )
-GAME( 1990, mjnquestb, mjnquest, mjnquest, mjnquest, mjnquest_state, init_mjnquest, ROT0, "Taito Corporation", "Mahjong Quest (Japan, No Nudity)", MACHINE_SUPPORTS_SAVE )
+GAME( 1990, mjnquestb, mjnquest, mjnquest, mjnquest, mjnquest_state, init_mjnquest, ROT0, "Taito Corporation", "Mahjong Quest (Japan, no nudity)", MACHINE_SUPPORTS_SAVE )
GAME( 1990, footchmp, 0, footchmp, footchmp, footchmp_state, empty_init, ROT0, "Taito Corporation Japan", "Football Champ / Euro Football Champ (World)", MACHINE_SUPPORTS_SAVE ) // title depends on dipswitch
GAME( 1990, htherou, footchmp, footchmp, htherou, footchmp_state, empty_init, ROT0, "Taito America Corporation", "Hat Trick Hero (US)", MACHINE_SUPPORTS_SAVE ) // Single PCB