mirror of
https://github.com/holub/mame
synced 2025-04-23 00:39:36 +03:00
bufsprite: add length() getter
This commit is contained in:
parent
027d23889f
commit
3d4405b395
@ -41,7 +41,7 @@ void buffered_spriteram_device<Type>::device_start()
|
||||
{
|
||||
if (m_spriteram)
|
||||
{
|
||||
m_buffered.resize(m_spriteram.bytes() / sizeof(Type));
|
||||
m_buffered.resize(length());
|
||||
save_item(NAME(m_buffered));
|
||||
}
|
||||
}
|
||||
|
@ -42,13 +42,14 @@ public:
|
||||
Type *live() const { return m_spriteram; }
|
||||
Type *buffer() { return &m_buffered[0]; }
|
||||
uint32_t bytes() const { return m_spriteram.bytes(); }
|
||||
uint32_t length() const { return bytes() / sizeof(Type); }
|
||||
|
||||
// operations
|
||||
Type *copy(uint32_t srcoffset = 0, uint32_t srclength = 0x7fffffff)
|
||||
{
|
||||
assert(m_spriteram != nullptr);
|
||||
if (m_spriteram != nullptr)
|
||||
memcpy(&m_buffered[0], m_spriteram + srcoffset, (std::min<size_t>)(srclength, m_spriteram.bytes() / sizeof(Type) - srcoffset) * sizeof(Type));
|
||||
memcpy(&m_buffered[0], m_spriteram + srcoffset, (std::min<size_t>)(srclength, length() - srcoffset) * sizeof(Type));
|
||||
return &m_buffered[0];
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user