summaryrefslogtreecommitdiffstatshomepage
path: root/src/osd/modules/render/drawd3d.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/osd/modules/render/drawd3d.cpp')
-rw-r--r--src/osd/modules/render/drawd3d.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/osd/modules/render/drawd3d.cpp b/src/osd/modules/render/drawd3d.cpp
index 302dfaf49b1..5b359458f76 100644
--- a/src/osd/modules/render/drawd3d.cpp
+++ b/src/osd/modules/render/drawd3d.cpp
@@ -453,7 +453,8 @@ void d3d_texture_manager::create_resources()
texture.height = m_default_bitmap.height();
texture.palette = nullptr;
texture.seqid = 0;
- texture.osddata = 0;
+ texture.unique_id = ~0ULL;
+ texture.old_id = ~0ULL;
// now create it
auto tex = std::make_unique<texture_info>(this, &texture, win->prescale(), PRIMFLAG_BLENDMODE(BLENDMODE_ALPHA) | PRIMFLAG_TEXFORMAT(TEXFORMAT_ARGB32));
@@ -484,10 +485,10 @@ texture_info *d3d_texture_manager::find_texinfo(const render_texinfo *texinfo, u
// find a match
for (auto it = m_texture_list.begin(); it != m_texture_list.end(); it++)
{
- uint32_t test_screen = (uint32_t)(*it)->get_texinfo().osddata >> 1;
- uint32_t test_page = (uint32_t)(*it)->get_texinfo().osddata & 1;
- uint32_t prim_screen = (uint32_t)texinfo->osddata >> 1;
- uint32_t prim_page = (uint32_t)texinfo->osddata & 1;
+ uint32_t test_screen = (uint32_t)((*it)->get_texinfo().unique_id >> 57);
+ uint32_t test_page = (uint32_t)((*it)->get_texinfo().unique_id >> 56) & 1;
+ uint32_t prim_screen = (uint32_t)(texinfo->unique_id >> 57);
+ uint32_t prim_page = (uint32_t)(texinfo->unique_id >> 56) & 1;
if (test_screen != prim_screen || test_page != prim_page)
continue;