summaryrefslogtreecommitdiffstats
path: root/src/mame/drivers/dgn_beta.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/dgn_beta.cpp')
-rw-r--r--src/mame/drivers/dgn_beta.cpp69
1 files changed, 35 insertions, 34 deletions
diff --git a/src/mame/drivers/dgn_beta.cpp b/src/mame/drivers/dgn_beta.cpp
index 9da42091534..620f5212dcb 100644
--- a/src/mame/drivers/dgn_beta.cpp
+++ b/src/mame/drivers/dgn_beta.cpp
@@ -140,40 +140,41 @@ static const unsigned char dgnbeta_palette[] =
*/
-ADDRESS_MAP_START(dgn_beta_state::dgnbeta_map)
- AM_RANGE(0x0000, 0x0FFF) AM_RAMBANK("bank1")
- AM_RANGE(0x1000, 0x1FFF) AM_RAMBANK("bank2")
- AM_RANGE(0x2000, 0x2FFF) AM_RAMBANK("bank3")
- AM_RANGE(0x3000, 0x3FFF) AM_RAMBANK("bank4")
- AM_RANGE(0x4000, 0x4FFF) AM_RAMBANK("bank5")
- AM_RANGE(0x5000, 0x5FFF) AM_RAMBANK("bank6")
- AM_RANGE(0x6000, 0x6FFF) AM_RAMBANK("bank7") AM_SHARE("videoram")
- AM_RANGE(0x7000, 0x7FFF) AM_RAMBANK("bank8")
- AM_RANGE(0x8000, 0x8FFF) AM_RAMBANK("bank9")
- AM_RANGE(0x9000, 0x9FFF) AM_RAMBANK("bank10")
- AM_RANGE(0xA000, 0xAFFF) AM_RAMBANK("bank11")
- AM_RANGE(0xB000, 0xBFFF) AM_RAMBANK("bank12")
- AM_RANGE(0xC000, 0xCFFF) AM_RAMBANK("bank13")
- AM_RANGE(0xD000, 0xDFFF) AM_RAMBANK("bank14")
- AM_RANGE(0xE000, 0xEFFF) AM_RAMBANK("bank15")
- AM_RANGE(0xF000, 0xFBFF) AM_RAMBANK("bank16")
- AM_RANGE(0xfC00, 0xfC1F) AM_NOP
- AM_RANGE(0xFC20, 0xFC23) AM_DEVREADWRITE(PIA_0_TAG, pia6821_device, read, write)
- AM_RANGE(0xFC24, 0xFC27) AM_DEVREADWRITE(PIA_1_TAG, pia6821_device, read, write)
- AM_RANGE(0xFC28, 0xfC7F) AM_NOP
- AM_RANGE(0xfc80, 0xfc80) AM_DEVWRITE("crtc", mc6845_device, address_w)
- AM_RANGE(0xfc81, 0xfc81) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
- AM_RANGE(0xfc82, 0xfC9F) AM_NOP
- AM_RANGE(0xFCA0, 0xFCA3) AM_READNOP AM_WRITE(dgnbeta_colour_ram_w) /* 4x4bit colour ram for graphics modes */
- AM_RANGE(0xFCC0, 0xFCC3) AM_DEVREADWRITE(PIA_2_TAG, pia6821_device, read, write)
- AM_RANGE(0xfcC4, 0xfcdf) AM_NOP
- AM_RANGE(0xfce0, 0xfce3) AM_READWRITE(dgnbeta_wd2797_r, dgnbeta_wd2797_w) /* Onboard disk interface */
- AM_RANGE(0xfce4, 0xfdff) AM_NOP
- AM_RANGE(0xFE00, 0xFE0F) AM_READWRITE(dgn_beta_page_r, dgn_beta_page_w)
- AM_RANGE(0xfe10, 0xfEff) AM_NOP
- AM_RANGE(0xFF00, 0xFFFF) AM_RAMBANK("bank17")
-
-ADDRESS_MAP_END
+void dgn_beta_state::dgnbeta_map(address_map &map)
+{
+ map(0x0000, 0x0FFF).bankrw("bank1");
+ map(0x1000, 0x1FFF).bankrw("bank2");
+ map(0x2000, 0x2FFF).bankrw("bank3");
+ map(0x3000, 0x3FFF).bankrw("bank4");
+ map(0x4000, 0x4FFF).bankrw("bank5");
+ map(0x5000, 0x5FFF).bankrw("bank6");
+ map(0x6000, 0x6FFF).bankrw("bank7").share("videoram");
+ map(0x7000, 0x7FFF).bankrw("bank8");
+ map(0x8000, 0x8FFF).bankrw("bank9");
+ map(0x9000, 0x9FFF).bankrw("bank10");
+ map(0xA000, 0xAFFF).bankrw("bank11");
+ map(0xB000, 0xBFFF).bankrw("bank12");
+ map(0xC000, 0xCFFF).bankrw("bank13");
+ map(0xD000, 0xDFFF).bankrw("bank14");
+ map(0xE000, 0xEFFF).bankrw("bank15");
+ map(0xF000, 0xFBFF).bankrw("bank16");
+ map(0xfC00, 0xfC1F).noprw();
+ map(0xFC20, 0xFC23).rw(m_pia_0, FUNC(pia6821_device::read), FUNC(pia6821_device::write));
+ map(0xFC24, 0xFC27).rw(m_pia_1, FUNC(pia6821_device::read), FUNC(pia6821_device::write));
+ map(0xFC28, 0xfC7F).noprw();
+ map(0xfc80, 0xfc80).w(m_mc6845, FUNC(mc6845_device::address_w));
+ map(0xfc81, 0xfc81).rw(m_mc6845, FUNC(mc6845_device::register_r), FUNC(mc6845_device::register_w));
+ map(0xfc82, 0xfC9F).noprw();
+ map(0xFCA0, 0xFCA3).nopr().w(this, FUNC(dgn_beta_state::dgnbeta_colour_ram_w)); /* 4x4bit colour ram for graphics modes */
+ map(0xFCC0, 0xFCC3).rw(m_pia_2, FUNC(pia6821_device::read), FUNC(pia6821_device::write));
+ map(0xfcC4, 0xfcdf).noprw();
+ map(0xfce0, 0xfce3).rw(this, FUNC(dgn_beta_state::dgnbeta_wd2797_r), FUNC(dgn_beta_state::dgnbeta_wd2797_w)); /* Onboard disk interface */
+ map(0xfce4, 0xfdff).noprw();
+ map(0xFE00, 0xFE0F).rw(this, FUNC(dgn_beta_state::dgn_beta_page_r), FUNC(dgn_beta_state::dgn_beta_page_w));
+ map(0xfe10, 0xfEff).noprw();
+ map(0xFF00, 0xFFFF).bankrw("bank17");
+
+}