summaryrefslogtreecommitdiffstats
path: root/src/mame/drivers/aristmk4.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/aristmk4.cpp')
-rw-r--r--src/mame/drivers/aristmk4.cpp118
1 files changed, 60 insertions, 58 deletions
diff --git a/src/mame/drivers/aristmk4.cpp b/src/mame/drivers/aristmk4.cpp
index de53fd6cf89..1f6f89a5ece 100644
--- a/src/mame/drivers/aristmk4.cpp
+++ b/src/mame/drivers/aristmk4.cpp
@@ -1000,35 +1000,36 @@ ADDRESS MAP - SLOT GAMES
******************************************************************************/
-ADDRESS_MAP_START(aristmk4_state::aristmk4_map)
- AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("mkiv_vram") // video ram - chips U49 / U50
- AM_RANGE(0x0800, 0x17ff) AM_RAM
- AM_RANGE(0x1800, 0x1800) AM_DEVREADWRITE("crtc", mc6845_device, status_r, address_w)
- AM_RANGE(0x1801, 0x1801) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
- AM_RANGE(0x1c00, 0x1cff) AM_WRITE(mk4_printer_w)
- AM_RANGE(0x1900, 0x19ff) AM_READ(mk4_printer_r)
- AM_RANGE(0x2000, 0x3fff) AM_ROM // graphics rom map
- AM_RANGE(0x4000, 0x4fff) AM_RAMBANK("bank1") AM_SHARE("nvram")
-
- AM_RANGE(0x5000, 0x5000) AM_WRITE(u3_p0)
- AM_RANGE(0x5002, 0x5002) AM_READ(u3_p2)
- AM_RANGE(0x5003, 0x5003) AM_READ(u3_p3)
- AM_RANGE(0x5005, 0x5005) AM_READ(ldsw)
- AM_RANGE(0x500d, 0x500d) AM_READ_PORT("500d")
- AM_RANGE(0x500e, 0x500e) AM_READ_PORT("500e")
- AM_RANGE(0x500f, 0x500f) AM_READ_PORT("500f")
- AM_RANGE(0x5010, 0x501f) AM_DEVREADWRITE("via6522_0",via6522_device,read,write)
- AM_RANGE(0x5200, 0x5200) AM_READ(cashcade_r)
- AM_RANGE(0x5201, 0x5201) AM_READ_PORT("5201")
- AM_RANGE(0x52c0, 0x52c0) AM_READ(bv_p0)
- AM_RANGE(0x52c1, 0x52c1) AM_READ(bv_p1)
- AM_RANGE(0x527f, 0x5281) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
- AM_RANGE(0x5300, 0x5300) AM_READ_PORT("5300")
- AM_RANGE(0x5380, 0x5383) AM_DEVREADWRITE("pia6821_0", pia6821_device, read, write) // RTC data - PORT A , mechanical meters - PORTB ??
- AM_RANGE(0x5440, 0x5440) AM_WRITE(mlamps) // take win and gamble lamps
- AM_RANGE(0x5468, 0x5468) AM_READWRITE(cgdrr,cgdrw) // 4020 ripple counter outputs
- AM_RANGE(0x6000, 0xffff) AM_ROM // game roms
-ADDRESS_MAP_END
+void aristmk4_state::aristmk4_map(address_map &map)
+{
+ map(0x0000, 0x07ff).ram().share("mkiv_vram"); // video ram - chips U49 / U50
+ map(0x0800, 0x17ff).ram();
+ map(0x1800, 0x1800).rw("crtc", FUNC(mc6845_device::status_r), FUNC(mc6845_device::address_w));
+ map(0x1801, 0x1801).rw("crtc", FUNC(mc6845_device::register_r), FUNC(mc6845_device::register_w));
+ map(0x1c00, 0x1cff).w(this, FUNC(aristmk4_state::mk4_printer_w));
+ map(0x1900, 0x19ff).r(this, FUNC(aristmk4_state::mk4_printer_r));
+ map(0x2000, 0x3fff).rom(); // graphics rom map
+ map(0x4000, 0x4fff).bankrw("bank1").share("nvram");
+
+ map(0x5000, 0x5000).w(this, FUNC(aristmk4_state::u3_p0));
+ map(0x5002, 0x5002).r(this, FUNC(aristmk4_state::u3_p2));
+ map(0x5003, 0x5003).r(this, FUNC(aristmk4_state::u3_p3));
+ map(0x5005, 0x5005).r(this, FUNC(aristmk4_state::ldsw));
+ map(0x500d, 0x500d).portr("500d");
+ map(0x500e, 0x500e).portr("500e");
+ map(0x500f, 0x500f).portr("500f");
+ map(0x5010, 0x501f).rw("via6522_0", FUNC(via6522_device::read), FUNC(via6522_device::write));
+ map(0x5200, 0x5200).r(this, FUNC(aristmk4_state::cashcade_r));
+ map(0x5201, 0x5201).portr("5201");
+ map(0x52c0, 0x52c0).r(this, FUNC(aristmk4_state::bv_p0));
+ map(0x52c1, 0x52c1).r(this, FUNC(aristmk4_state::bv_p1));
+ map(0x527f, 0x5281).rw("ppi8255_0", FUNC(i8255_device::read), FUNC(i8255_device::write));
+ map(0x5300, 0x5300).portr("5300");
+ map(0x5380, 0x5383).rw("pia6821_0", FUNC(pia6821_device::read), FUNC(pia6821_device::write)); // RTC data - PORT A , mechanical meters - PORTB ??
+ map(0x5440, 0x5440).w(this, FUNC(aristmk4_state::mlamps)); // take win and gamble lamps
+ map(0x5468, 0x5468).rw(this, FUNC(aristmk4_state::cgdrr), FUNC(aristmk4_state::cgdrw)); // 4020 ripple counter outputs
+ map(0x6000, 0xffff).rom(); // game roms
+}
/******************************************************************************
@@ -1044,35 +1045,36 @@ The graphics rom is mapped from 0x4000 - 0x4fff
The U87 personality rom is not required, therefore game rom code mapping is from 0x8000-0xffff
*/
-ADDRESS_MAP_START(aristmk4_state::aristmk4_poker_map)
- AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("mkiv_vram") // video ram - chips U49 / U50
- AM_RANGE(0x0800, 0x17ff) AM_RAM
- AM_RANGE(0x1800, 0x1800) AM_DEVREADWRITE("crtc", mc6845_device, status_r, address_w)
- AM_RANGE(0x1801, 0x1801) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
- AM_RANGE(0x1c00, 0x1cff) AM_WRITE(mk4_printer_w)
- AM_RANGE(0x1900, 0x19ff) AM_READ(mk4_printer_r)
- AM_RANGE(0x4000, 0x4fff) AM_RAMBANK("bank1") AM_SHARE("nvram")
-
- AM_RANGE(0x5000, 0x5000) AM_WRITE(u3_p0)
- AM_RANGE(0x5002, 0x5002) AM_READ(u3_p2)
- AM_RANGE(0x5003, 0x5003) AM_READ_PORT("5003")
- AM_RANGE(0x5005, 0x5005) AM_READ(ldsw)
- AM_RANGE(0x500d, 0x500d) AM_READ_PORT("500d")
- AM_RANGE(0x500e, 0x500e) AM_READ_PORT("500e")
- AM_RANGE(0x500f, 0x500f) AM_READ_PORT("500f")
- AM_RANGE(0x5010, 0x501f) AM_DEVREADWRITE("via6522_0",via6522_device,read,write)
- AM_RANGE(0x5200, 0x5200) AM_READ(cashcade_r)
- AM_RANGE(0x5201, 0x5201) AM_READ_PORT("5201")
- AM_RANGE(0x52c0, 0x52c0) AM_READ(bv_p0)
- AM_RANGE(0x52c1, 0x52c1) AM_READ(bv_p1)
- AM_RANGE(0x527f, 0x5281) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
- AM_RANGE(0x5300, 0x5300) AM_READ_PORT("5300")
- AM_RANGE(0x5380, 0x5383) AM_DEVREADWRITE("pia6821_0", pia6821_device, read, write) // RTC data - PORT A , mechanical meters - PORTB ??
- AM_RANGE(0x5440, 0x5440) AM_WRITE(mlamps) // take win and gamble lamps
- AM_RANGE(0x5468, 0x5468) AM_READWRITE(cgdrr,cgdrw) // 4020 ripple counter outputs
- AM_RANGE(0x6000, 0x7fff) AM_ROM // graphics rom map
- AM_RANGE(0x8000, 0xffff) AM_ROM // game roms
-ADDRESS_MAP_END
+void aristmk4_state::aristmk4_poker_map(address_map &map)
+{
+ map(0x0000, 0x07ff).ram().share("mkiv_vram"); // video ram - chips U49 / U50
+ map(0x0800, 0x17ff).ram();
+ map(0x1800, 0x1800).rw("crtc", FUNC(mc6845_device::status_r), FUNC(mc6845_device::address_w));
+ map(0x1801, 0x1801).rw("crtc", FUNC(mc6845_device::register_r), FUNC(mc6845_device::register_w));
+ map(0x1c00, 0x1cff).w(this, FUNC(aristmk4_state::mk4_printer_w));
+ map(0x1900, 0x19ff).r(this, FUNC(aristmk4_state::mk4_printer_r));
+ map(0x4000, 0x4fff).bankrw("bank1").share("nvram");
+
+ map(0x5000, 0x5000).w(this, FUNC(aristmk4_state::u3_p0));
+ map(0x5002, 0x5002).r(this, FUNC(aristmk4_state::u3_p2));
+ map(0x5003, 0x5003).portr("5003");
+ map(0x5005, 0x5005).r(this, FUNC(aristmk4_state::ldsw));
+ map(0x500d, 0x500d).portr("500d");
+ map(0x500e, 0x500e).portr("500e");
+ map(0x500f, 0x500f).portr("500f");
+ map(0x5010, 0x501f).rw("via6522_0", FUNC(via6522_device::read), FUNC(via6522_device::write));
+ map(0x5200, 0x5200).r(this, FUNC(aristmk4_state::cashcade_r));
+ map(0x5201, 0x5201).portr("5201");
+ map(0x52c0, 0x52c0).r(this, FUNC(aristmk4_state::bv_p0));
+ map(0x52c1, 0x52c1).r(this, FUNC(aristmk4_state::bv_p1));
+ map(0x527f, 0x5281).rw("ppi8255_0", FUNC(i8255_device::read), FUNC(i8255_device::write));
+ map(0x5300, 0x5300).portr("5300");
+ map(0x5380, 0x5383).rw("pia6821_0", FUNC(pia6821_device::read), FUNC(pia6821_device::write)); // RTC data - PORT A , mechanical meters - PORTB ??
+ map(0x5440, 0x5440).w(this, FUNC(aristmk4_state::mlamps)); // take win and gamble lamps
+ map(0x5468, 0x5468).rw(this, FUNC(aristmk4_state::cgdrr), FUNC(aristmk4_state::cgdrw)); // 4020 ripple counter outputs
+ map(0x6000, 0x7fff).rom(); // graphics rom map
+ map(0x8000, 0xffff).rom(); // game roms
+}
/******************************************************************************