summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/rz1.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/rz1.cpp')
-rw-r--r--src/mame/drivers/rz1.cpp55
1 files changed, 28 insertions, 27 deletions
diff --git a/src/mame/drivers/rz1.cpp b/src/mame/drivers/rz1.cpp
index f82d94ca241..a54bdb1c716 100644
--- a/src/mame/drivers/rz1.cpp
+++ b/src/mame/drivers/rz1.cpp
@@ -45,13 +45,14 @@
class rz1_state : public driver_device
{
public:
- rz1_state(const machine_config &mconfig, device_type type, const char *tag)
- : driver_device(mconfig, type, tag),
+ rz1_state(const machine_config &mconfig, device_type type, const char *tag) :
+ driver_device(mconfig, type, tag),
m_maincpu(*this, "maincpu"),
m_hd44780(*this, "hd44780"),
m_pg{ {*this, "upd934g_c"}, {*this, "upd934g_b"} },
- m_samples{ {*this, "samples_a"}, {*this, "samples_b"}},
- m_keys(*this, "kc%u", 0), m_port_a(0),
+ m_samples{ {*this, "samples_a"}, {*this, "samples_b"} },
+ m_keys(*this, "kc%u", 0),
+ m_port_a(0),
m_port_b(0xff)
{ }
@@ -334,39 +335,39 @@ PALETTE_INIT_MEMBER(rz1_state, rz1)
//**************************************************************************
MACHINE_CONFIG_START( rz1_state::rz1 )
- MCFG_DEVICE_ADD("maincpu", UPD7811, 12_MHz_XTAL)
- MCFG_DEVICE_PROGRAM_MAP(map)
- MCFG_UPD7810_PORTA_READ_CB(READ8(*this, rz1_state, port_a_r))
- MCFG_UPD7810_PORTA_WRITE_CB(WRITE8(*this, rz1_state, port_a_w))
- MCFG_UPD7810_PORTB_WRITE_CB(WRITE8(*this, rz1_state, port_b_w))
- MCFG_UPD7810_PORTC_READ_CB(READ8(*this, rz1_state, port_c_r))
- MCFG_UPD7810_PORTC_WRITE_CB(WRITE8(*this, rz1_state, port_c_w))
+ UPD7811(config, m_maincpu, 12_MHz_XTAL);
+ m_maincpu->set_addrmap(AS_PROGRAM, &rz1_state::map);
+ m_maincpu->pa_in_cb().set(FUNC(rz1_state::port_a_r));
+ m_maincpu->pa_out_cb().set(FUNC(rz1_state::port_a_w));
+ m_maincpu->pb_out_cb().set(FUNC(rz1_state::port_b_w));
+ m_maincpu->pc_in_cb().set(FUNC(rz1_state::port_c_r));
+ m_maincpu->pc_out_cb().set(FUNC(rz1_state::port_c_w));
// video hardware
- MCFG_SCREEN_ADD("screen", LCD)
- MCFG_SCREEN_REFRESH_RATE(50)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
- MCFG_SCREEN_SIZE(6*16+1, 10)
- MCFG_SCREEN_VISIBLE_AREA(0, 6*16, 0, 10-1)
- MCFG_SCREEN_UPDATE_DEVICE("hd44780", hd44780_device, screen_update)
- MCFG_SCREEN_PALETTE("palette")
+ screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_LCD));
+ screen.set_refresh_hz(50);
+ screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); // not accurate
+ screen.set_size(6*16+1, 10);
+ screen.set_visarea(0, 6*16, 0, 10-1);
+ screen.set_screen_update("hd44780", FUNC(hd44780_device::screen_update));
+ screen.set_palette("palette");
MCFG_PALETTE_ADD("palette", 3)
MCFG_PALETTE_INIT_OWNER(rz1_state, rz1)
- MCFG_HD44780_ADD("hd44780")
- MCFG_HD44780_LCD_SIZE(1, 16)
- MCFG_HD44780_PIXEL_UPDATE_CB(rz1_state, lcd_pixel_update)
+ HD44780(config, m_hd44780, 0);
+ m_hd44780->set_lcd_size(1, 16);
+ m_hd44780->set_pixel_update_cb(FUNC(rz1_state::lcd_pixel_update), this);
MCFG_DEFAULT_LAYOUT(layout_rz1)
SPEAKER(config, "speaker").front_center();
- MCFG_DEVICE_ADD("upd934g_c", UPD934G, 1333000)
- MCFG_UPD934G_DATA_CB(READ8(*this, rz1_state, upd934g_c_data_r))
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0)
- MCFG_DEVICE_ADD("upd934g_b", UPD934G, 1280000)
- MCFG_UPD934G_DATA_CB(READ8(*this, rz1_state, upd934g_b_data_r))
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0)
+ UPD934G(config, m_pg[0], 1333000);
+ m_pg[0]->data_callback().set(FUNC(rz1_state::upd934g_c_data_r));
+ m_pg[0]->add_route(ALL_OUTPUTS, "speaker", 1.0);
+ UPD934G(config, m_pg[1], 1280000);
+ m_pg[1]->data_callback().set(FUNC(rz1_state::upd934g_b_data_r));
+ m_pg[1]->add_route(ALL_OUTPUTS, "speaker", 1.0);
MACHINE_CONFIG_END