summaryrefslogtreecommitdiffstats
path: root/src/mame/drivers/rastersp.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/rastersp.cpp')
-rw-r--r--src/mame/drivers/rastersp.cpp71
1 files changed, 37 insertions, 34 deletions
diff --git a/src/mame/drivers/rastersp.cpp b/src/mame/drivers/rastersp.cpp
index 1b2110ad582..32362424b42 100644
--- a/src/mame/drivers/rastersp.cpp
+++ b/src/mame/drivers/rastersp.cpp
@@ -673,40 +673,43 @@ READ32_MEMBER( rastersp_state::dsp_speedup_r )
*
*************************************/
-ADDRESS_MAP_START(rastersp_state::cpu_map)
- AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("dram")
- AM_RANGE(0x01000000, 0x010bffff) AM_NOP // External ROM
- AM_RANGE(0x010c0000, 0x010cffff) AM_ROM AM_REGION("bios", 0)
- AM_RANGE(0x02200000, 0x022fffff) AM_READWRITE8(nvram_r, nvram_w, 0x000000ff)
- AM_RANGE(0x02200800, 0x02200803) AM_WRITENOP // ?
- AM_RANGE(0x02208000, 0x02208fff) AM_DEVREADWRITE("scsibus:7:ncr53c700", ncr53c7xx_device, read, write)
- AM_RANGE(0x0220e000, 0x0220e003) AM_WRITE(dpylist_w)
- AM_RANGE(0xfff00000, 0xffffffff) AM_RAMBANK("bank3")
-ADDRESS_MAP_END
-
-ADDRESS_MAP_START(rastersp_state::io_map)
- AM_RANGE(0x0020, 0x0023) AM_WRITE(cyrix_cache_w)
- AM_RANGE(0x1000, 0x1003) AM_READ_PORT("P1") AM_WRITE(port1_w)
- AM_RANGE(0x1004, 0x1007) AM_READ_PORT("P2") AM_WRITE(port2_w)
- AM_RANGE(0x1008, 0x100b) AM_READ_PORT("COMMON") AM_WRITE(port3_w)
- AM_RANGE(0x100c, 0x100f) AM_READ_PORT("DSW2")
- AM_RANGE(0x1010, 0x1013) AM_READ_PORT("DSW1")
- AM_RANGE(0x1014, 0x1017) AM_READ_PORT("EXTRA")
- AM_RANGE(0x4000, 0x4007) AM_DEVREADWRITE8("rtc", mc146818_device, read, write, 0x000000ff)
- AM_RANGE(0x6008, 0x600b) AM_READNOP AM_WRITENOP // RS232
-ADDRESS_MAP_END
-
-
-ADDRESS_MAP_START(rastersp_state::dsp_map)
- AM_RANGE(0x000000, 0x0fffff) AM_RAMBANK("bank1")
- AM_RANGE(0x400000, 0x40ffff) AM_ROM AM_REGION("dspboot", 0)
- AM_RANGE(0x808000, 0x80807f) AM_READWRITE(tms32031_control_r, tms32031_control_w)
- AM_RANGE(0x880402, 0x880402) AM_WRITE(dsp_unk_w)
- AM_RANGE(0x883c00, 0x883c00) AM_WRITE(dsp_486_int_w)
- AM_RANGE(0xc00000, 0xc03fff) AM_RAMBANK("bank2")
- AM_RANGE(0xc80000, 0xc80000) AM_WRITE(dsp_ctrl_w)
- AM_RANGE(0xfc0000, 0xffffff) AM_RAMBANK("bank3")
-ADDRESS_MAP_END
+void rastersp_state::cpu_map(address_map &map)
+{
+ map(0x00000000, 0x003fffff).ram().share("dram");
+ map(0x01000000, 0x010bffff).noprw(); // External ROM
+ map(0x010c0000, 0x010cffff).rom().region("bios", 0);
+ map(0x02200000, 0x022fffff).rw(this, FUNC(rastersp_state::nvram_r), FUNC(rastersp_state::nvram_w)).umask32(0x000000ff);
+ map(0x02200800, 0x02200803).nopw(); // ?
+ map(0x02208000, 0x02208fff).rw("scsibus:7:ncr53c700", FUNC(ncr53c7xx_device::read), FUNC(ncr53c7xx_device::write));
+ map(0x0220e000, 0x0220e003).w(this, FUNC(rastersp_state::dpylist_w));
+ map(0xfff00000, 0xffffffff).bankrw("bank3");
+}
+
+void rastersp_state::io_map(address_map &map)
+{
+ map(0x0020, 0x0023).w(this, FUNC(rastersp_state::cyrix_cache_w));
+ map(0x1000, 0x1003).portr("P1").w(this, FUNC(rastersp_state::port1_w));
+ map(0x1004, 0x1007).portr("P2").w(this, FUNC(rastersp_state::port2_w));
+ map(0x1008, 0x100b).portr("COMMON").w(this, FUNC(rastersp_state::port3_w));
+ map(0x100c, 0x100f).portr("DSW2");
+ map(0x1010, 0x1013).portr("DSW1");
+ map(0x1014, 0x1017).portr("EXTRA");
+ map(0x4000, 0x4007).rw("rtc", FUNC(mc146818_device::read), FUNC(mc146818_device::write)).umask32(0x000000ff);
+ map(0x6008, 0x600b).nopr().nopw(); // RS232
+}
+
+
+void rastersp_state::dsp_map(address_map &map)
+{
+ map(0x000000, 0x0fffff).bankrw("bank1");
+ map(0x400000, 0x40ffff).rom().region("dspboot", 0);
+ map(0x808000, 0x80807f).rw(this, FUNC(rastersp_state::tms32031_control_r), FUNC(rastersp_state::tms32031_control_w));
+ map(0x880402, 0x880402).w(this, FUNC(rastersp_state::dsp_unk_w));
+ map(0x883c00, 0x883c00).w(this, FUNC(rastersp_state::dsp_486_int_w));
+ map(0xc00000, 0xc03fff).bankrw("bank2");
+ map(0xc80000, 0xc80000).w(this, FUNC(rastersp_state::dsp_ctrl_w));
+ map(0xfc0000, 0xffffff).bankrw("bank3");
+}