emuview: Fix init_handlers in specific cases, fix mapping ioports in views

This commit is contained in:
Olivier Galibert 2021-02-27 22:06:09 +01:00
parent 69fba76a18
commit d0ffaeeeec
3 changed files with 4 additions and 4 deletions

View File

@ -570,7 +570,7 @@ template<int HighBits, int Width, int AddrShift, endianness_t Endian> void handl
u32 dt = lowbits - LowBits;
u32 ne = 1 << dt;
for(offs_t entry = start_entry; entry <= end_entry; entry++) {
m_u_dispatch[entry]->ref(ne);
dispatch[entry]->ref(ne);
u32 e0 = (entry << dt) & BITMASK;
for(offs_t e = 0; e != ne; e++) {
m_u_dispatch[e0 | e] = dispatch[entry];

View File

@ -576,7 +576,7 @@ template<int HighBits, int Width, int AddrShift, endianness_t Endian> void handl
u32 dt = lowbits - LowBits;
u32 ne = 1 << dt;
for(offs_t entry = start_entry; entry <= end_entry; entry++) {
m_u_dispatch[entry]->ref(ne);
dispatch[entry]->ref(ne);
u32 e0 = (entry << dt) & BITMASK;
for(offs_t e = 0; e != ne; e++) {
m_u_dispatch[e0 | e] = dispatch[entry];

View File

@ -974,7 +974,7 @@ template<int Level, int Width, int AddrShift, endianness_t Endian> void memory_v
if (rtag != "")
{
// find the port
ioport_port *port = m_view.m_device.owner()->ioport(rtag);
ioport_port *port = m_view.m_device.ioport(rtag);
if (port == nullptr)
throw emu_fatalerror("Attempted to map non-existent port '%s' for read in space %s of device '%s'\n", rtag, m_view.m_name, m_view.m_device.tag());
@ -986,7 +986,7 @@ template<int Level, int Width, int AddrShift, endianness_t Endian> void memory_v
if (wtag != "")
{
// find the port
ioport_port *port = m_view.m_device.owner()->ioport(wtag);
ioport_port *port = m_view.m_device.ioport(wtag);
if (port == nullptr)
fatalerror("Attempted to map non-existent port '%s' for write in space %s of device '%s'\n", wtag, m_view.m_name, m_view.m_device.tag());