diff --git a/src/mame/drivers/alphajuno.cpp b/src/mame/drivers/alphajuno.cpp index 615ea434372..c563109a387 100644 --- a/src/mame/drivers/alphajuno.cpp +++ b/src/mame/drivers/alphajuno.cpp @@ -81,7 +81,7 @@ void alphajuno_state::ajuno1_ext_map(address_map &map) void alphajuno_state::ajuno2_ext_map(address_map &map) { map(0x2000, 0x27ff).mirror(0xd800).ram().share("nvram"); - map(0x5000, 0x57ff).mirror(0x800).rw("key", FUNC(mb63h149_device::read), FUNC(mb63h149_device::write)); + map(0x5000, 0x57ff).mirror(0x800).rw("keyscan", FUNC(mb63h149_device::read), FUNC(mb63h149_device::write)); map(0x8000, 0x8008).w(FUNC(alphajuno_state::lcd_w)); } @@ -138,8 +138,8 @@ void alphajuno_state::ajuno2(machine_config &config) ajuno1(config); m_maincpu->set_addrmap(AS_IO, &alphajuno_state::ajuno2_ext_map); - mb63h149_device &key(MB63H149(config, "key", 12_MHz_XTAL)); - key.int_callback().set_inputline(m_maincpu, MCS51_INT0_LINE); + mb63h149_device &keyscan(MB63H149(config, "keyscan", 12_MHz_XTAL)); + keyscan.int_callback().set_inputline(m_maincpu, MCS51_INT0_LINE); } void alphajuno_state::mks50(machine_config &config) diff --git a/src/mame/drivers/roland_d10.cpp b/src/mame/drivers/roland_d10.cpp index 51067e376f9..0485a892522 100644 --- a/src/mame/drivers/roland_d10.cpp +++ b/src/mame/drivers/roland_d10.cpp @@ -235,7 +235,7 @@ void roland_d10_state::d10_map(address_map &map) map(0x0200, 0x0200).w(FUNC(roland_d10_state::so_w)); map(0x0300, 0x0300).w(FUNC(roland_d10_state::lcd_data_w)); map(0x0380, 0x0380).rw(FUNC(roland_d10_state::lcd_ctrl_r), FUNC(roland_d10_state::lcd_ctrl_w)); - map(0x0c00, 0x0dff).rw("key", FUNC(mb63h149_device::read), FUNC(mb63h149_device::write)); + map(0x0c00, 0x0dff).rw("keyscan", FUNC(mb63h149_device::read), FUNC(mb63h149_device::write)); map(0x1000, 0x7fff).rom().region("maincpu", 0x1000); map(0x8000, 0xbfff).m(m_bank, FUNC(address_map_bank_device::amap8)); map(0xc000, 0xffff).rw(FUNC(roland_d10_state::fixed_r), FUNC(roland_d10_state::fixed_w)); @@ -291,8 +291,8 @@ void roland_d10_state::d10(machine_config &config) // Shall become a proper memcard device someday NVRAM( config, m_memcs, nvram_device::DEFAULT_ALL_0 ); - MB63H149(config, "key", 16.384_MHz_XTAL); - //key.int_callback().set_inputline(m_maincpu, i8x9x_device::HSI0_LINE); + MB63H149(config, "keyscan", 16.384_MHz_XTAL); + //keyscan.int_callback().set_inputline(m_maincpu, i8x9x_device::HSI0_LINE); screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_LCD)); screen.set_refresh_hz(50); @@ -319,7 +319,7 @@ void roland_d10_state::d110(machine_config &config) //m_bank->set_data_width(8); m_bank->set_addrmap(0, &roland_d10_state::d110_bank_map); - config.device_remove("key"); + config.device_remove("keyscan"); } ROM_START( d10 ) diff --git a/src/mame/drivers/roland_d50.cpp b/src/mame/drivers/roland_d50.cpp index d1e8b694cdc..183a610777c 100644 --- a/src/mame/drivers/roland_d50.cpp +++ b/src/mame/drivers/roland_d50.cpp @@ -23,16 +23,24 @@ public: void d550(machine_config &config); private: - void mem_map(address_map &map); + void d50_mem_map(address_map &map); + void d550_mem_map(address_map &map); required_device m_maincpu; }; -void roland_d50_state::mem_map(address_map &map) +void roland_d50_state::d50_mem_map(address_map &map) { // Internal ROM is enabled at 0000–1FFF (+5V pullup on EA pin) - map(0x2000, 0xfdff).rom().region("progrom", 0x2000); // TODO: banking + map(0x2000, 0xf3ff).rom().region("progrom", 0x2000); // TODO: banking? + map(0xf400, 0xf7ff).rw("keyscan", FUNC(mb63h149_device::read), FUNC(mb63h149_device::write)); +} + +void roland_d50_state::d550_mem_map(address_map &map) +{ + // Internal ROM is enabled at 0000–1FFF (+5V pullup on EA pin) + map(0x2000, 0xfdff).rom().region("progrom", 0x2000); // TODO: banking? } @@ -43,12 +51,12 @@ INPUT_PORTS_END void roland_d50_state::d50(machine_config &config) { UPD78312(config, m_maincpu, 12_MHz_XTAL); - m_maincpu->set_addrmap(AS_PROGRAM, &roland_d50_state::mem_map); + m_maincpu->set_addrmap(AS_PROGRAM, &roland_d50_state::d50_mem_map); // LCD unit is LM402802 (D-50) or LM402551 (D-550) - MB63H149(config, "key", 32.768_MHz_XTAL / 2); // on Dyna Scan Board - //key.int_callback().set_inputline(m_maincpu, upd78312_device::INT2_LINE); + MB63H149(config, "keyscan", 32.768_MHz_XTAL / 2); // on Dyna Scan Board + //keyscan.int_callback().set_inputline(m_maincpu, upd78312_device::INT2_LINE); //MB87136(config, "synthe", 32.768_MHz_XTAL); } @@ -56,8 +64,9 @@ void roland_d50_state::d50(machine_config &config) void roland_d50_state::d550(machine_config &config) { d50(config); + m_maincpu->set_addrmap(AS_PROGRAM, &roland_d50_state::d550_mem_map); - config.device_remove("key"); + config.device_remove("keyscan"); } // the internal date format for the external program roms is as such: diff --git a/src/mame/drivers/roland_jx8p.cpp b/src/mame/drivers/roland_jx8p.cpp index 00b7e49f0e7..7a6dc1bba17 100644 --- a/src/mame/drivers/roland_jx8p.cpp +++ b/src/mame/drivers/roland_jx8p.cpp @@ -61,7 +61,7 @@ void roland_jx8p_state::jx8p_assigner_map(address_map &map) map(0x2000, 0x3fff).rw("cartslot", FUNC(generic_slot_device::read_ram), FUNC(generic_slot_device::write_ram)); map(0x4000, 0x4007).mirror(0x1ff8).r(FUNC(roland_jx8p_state::switches_r)); map(0x6000, 0x6000).mirror(0x1fff).w(FUNC(roland_jx8p_state::leds_w)); - map(0x8000, 0x87ff).mirror(0x1800).rw("key", FUNC(mb63h149_device::read), FUNC(mb63h149_device::write)); + map(0x8000, 0x87ff).mirror(0x1800).rw("keyscan", FUNC(mb63h149_device::read), FUNC(mb63h149_device::write)); map(0xa000, 0xa7ff).mirror(0x1800).ram().share("nvram"); map(0xc000, 0xffff).rom().region("assigner", 0); } @@ -70,7 +70,7 @@ void roland_jx8p_state::superjx_assigner_map(address_map &map) { map(0x0000, 0x001f).m(m_assignercpu, FUNC(hd6303r_cpu_device::m6801_io)); map(0x0080, 0x00ff).ram(); // internal RAM - map(0x1000, 0x17ff).mirror(0x800).rw("key", FUNC(mb63h149_device::read), FUNC(mb63h149_device::write)); + map(0x1000, 0x17ff).mirror(0x800).rw("keyscan", FUNC(mb63h149_device::read), FUNC(mb63h149_device::write)); map(0x2000, 0x3fff).rw("cartslot", FUNC(generic_slot_device::read_ram), FUNC(generic_slot_device::write_ram)); map(0x4000, 0x4007).mirror(0xff8).r(FUNC(roland_jx8p_state::switches_r)); map(0x5000, 0x5000).mirror(0xfff).w(FUNC(roland_jx8p_state::leds_w)); @@ -315,8 +315,8 @@ void roland_jx8p_state::jx8p(machine_config &config) NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // TC5517APL + battery - mb63h149_device &key(MB63H149(config, "key", 16_MHz_XTAL)); - key.int_callback().set_inputline(m_assignercpu, HD6301_IRQ_LINE); + mb63h149_device &keyscan(MB63H149(config, "keyscan", 16_MHz_XTAL)); + keyscan.int_callback().set_inputline(m_assignercpu, HD6301_IRQ_LINE); GENERIC_CARTSLOT(config, "cartslot", generic_plain_slot, nullptr, "jx8p_cart"); @@ -331,7 +331,7 @@ void roland_jx8p_state::jx8po(machine_config &config) { jx8p(config); - MB63H130(config.replace(), "key", 16_MHz_XTAL); // no INT + MB63H130(config.replace(), "keyscan", 16_MHz_XTAL); // no INT } void roland_jx8p_state::jx10(machine_config &config) @@ -341,8 +341,8 @@ void roland_jx8p_state::jx10(machine_config &config) NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // TC5564PL-20 + battery - mb63h149_device &key(MB63H149(config, "key", 16_MHz_XTAL)); - key.int_callback().set_inputline(m_assignercpu, HD6301_IRQ_LINE); + mb63h149_device &keyscan(MB63H149(config, "keyscan", 16_MHz_XTAL)); + keyscan.int_callback().set_inputline(m_assignercpu, HD6301_IRQ_LINE); GENERIC_CARTSLOT(config, "cartslot", generic_plain_slot, nullptr, "jx8p_cart");