mirror of
https://github.com/holub/mame
synced 2025-07-04 17:38:08 +03:00
emuview: Fix init_handlers in specific cases, fix mapping ioports in views
This commit is contained in:
parent
69fba76a18
commit
d0ffaeeeec
@ -570,7 +570,7 @@ template<int HighBits, int Width, int AddrShift, endianness_t Endian> void handl
|
|||||||
u32 dt = lowbits - LowBits;
|
u32 dt = lowbits - LowBits;
|
||||||
u32 ne = 1 << dt;
|
u32 ne = 1 << dt;
|
||||||
for(offs_t entry = start_entry; entry <= end_entry; entry++) {
|
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;
|
u32 e0 = (entry << dt) & BITMASK;
|
||||||
for(offs_t e = 0; e != ne; e++) {
|
for(offs_t e = 0; e != ne; e++) {
|
||||||
m_u_dispatch[e0 | e] = dispatch[entry];
|
m_u_dispatch[e0 | e] = dispatch[entry];
|
||||||
|
@ -576,7 +576,7 @@ template<int HighBits, int Width, int AddrShift, endianness_t Endian> void handl
|
|||||||
u32 dt = lowbits - LowBits;
|
u32 dt = lowbits - LowBits;
|
||||||
u32 ne = 1 << dt;
|
u32 ne = 1 << dt;
|
||||||
for(offs_t entry = start_entry; entry <= end_entry; entry++) {
|
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;
|
u32 e0 = (entry << dt) & BITMASK;
|
||||||
for(offs_t e = 0; e != ne; e++) {
|
for(offs_t e = 0; e != ne; e++) {
|
||||||
m_u_dispatch[e0 | e] = dispatch[entry];
|
m_u_dispatch[e0 | e] = dispatch[entry];
|
||||||
|
@ -974,7 +974,7 @@ template<int Level, int Width, int AddrShift, endianness_t Endian> void memory_v
|
|||||||
if (rtag != "")
|
if (rtag != "")
|
||||||
{
|
{
|
||||||
// find the port
|
// 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)
|
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());
|
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 != "")
|
if (wtag != "")
|
||||||
{
|
{
|
||||||
// find the port
|
// 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)
|
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());
|
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());
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user