summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/emumem_hedr.ipp
diff options
context:
space:
mode:
author Olivier Galibert <galibert@pobox.com>2021-11-28 17:49:58 +0100
committer Olivier Galibert <galibert@pobox.com>2021-11-28 17:51:46 +0100
commit8027428e4d7ef0e1ebd9cb56dc058ef5c1b4257b (patch)
tree8f87ad1fc10a66c5070cac953cf0f720afa6dfe8 /src/emu/emumem_hedr.ipp
parentde1b03e4cd07d77c2946e5966630d0620180e9b0 (diff)
Fun with flags: Allows handlers to have user-defined flags set on
them, which can them be picked up on access with the {read,write}_*_flags variants of the accessors. Example use with the i960 and its burstable rom/ram.
Diffstat (limited to 'src/emu/emumem_hedr.ipp')
-rw-r--r--src/emu/emumem_hedr.ipp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/emu/emumem_hedr.ipp b/src/emu/emumem_hedr.ipp
index 9e9967585aa..3a192e33750 100644
--- a/src/emu/emumem_hedr.ipp
+++ b/src/emu/emumem_hedr.ipp
@@ -132,6 +132,11 @@ template<int HighBits, int Width, int AddrShift> typename emu::detail::handler_e
return dispatch_read<Level, Width, AddrShift>(HIGHMASK, offset, mem_mask, m_a_dispatch);
}
+template<int HighBits, int Width, int AddrShift> std::pair<typename emu::detail::handler_entry_size<Width>::uX, u16> handler_entry_read_dispatch<HighBits, Width, AddrShift>::read_flags(offs_t offset, uX mem_mask) const
+{
+ return dispatch_read_flags<Level, Width, AddrShift>(HIGHMASK, offset, mem_mask, m_a_dispatch);
+}
+
template<int HighBits, int Width, int AddrShift> void *handler_entry_read_dispatch<HighBits, Width, AddrShift>::get_ptr(offs_t offset) const
{
return m_a_dispatch[(offset & HIGHMASK) >> LowBits]->get_ptr(offset);