Updated to use ACCESSING macros like memconv.h.

This commit is contained in:
Aaron Giles 2008-04-24 05:53:47 +00:00
parent f7da2517e9
commit 14c852c8e9

View File

@ -88,9 +88,9 @@
INLINE UINT16 read16be_with_read8_device_handler(read8_device_func handler, const device_config *device, offs_t offset, UINT16 mem_mask)
{
UINT16 result = 0;
if ((mem_mask & 0xff00) != 0)
if (ACCESSING_BITS_8_15)
result |= ((UINT16)(*handler)(device, offset * 2 + 0)) << 8;
if ((mem_mask & 0x00ff) != 0)
if (ACCESSING_BITS_0_7)
result |= ((UINT16)(*handler)(device, offset * 2 + 1)) << 0;
return result;
}
@ -98,9 +98,9 @@ INLINE UINT16 read16be_with_read8_device_handler(read8_device_func handler, cons
INLINE void write16be_with_write8_device_handler(write8_device_func handler, const device_config *device, offs_t offset, UINT16 data, UINT16 mem_mask)
{
if ((mem_mask & 0xff00) != 0)
if (ACCESSING_BITS_8_15)
(*handler)(device, offset * 2 + 0, data >> 8);
if ((mem_mask & 0x00ff) != 0)
if (ACCESSING_BITS_0_7)
(*handler)(device, offset * 2 + 1, data >> 0);
}
@ -114,9 +114,9 @@ INLINE void write16be_with_write8_device_handler(write8_device_func handler, con
INLINE UINT16 read16le_with_read8_device_handler(read8_device_func handler, const device_config *device, offs_t offset, UINT16 mem_mask)
{
UINT16 result = 0;
if ((mem_mask & 0x00ff) != 0)
if (ACCESSING_BITS_0_7)
result |= ((UINT16) (*handler)(device, offset * 2 + 0)) << 0;
if ((mem_mask & 0xff00) != 0)
if (ACCESSING_BITS_8_15)
result |= ((UINT16) (*handler)(device, offset * 2 + 1)) << 8;
return result;
}
@ -124,9 +124,9 @@ INLINE UINT16 read16le_with_read8_device_handler(read8_device_func handler, cons
INLINE void write16le_with_write8_device_handler(write8_device_func handler, const device_config *device, offs_t offset, UINT16 data, UINT16 mem_mask)
{
if ((mem_mask & 0x00ff) != 0)
if (ACCESSING_BITS_0_7)
(*handler)(device, offset * 2 + 0, data >> 0);
if ((mem_mask & 0xff00) != 0)
if (ACCESSING_BITS_8_15)
(*handler)(device, offset * 2 + 1, data >> 8);
}
@ -140,9 +140,9 @@ INLINE void write16le_with_write8_device_handler(write8_device_func handler, con
INLINE UINT32 read32be_with_read8_device_handler(read8_device_func handler, const device_config *device, offs_t offset, UINT32 mem_mask)
{
UINT32 result = 0;
if ((mem_mask & 0xffff0000) != 0)
if (ACCESSING_BITS_16_31)
result |= read16be_with_read8_device_handler(handler, device, offset * 2 + 0, mem_mask >> 16) << 16;
if ((mem_mask & 0x0000ffff) != 0)
if (ACCESSING_BITS_0_15)
result |= read16be_with_read8_device_handler(handler, device, offset * 2 + 1, mem_mask) << 0;
return result;
}
@ -150,9 +150,9 @@ INLINE UINT32 read32be_with_read8_device_handler(read8_device_func handler, cons
INLINE void write32be_with_write8_device_handler(write8_device_func handler, const device_config *device, offs_t offset, UINT32 data, UINT32 mem_mask)
{
if ((mem_mask & 0xffff0000) != 0)
if (ACCESSING_BITS_16_31)
write16be_with_write8_device_handler(handler, device, offset * 2 + 0, data >> 16, mem_mask >> 16);
if ((mem_mask & 0x0000ffff) != 0)
if (ACCESSING_BITS_0_15)
write16be_with_write8_device_handler(handler, device, offset * 2 + 1, data, mem_mask);
}
@ -166,9 +166,9 @@ INLINE void write32be_with_write8_device_handler(write8_device_func handler, con
INLINE UINT32 read32le_with_read8_device_handler(read8_device_func handler, const device_config *device, offs_t offset, UINT32 mem_mask)
{
UINT32 result = 0;
if ((mem_mask & 0x0000ffff) != 0)
if (ACCESSING_BITS_0_15)
result |= read16le_with_read8_device_handler(handler, device, offset * 2 + 0, mem_mask) << 0;
if ((mem_mask & 0xffff0000) != 0)
if (ACCESSING_BITS_16_31)
result |= read16le_with_read8_device_handler(handler, device, offset * 2 + 1, mem_mask >> 16) << 16;
return result;
}
@ -176,9 +176,9 @@ INLINE UINT32 read32le_with_read8_device_handler(read8_device_func handler, cons
INLINE void write32le_with_write8_device_handler(write8_device_func handler, const device_config *device, offs_t offset, UINT32 data, UINT32 mem_mask)
{
if ((mem_mask & 0x0000ffff) != 0)
if (ACCESSING_BITS_0_15)
write16le_with_write8_device_handler(handler, device, offset * 2 + 0, data, mem_mask);
if ((mem_mask & 0xffff0000) != 0)
if (ACCESSING_BITS_16_31)
write16le_with_write8_device_handler(handler, device, offset * 2 + 1, data >> 16, mem_mask >> 16);
}
@ -192,9 +192,9 @@ INLINE void write32le_with_write8_device_handler(write8_device_func handler, con
INLINE UINT32 read32be_with_16be_device_handler(read16_device_func handler, const device_config *device, offs_t offset, UINT32 mem_mask)
{
UINT32 result = 0;
if ((mem_mask & 0xffff0000) != 0)
if (ACCESSING_BITS_16_31)
result |= (*handler)(device, offset * 2 + 0, mem_mask >> 16) << 16;
if ((mem_mask & 0x0000ffff) != 0)
if (ACCESSING_BITS_0_15)
result |= (*handler)(device, offset * 2 + 1, mem_mask) << 0;
return result;
}
@ -202,9 +202,9 @@ INLINE UINT32 read32be_with_16be_device_handler(read16_device_func handler, cons
INLINE void write32be_with_16be_device_handler(write16_device_func handler, const device_config *device, offs_t offset, UINT32 data, UINT32 mem_mask)
{
if ((mem_mask & 0xffff0000) != 0)
if (ACCESSING_BITS_16_31)
(*handler)(device, offset * 2 + 0, data >> 16, mem_mask >> 16);
if ((mem_mask & 0x0000ffff) != 0)
if (ACCESSING_BITS_0_15)
(*handler)(device, offset * 2 + 1, data, mem_mask);
}
@ -218,9 +218,9 @@ INLINE void write32be_with_16be_device_handler(write16_device_func handler, cons
INLINE UINT32 read32le_with_16le_device_handler(read16_device_func handler, const device_config *device, offs_t offset, UINT32 mem_mask)
{
UINT32 result = 0;
if ((mem_mask & 0x0000ffff) != 0)
if (ACCESSING_BITS_0_15)
result |= (*handler)(device, offset * 2 + 0, mem_mask) << 0;
if ((mem_mask & 0xffff0000) != 0)
if (ACCESSING_BITS_16_31)
result |= (*handler)(device, offset * 2 + 1, mem_mask >> 16) << 16;
return result;
}
@ -228,9 +228,9 @@ INLINE UINT32 read32le_with_16le_device_handler(read16_device_func handler, cons
INLINE void write32le_with_16le_device_handler(write16_device_func handler, const device_config *device, offs_t offset, UINT32 data, UINT32 mem_mask)
{
if ((mem_mask & 0x0000ffff) != 0)
if (ACCESSING_BITS_0_15)
(*handler)(device, offset * 2 + 0, data, mem_mask);
if ((mem_mask & 0xffff0000) != 0)
if (ACCESSING_BITS_16_31)
(*handler)(device, offset * 2 + 1, data >> 16, mem_mask >> 16);
}
@ -290,9 +290,9 @@ INLINE void write32le_with_16be_device_handler(write16_device_func handler, cons
INLINE UINT64 read64be_with_read8_device_handler(read8_device_func handler, const device_config *device, offs_t offset, UINT64 mem_mask)
{
UINT64 result = 0;
if ((mem_mask & U64(0xffffffff00000000)) != 0)
if (ACCESSING_BITS_32_63)
result |= (UINT64)read32be_with_read8_device_handler(handler, device, offset * 2 + 0, mem_mask >> 32) << 32;
if ((mem_mask & U64(0x00000000ffffffff)) != 0)
if (ACCESSING_BITS_0_31)
result |= (UINT64)read32be_with_read8_device_handler(handler, device, offset * 2 + 1, mem_mask) << 0;
return result;
}
@ -300,9 +300,9 @@ INLINE UINT64 read64be_with_read8_device_handler(read8_device_func handler, cons
INLINE void write64be_with_write8_device_handler(write8_device_func handler, const device_config *device, offs_t offset, UINT64 data, UINT64 mem_mask)
{
if ((mem_mask & U64(0xffffffff00000000)) != 0)
if (ACCESSING_BITS_32_63)
write32be_with_write8_device_handler(handler, device, offset * 2 + 0, data >> 32, mem_mask >> 32);
if ((mem_mask & U64(0x00000000ffffffff)) != 0)
if (ACCESSING_BITS_0_31)
write32be_with_write8_device_handler(handler, device, offset * 2 + 1, data, mem_mask);
}
@ -316,9 +316,9 @@ INLINE void write64be_with_write8_device_handler(write8_device_func handler, con
INLINE UINT64 read64le_with_read8_device_handler(read8_device_func handler, const device_config *device, offs_t offset, UINT64 mem_mask)
{
UINT64 result = 0;
if ((mem_mask & U64(0x00000000ffffffff)) != 0)
if (ACCESSING_BITS_0_31)
result |= (UINT64)read32le_with_read8_device_handler(handler, device, offset * 2 + 0, mem_mask >> 0) << 0;
if ((mem_mask & U64(0xffffffff00000000)) != 0)
if (ACCESSING_BITS_32_63)
result |= (UINT64)read32le_with_read8_device_handler(handler, device, offset * 2 + 1, mem_mask >> 32) << 32;
return result;
}
@ -326,9 +326,9 @@ INLINE UINT64 read64le_with_read8_device_handler(read8_device_func handler, cons
INLINE void write64le_with_write8_device_handler(write8_device_func handler, const device_config *device, offs_t offset, UINT64 data, UINT64 mem_mask)
{
if ((mem_mask & U64(0x00000000ffffffff)) != 0)
if (ACCESSING_BITS_0_31)
write32le_with_write8_device_handler(handler, device, offset * 2 + 0, data >> 0, mem_mask >> 0);
if ((mem_mask & U64(0xffffffff00000000)) != 0)
if (ACCESSING_BITS_32_63)
write32le_with_write8_device_handler(handler, device, offset * 2 + 1, data >> 32, mem_mask >> 32);
}
@ -342,9 +342,9 @@ INLINE void write64le_with_write8_device_handler(write8_device_func handler, con
INLINE UINT32 read64be_with_16be_device_handler(read16_device_func handler, const device_config *device, offs_t offset, UINT64 mem_mask)
{
UINT64 result = 0;
if ((mem_mask & U64(0xffffffff00000000)) != 0)
if (ACCESSING_BITS_32_63)
result |= (UINT64)read32be_with_16be_device_handler(handler, device, offset * 2 + 0, mem_mask >> 32) << 32;
if ((mem_mask & U64(0x00000000ffffffff)) != 0)
if (ACCESSING_BITS_0_31)
result |= (UINT64)read32be_with_16be_device_handler(handler, device, offset * 2 + 1, mem_mask >> 0) << 0;
return result;
}
@ -352,9 +352,9 @@ INLINE UINT32 read64be_with_16be_device_handler(read16_device_func handler, cons
INLINE void write64be_with_16be_device_handler(write16_device_func handler, const device_config *device, offs_t offset, UINT64 data, UINT64 mem_mask)
{
if ((mem_mask & U64(0xffffffff00000000)) != 0)
if (ACCESSING_BITS_32_63)
write32be_with_16be_device_handler(handler, device, offset * 2 + 0, data >> 32, mem_mask >> 32);
if ((mem_mask & U64(0x00000000ffffffff)) != 0)
if (ACCESSING_BITS_0_31)
write32be_with_16be_device_handler(handler, device, offset * 2 + 1, data >> 0, mem_mask >> 0);
}
@ -368,9 +368,9 @@ INLINE void write64be_with_16be_device_handler(write16_device_func handler, cons
INLINE UINT32 read64le_with_16le_device_handler(read16_device_func handler, const device_config *device, offs_t offset, UINT64 mem_mask)
{
UINT64 result = 0;
if ((mem_mask & U64(0x00000000ffffffff)) != 0)
if (ACCESSING_BITS_0_31)
result |= (UINT64)read32le_with_16le_device_handler(handler, device, offset * 2 + 0, mem_mask >> 0) << 0;
if ((mem_mask & U64(0xffffffff00000000)) != 0)
if (ACCESSING_BITS_32_63)
result |= (UINT64)read32le_with_16le_device_handler(handler, device, offset * 2 + 1, mem_mask >> 32) << 32;
return result;
}
@ -378,9 +378,9 @@ INLINE UINT32 read64le_with_16le_device_handler(read16_device_func handler, cons
INLINE void write64le_with_16le_device_handler(write16_device_func handler, const device_config *device, offs_t offset, UINT64 data, UINT64 mem_mask)
{
if ((mem_mask & U64(0x00000000ffffffff)) != 0)
if (ACCESSING_BITS_0_31)
write32le_with_16le_device_handler(handler, device, offset * 2 + 0, data >> 0, mem_mask >> 0);
if ((mem_mask & U64(0xffffffff00000000)) != 0)
if (ACCESSING_BITS_32_63)
write32le_with_16le_device_handler(handler, device, offset * 2 + 1, data >> 32, mem_mask >> 32);
}
@ -394,9 +394,9 @@ INLINE void write64le_with_16le_device_handler(write16_device_func handler, cons
INLINE UINT32 read64be_with_16le_device_handler(read16_device_func handler, const device_config *device, offs_t offset, UINT64 mem_mask)
{
UINT64 result = 0;
if ((mem_mask & U64(0xffffffff00000000)) != 0)
if (ACCESSING_BITS_32_63)
result |= (UINT64)read32be_with_16le_device_handler(handler, device, offset * 2 + 0, mem_mask >> 32) << 32;
if ((mem_mask & U64(0x00000000ffffffff)) != 0)
if (ACCESSING_BITS_0_31)
result |= (UINT64)read32be_with_16le_device_handler(handler, device, offset * 2 + 1, mem_mask >> 0) << 0;
return result;
}
@ -404,9 +404,9 @@ INLINE UINT32 read64be_with_16le_device_handler(read16_device_func handler, cons
INLINE void write64be_with_16le_device_handler(write16_device_func handler, const device_config *device, offs_t offset, UINT64 data, UINT64 mem_mask)
{
if ((mem_mask & U64(0xffffffff00000000)) != 0)
if (ACCESSING_BITS_32_63)
write32be_with_16le_device_handler(handler, device, offset * 2 + 0, data >> 32, mem_mask >> 32);
if ((mem_mask & U64(0x00000000ffffffff)) != 0)
if (ACCESSING_BITS_0_31)
write32be_with_16le_device_handler(handler, device, offset * 2 + 1, data >> 0, mem_mask >> 0);
}
@ -420,9 +420,9 @@ INLINE void write64be_with_16le_device_handler(write16_device_func handler, cons
INLINE UINT32 read64le_with_16be_device_handler(read16_device_func handler, const device_config *device, offs_t offset, UINT64 mem_mask)
{
UINT64 result = 0;
if ((mem_mask & U64(0x00000000ffffffff)) != 0)
if (ACCESSING_BITS_0_31)
result |= (UINT64)read32le_with_16be_device_handler(handler, device, offset * 2 + 0, mem_mask >> 0) << 0;
if ((mem_mask & U64(0xffffffff00000000)) != 0)
if (ACCESSING_BITS_32_63)
result |= (UINT64)read32le_with_16be_device_handler(handler, device, offset * 2 + 1, mem_mask >> 32) << 32;
return result;
}
@ -430,9 +430,9 @@ INLINE UINT32 read64le_with_16be_device_handler(read16_device_func handler, cons
INLINE void write64le_with_16be_device_handler(write16_device_func handler, const device_config *device, offs_t offset, UINT64 data, UINT64 mem_mask)
{
if ((mem_mask & U64(0x00000000ffffffff)) != 0)
if (ACCESSING_BITS_0_31)
write32le_with_16be_device_handler(handler, device, offset * 2 + 0, data >> 0, mem_mask >> 0);
if ((mem_mask & U64(0xffffffff00000000)) != 0)
if (ACCESSING_BITS_32_63)
write32le_with_16be_device_handler(handler, device, offset * 2 + 1, data >> 32, mem_mask >> 32);
}
@ -446,9 +446,9 @@ INLINE void write64le_with_16be_device_handler(write16_device_func handler, cons
INLINE UINT64 read64be_with_32be_device_handler(read32_device_func handler, const device_config *device, offs_t offset, UINT64 mem_mask)
{
UINT64 result = 0;
if ((mem_mask & U64(0xffffffff00000000)) != 0)
if (ACCESSING_BITS_32_63)
result |= (UINT64)(*handler)(device, offset * 2 + 0, mem_mask >> 32) << 32;
if ((mem_mask & U64(0x00000000ffffffff)) != 0)
if (ACCESSING_BITS_0_31)
result |= (UINT64)(*handler)(device, offset * 2 + 1, mem_mask >> 0) << 0;
return result;
}
@ -456,9 +456,9 @@ INLINE UINT64 read64be_with_32be_device_handler(read32_device_func handler, cons
INLINE void write64be_with_32be_device_handler(write32_device_func handler, const device_config *device, offs_t offset, UINT64 data, UINT64 mem_mask)
{
if ((mem_mask & U64(0xffffffff00000000)) != 0)
if (ACCESSING_BITS_32_63)
(*handler)(device, offset * 2 + 0, data >> 32, mem_mask >> 32);
if ((mem_mask & U64(0x00000000ffffffff)) != 0)
if (ACCESSING_BITS_0_31)
(*handler)(device, offset * 2 + 1, data >> 0, mem_mask >> 0);
}
@ -472,9 +472,9 @@ INLINE void write64be_with_32be_device_handler(write32_device_func handler, cons
INLINE UINT64 read64le_with_32le_device_handler(read32_device_func handler, const device_config *device, offs_t offset, UINT64 mem_mask)
{
UINT64 result = 0;
if ((mem_mask & U64(0x00000000ffffffff)) != 0)
if (ACCESSING_BITS_0_31)
result |= (UINT64)(*handler)(device, offset * 2 + 0, mem_mask >> 0) << 0;
if ((mem_mask & U64(0xffffffff00000000)) != 0)
if (ACCESSING_BITS_32_63)
result |= (UINT64)(*handler)(device, offset * 2 + 1, mem_mask >> 32) << 32;
return result;
}
@ -482,9 +482,9 @@ INLINE UINT64 read64le_with_32le_device_handler(read32_device_func handler, cons
INLINE void write64le_with_32le_device_handler(write32_device_func handler, const device_config *device, offs_t offset, UINT64 data, UINT64 mem_mask)
{
if ((mem_mask & U64(0x00000000ffffffff)) != 0)
if (ACCESSING_BITS_0_31)
(*handler)(device, offset * 2 + 0, data >> 0, mem_mask >> 0);
if ((mem_mask & U64(0xffffffff00000000)) != 0)
if (ACCESSING_BITS_32_63)
(*handler)(device, offset * 2 + 1, data >> 32, mem_mask >> 32);
}