diff options
Diffstat (limited to 'src/mame/machine/cedar_magnet_sprite.cpp')
-rw-r--r-- | src/mame/machine/cedar_magnet_sprite.cpp | 39 |
1 files changed, 21 insertions, 18 deletions
diff --git a/src/mame/machine/cedar_magnet_sprite.cpp b/src/mame/machine/cedar_magnet_sprite.cpp index 3fa6ad76a2c..fb5170e6647 100644 --- a/src/mame/machine/cedar_magnet_sprite.cpp +++ b/src/mame/machine/cedar_magnet_sprite.cpp @@ -23,11 +23,12 @@ cedar_magnet_sprite_device::cedar_magnet_sprite_device(const machine_config &mco { } -ADDRESS_MAP_START(cedar_magnet_sprite_device::cedar_magnet_sprite_sub_ram_map) +void cedar_magnet_sprite_device::cedar_magnet_sprite_sub_ram_map(address_map &map) +{ // these are 8x SIEMENS HYB 41256-15 AA - 262,144 bit DRAM (32kbytes) // these are on the sprite board memory sub-board - AM_RANGE(0x00000, 0x3ffff) AM_RAM AM_SHARE("ram") -ADDRESS_MAP_END + map(0x00000, 0x3ffff).ram().share("ram"); +} READ8_MEMBER(cedar_magnet_sprite_device::exzisus_hack_r) { @@ -48,29 +49,31 @@ READ8_MEMBER(cedar_magnet_sprite_device::exzisus_hack_r) } -ADDRESS_MAP_START(cedar_magnet_sprite_device::cedar_magnet_sprite_map) - AM_RANGE(0x00000, 0x0ffff) AM_DEVICE("sp_sub_ram", address_map_bank_device, amap8) +void cedar_magnet_sprite_device::cedar_magnet_sprite_map(address_map &map) +{ + map(0x00000, 0x0ffff).m("sp_sub_ram", FUNC(address_map_bank_device::amap8)); - AM_RANGE(0x00400, 0x007ff) AM_READ(exzisus_hack_r) -ADDRESS_MAP_END + map(0x00400, 0x007ff).r(this, FUNC(cedar_magnet_sprite_device::exzisus_hack_r)); +} -ADDRESS_MAP_START(cedar_magnet_sprite_device::cedar_magnet_sprite_io) - ADDRESS_MAP_GLOBAL_MASK(0xff) +void cedar_magnet_sprite_device::cedar_magnet_sprite_io(address_map &map) +{ + map.global_mask(0xff); - AM_RANGE(0xc0, 0xc3) AM_DEVREADWRITE("z80pio0", z80pio_device, read_alt, write_alt) - AM_RANGE(0xc4, 0xc7) AM_DEVREADWRITE("z80pio1", z80pio_device, read_alt, write_alt) - AM_RANGE(0xc8, 0xcb) AM_DEVREADWRITE("z80pio2", z80pio_device, read_alt, write_alt) + map(0xc0, 0xc3).rw("z80pio0", FUNC(z80pio_device::read_alt), FUNC(z80pio_device::write_alt)); + map(0xc4, 0xc7).rw("z80pio1", FUNC(z80pio_device::read_alt), FUNC(z80pio_device::write_alt)); + map(0xc8, 0xcb).rw("z80pio2", FUNC(z80pio_device::read_alt), FUNC(z80pio_device::write_alt)); - AM_RANGE(0x80, 0x80) AM_WRITE(sprite_port80_w) - AM_RANGE(0x84, 0x84) AM_WRITE(sprite_port84_w) + map(0x80, 0x80).w(this, FUNC(cedar_magnet_sprite_device::sprite_port80_w)); + map(0x84, 0x84).w(this, FUNC(cedar_magnet_sprite_device::sprite_port84_w)); - AM_RANGE(0x88, 0x88) AM_WRITE(sprite_port88_w) // increasing values // upper address? + map(0x88, 0x88).w(this, FUNC(cedar_magnet_sprite_device::sprite_port88_w)); // increasing values // upper address? - AM_RANGE(0x8c, 0x8c) AM_WRITE(sprite_port8c_w) // written after 88 (possible data upload?) + map(0x8c, 0x8c).w(this, FUNC(cedar_magnet_sprite_device::sprite_port8c_w)); // written after 88 (possible data upload?) - AM_RANGE(0x9c, 0x9c) AM_WRITE(sprite_port9c_w) // ? + map(0x9c, 0x9c).w(this, FUNC(cedar_magnet_sprite_device::sprite_port9c_w)); // ? -ADDRESS_MAP_END +} void cedar_magnet_sprite_device::do_blit() { |