diff options
Diffstat (limited to 'src/emu/memory.h')
-rw-r--r-- | src/emu/memory.h | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/emu/memory.h b/src/emu/memory.h index 3b46ac33449..0b2b493a27d 100644 --- a/src/emu/memory.h +++ b/src/emu/memory.h @@ -239,10 +239,12 @@ public: INT8 m_addrbus_shift; UINT8 m_logaddr_width; UINT8 m_page_shift; + bool m_is_octal; // to determine if messages/debugger will show octal or hex + address_map_constructor m_internal_map; address_map_constructor m_default_map; - address_map_delegate m_internal_map_delegate; - address_map_delegate m_default_map_delegate; + address_map_delegate m_internal_map_delegate; + address_map_delegate m_default_map_delegate; }; @@ -283,6 +285,7 @@ public: int addr_width() const { return m_config.addr_width(); } endianness_t endianness() const { return m_config.endianness(); } UINT64 unmap() const { return m_unmap; } + bool is_octal() const { return m_config.m_is_octal; } offs_t addrmask() const { return m_addrmask; } offs_t bytemask() const { return m_bytemask; } @@ -866,6 +869,12 @@ private: #define DWORD_XOR_LE(a) ((a) ^ NATIVE_ENDIAN_VALUE_LE_BE(0,4)) +// helpers for checking address alignment +#define WORD_ALIGNED(a) (((a) & 1) == 0) +#define DWORD_ALIGNED(a) (((a) & 3) == 0) +#define QWORD_ALIGNED(a) (((a) & 7) == 0) + + //************************************************************************** // INLINE FUNCTIONS |