diff options
author | 2019-01-02 23:40:39 +0100 | |
---|---|---|
committer | 2019-01-02 23:40:39 +0100 | |
commit | 0fc7707b802b51e159d0b57a2309b6cb5e7ad45e (patch) | |
tree | f44f6234e6be13d7765bc8bf6afe8226bcfb47d9 /src/mame/drivers/cabal.cpp | |
parent | fbe69b5f0c35890443287ee1058230ffb51beaa4 (diff) |
-devices/sound/msm5205: Removed unused MCFG_MSM6585 macros, nw
-audio/irem, drivers/appoooh, cabal, chinsan, combatsc, crgolf, dacholer, darius, ddragon, de_2: Removed MACHINE_CONFIG macros, nw
-drivers/ashnojoe, battlera: Removed MACHINE_CONFIG macros and updated to use non-legacy MSM5205 VCK callback, nw
Diffstat (limited to 'src/mame/drivers/cabal.cpp')
-rw-r--r-- | src/mame/drivers/cabal.cpp | 113 |
1 files changed, 56 insertions, 57 deletions
diff --git a/src/mame/drivers/cabal.cpp b/src/mame/drivers/cabal.cpp index 81c28ec9354..3b8ecee8592 100644 --- a/src/mame/drivers/cabal.cpp +++ b/src/mame/drivers/cabal.cpp @@ -501,28 +501,28 @@ static GFXDECODE_START( gfx_cabal ) GFXDECODE_END -MACHINE_CONFIG_START(cabal_state::cabal) - +void cabal_state::cabal(machine_config &config) +{ /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu", M68000, XTAL(20'000'000)/2) /* verified on pcb */ - MCFG_DEVICE_PROGRAM_MAP(main_map) - MCFG_DEVICE_VBLANK_INT_DRIVER("screen", cabal_state, irq1_line_hold) + M68000(config, m_maincpu, XTAL(20'000'000)/2); /* verified on pcb */ + m_maincpu->set_addrmap(AS_PROGRAM, &cabal_state::main_map); + m_maincpu->set_vblank_int("screen", FUNC(cabal_state::irq1_line_hold)); - MCFG_DEVICE_ADD("audiocpu", Z80, XTAL(3'579'545)) /* verified on pcb */ - MCFG_DEVICE_PROGRAM_MAP(sound_map) - MCFG_DEVICE_OPCODES_MAP(sound_decrypted_opcodes_map) - MCFG_DEVICE_IRQ_ACKNOWLEDGE_DEVICE("seibu_sound", seibu_sound_device, im0_vector_cb) + Z80(config, m_audiocpu, XTAL(3'579'545)); /* verified on pcb */ + m_audiocpu->set_addrmap(AS_PROGRAM, &cabal_state::sound_map); + m_audiocpu->set_addrmap(AS_OPCODES, &cabal_state::sound_decrypted_opcodes_map); + m_audiocpu->set_irq_acknowledge_callback("seibu_sound", FUNC(seibu_sound_device::im0_vector_cb)); SEI80BU(config, "sei80bu", 0).set_device_rom_tag("audiocpu"); /* video hardware */ - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_REFRESH_RATE(59.60) /* verified on pcb */ - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */) - MCFG_SCREEN_SIZE(256, 256) - MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1) - MCFG_SCREEN_UPDATE_DRIVER(cabal_state, screen_update) - MCFG_SCREEN_PALETTE(m_palette) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); + screen.set_refresh_hz(59.60); /* verified on pcb */ + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */ + screen.set_size(256, 256); + screen.set_visarea(0*8, 32*8-1, 2*8, 30*8-1); + screen.set_screen_update(FUNC(cabal_state::screen_update)); + screen.set_palette(m_palette); GFXDECODE(config, m_gfxdecode, m_palette, gfx_cabal); PALETTE(config, m_palette).set_format(palette_device::xBGR_444, 1024); @@ -541,14 +541,13 @@ MACHINE_CONFIG_START(cabal_state::cabal) ymsnd.add_route(ALL_OUTPUTS, "mono", 0.80); SEIBU_ADPCM(config, m_adpcm1, 8000).add_route(ALL_OUTPUTS, "mono", 0.40); /* it should use the msm5205 */ - SEIBU_ADPCM(config, m_adpcm2, 8000).add_route(ALL_OUTPUTS, "mono", 0.40); /* it should use the msm5205 */ -MACHINE_CONFIG_END +} -MACHINE_CONFIG_START(cabal_state::cabalt) +void cabal_state::cabalt(machine_config &config) +{ cabal(config); - MCFG_DEVICE_MODIFY("maincpu") - MCFG_DEVICE_PROGRAM_MAP(trackball_main_map) + m_maincpu->set_addrmap(AS_PROGRAM, &cabal_state::trackball_main_map); upd4701_device &upd4701l(UPD4701A(config, "upd4701l")); upd4701l.set_portx_tag("IN0"); @@ -557,53 +556,53 @@ MACHINE_CONFIG_START(cabal_state::cabalt) upd4701_device &upd4701h(UPD4701A(config, "upd4701h")); upd4701h.set_portx_tag("IN2"); upd4701h.set_porty_tag("IN3"); -MACHINE_CONFIG_END +} -MACHINE_CONFIG_START(cabal_state::cabalbl2) +void cabal_state::cabalbl2(machine_config &config) +{ cabal(config); config.device_remove("sei80bu"); - MCFG_DEVICE_MODIFY("audiocpu") - MCFG_DEVICE_PROGRAM_MAP(cabalbl2_sound_map) - MCFG_DEVICE_OPCODES_MAP(cabalbl2_predecrypted_opcodes_map) -MACHINE_CONFIG_END + m_audiocpu->set_addrmap(AS_PROGRAM, &cabal_state::cabalbl2_sound_map); + m_audiocpu->set_addrmap(AS_OPCODES, &cabal_state::cabalbl2_predecrypted_opcodes_map); +} /* the bootleg has different sound hardware (2 extra Z80s for ADPCM playback) */ -MACHINE_CONFIG_START(cabal_state::cabalbl) - +void cabal_state::cabalbl(machine_config &config) +{ /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu", M68000, XTAL(20'000'000)/2) /* verified on pcb */ - MCFG_DEVICE_PROGRAM_MAP(cabalbl_main_map) - MCFG_DEVICE_VBLANK_INT_DRIVER("screen", cabal_state, irq1_line_hold) + M68000(config, m_maincpu, XTAL(20'000'000)/2); /* verified on pcb */ + m_maincpu->set_addrmap(AS_PROGRAM, &cabal_state::cabalbl_main_map); + m_maincpu->set_vblank_int("screen", FUNC(cabal_state::irq1_line_hold)); - MCFG_DEVICE_ADD("audiocpu", Z80, XTAL(3'579'545)) /* verified on pcb */ - MCFG_DEVICE_PROGRAM_MAP(cabalbl_sound_map) + Z80(config, m_audiocpu, XTAL(3'579'545)); /* verified on pcb */ + m_audiocpu->set_addrmap(AS_PROGRAM, &cabal_state::cabalbl_sound_map); /* there are 2x z80s for the ADPCM */ - MCFG_DEVICE_ADD("adpcm_1", Z80, XTAL(3'579'545)) /* verified on pcb */ - MCFG_DEVICE_PROGRAM_MAP(cabalbl_talk1_map) - MCFG_DEVICE_IO_MAP(cabalbl_talk1_portmap) - MCFG_DEVICE_PERIODIC_INT_DRIVER(cabal_state, irq0_line_hold, 8000) + z80_device &adpcm_1(Z80(config, "adpcm_1", XTAL(3'579'545))); /* verified on pcb */ + adpcm_1.set_addrmap(AS_PROGRAM, &cabal_state::cabalbl_talk1_map); + adpcm_1.set_addrmap(AS_IO, &cabal_state::cabalbl_talk1_portmap); + adpcm_1.set_periodic_int(FUNC(cabal_state::irq0_line_hold), attotime::from_hz(8000)); - MCFG_DEVICE_ADD("adpcm_2", Z80, XTAL(3'579'545)) /* verified on pcb */ - MCFG_DEVICE_PROGRAM_MAP(cabalbl_talk2_map) - MCFG_DEVICE_IO_MAP(cabalbl_talk2_portmap) - MCFG_DEVICE_PERIODIC_INT_DRIVER(cabal_state, irq0_line_hold, 8000) + z80_device &adpcm_2(Z80(config, "adpcm_2", XTAL(3'579'545))); /* verified on pcb */ + adpcm_2.set_addrmap(AS_PROGRAM, &cabal_state::cabalbl_talk2_map); + adpcm_2.set_addrmap(AS_IO, &cabal_state::cabalbl_talk2_portmap); + adpcm_2.set_periodic_int(FUNC(cabal_state::irq0_line_hold), attotime::from_hz(8000)); - MCFG_QUANTUM_TIME(attotime::from_hz(600)) + config.m_minimum_quantum = attotime::from_hz(600); MCFG_MACHINE_START_OVERRIDE(cabal_state,cabalbl) MCFG_MACHINE_RESET_OVERRIDE(cabal_state,cabalbl) /* video hardware */ - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_REFRESH_RATE(60) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */) - MCFG_SCREEN_SIZE(256, 256) - MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1) - MCFG_SCREEN_UPDATE_DRIVER(cabal_state, screen_update) - MCFG_SCREEN_PALETTE(m_palette) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); + screen.set_refresh_hz(60); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */ + screen.set_size(256, 256); + screen.set_visarea(0*8, 32*8-1, 2*8, 30*8-1); + screen.set_screen_update(FUNC(cabal_state::screen_update)); + screen.set_palette(m_palette); GFXDECODE(config, m_gfxdecode, m_palette, gfx_cabal); PALETTE(config, m_palette).set_format(palette_device::xBGR_444, 1024); @@ -619,14 +618,14 @@ MACHINE_CONFIG_START(cabal_state::cabalbl) ymsnd.irq_handler().set_inputline(m_audiocpu, 0); ymsnd.add_route(ALL_OUTPUTS, "mono", 0.80); - MCFG_DEVICE_ADD("msm1", MSM5205, XTAL(12'000'000)/32) /* verified on pcb (no resonator) */ - MCFG_MSM5205_PRESCALER_SELECTOR(SEX_4B) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60) + MSM5205(config, m_msm1, XTAL(12'000'000)/32); /* verified on pcb (no resonator) */ + m_msm1->set_prescaler_selector(msm5205_device::SEX_4B); + m_msm1->add_route(ALL_OUTPUTS, "mono", 0.60); - MCFG_DEVICE_ADD("msm2", MSM5205, XTAL(12'000'000)/32) /* verified on pcb (no resonator)*/ - MCFG_MSM5205_PRESCALER_SELECTOR(SEX_4B) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60) -MACHINE_CONFIG_END + MSM5205(config, m_msm2, XTAL(12'000'000)/32); /* verified on pcb (no resonator)*/ + m_msm2->set_prescaler_selector(msm5205_device::SEX_4B); + m_msm2->add_route(ALL_OUTPUTS, "mono", 0.60); +} ROM_START( cabal ) ROM_REGION( 0x50000, "maincpu", 0 ) /* 64k for cpu code */ |