summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/emumem_hem.cpp
diff options
context:
space:
mode:
author Olivier Galibert <galibert@pobox.com>2022-08-04 11:26:42 -0400
committer Olivier Galibert <galibert@pobox.com>2022-08-04 11:37:37 -0400
commit7c98beb5f4dbf5a4ba267c8a7ce7e3da65517842 (patch)
treeb9c4d57bc84b8647bf3cf859563b779f4c9c4b87 /src/emu/emumem_hem.cpp
parent744493d3ac98a4b312b929f59dc9db3524369a31 (diff)
emumem: Add accessors lookup_{read,write]_*_flags to lookup flags without actually doing the access
Diffstat (limited to 'src/emu/emumem_hem.cpp')
-rw-r--r--src/emu/emumem_hem.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/emu/emumem_hem.cpp b/src/emu/emumem_hem.cpp
index b835538c3dd..57a02d254f6 100644
--- a/src/emu/emumem_hem.cpp
+++ b/src/emu/emumem_hem.cpp
@@ -15,6 +15,11 @@ template<int Width, int AddrShift> std::pair<typename emu::detail::handler_entry
return std::pair<uX, u16>(m_base[((offset - this->m_address_base) & this->m_address_mask) >> (Width + AddrShift)], this->m_flags);
}
+template<int Width, int AddrShift> u16 handler_entry_read_memory<Width, AddrShift>::lookup_flags(offs_t offset, uX mem_mask) const
+{
+ return this->m_flags;
+}
+
template<int Width, int AddrShift> void *handler_entry_read_memory<Width, AddrShift>::get_ptr(offs_t offset) const
{
return m_base + (((offset - this->m_address_base) & this->m_address_mask) >> (Width + AddrShift));
@@ -39,6 +44,11 @@ template<int Width, int AddrShift> u16 handler_entry_write_memory<Width, AddrShi
return this->m_flags;
}
+template<int Width, int AddrShift> u16 handler_entry_write_memory<Width, AddrShift>::lookup_flags(offs_t offset, uX mem_mask) const
+{
+ return this->m_flags;
+}
+
template<> void handler_entry_write_memory<0, 0>::write(offs_t offset, u8 data, u8 mem_mask) const
{
m_base[(offset - this->m_address_base) & this->m_address_mask] = data;
@@ -74,6 +84,11 @@ template<int Width, int AddrShift> std::pair<typename emu::detail::handler_entry
return std::pair<uX, u16>(static_cast<uX *>(m_bank.base())[((offset - this->m_address_base) & this->m_address_mask) >> (Width + AddrShift)], this->m_flags);
}
+template<int Width, int AddrShift> u16 handler_entry_read_memory_bank<Width, AddrShift>::lookup_flags(offs_t offset, uX mem_mask) const
+{
+ return this->m_flags;
+}
+
template<int Width, int AddrShift> void *handler_entry_read_memory_bank<Width, AddrShift>::get_ptr(offs_t offset) const
{
return static_cast<uX *>(m_bank.base()) + (((offset - this->m_address_base) & this->m_address_mask) >> (Width + AddrShift));
@@ -98,6 +113,11 @@ template<int Width, int AddrShift> u16 handler_entry_write_memory_bank<Width, Ad
return this->m_flags;
}
+template<int Width, int AddrShift> u16 handler_entry_write_memory_bank<Width, AddrShift>::lookup_flags(offs_t offset, uX mem_mask) const
+{
+ return this->m_flags;
+}
+
template<> void handler_entry_write_memory_bank<0, 0>::write(offs_t offset, u8 data, u8 mem_mask) const
{
static_cast<uX *>(m_bank.base())[(offset - this->m_address_base) & this->m_address_mask] = data;