ajuno2, d10: Map the 63H149 (nw)

This commit is contained in:
AJR 2020-03-21 22:20:50 -04:00
parent 8df2864041
commit 817caa777c
2 changed files with 13 additions and 3 deletions

View File

@ -38,7 +38,8 @@ private:
void lcd_w(offs_t offset, u8 data);
void prog_map(address_map &map);
void ext_map(address_map &map);
void ajuno1_ext_map(address_map &map);
void ajuno2_ext_map(address_map &map);
void mks50_ext_map(address_map &map);
void palette_init(palette_device &palette);
@ -71,12 +72,19 @@ void alphajuno_state::prog_map(address_map &map)
map(0x0000, 0x3fff).rom().region("program", 0);
}
void alphajuno_state::ext_map(address_map &map)
void alphajuno_state::ajuno1_ext_map(address_map &map)
{
map(0x2000, 0x27ff).mirror(0xd800).ram().share("nvram");
map(0x8000, 0x8008).w(FUNC(alphajuno_state::lcd_w));
}
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(0x8000, 0x8008).w(FUNC(alphajuno_state::lcd_w));
}
void alphajuno_state::mks50_ext_map(address_map &map)
{
map(0x8000, 0x8008).w(FUNC(alphajuno_state::lcd_w));
@ -102,7 +110,7 @@ void alphajuno_state::ajuno1(machine_config &config)
{
I8032(config, m_maincpu, 12_MHz_XTAL); // P8032AH
m_maincpu->set_addrmap(AS_PROGRAM, &alphajuno_state::prog_map);
m_maincpu->set_addrmap(AS_IO, &alphajuno_state::ext_map);
m_maincpu->set_addrmap(AS_IO, &alphajuno_state::ajuno1_ext_map);
NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0); // TC5517APL + battery
@ -128,6 +136,7 @@ void alphajuno_state::ajuno1(machine_config &config)
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);

View File

@ -235,6 +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(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));