summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author angelosa <lordkale4@gmail.com>2023-12-01 19:00:08 +0100
committer angelosa <lordkale4@gmail.com>2023-12-01 19:00:08 +0100
commita3f7882e2f5cb59fd88a9aa7b26c8683c9874549 (patch)
tree6122d1ab896d7357fe13509c861b95fcb2cb98e7
parent2046f2f593da7afe26b290fcab0d1e6cdc6118b0 (diff)
nichibutsu/nichild.cpp: pinpoint demo sounds dip in ldquiz4, TMPZ84C011 runs on separate 6 MHz XTAL
-rw-r--r--src/mame/nichibutsu/nichild.cpp13
-rw-r--r--src/mame/nichibutsu/nichisnd.cpp3
2 files changed, 11 insertions, 5 deletions
diff --git a/src/mame/nichibutsu/nichild.cpp b/src/mame/nichibutsu/nichild.cpp
index 853ec8fa5e6..657114cb3e4 100644
--- a/src/mame/nichibutsu/nichild.cpp
+++ b/src/mame/nichibutsu/nichild.cpp
@@ -53,7 +53,8 @@ A LDC labeled 2 pin connector
namespace {
-#define MAIN_CLOCK XTAL(21'477'272)
+#define MAIN_CLOCK XTAL(12'000'000)
+#define VDP_CLOCK XTAL(21'477'272)
#define SOUND_CLOCK XTAL(4'000'000)
class nichild_state : public driver_device
@@ -469,7 +470,11 @@ static INPUT_PORTS_START( nichild_quiz )
PORT_START("DSWA")
PORT_DIPUNKNOWN_DIPLOC(0x01, 0x01, "DSWA:8")
PORT_DIPUNKNOWN_DIPLOC(0x02, 0x02, "DSWA:7")
- PORT_DIPUNKNOWN_DIPLOC(0x04, 0x04, "DSWA:6")
+ // at least for ldquiz4, to be verified for other games
+ // (definitely don't affect sound in shabdama unless it expects attract mode audio from LD player)
+ PORT_DIPNAME( 0x04, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("DSWA:6")
+ PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPUNKNOWN_DIPLOC(0x08, 0x08, "DSWA:5")
PORT_DIPUNKNOWN_DIPLOC(0x10, 0x10, "DSWA:4")
PORT_DIPUNKNOWN_DIPLOC(0x20, 0x20, "DSWA:3")
@@ -507,7 +512,7 @@ static const z80_daisy_config daisy_chain_main[] =
void nichild_state::nichild(machine_config &config)
{
- TMPZ84C011(config, m_maincpu, MAIN_CLOCK/4);
+ TMPZ84C011(config, m_maincpu, MAIN_CLOCK/2);
m_maincpu->set_daisy_config(daisy_chain_main);
m_maincpu->set_addrmap(AS_PROGRAM, &nichild_state::main_map);
m_maincpu->set_addrmap(AS_IO, &nichild_state::main_io);
@@ -534,7 +539,7 @@ void nichild_state::nichild(machine_config &config)
m_dsw_shifter[1]->data_callback().set_ioport("DSWA");
m_dsw_shifter[1]->qh_callback().set([this](int state) { m_dsw_data = state; });
- V9938(config, m_v9938, MAIN_CLOCK);
+ V9938(config, m_v9938, VDP_CLOCK);
m_v9938->set_screen_ntsc("screen");
m_v9938->set_vram_size(0x40000);
m_v9938->int_cb().set(m_maincpu, FUNC(tmpz84c011_device::trg3)).invert();
diff --git a/src/mame/nichibutsu/nichisnd.cpp b/src/mame/nichibutsu/nichisnd.cpp
index f68eede8f14..f272f1e2599 100644
--- a/src/mame/nichibutsu/nichisnd.cpp
+++ b/src/mame/nichibutsu/nichisnd.cpp
@@ -9,7 +9,8 @@
Uses a TMPZ84C011 with YM3812 and two DACs
TODO:
- - DVD sound routing in here
+ - DVD sound routing in here;
+ - Pinpoint actual subboard name;
***************************************************************************/