diff options
Diffstat (limited to 'src/devices/video/ppu2c0x.cpp')
-rw-r--r-- | src/devices/video/ppu2c0x.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/devices/video/ppu2c0x.cpp b/src/devices/video/ppu2c0x.cpp index f0b20856c57..4f2c6c587e7 100644 --- a/src/devices/video/ppu2c0x.cpp +++ b/src/devices/video/ppu2c0x.cpp @@ -117,10 +117,10 @@ device_memory_interface::space_config_vector ppu2c0x_device::memory_space_config void ppu2c0x_device::device_config_complete() { /* reset the callbacks */ - m_latch = latch_delegate(); - m_scanline_callback_proc = scanline_delegate(); - m_hblank_callback_proc = hblank_delegate(); - m_vidaccess_callback_proc = vidaccess_delegate(); + m_scanline_callback_proc.set(nullptr); + m_hblank_callback_proc.set(nullptr); + m_vidaccess_callback_proc.set(nullptr); + m_latch.set(nullptr); } ppu2c0x_device::ppu2c0x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) @@ -131,6 +131,9 @@ ppu2c0x_device::ppu2c0x_device(const machine_config &mconfig, device_type type, , m_space_config("videoram", ENDIANNESS_LITTLE, 8, 17, 0, address_map_constructor(FUNC(ppu2c0x_device::ppu2c0x), this)) , m_cpu(*this, finder_base::DUMMY_TAG) , m_scanline(0) // reset the scanline count + , m_scanline_callback_proc(*this) + , m_hblank_callback_proc(*this) + , m_vidaccess_callback_proc(*this) , m_int_callback(*this) , m_refresh_data(0) , m_refresh_latch(0) @@ -146,6 +149,7 @@ ppu2c0x_device::ppu2c0x_device(const machine_config &mconfig, device_type type, , m_scan_scale(1) // set the scan scale (this is for dual monitor vertical setups) , m_tilecount(0) , m_draw_phase(0) + , m_latch(*this) , m_use_sprite_write_limitation(true) { for (auto & elem : m_regs) |