diff options
Diffstat (limited to 'src/mame/drivers/joctronic.cpp')
-rw-r--r-- | src/mame/drivers/joctronic.cpp | 60 |
1 files changed, 31 insertions, 29 deletions
diff --git a/src/mame/drivers/joctronic.cpp b/src/mame/drivers/joctronic.cpp index efe5ad48b18..5e681b158bd 100644 --- a/src/mame/drivers/joctronic.cpp +++ b/src/mame/drivers/joctronic.cpp @@ -335,17 +335,16 @@ void joctronic_state::machine_reset() static INPUT_PORTS_START( joctronic ) INPUT_PORTS_END -void joctronic_state::joctronic(machine_config &config) -{ +MACHINE_CONFIG_START(joctronic_state::joctronic) /* basic machine hardware */ Z80(config, m_maincpu, XTAL(12'000'000)/4); // 3 MHz - uses WAIT m_maincpu->set_addrmap(AS_PROGRAM, &joctronic_state::maincpu_map); // 139 m_maincpu->set_addrmap(AS_IO, &joctronic_state::maincpu_io_map); m_maincpu->set_daisy_config(daisy_chain); - Z80(config, m_soundcpu, XTAL(12'000'000)/2); // 6 MHz - uses WAIT - m_soundcpu->set_addrmap(AS_PROGRAM, &joctronic_state::joctronic_sound_map); - m_soundcpu->set_addrmap(AS_IO, &joctronic_state::joctronic_sound_io_map); + MCFG_DEVICE_ADD("soundcpu", Z80, XTAL(12'000'000)/2) // 6 MHz - uses WAIT + MCFG_DEVICE_PROGRAM_MAP(joctronic_sound_map) + MCFG_DEVICE_IO_MAP(joctronic_sound_io_map) NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // 5516 @@ -358,10 +357,10 @@ void joctronic_state::joctronic(machine_config &config) ctc.intr_callback().set_inputline(m_maincpu, INPUT_LINE_IRQ0); ctc.zc_callback<0>().set_inputline(m_soundcpu, INPUT_LINE_IRQ0); //SINT - LS259(config, "drivers1", 0); // IC4 - LS259(config, "drivers2", 0); // IC3 - LS259(config, "drivers3", 0); // IC2 - LS259(config, "drivers4", 0); // IC1 + MCFG_DEVICE_ADD("drivers1", LS259, 0) // IC4 + MCFG_DEVICE_ADD("drivers2", LS259, 0) // IC3 + MCFG_DEVICE_ADD("drivers3", LS259, 0) // IC2 + MCFG_DEVICE_ADD("drivers4", LS259, 0) // IC1 /* sound hardware */ SPEAKER(config, "mono").front_center(); @@ -374,21 +373,23 @@ void joctronic_state::joctronic(machine_config &config) AY8910(config, "aysnd2", XTAL(12'000'000)/8).add_route(ALL_OUTPUTS, "mono", 0.40); // 1.5 MHz - DAC_8BIT_R2R(config, "r2r1", 0).add_route(ALL_OUTPUTS, "mono", 0.30); - DAC_8BIT_R2R(config, "r2r2", 0).add_route(ALL_OUTPUTS, "mono", 0.30); -} + MCFG_DEVICE_ADD("r2r1", DAC_8BIT_R2R, 0) + MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30) -void joctronic_state::slalom03(machine_config &config) -{ + MCFG_DEVICE_ADD("r2r2", DAC_8BIT_R2R, 0) + MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30) +MACHINE_CONFIG_END + +MACHINE_CONFIG_START(joctronic_state::slalom03) /* basic machine hardware */ Z80(config, m_maincpu, XTAL(12'000'000)/2); // 6 MHz - uses WAIT m_maincpu->set_addrmap(AS_PROGRAM, &joctronic_state::slalom03_maincpu_map); // 138, 368, 32 m_maincpu->set_addrmap(AS_IO, &joctronic_state::maincpu_io_map); m_maincpu->set_daisy_config(daisy_chain); - Z80(config, m_soundcpu, XTAL(12'000'000)/2); // 6 MHz - uses WAIT - m_soundcpu->set_addrmap(AS_PROGRAM, &joctronic_state::slalom03_sound_map); - m_soundcpu->set_addrmap(AS_IO, &joctronic_state::slalom03_sound_io_map); + MCFG_DEVICE_ADD("soundcpu", Z80, XTAL(12'000'000)/2) // 6 MHz - uses WAIT + MCFG_DEVICE_PROGRAM_MAP(slalom03_sound_map) + MCFG_DEVICE_IO_MAP(slalom03_sound_io_map) NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // 5516 @@ -401,12 +402,12 @@ void joctronic_state::slalom03(machine_config &config) ctc.intr_callback().set_inputline(m_maincpu, INPUT_LINE_IRQ0); //ctc.zc_callback<0>().set_inputline(m_soundcpu, INPUT_LINE_IRQ0); //SINT - HC259(config, "drivers1", 0); // IC1 - HC259(config, "drivers2", 0); // IC2 - HC259(config, "drivers3", 0); // IC3 - HC259(config, "drivers4", 0); // IC4 - HC259(config, "drivers5", 0); // IC5 - HC259(config, "drivers6", 0); // IC6 + MCFG_DEVICE_ADD("drivers1", HC259, 0) // IC1 + MCFG_DEVICE_ADD("drivers2", HC259, 0) // IC2 + MCFG_DEVICE_ADD("drivers3", HC259, 0) // IC3 + MCFG_DEVICE_ADD("drivers4", HC259, 0) // IC4 + MCFG_DEVICE_ADD("drivers5", HC259, 0) // IC5 + MCFG_DEVICE_ADD("drivers6", HC259, 0) // IC6 /* sound hardware */ SPEAKER(config, "mono").front_center(); @@ -420,16 +421,17 @@ void joctronic_state::slalom03(machine_config &config) aysnd2.port_a_write_callback().set("r2r", FUNC(dac_8bit_r2r_device::data_w)); aysnd2.add_route(ALL_OUTPUTS, "mono", 0.40); - DAC_8BIT_R2R(config, "r2r", 0).add_route(ALL_OUTPUTS, "mono", 0.30); + MCFG_DEVICE_ADD("r2r", DAC_8BIT_R2R, 0) + MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30) LS157(config, m_adpcm_select, 0); m_adpcm_select->out_callback().set("oki", FUNC(msm5205_device::data_w)); - MSM5205(config, m_oki, XTAL(12'000'000)/2/16); // 375 kHz - m_oki->vck_callback().set(FUNC(joctronic_state::vck_w)); - m_oki->set_prescaler_selector(msm5205_device::S96_4B); // frequency modifiable during operation - m_oki->add_route(ALL_OUTPUTS, "mono", 0.30); -} + MCFG_DEVICE_ADD("oki", MSM5205, XTAL(12'000'000)/2/16) // 375 kHz + MCFG_MSM5205_PRESCALER_SELECTOR(S96_4B) // frequency modifiable during operation + MCFG_MSM5205_VCK_CALLBACK(WRITELINE(*this, joctronic_state, vck_w)) + MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30) +MACHINE_CONFIG_END void joctronic_state::bldyrolr(machine_config & config) { |