diff options
Diffstat (limited to 'src/mame/drivers/rbmk.cpp')
-rw-r--r-- | src/mame/drivers/rbmk.cpp | 46 |
1 files changed, 23 insertions, 23 deletions
diff --git a/src/mame/drivers/rbmk.cpp b/src/mame/drivers/rbmk.cpp index e462f197e72..dc15e500eb0 100644 --- a/src/mame/drivers/rbmk.cpp +++ b/src/mame/drivers/rbmk.cpp @@ -214,7 +214,7 @@ READ8_MEMBER(rbmk_state::mcu_io_r) { if(m_mux_data & 8) { - return m_ymsnd->read(offset & 1); + return m_ymsnd->read(space, offset & 1); } else if(m_mux_data & 4) { @@ -230,7 +230,7 @@ READ8_MEMBER(rbmk_state::mcu_io_r) WRITE8_MEMBER(rbmk_state::mcu_io_w) { - if(m_mux_data & 8) { m_ymsnd->write(offset & 1, data); } + if(m_mux_data & 8) { m_ymsnd->write(space, offset & 1, data); } else if(m_mux_data & 4) { //printf("%02x %02x W\n",offset,data); @@ -565,11 +565,10 @@ uint32_t rbmk_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, return 0; } -void rbmk_state::rbmk(machine_config &config) -{ - M68000(config, m_maincpu, 22000000 /2); - m_maincpu->set_addrmap(AS_PROGRAM, &rbmk_state::rbmk_mem); - m_maincpu->set_vblank_int("screen", FUNC(rbmk_state::irq1_line_hold)); +MACHINE_CONFIG_START(rbmk_state::rbmk) + MCFG_DEVICE_ADD("maincpu", M68000, 22000000 /2) + MCFG_DEVICE_PROGRAM_MAP(rbmk_mem) + MCFG_DEVICE_VBLANK_INT_DRIVER("screen", rbmk_state, irq1_line_hold) AT89C4051(config, m_mcu, 22000000 / 4); // frequency isn't right m_mcu->set_addrmap(AS_PROGRAM, &rbmk_state::mcu_mem); @@ -578,13 +577,13 @@ void rbmk_state::rbmk(machine_config &config) GFXDECODE(config, m_gfxdecode, m_palette, gfx_rbmk); - screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); - screen.set_refresh_hz(58); - screen.set_vblank_time(ATTOSECONDS_IN_USEC(0)); - screen.set_size(64*8, 32*8); - screen.set_visarea(0*8, 64*8-1, 0*8, 32*8-1); - screen.set_screen_update(FUNC(rbmk_state::screen_update)); - screen.set_palette(m_palette); + MCFG_SCREEN_ADD("screen", RASTER) + MCFG_SCREEN_REFRESH_RATE(58) + MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0)) + MCFG_SCREEN_SIZE(64*8, 32*8) + MCFG_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1) + MCFG_SCREEN_UPDATE_DRIVER(rbmk_state, screen_update) + MCFG_SCREEN_PALETTE(m_palette) PALETTE(config, m_palette).set_format(palette_device::xBGR_555, 0x800); @@ -593,24 +592,25 @@ void rbmk_state::rbmk(machine_config &config) SPEAKER(config, "lspeaker").front_left(); SPEAKER(config, "rspeaker").front_right(); - okim6295_device &oki(OKIM6295(config, "oki", 1122000, okim6295_device::PIN7_HIGH)); // clock frequency & pin 7 not verified - oki.add_route(ALL_OUTPUTS, "lspeaker", 0.47); - oki.add_route(ALL_OUTPUTS, "rspeaker", 0.47); + MCFG_DEVICE_ADD("oki", OKIM6295, 1122000, okim6295_device::PIN7_HIGH) // clock frequency & pin 7 not verified + MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.47) + MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.47) YM2151(config, m_ymsnd, 22000000 / 8); m_ymsnd->add_route(0, "lspeaker", 0.60); m_ymsnd->add_route(1, "rspeaker", 0.60); -} +MACHINE_CONFIG_END -void rbmk_state::rbspm(machine_config &config) -{ +MACHINE_CONFIG_START(rbmk_state::rbspm) rbmk(config); - m_maincpu->set_addrmap(AS_PROGRAM, &rbmk_state::rbspm_mem); + MCFG_DEVICE_MODIFY("maincpu") + MCFG_DEVICE_PROGRAM_MAP(rbspm_mem) - m_mcu->set_disable(); // until decapped + MCFG_DEVICE_MODIFY("mcu") + MCFG_DEVICE_DISABLE() // until decapped // PIC16F84 but no CPU core available -} +MACHINE_CONFIG_END // 实战麻将王 (Shízhàn Májiàng Wáng) ROM_START( rbmk ) |