summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/pv2000.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/pv2000.cpp')
-rw-r--r--src/mame/drivers/pv2000.cpp25
1 files changed, 11 insertions, 14 deletions
diff --git a/src/mame/drivers/pv2000.cpp b/src/mame/drivers/pv2000.cpp
index faaa9c7159d..f286ff9fd9d 100644
--- a/src/mame/drivers/pv2000.cpp
+++ b/src/mame/drivers/pv2000.cpp
@@ -184,8 +184,7 @@ void pv2000_state::pv2000_map(address_map &map)
{
map(0x0000, 0x3fff).rom();
- map(0x4000, 0x4000).rw("tms9928a", FUNC(tms9928a_device::vram_r), FUNC(tms9928a_device::vram_w));
- map(0x4001, 0x4001).rw("tms9928a", FUNC(tms9928a_device::register_r), FUNC(tms9928a_device::register_w));
+ map(0x4000, 0x4001).rw("tms9928a", FUNC(tms9928a_device::read), FUNC(tms9928a_device::write));
map(0x7000, 0x7fff).ram();
//AM_RANGE(0x8000, 0xbfff) ext ram?
@@ -205,7 +204,7 @@ void pv2000_state::pv2000_io_map(address_map &map)
map(0x20, 0x20).rw(FUNC(pv2000_state::keys_lo_r), FUNC(pv2000_state::keys_w));
//sn76489a
- map(0x40, 0x40).r(FUNC(pv2000_state::keys_mod_r)).w("sn76489a", FUNC(sn76489a_device::command_w));
+ map(0x40, 0x40).r(FUNC(pv2000_state::keys_mod_r)).w("sn76489a", FUNC(sn76489a_device::write));
/* Cassette input. Gets hit a lot after a GLOAD command */
map(0x60, 0x60).rw(FUNC(pv2000_state::cass_in), FUNC(pv2000_state::cass_out));
@@ -356,7 +355,7 @@ WRITE_LINE_MEMBER( pv2000_state::pv2000_vdp_interrupt )
void pv2000_state::machine_start()
{
if (m_cart->exists())
- m_maincpu->space(AS_PROGRAM).install_read_handler(0xc000, 0xffff, read8_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_cart));
+ m_maincpu->space(AS_PROGRAM).install_read_handler(0xc000, 0xffff, read8sm_delegate(FUNC(generic_slot_device::read_rom),(generic_slot_device*)m_cart));
}
void pv2000_state::machine_reset()
@@ -387,11 +386,10 @@ DEVICE_IMAGE_LOAD_MEMBER( pv2000_state, pv2000_cart )
/* Machine Drivers */
MACHINE_CONFIG_START(pv2000_state::pv2000)
-
// basic machine hardware
- MCFG_DEVICE_ADD("maincpu", Z80, XTAL(7'159'090)/2) // 3.579545 MHz
- MCFG_DEVICE_PROGRAM_MAP(pv2000_map)
- MCFG_DEVICE_IO_MAP(pv2000_io_map)
+ Z80(config, m_maincpu, XTAL(7'159'090)/2); // 3.579545 MHz
+ m_maincpu->set_addrmap(AS_PROGRAM, &pv2000_state::pv2000_map);
+ m_maincpu->set_addrmap(AS_IO, &pv2000_state::pv2000_io_map);
// video hardware
tms9928a_device &vdp(TMS9928A(config, "tms9928a", XTAL(10'738'635)));
@@ -403,14 +401,13 @@ MACHINE_CONFIG_START(pv2000_state::pv2000)
// sound hardware
SPEAKER(config, "mono").front_center();
- MCFG_DEVICE_ADD("sn76489a", SN76489A, XTAL(7'159'090)/2) /* 3.579545 MHz */
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
+ SN76489A(config, "sn76489a", XTAL(7'159'090)/2).add_route(ALL_OUTPUTS, "mono", 1.00); /* 3.579545 MHz */
- WAVE(config, "wave", "cassette").add_route(ALL_OUTPUTS, "mono", 0.25);
+ WAVE(config, "wave", m_cass).add_route(ALL_OUTPUTS, "mono", 0.25);
/* cassette */
- MCFG_CASSETTE_ADD( "cassette" )
- MCFG_CASSETTE_DEFAULT_STATE(CASSETTE_STOPPED | CASSETTE_MOTOR_DISABLED)
+ CASSETTE(config, m_cass);
+ m_cass->set_default_state(CASSETTE_STOPPED | CASSETTE_MOTOR_DISABLED);
/* cartridge */
MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "pv2000_cart")
@@ -418,7 +415,7 @@ MACHINE_CONFIG_START(pv2000_state::pv2000)
MCFG_GENERIC_LOAD(pv2000_state, pv2000_cart)
/* Software lists */
- MCFG_SOFTWARE_LIST_ADD("cart_list","pv2000")
+ SOFTWARE_LIST(config, "cart_list").set_original("pv2000");
MACHINE_CONFIG_END