diff options
Diffstat (limited to 'src/emu/addrmap.cpp')
-rw-r--r-- | src/emu/addrmap.cpp | 132 |
1 files changed, 31 insertions, 101 deletions
diff --git a/src/emu/addrmap.cpp b/src/emu/addrmap.cpp index eab1fd4d2ba..8715d92f1eb 100644 --- a/src/emu/addrmap.cpp +++ b/src/emu/addrmap.cpp @@ -97,11 +97,11 @@ void address_map_entry::set_submap(const char *tag, address_map_delegate func, i //------------------------------------------------- -// internal_set_handler - handler setters for +// set_handler - handler setters for // 8-bit read/write handlers //------------------------------------------------- -void address_map_entry::internal_set_handler(read8_delegate func, uint64_t unitmask) +void address_map_entry::set_handler(read8_delegate func, uint64_t unitmask) { assert(!func.isnull()); assert(unitmask_is_appropriate(8, unitmask, func.name())); @@ -113,7 +113,7 @@ void address_map_entry::internal_set_handler(read8_delegate func, uint64_t unitm } -void address_map_entry::internal_set_handler(write8_delegate func, uint64_t unitmask) +void address_map_entry::set_handler(write8_delegate func, uint64_t unitmask) { assert(!func.isnull()); assert(unitmask_is_appropriate(8, unitmask, func.name())); @@ -125,19 +125,19 @@ void address_map_entry::internal_set_handler(write8_delegate func, uint64_t unit } -void address_map_entry::internal_set_handler(read8_delegate rfunc, write8_delegate wfunc, uint64_t unitmask) +void address_map_entry::set_handler(read8_delegate rfunc, write8_delegate wfunc, uint64_t unitmask) { - internal_set_handler(rfunc, unitmask); - internal_set_handler(wfunc, unitmask); + set_handler(rfunc, unitmask); + set_handler(wfunc, unitmask); } //------------------------------------------------- -// internal_set_handler - handler setters for +// set_handler - handler setters for // 16-bit read/write handlers //------------------------------------------------- -void address_map_entry::internal_set_handler(read16_delegate func, uint64_t unitmask) +void address_map_entry::set_handler(read16_delegate func, uint64_t unitmask) { assert(!func.isnull()); assert(unitmask_is_appropriate(16, unitmask, func.name())); @@ -149,7 +149,7 @@ void address_map_entry::internal_set_handler(read16_delegate func, uint64_t unit } -void address_map_entry::internal_set_handler(write16_delegate func, uint64_t unitmask) +void address_map_entry::set_handler(write16_delegate func, uint64_t unitmask) { assert(!func.isnull()); assert(unitmask_is_appropriate(16, unitmask, func.name())); @@ -161,19 +161,19 @@ void address_map_entry::internal_set_handler(write16_delegate func, uint64_t uni } -void address_map_entry::internal_set_handler(read16_delegate rfunc, write16_delegate wfunc, uint64_t unitmask) +void address_map_entry::set_handler(read16_delegate rfunc, write16_delegate wfunc, uint64_t unitmask) { - internal_set_handler(rfunc, unitmask); - internal_set_handler(wfunc, unitmask); + set_handler(rfunc, unitmask); + set_handler(wfunc, unitmask); } //------------------------------------------------- -// internal_set_handler - handler setters for +// set_handler - handler setters for // 32-bit read/write handlers //------------------------------------------------- -void address_map_entry::internal_set_handler(read32_delegate func, uint64_t unitmask) +void address_map_entry::set_handler(read32_delegate func, uint64_t unitmask) { assert(!func.isnull()); assert(unitmask_is_appropriate(32, unitmask, func.name())); @@ -185,7 +185,7 @@ void address_map_entry::internal_set_handler(read32_delegate func, uint64_t unit } -void address_map_entry::internal_set_handler(write32_delegate func, uint64_t unitmask) +void address_map_entry::set_handler(write32_delegate func, uint64_t unitmask) { assert(!func.isnull()); assert(unitmask_is_appropriate(32, unitmask, func.name())); @@ -197,19 +197,19 @@ void address_map_entry::internal_set_handler(write32_delegate func, uint64_t uni } -void address_map_entry::internal_set_handler(read32_delegate rfunc, write32_delegate wfunc, uint64_t unitmask) +void address_map_entry::set_handler(read32_delegate rfunc, write32_delegate wfunc, uint64_t unitmask) { - internal_set_handler(rfunc, unitmask); - internal_set_handler(wfunc, unitmask); + set_handler(rfunc, unitmask); + set_handler(wfunc, unitmask); } //------------------------------------------------- -// internal_set_handler - handler setters for +// set_handler - handler setters for // 64-bit read/write handlers //------------------------------------------------- -void address_map_entry::internal_set_handler(read64_delegate func, uint64_t unitmask) +void address_map_entry::set_handler(read64_delegate func, uint64_t unitmask) { assert(!func.isnull()); assert(unitmask_is_appropriate(64, unitmask, func.name())); @@ -221,7 +221,7 @@ void address_map_entry::internal_set_handler(read64_delegate func, uint64_t unit } -void address_map_entry::internal_set_handler(write64_delegate func, uint64_t unitmask) +void address_map_entry::set_handler(write64_delegate func, uint64_t unitmask) { assert(!func.isnull()); assert(unitmask_is_appropriate(64, unitmask, func.name())); @@ -233,10 +233,10 @@ void address_map_entry::internal_set_handler(write64_delegate func, uint64_t uni } -void address_map_entry::internal_set_handler(read64_delegate rfunc, write64_delegate wfunc, uint64_t unitmask) +void address_map_entry::set_handler(read64_delegate rfunc, write64_delegate wfunc, uint64_t unitmask) { - internal_set_handler(rfunc, unitmask); - internal_set_handler(wfunc, unitmask); + set_handler(rfunc, unitmask); + set_handler(wfunc, unitmask); } @@ -286,52 +286,6 @@ bool address_map_entry::unitmask_is_appropriate(uint8_t width, uint64_t unitmask } - -//************************************************************************** -// WIDTH-SPECIFIC ADDRESS MAP ENTRY CONSTRUCTORS -//************************************************************************** - -//------------------------------------------------- -// address_map_entry8 - constructor -//------------------------------------------------- - -address_map_entry8::address_map_entry8(device_t &device, address_map &map, offs_t start, offs_t end) - : address_map_entry(device, map, start, end) -{ -} - - -//------------------------------------------------- -// address_map_entry16 - constructor -//------------------------------------------------- - -address_map_entry16::address_map_entry16(device_t &device, address_map &map, offs_t start, offs_t end) - : address_map_entry(device, map, start, end) -{ -} - - -//------------------------------------------------- -// address_map_entry32 - constructor -//------------------------------------------------- - -address_map_entry32::address_map_entry32(device_t &device, address_map &map, offs_t start, offs_t end) - : address_map_entry(device, map, start, end) -{ -} - - -//------------------------------------------------- -// address_map_entry64 - constructor -//------------------------------------------------- - -address_map_entry64::address_map_entry64(device_t &device, address_map &map, offs_t start, offs_t end) - : address_map_entry(device, map, start, end) -{ -} - - - //************************************************************************** // ADDRESS MAP //************************************************************************** @@ -414,16 +368,16 @@ address_map::address_map(const address_space &space, offs_t start, offs_t end, i address_map_entry *e; switch(m_databits) { case 8: - e = add(start, end, (address_map_entry8 *)nullptr); + e = add(start, end); break; case 16: - e = add(start, end, (address_map_entry16 *)nullptr); + e = add(start, end); break; case 32: - e = add(start, end, (address_map_entry32 *)nullptr); + e = add(start, end); break; case 64: - e = add(start, end, (address_map_entry64 *)nullptr); + e = add(start, end); break; default: throw emu_fatalerror("Trying to dynamically map a device on a space with a corrupt databits width"); @@ -472,36 +426,12 @@ void address_map::set_global_mask(offs_t mask) //------------------------------------------------- -// add - add a new entry of the appropriate type +// add - add a new entry //------------------------------------------------- -address_map_entry8 *address_map::add(offs_t start, offs_t end, address_map_entry8 *ptr) -{ - ptr = global_alloc(address_map_entry8(*m_device, *this, start, end)); - m_entrylist.append(*ptr); - return ptr; -} - - -address_map_entry16 *address_map::add(offs_t start, offs_t end, address_map_entry16 *ptr) -{ - ptr = global_alloc(address_map_entry16(*m_device, *this, start, end)); - m_entrylist.append(*ptr); - return ptr; -} - - -address_map_entry32 *address_map::add(offs_t start, offs_t end, address_map_entry32 *ptr) -{ - ptr = global_alloc(address_map_entry32(*m_device, *this, start, end)); - m_entrylist.append(*ptr); - return ptr; -} - - -address_map_entry64 *address_map::add(offs_t start, offs_t end, address_map_entry64 *ptr) +address_map_entry *address_map::add(offs_t start, offs_t end) { - ptr = global_alloc(address_map_entry64(*m_device, *this, start, end)); + address_map_entry *ptr = global_alloc(address_map_entry(*m_device, *this, start, end)); m_entrylist.append(*ptr); return ptr; } |