diff options
Diffstat (limited to 'src/mame/drivers/bfmsys85.cpp')
-rw-r--r-- | src/mame/drivers/bfmsys85.cpp | 41 |
1 files changed, 21 insertions, 20 deletions
diff --git a/src/mame/drivers/bfmsys85.cpp b/src/mame/drivers/bfmsys85.cpp index 73db8a2256b..7819d48b2bb 100644 --- a/src/mame/drivers/bfmsys85.cpp +++ b/src/mame/drivers/bfmsys85.cpp @@ -356,34 +356,35 @@ void bfmsys85_state::machine_start() // memory map for bellfruit system85 board //////////////////////////////// -ADDRESS_MAP_START(bfmsys85_state::memmap) +void bfmsys85_state::memmap(address_map &map) +{ - AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("nvram") //8k RAM - AM_RANGE(0x2000, 0x21FF) AM_WRITE(reel34_w) // reel 3+4 latch - AM_RANGE(0x2200, 0x23FF) AM_WRITE(reel12_w) // reel 1+2 latch - AM_RANGE(0x2400, 0x25FF) AM_WRITE(vfd_w) // vfd latch + map(0x0000, 0x1fff).ram().share("nvram"); //8k RAM + map(0x2000, 0x21FF).w(this, FUNC(bfmsys85_state::reel34_w)); // reel 3+4 latch + map(0x2200, 0x23FF).w(this, FUNC(bfmsys85_state::reel12_w)); // reel 1+2 latch + map(0x2400, 0x25FF).w(this, FUNC(bfmsys85_state::vfd_w)); // vfd latch - AM_RANGE(0x2600, 0x27FF) AM_READWRITE(mmtr_r,mmtr_w)// mechanical meter latch - AM_RANGE(0x2800, 0x2800) AM_READ(triac_r) // payslide triacs - AM_RANGE(0x2800, 0x29FF) AM_WRITE(triac_w) // triacs + map(0x2600, 0x27FF).rw(this, FUNC(bfmsys85_state::mmtr_r), FUNC(bfmsys85_state::mmtr_w));// mechanical meter latch + map(0x2800, 0x2800).r(this, FUNC(bfmsys85_state::triac_r)); // payslide triacs + map(0x2800, 0x29FF).w(this, FUNC(bfmsys85_state::triac_w)); // triacs - AM_RANGE(0x2A00, 0x2A00) AM_READWRITE(mux_data_r,mux_data_w)// mux - AM_RANGE(0x2A01, 0x2A01) AM_READWRITE(mux_ctrl_r,mux_ctrl_w)// mux status register - AM_RANGE(0x2E00, 0x2E00) AM_READ(irqlatch_r) // irq latch ( MC6850 / timer ) + map(0x2A00, 0x2A00).rw(this, FUNC(bfmsys85_state::mux_data_r), FUNC(bfmsys85_state::mux_data_w));// mux + map(0x2A01, 0x2A01).rw(this, FUNC(bfmsys85_state::mux_ctrl_r), FUNC(bfmsys85_state::mux_ctrl_w));// mux status register + map(0x2E00, 0x2E00).r(this, FUNC(bfmsys85_state::irqlatch_r)); // irq latch ( MC6850 / timer ) - AM_RANGE(0x3000, 0x3000) AM_DEVWRITE("aysnd", ay8910_device, data_w) - AM_RANGE(0x3001, 0x3001) AM_READNOP //sound latch - AM_RANGE(0x3200, 0x3200) AM_DEVWRITE("aysnd", ay8910_device, address_w) + map(0x3000, 0x3000).w("aysnd", FUNC(ay8910_device::data_w)); + map(0x3001, 0x3001).nopr(); //sound latch + map(0x3200, 0x3200).w("aysnd", FUNC(ay8910_device::address_w)); - AM_RANGE(0x3402, 0x3403) AM_DEVWRITE("acia6850_0", acia6850_device, write) - AM_RANGE(0x3406, 0x3407) AM_DEVREAD("acia6850_0", acia6850_device, read) + map(0x3402, 0x3403).w(m_acia6850_0, FUNC(acia6850_device::write)); + map(0x3406, 0x3407).r(m_acia6850_0, FUNC(acia6850_device::read)); - AM_RANGE(0x3600, 0x3600) AM_WRITE(mux_enable_w) // mux enable + map(0x3600, 0x3600).w(this, FUNC(bfmsys85_state::mux_enable_w)); // mux enable - AM_RANGE(0x4000, 0xffff) AM_ROM // 48K ROM - AM_RANGE(0x8000, 0xFFFF) AM_WRITE(watchdog_w) // kick watchdog + map(0x4000, 0xffff).rom(); // 48K ROM + map(0x8000, 0xFFFF).w(this, FUNC(bfmsys85_state::watchdog_w)); // kick watchdog -ADDRESS_MAP_END +} // machine driver for system85 board ////////////////////////////////////// |