From c3f9ddba8aa5d078ff69f5dcc6755ff6b8743ea0 Mon Sep 17 00:00:00 2001 From: Wilbert Pol Date: Fri, 8 Feb 2013 21:16:01 +0000 Subject: [PATCH] (MESS) pk8020.c: Reduce tagmap lookups (nw) --- src/mess/includes/pk8020.h | 37 ++- src/mess/machine/pk8020.c | 650 ++++++++++++++++++------------------- src/mess/video/pk8020.c | 4 +- 3 files changed, 354 insertions(+), 337 deletions(-) diff --git a/src/mess/includes/pk8020.h b/src/mess/includes/pk8020.h index edee9c1d8d1..918dc1a5bc2 100644 --- a/src/mess/includes/pk8020.h +++ b/src/mess/includes/pk8020.h @@ -14,12 +14,28 @@ #include "imagedev/cassette.h" #include "sound/speaker.h" #include "sound/wave.h" +#include "machine/ram.h" + class pk8020_state : public driver_device { public: pk8020_state(const machine_config &mconfig, device_type type, const char *tag) - : driver_device(mconfig, type, tag) { } + : driver_device(mconfig, type, tag) + , m_maincpu(*this, "maincpu") + , m_ppi8255_1(*this, "ppi8255_1") + , m_ppi8255_2(*this, "ppi8255_2") + , m_ppi8255_3(*this, "ppi8255_3") + , m_rs232(*this, "rs232") + , m_lan(*this, "lan") + , m_ram(*this, RAM_TAG) + , m_wd1793(*this, "wd1793") + , m_pit8253(*this, "pit8253") + , m_pic8259(*this, "pic8259") + , m_speaker(*this, SPEAKER_TAG) + , m_region_maincpu(*this, "maincpu") + , m_region_gfx1(*this, "gfx1") + { } UINT8 m_color; UINT8 m_video_page; @@ -41,6 +57,7 @@ public: DECLARE_WRITE8_MEMBER(gzu_w); DECLARE_READ8_MEMBER(devices_r); DECLARE_WRITE8_MEMBER(devices_w); + virtual void machine_start(); virtual void machine_reset(); virtual void video_start(); virtual void palette_init(); @@ -55,6 +72,24 @@ public: DECLARE_WRITE_LINE_MEMBER(pk8020_pit_out1); DECLARE_WRITE_LINE_MEMBER(pk8020_pic_set_int_line); IRQ_CALLBACK_MEMBER(pk8020_irq_callback); + +protected: + required_device m_maincpu; + required_device m_ppi8255_1; + required_device m_ppi8255_2; + required_device m_ppi8255_3; + required_device m_rs232; + required_device m_lan; + required_device m_ram; + required_device m_wd1793; + required_device m_pit8253; + required_device m_pic8259; + required_device m_speaker; + required_memory_region m_region_maincpu; + required_memory_region m_region_gfx1; + ioport_port *m_io_port[16]; + + void pk8020_set_bank(UINT8 data); }; diff --git a/src/mess/machine/pk8020.c b/src/mess/machine/pk8020.c index f633f312f00..67392a59b3d 100644 --- a/src/mess/machine/pk8020.c +++ b/src/mess/machine/pk8020.c @@ -12,37 +12,30 @@ #include "includes/pk8020.h" #include "cpu/i8085/i8085.h" #include "machine/wd17xx.h" -#include "machine/ram.h" #include "imagedev/flopdrv.h" -static void pk8020_set_bank(running_machine &machine,UINT8 data); - READ8_MEMBER(pk8020_state::keyboard_r) { - static const char *const keynames[] = { - "LINE0", "LINE1", "LINE2", "LINE3", "LINE4", "LINE5", "LINE6", "LINE7", - "LINE8", "LINE9", "LINE10", "LINE11", "LINE12", "LINE13", "LINE14", "LINE15" - }; UINT8 retVal=0x00; UINT8 line = 0; if (offset & 0x100) line=8; - if (offset & 0x0001) retVal|=ioport(keynames[line])->read(); + if (offset & 0x0001) retVal|=m_io_port[line]->read(); line++; - if (offset & 0x0002) retVal|=ioport(keynames[line])->read(); + if (offset & 0x0002) retVal|=m_io_port[line]->read(); line++; - if (offset & 0x0004) retVal|=ioport(keynames[line])->read(); + if (offset & 0x0004) retVal|=m_io_port[line]->read(); line++; - if (offset & 0x0008) retVal|=ioport(keynames[line])->read(); + if (offset & 0x0008) retVal|=m_io_port[line]->read(); line++; - if (offset & 0x0010) retVal|=ioport(keynames[line])->read(); + if (offset & 0x0010) retVal|=m_io_port[line]->read(); line++; - if (offset & 0x0020) retVal|=ioport(keynames[line])->read(); + if (offset & 0x0020) retVal|=m_io_port[line]->read(); line++; - if (offset & 0x0040) retVal|=ioport(keynames[line])->read(); + if (offset & 0x0040) retVal|=m_io_port[line]->read(); line++; - if (offset & 0x0080) retVal|=ioport(keynames[line])->read(); + if (offset & 0x0080) retVal|=m_io_port[line]->read(); line++; return retVal; @@ -50,12 +43,12 @@ READ8_MEMBER(pk8020_state::keyboard_r) READ8_MEMBER(pk8020_state::sysreg_r) { - return machine().device(RAM_TAG)->pointer()[offset]; + return m_ram->pointer()[offset]; } WRITE8_MEMBER(pk8020_state::sysreg_w) { if (BIT(offset,7)==0) { - pk8020_set_bank(machine(),data >> 2); + pk8020_set_bank(data >> 2); } else if (BIT(offset,6)==0) { // Color m_color = data; @@ -73,13 +66,13 @@ WRITE8_MEMBER(pk8020_state::sysreg_w) READ8_MEMBER(pk8020_state::text_r) { - if (m_attr == 3) m_text_attr=machine().device(RAM_TAG)->pointer()[0x40400+offset]; - return machine().device(RAM_TAG)->pointer()[0x40000+offset]; + if (m_attr == 3) m_text_attr=m_ram->pointer()[0x40400+offset]; + return m_ram->pointer()[0x40000+offset]; } WRITE8_MEMBER(pk8020_state::text_w) { - UINT8 *ram = machine().device(RAM_TAG)->pointer(); + UINT8 *ram = m_ram->pointer(); ram[0x40000+offset] = data; switch (m_attr) { case 0: break; @@ -91,7 +84,7 @@ WRITE8_MEMBER(pk8020_state::text_w) READ8_MEMBER(pk8020_state::gzu_r) { - UINT8 *addr = machine().device(RAM_TAG)->pointer() + 0x10000 + (m_video_page_access * 0xC000); + UINT8 *addr = m_ram->pointer() + 0x10000 + (m_video_page_access * 0xC000); UINT8 p0 = addr[offset]; UINT8 p1 = addr[offset + 0x4000]; UINT8 p2 = addr[offset + 0x8000]; @@ -125,7 +118,7 @@ READ8_MEMBER(pk8020_state::gzu_r) WRITE8_MEMBER(pk8020_state::gzu_w) { - UINT8 *addr = machine().device(RAM_TAG)->pointer() + 0x10000 + (m_video_page_access * 0xC000); + UINT8 *addr = m_ram->pointer() + 0x10000 + (m_video_page_access * 0xC000); UINT8 *plane_0 = addr; UINT8 *plane_1 = addr + 0x4000; UINT8 *plane_2 = addr + 0x8000; @@ -153,87 +146,68 @@ WRITE8_MEMBER(pk8020_state::gzu_w) READ8_MEMBER(pk8020_state::devices_r) { - i8255_device *ppi1 = machine().device("ppi8255_1"); - i8255_device *ppi2 = machine().device("ppi8255_2"); - i8255_device *ppi3 = machine().device("ppi8255_3"); - device_t *pit = machine().device("pit8253"); - device_t *pic = machine().device("pic8259"); - i8251_device *rs232 = machine().device("rs232"); - i8251_device *lan = machine().device("lan"); - device_t *fdc = machine().device("wd1793"); - switch(offset & 0x38) { - case 0x00: return pit8253_r(pit,space, offset & 3); - case 0x08: return ppi3->read(space,offset & 3); + case 0x00: return pit8253_r(m_pit8253,space, offset & 3); + case 0x08: return m_ppi8255_3->read(space,offset & 3); case 0x10: switch(offset & 1) { - case 0 : return rs232->data_r(space,0); - case 1 : return rs232->status_r(space,0); + case 0 : return m_rs232->data_r(space,0); + case 1 : return m_rs232->status_r(space,0); } break; case 0x18: switch(offset & 3) { - case 0 : return wd17xx_status_r(fdc,space, 0); - case 1 : return wd17xx_track_r(fdc,space, 0); - case 2 : return wd17xx_sector_r(fdc,space, 0); - case 3 : return wd17xx_data_r(fdc,space, 0); + case 0 : return wd17xx_status_r(m_wd1793,space, 0); + case 1 : return wd17xx_track_r(m_wd1793,space, 0); + case 2 : return wd17xx_sector_r(m_wd1793,space, 0); + case 3 : return wd17xx_data_r(m_wd1793,space, 0); } break; case 0x20: switch(offset & 1) { - case 0 : return lan->data_r(space,0); - case 1 : return lan->status_r(space,0); + case 0 : return m_lan->data_r(space,0); + case 1 : return m_lan->status_r(space,0); } break; - case 0x28: return pic8259_r(pic,space, offset & 1); - case 0x30: return ppi2->read(space,offset & 3); - case 0x38: return ppi1->read(space,offset & 3); + case 0x28: return pic8259_r(m_pic8259,space, offset & 1); + case 0x30: return m_ppi8255_2->read(space,offset & 3); + case 0x38: return m_ppi8255_1->read(space,offset & 3); } return 0xff; } WRITE8_MEMBER(pk8020_state::devices_w) { - i8255_device *ppi1 = machine().device("ppi8255_1"); - i8255_device *ppi2 = machine().device("ppi8255_2"); - i8255_device *ppi3 = machine().device("ppi8255_3"); - device_t *pit = machine().device("pit8253"); - device_t *pic = machine().device("pic8259"); - i8251_device *rs232 = machine().device("rs232"); - i8251_device *lan = machine().device("lan"); - device_t *fdc = machine().device("wd1793"); - switch(offset & 0x38) { - case 0x00: pit8253_w(pit,space, offset & 3,data); break; - case 0x08: ppi3->write(space,offset & 3,data); break; + case 0x00: pit8253_w(m_pit8253,space, offset & 3,data); break; + case 0x08: m_ppi8255_3->write(space,offset & 3,data); break; case 0x10: switch(offset & 1) { - case 0 : rs232->data_w(space,0,data); break; - case 1 : rs232->control_w(space,0,data); break; + case 0 : m_rs232->data_w(space,0,data); break; + case 1 : m_rs232->control_w(space,0,data); break; } break; case 0x18: switch(offset & 3) { - case 0 : wd17xx_command_w(fdc,space, 0,data);break; - case 1 : wd17xx_track_w(fdc,space, 0,data);break; - case 2 : wd17xx_sector_w(fdc,space, 0,data);break; - case 3 : wd17xx_data_w(fdc,space, 0,data);break; + case 0 : wd17xx_command_w(m_wd1793,space, 0,data);break; + case 1 : wd17xx_track_w(m_wd1793,space, 0,data);break; + case 2 : wd17xx_sector_w(m_wd1793,space, 0,data);break; + case 3 : wd17xx_data_w(m_wd1793,space, 0,data);break; } break; case 0x20: switch(offset & 1) { - case 0 : lan->data_w(space,0,data); break; - case 1 : lan->control_w(space,0,data); break; + case 0 : m_lan->data_w(space,0,data); break; + case 1 : m_lan->control_w(space,0,data); break; } break; - case 0x28: pic8259_w(pic,space, offset & 1,data);break; - case 0x30: ppi2->write(space,offset & 3,data); break; - case 0x38: ppi1->write(space,offset & 3,data); break; + case 0x28: pic8259_w(m_pic8259,space, offset & 1,data);break; + case 0x30: m_ppi8255_2->write(space,offset & 3,data); break; + case 0x38: m_ppi8255_1->write(space,offset & 3,data); break; } } -static void pk8020_set_bank(running_machine &machine,UINT8 data) +void pk8020_state::pk8020_set_bank(UINT8 data) { - pk8020_state *state = machine.driver_data(); - address_space &space = machine.device("maincpu")->memory().space(AS_PROGRAM); - UINT8 *mem = state->memregion("maincpu")->base(); - UINT8 *ram = machine.device(RAM_TAG)->pointer(); + address_space &space = m_maincpu->space(AS_PROGRAM); + UINT8 *mem = m_region_maincpu->base(); + UINT8 *ram = m_ram->pointer(); switch(data & 0x1F) { case 0x00 : @@ -241,60 +215,60 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // ROM space.install_read_bank (0x0000, 0x37ff, "bank1"); space.install_write_bank(0x0000, 0x37ff, "bank2"); - state->membank("bank1")->set_base(mem + 0x10000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(mem + 0x10000); + membank("bank2")->set_base(ram + 0x0000); // Keyboard - space.install_read_handler (0x3800, 0x39ff, read8_delegate(FUNC(pk8020_state::keyboard_r),state)); + space.install_read_handler (0x3800, 0x39ff, read8_delegate(FUNC(pk8020_state::keyboard_r),this)); space.install_write_bank(0x3800, 0x39ff, "bank3"); - state->membank("bank3")->set_base(ram + 0x3800); + membank("bank3")->set_base(ram + 0x3800); // System reg - space.install_read_handler (0x3a00, 0x3aff, read8_delegate(FUNC(pk8020_state::sysreg_r),state)); - space.install_write_handler(0x3a00, 0x3aff, write8_delegate(FUNC(pk8020_state::sysreg_w),state)); + space.install_read_handler (0x3a00, 0x3aff, read8_delegate(FUNC(pk8020_state::sysreg_r),this)); + space.install_write_handler(0x3a00, 0x3aff, write8_delegate(FUNC(pk8020_state::sysreg_w),this)); // Devices - space.install_read_handler (0x3b00, 0x3bff, read8_delegate(FUNC(pk8020_state::devices_r),state)); - space.install_write_handler(0x3b00, 0x3bff, write8_delegate(FUNC(pk8020_state::devices_w),state)); + space.install_read_handler (0x3b00, 0x3bff, read8_delegate(FUNC(pk8020_state::devices_r),this)); + space.install_write_handler(0x3b00, 0x3bff, write8_delegate(FUNC(pk8020_state::devices_w),this)); // Text Video Memory - space.install_read_handler (0x3c00, 0x3fff, read8_delegate(FUNC(pk8020_state::text_r),state)); - space.install_write_handler(0x3c00, 0x3fff, write8_delegate(FUNC(pk8020_state::text_w),state)); + space.install_read_handler (0x3c00, 0x3fff, read8_delegate(FUNC(pk8020_state::text_r),this)); + space.install_write_handler(0x3c00, 0x3fff, write8_delegate(FUNC(pk8020_state::text_w),this)); // RAM space.install_read_bank (0x4000, 0xffff, "bank4"); space.install_write_bank(0x4000, 0xffff, "bank5"); - state->membank("bank4")->set_base(ram + 0x4000); - state->membank("bank5")->set_base(ram + 0x4000); + membank("bank4")->set_base(ram + 0x4000); + membank("bank5")->set_base(ram + 0x4000); } break; case 0x01 : { // ROM space.install_read_bank (0x0000, 0x1fff, "bank1"); space.install_write_bank(0x0000, 0x1fff, "bank2"); - state->membank("bank1")->set_base(mem + 0x10000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(mem + 0x10000); + membank("bank2")->set_base(ram + 0x0000); // RAM space.install_read_bank (0x2000, 0xffff, "bank3"); space.install_write_bank(0x2000, 0xffff, "bank4"); - state->membank("bank3")->set_base(ram + 0x2000); - state->membank("bank4")->set_base(ram + 0x2000); + membank("bank3")->set_base(ram + 0x2000); + membank("bank4")->set_base(ram + 0x2000); } break; case 0x02 : { // ROM space.install_read_bank (0x0000, 0x3fff, "bank1"); space.install_write_bank(0x0000, 0x3fff, "bank2"); - state->membank("bank1")->set_base(mem + 0x10000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(mem + 0x10000); + membank("bank2")->set_base(ram + 0x0000); // RAM space.install_read_bank (0x4000, 0xffff, "bank3"); space.install_write_bank(0x4000, 0xffff, "bank4"); - state->membank("bank3")->set_base(ram + 0x4000); - state->membank("bank4")->set_base(ram + 0x4000); + membank("bank3")->set_base(ram + 0x4000); + membank("bank4")->set_base(ram + 0x4000); } break; case 0x03 : { // RAM space.install_read_bank (0x0000, 0xffff, "bank1"); space.install_write_bank(0x0000, 0xffff, "bank2"); - state->membank("bank1")->set_base(ram); - state->membank("bank2")->set_base(ram); + membank("bank1")->set_base(ram); + membank("bank2")->set_base(ram); } break; case 0x04 : @@ -303,26 +277,26 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // ROM space.install_read_bank (0x0000, 0x1fff, "bank1"); space.install_write_bank(0x0000, 0x1fff, "bank2"); - state->membank("bank1")->set_base(mem + 0x10000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(mem + 0x10000); + membank("bank2")->set_base(ram + 0x0000); // RAM space.install_read_bank (0x2000, 0xf7ff, "bank3"); space.install_write_bank(0x2000, 0xf7ff, "bank4"); - state->membank("bank3")->set_base(ram + 0x2000); - state->membank("bank4")->set_base(ram + 0x2000); + membank("bank3")->set_base(ram + 0x2000); + membank("bank4")->set_base(ram + 0x2000); // Keyboard - space.install_read_handler (0xf800, 0xf9ff, read8_delegate(FUNC(pk8020_state::keyboard_r),state)); + space.install_read_handler (0xf800, 0xf9ff, read8_delegate(FUNC(pk8020_state::keyboard_r),this)); space.install_write_bank(0xf800, 0xf9ff, "bank5"); - state->membank("bank5")->set_base(ram + 0xf800); + membank("bank5")->set_base(ram + 0xf800); // System reg - space.install_read_handler (0xfa00, 0xfaff, read8_delegate(FUNC(pk8020_state::sysreg_r),state)); - space.install_write_handler(0xfa00, 0xfaff, write8_delegate(FUNC(pk8020_state::sysreg_w),state)); + space.install_read_handler (0xfa00, 0xfaff, read8_delegate(FUNC(pk8020_state::sysreg_r),this)); + space.install_write_handler(0xfa00, 0xfaff, write8_delegate(FUNC(pk8020_state::sysreg_w),this)); // Devices - space.install_read_handler (0xfb00, 0xfbff, read8_delegate(FUNC(pk8020_state::devices_r),state)); - space.install_write_handler(0xfb00, 0xfbff, write8_delegate(FUNC(pk8020_state::devices_w),state)); + space.install_read_handler (0xfb00, 0xfbff, read8_delegate(FUNC(pk8020_state::devices_r),this)); + space.install_write_handler(0xfb00, 0xfbff, write8_delegate(FUNC(pk8020_state::devices_w),this)); // Text Video Memory - space.install_read_handler (0xfc00, 0xffff, read8_delegate(FUNC(pk8020_state::text_r),state)); - space.install_write_handler(0xfc00, 0xffff, write8_delegate(FUNC(pk8020_state::text_w),state)); + space.install_read_handler (0xfc00, 0xffff, read8_delegate(FUNC(pk8020_state::text_r),this)); + space.install_write_handler(0xfc00, 0xffff, write8_delegate(FUNC(pk8020_state::text_w),this)); } break; case 0x06 : @@ -330,26 +304,26 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // ROM space.install_read_bank (0x0000, 0x3fff, "bank1"); space.install_write_bank(0x0000, 0x3fff, "bank2"); - state->membank("bank1")->set_base(mem + 0x10000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(mem + 0x10000); + membank("bank2")->set_base(ram + 0x0000); // RAM space.install_read_bank (0x4000, 0xf7ff, "bank3"); space.install_write_bank(0x4000, 0xf7ff, "bank4"); - state->membank("bank3")->set_base(ram + 0x4000); - state->membank("bank4")->set_base(ram + 0x4000); + membank("bank3")->set_base(ram + 0x4000); + membank("bank4")->set_base(ram + 0x4000); // Keyboard - space.install_read_handler (0xf800, 0xf9ff, read8_delegate(FUNC(pk8020_state::keyboard_r),state)); + space.install_read_handler (0xf800, 0xf9ff, read8_delegate(FUNC(pk8020_state::keyboard_r),this)); space.install_write_bank(0xf800, 0xf9ff, "bank5"); - state->membank("bank5")->set_base(ram + 0xf800); + membank("bank5")->set_base(ram + 0xf800); // System reg - space.install_read_handler (0xfa00, 0xfaff, read8_delegate(FUNC(pk8020_state::sysreg_r),state)); - space.install_write_handler(0xfa00, 0xfaff, write8_delegate(FUNC(pk8020_state::sysreg_w),state)); + space.install_read_handler (0xfa00, 0xfaff, read8_delegate(FUNC(pk8020_state::sysreg_r),this)); + space.install_write_handler(0xfa00, 0xfaff, write8_delegate(FUNC(pk8020_state::sysreg_w),this)); // Devices - space.install_read_handler (0xfb00, 0xfbff, read8_delegate(FUNC(pk8020_state::devices_r),state)); - space.install_write_handler(0xfb00, 0xfbff, write8_delegate(FUNC(pk8020_state::devices_w),state)); + space.install_read_handler (0xfb00, 0xfbff, read8_delegate(FUNC(pk8020_state::devices_r),this)); + space.install_write_handler(0xfb00, 0xfbff, write8_delegate(FUNC(pk8020_state::devices_w),this)); // Text Video Memory - space.install_read_handler (0xfc00, 0xffff, read8_delegate(FUNC(pk8020_state::text_r),state)); - space.install_write_handler(0xfc00, 0xffff, write8_delegate(FUNC(pk8020_state::text_w),state)); + space.install_read_handler (0xfc00, 0xffff, read8_delegate(FUNC(pk8020_state::text_r),this)); + space.install_write_handler(0xfc00, 0xffff, write8_delegate(FUNC(pk8020_state::text_w),this)); } break; case 0x07 : @@ -357,21 +331,21 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // RAM space.install_read_bank (0x0000, 0xf7ff, "bank1"); space.install_write_bank(0x0000, 0xf7ff, "bank2"); - state->membank("bank1")->set_base(ram); - state->membank("bank2")->set_base(ram); + membank("bank1")->set_base(ram); + membank("bank2")->set_base(ram); // Keyboard - space.install_read_handler (0xf800, 0xf9ff, read8_delegate(FUNC(pk8020_state::keyboard_r),state)); + space.install_read_handler (0xf800, 0xf9ff, read8_delegate(FUNC(pk8020_state::keyboard_r),this)); space.install_write_bank(0xf800, 0xf9ff, "bank3"); - state->membank("bank3")->set_base(ram + 0xf800); + membank("bank3")->set_base(ram + 0xf800); // System reg - space.install_read_handler (0xfa00, 0xfaff, read8_delegate(FUNC(pk8020_state::sysreg_r),state)); - space.install_write_handler(0xfa00, 0xfaff, write8_delegate(FUNC(pk8020_state::sysreg_w),state)); + space.install_read_handler (0xfa00, 0xfaff, read8_delegate(FUNC(pk8020_state::sysreg_r),this)); + space.install_write_handler(0xfa00, 0xfaff, write8_delegate(FUNC(pk8020_state::sysreg_w),this)); // Devices - space.install_read_handler (0xfb00, 0xfbff, read8_delegate(FUNC(pk8020_state::devices_r),state)); - space.install_write_handler(0xfb00, 0xfbff, write8_delegate(FUNC(pk8020_state::devices_w),state)); + space.install_read_handler (0xfb00, 0xfbff, read8_delegate(FUNC(pk8020_state::devices_r),this)); + space.install_write_handler(0xfb00, 0xfbff, write8_delegate(FUNC(pk8020_state::devices_w),this)); // Text Video Memory - space.install_read_handler (0xfc00, 0xffff, read8_delegate(FUNC(pk8020_state::text_r),state)); - space.install_write_handler(0xfc00, 0xffff, write8_delegate(FUNC(pk8020_state::text_w),state)); + space.install_read_handler (0xfc00, 0xffff, read8_delegate(FUNC(pk8020_state::text_r),this)); + space.install_write_handler(0xfc00, 0xffff, write8_delegate(FUNC(pk8020_state::text_w),this)); } break; case 0x08 : @@ -379,29 +353,29 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // ROM space.install_read_bank (0x0000, 0x3fff, "bank1"); space.install_write_bank(0x0000, 0x3fff, "bank2"); - state->membank("bank1")->set_base(mem + 0x10000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(mem + 0x10000); + membank("bank2")->set_base(ram + 0x0000); // Keyboard - space.install_read_handler (0x3800, 0x39ff, read8_delegate(FUNC(pk8020_state::keyboard_r),state)); + space.install_read_handler (0x3800, 0x39ff, read8_delegate(FUNC(pk8020_state::keyboard_r),this)); space.install_write_bank(0x3800, 0x39ff, "bank3"); - state->membank("bank3")->set_base(ram + 0x3800); + membank("bank3")->set_base(ram + 0x3800); // System reg - space.install_read_handler (0x3a00, 0x3aff, read8_delegate(FUNC(pk8020_state::sysreg_r),state)); - space.install_write_handler(0x3a00, 0x3aff, write8_delegate(FUNC(pk8020_state::sysreg_w),state)); + space.install_read_handler (0x3a00, 0x3aff, read8_delegate(FUNC(pk8020_state::sysreg_r),this)); + space.install_write_handler(0x3a00, 0x3aff, write8_delegate(FUNC(pk8020_state::sysreg_w),this)); // Devices - space.install_read_handler (0x3b00, 0x3bff, read8_delegate(FUNC(pk8020_state::devices_r),state)); - space.install_write_handler(0x3b00, 0x3bff, write8_delegate(FUNC(pk8020_state::devices_w),state)); + space.install_read_handler (0x3b00, 0x3bff, read8_delegate(FUNC(pk8020_state::devices_r),this)); + space.install_write_handler(0x3b00, 0x3bff, write8_delegate(FUNC(pk8020_state::devices_w),this)); // Text Video Memory - space.install_read_handler (0x3c00, 0x3fff, read8_delegate(FUNC(pk8020_state::text_r),state)); - space.install_write_handler(0x3c00, 0x3fff, write8_delegate(FUNC(pk8020_state::text_w),state)); + space.install_read_handler (0x3c00, 0x3fff, read8_delegate(FUNC(pk8020_state::text_r),this)); + space.install_write_handler(0x3c00, 0x3fff, write8_delegate(FUNC(pk8020_state::text_w),this)); // RAM space.install_read_bank (0x4000, 0xbfff, "bank4"); space.install_write_bank(0x4000, 0xbfff, "bank5"); - state->membank("bank4")->set_base(ram + 0x4000); - state->membank("bank5")->set_base(ram + 0x4000); + membank("bank4")->set_base(ram + 0x4000); + membank("bank5")->set_base(ram + 0x4000); // Video RAM - space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),state)); - space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),state)); + space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),this)); + space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),this)); } break; @@ -410,16 +384,16 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // ROM space.install_read_bank (0x0000, 0x1fff, "bank1"); space.install_write_bank(0x0000, 0x1fff, "bank2"); - state->membank("bank1")->set_base(mem + 0x10000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(mem + 0x10000); + membank("bank2")->set_base(ram + 0x0000); // RAM space.install_read_bank (0x2000, 0xbfff, "bank3"); space.install_write_bank(0x2000, 0xbfff, "bank4"); - state->membank("bank3")->set_base(ram + 0x2000); - state->membank("bank4")->set_base(ram + 0x2000); + membank("bank3")->set_base(ram + 0x2000); + membank("bank4")->set_base(ram + 0x2000); // Video RAM - space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),state)); - space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),state)); + space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),this)); + space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),this)); } break; case 0x0A : @@ -427,16 +401,16 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // ROM space.install_read_bank (0x0000, 0x3fff, "bank1"); space.install_write_bank(0x0000, 0x3fff, "bank2"); - state->membank("bank1")->set_base(mem + 0x10000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(mem + 0x10000); + membank("bank2")->set_base(ram + 0x0000); // RAM space.install_read_bank (0x4000, 0xbfff, "bank3"); space.install_write_bank(0x4000, 0xbfff, "bank4"); - state->membank("bank3")->set_base(ram + 0x4000); - state->membank("bank4")->set_base(ram + 0x4000); + membank("bank3")->set_base(ram + 0x4000); + membank("bank4")->set_base(ram + 0x4000); // Video RAM - space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),state)); - space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),state)); + space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),this)); + space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),this)); } break; case 0x0B : @@ -444,11 +418,11 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // RAM space.install_read_bank (0x0000, 0xbfff, "bank1"); space.install_write_bank(0x0000, 0xbfff, "bank2"); - state->membank("bank1")->set_base(ram + 0x0000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(ram + 0x0000); + membank("bank2")->set_base(ram + 0x0000); // Video RAM - space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),state)); - space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),state)); + space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),this)); + space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),this)); } break; case 0x0C : @@ -457,27 +431,27 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // ROM space.install_read_bank (0x0000, 0x1fff, "bank1"); space.install_write_bank(0x0000, 0x1fff, "bank2"); - state->membank("bank1")->set_base(mem + 0x10000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(mem + 0x10000); + membank("bank2")->set_base(ram + 0x0000); // RAM space.install_read_bank (0x2000, 0x3fff, "bank3"); space.install_write_bank(0x2000, 0x3fff, "bank4"); - state->membank("bank3")->set_base(ram + 0x2000); - state->membank("bank4")->set_base(ram + 0x2000); + membank("bank3")->set_base(ram + 0x2000); + membank("bank4")->set_base(ram + 0x2000); // Video RAM - space.install_read_handler (0x4000, 0x7fff, read8_delegate(FUNC(pk8020_state::gzu_r),state)); - space.install_write_handler(0x4000, 0x7fff, write8_delegate(FUNC(pk8020_state::gzu_w),state)); + space.install_read_handler (0x4000, 0x7fff, read8_delegate(FUNC(pk8020_state::gzu_r),this)); + space.install_write_handler(0x4000, 0x7fff, write8_delegate(FUNC(pk8020_state::gzu_w),this)); // RAM space.install_read_bank (0x8000, 0xfdff, "bank5"); space.install_write_bank(0x8000, 0xfdff, "bank6"); - state->membank("bank5")->set_base(ram + 0x8000); - state->membank("bank6")->set_base(ram + 0x8000); + membank("bank5")->set_base(ram + 0x8000); + membank("bank6")->set_base(ram + 0x8000); // Devices - space.install_read_handler (0xfe00, 0xfeff, read8_delegate(FUNC(pk8020_state::devices_r),state)); - space.install_write_handler(0xfe00, 0xfeff, write8_delegate(FUNC(pk8020_state::devices_w),state)); + space.install_read_handler (0xfe00, 0xfeff, read8_delegate(FUNC(pk8020_state::devices_r),this)); + space.install_write_handler(0xfe00, 0xfeff, write8_delegate(FUNC(pk8020_state::devices_w),this)); // System reg - space.install_read_handler (0xff00, 0xffff, read8_delegate(FUNC(pk8020_state::sysreg_r),state)); - space.install_write_handler(0xff00, 0xffff, write8_delegate(FUNC(pk8020_state::sysreg_w),state)); + space.install_read_handler (0xff00, 0xffff, read8_delegate(FUNC(pk8020_state::sysreg_r),this)); + space.install_write_handler(0xff00, 0xffff, write8_delegate(FUNC(pk8020_state::sysreg_w),this)); } break; case 0x0E : @@ -485,22 +459,22 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // ROM space.install_read_bank (0x0000, 0x3fff, "bank1"); space.install_write_bank(0x0000, 0x3fff, "bank2"); - state->membank("bank1")->set_base(mem + 0x10000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(mem + 0x10000); + membank("bank2")->set_base(ram + 0x0000); // Video RAM - space.install_read_handler (0x4000, 0x7fff, read8_delegate(FUNC(pk8020_state::gzu_r),state)); - space.install_write_handler(0x4000, 0x7fff, write8_delegate(FUNC(pk8020_state::gzu_w),state)); + space.install_read_handler (0x4000, 0x7fff, read8_delegate(FUNC(pk8020_state::gzu_r),this)); + space.install_write_handler(0x4000, 0x7fff, write8_delegate(FUNC(pk8020_state::gzu_w),this)); // RAM space.install_read_bank (0x8000, 0xfdff, "bank5"); space.install_write_bank(0x8000, 0xfdff, "bank6"); - state->membank("bank5")->set_base(ram + 0x8000); - state->membank("bank6")->set_base(ram + 0x8000); + membank("bank5")->set_base(ram + 0x8000); + membank("bank6")->set_base(ram + 0x8000); // Devices - space.install_read_handler (0xfe00, 0xfeff, read8_delegate(FUNC(pk8020_state::devices_r),state)); - space.install_write_handler(0xfe00, 0xfeff, write8_delegate(FUNC(pk8020_state::devices_w),state)); + space.install_read_handler (0xfe00, 0xfeff, read8_delegate(FUNC(pk8020_state::devices_r),this)); + space.install_write_handler(0xfe00, 0xfeff, write8_delegate(FUNC(pk8020_state::devices_w),this)); // System reg - space.install_read_handler (0xff00, 0xffff, read8_delegate(FUNC(pk8020_state::sysreg_r),state)); - space.install_write_handler(0xff00, 0xffff, write8_delegate(FUNC(pk8020_state::sysreg_w),state)); + space.install_read_handler (0xff00, 0xffff, read8_delegate(FUNC(pk8020_state::sysreg_r),this)); + space.install_write_handler(0xff00, 0xffff, write8_delegate(FUNC(pk8020_state::sysreg_w),this)); } break; case 0x0F : @@ -508,22 +482,22 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // RAM space.install_read_bank (0x0000, 0x3fff, "bank1"); space.install_write_bank(0x0000, 0x3fff, "bank2"); - state->membank("bank1")->set_base(ram + 0x0000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(ram + 0x0000); + membank("bank2")->set_base(ram + 0x0000); // Video RAM - space.install_read_handler (0x4000, 0x7fff, read8_delegate(FUNC(pk8020_state::gzu_r),state)); - space.install_write_handler(0x4000, 0x7fff, write8_delegate(FUNC(pk8020_state::gzu_w),state)); + space.install_read_handler (0x4000, 0x7fff, read8_delegate(FUNC(pk8020_state::gzu_r),this)); + space.install_write_handler(0x4000, 0x7fff, write8_delegate(FUNC(pk8020_state::gzu_w),this)); // RAM space.install_read_bank (0x8000, 0xfdff, "bank3"); space.install_write_bank(0x8000, 0xfdff, "bank4"); - state->membank("bank3")->set_base(ram + 0x8000); - state->membank("bank4")->set_base(ram + 0x8000); + membank("bank3")->set_base(ram + 0x8000); + membank("bank4")->set_base(ram + 0x8000); // Devices - space.install_read_handler (0xfe00, 0xfeff, read8_delegate(FUNC(pk8020_state::devices_r),state)); - space.install_write_handler(0xfe00, 0xfeff, write8_delegate(FUNC(pk8020_state::devices_w),state)); + space.install_read_handler (0xfe00, 0xfeff, read8_delegate(FUNC(pk8020_state::devices_r),this)); + space.install_write_handler(0xfe00, 0xfeff, write8_delegate(FUNC(pk8020_state::devices_w),this)); // System reg - space.install_read_handler (0xff00, 0xffff, read8_delegate(FUNC(pk8020_state::sysreg_r),state)); - space.install_write_handler(0xff00, 0xffff, write8_delegate(FUNC(pk8020_state::sysreg_w),state)); + space.install_read_handler (0xff00, 0xffff, read8_delegate(FUNC(pk8020_state::sysreg_r),this)); + space.install_write_handler(0xff00, 0xffff, write8_delegate(FUNC(pk8020_state::sysreg_w),this)); } break; case 0x10 : @@ -531,26 +505,26 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // ROM space.install_read_bank (0x0000, 0x5fff, "bank1"); space.install_write_bank(0x0000, 0x5fff, "bank2"); - state->membank("bank1")->set_base(mem + 0x10000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(mem + 0x10000); + membank("bank2")->set_base(ram + 0x0000); // RAM space.install_read_bank (0x6000, 0xf7ff, "bank3"); space.install_write_bank(0x6000, 0xf7ff, "bank4"); - state->membank("bank3")->set_base(ram + 0x6000); - state->membank("bank4")->set_base(ram + 0x6000); + membank("bank3")->set_base(ram + 0x6000); + membank("bank4")->set_base(ram + 0x6000); // Keyboard - space.install_read_handler (0xf800, 0xf9ff, read8_delegate(FUNC(pk8020_state::keyboard_r),state)); + space.install_read_handler (0xf800, 0xf9ff, read8_delegate(FUNC(pk8020_state::keyboard_r),this)); space.install_write_bank(0xf800, 0xf9ff, "bank5"); - state->membank("bank5")->set_base(ram + 0xf800); + membank("bank5")->set_base(ram + 0xf800); // System reg - space.install_read_handler (0xfa00, 0xfaff, read8_delegate(FUNC(pk8020_state::sysreg_r),state)); - space.install_write_handler(0xfa00, 0xfaff, write8_delegate(FUNC(pk8020_state::sysreg_w),state)); + space.install_read_handler (0xfa00, 0xfaff, read8_delegate(FUNC(pk8020_state::sysreg_r),this)); + space.install_write_handler(0xfa00, 0xfaff, write8_delegate(FUNC(pk8020_state::sysreg_w),this)); // Devices - space.install_read_handler (0xfb00, 0xfbff, read8_delegate(FUNC(pk8020_state::devices_r),state)); - space.install_write_handler(0xfb00, 0xfbff, write8_delegate(FUNC(pk8020_state::devices_w),state)); + space.install_read_handler (0xfb00, 0xfbff, read8_delegate(FUNC(pk8020_state::devices_r),this)); + space.install_write_handler(0xfb00, 0xfbff, write8_delegate(FUNC(pk8020_state::devices_w),this)); // Text Video Memory - space.install_read_handler (0xfc00, 0xffff, read8_delegate(FUNC(pk8020_state::text_r),state)); - space.install_write_handler(0xfc00, 0xffff, write8_delegate(FUNC(pk8020_state::text_w),state)); + space.install_read_handler (0xfc00, 0xffff, read8_delegate(FUNC(pk8020_state::text_r),this)); + space.install_write_handler(0xfc00, 0xffff, write8_delegate(FUNC(pk8020_state::text_w),this)); } break; case 0x11 : @@ -558,26 +532,26 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // ROM space.install_read_bank (0x0000, 0x1fff, "bank1"); space.install_write_bank(0x0000, 0x1fff, "bank2"); - state->membank("bank1")->set_base(mem + 0x10000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(mem + 0x10000); + membank("bank2")->set_base(ram + 0x0000); // RAM space.install_read_bank (0x2000, 0xf7ff, "bank3"); space.install_write_bank(0x2000, 0xf7ff, "bank4"); - state->membank("bank3")->set_base(ram + 0x2000); - state->membank("bank4")->set_base(ram + 0x2000); + membank("bank3")->set_base(ram + 0x2000); + membank("bank4")->set_base(ram + 0x2000); // Keyboard - space.install_read_handler (0xf800, 0xf9ff, read8_delegate(FUNC(pk8020_state::keyboard_r),state)); + space.install_read_handler (0xf800, 0xf9ff, read8_delegate(FUNC(pk8020_state::keyboard_r),this)); space.install_write_bank(0xf800, 0xf9ff, "bank5"); - state->membank("bank5")->set_base(ram + 0xf800); + membank("bank5")->set_base(ram + 0xf800); // System reg - space.install_read_handler (0xfa00, 0xfaff, read8_delegate(FUNC(pk8020_state::sysreg_r),state)); - space.install_write_handler(0xfa00, 0xfaff, write8_delegate(FUNC(pk8020_state::sysreg_w),state)); + space.install_read_handler (0xfa00, 0xfaff, read8_delegate(FUNC(pk8020_state::sysreg_r),this)); + space.install_write_handler(0xfa00, 0xfaff, write8_delegate(FUNC(pk8020_state::sysreg_w),this)); // Devices - space.install_read_handler (0xfb00, 0xfbff, read8_delegate(FUNC(pk8020_state::devices_r),state)); - space.install_write_handler(0xfb00, 0xfbff, write8_delegate(FUNC(pk8020_state::devices_w),state)); + space.install_read_handler (0xfb00, 0xfbff, read8_delegate(FUNC(pk8020_state::devices_r),this)); + space.install_write_handler(0xfb00, 0xfbff, write8_delegate(FUNC(pk8020_state::devices_w),this)); // Text Video Memory - space.install_read_handler (0xfc00, 0xffff, read8_delegate(FUNC(pk8020_state::text_r),state)); - space.install_write_handler(0xfc00, 0xffff, write8_delegate(FUNC(pk8020_state::text_w),state)); + space.install_read_handler (0xfc00, 0xffff, read8_delegate(FUNC(pk8020_state::text_r),this)); + space.install_write_handler(0xfc00, 0xffff, write8_delegate(FUNC(pk8020_state::text_w),this)); } break; case 0x12 : @@ -585,26 +559,26 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // ROM space.install_read_bank (0x0000, 0x3fff, "bank1"); space.install_write_bank(0x0000, 0x3fff, "bank2"); - state->membank("bank1")->set_base(mem + 0x10000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(mem + 0x10000); + membank("bank2")->set_base(ram + 0x0000); // RAM space.install_read_bank (0x4000, 0xf7ff, "bank3"); space.install_write_bank(0x4000, 0xf7ff, "bank4"); - state->membank("bank3")->set_base(ram + 0x4000); - state->membank("bank4")->set_base(ram + 0x4000); + membank("bank3")->set_base(ram + 0x4000); + membank("bank4")->set_base(ram + 0x4000); // Keyboard - space.install_read_handler (0xf800, 0xf9ff, read8_delegate(FUNC(pk8020_state::keyboard_r),state)); + space.install_read_handler (0xf800, 0xf9ff, read8_delegate(FUNC(pk8020_state::keyboard_r),this)); space.install_write_bank(0xf800, 0xf9ff, "bank5"); - state->membank("bank5")->set_base(ram + 0xf800); + membank("bank5")->set_base(ram + 0xf800); // System reg - space.install_read_handler (0xfa00, 0xfaff, read8_delegate(FUNC(pk8020_state::sysreg_r),state)); - space.install_write_handler(0xfa00, 0xfaff, write8_delegate(FUNC(pk8020_state::sysreg_w),state)); + space.install_read_handler (0xfa00, 0xfaff, read8_delegate(FUNC(pk8020_state::sysreg_r),this)); + space.install_write_handler(0xfa00, 0xfaff, write8_delegate(FUNC(pk8020_state::sysreg_w),this)); // Devices - space.install_read_handler (0xfb00, 0xfbff, read8_delegate(FUNC(pk8020_state::devices_r),state)); - space.install_write_handler(0xfb00, 0xfbff, write8_delegate(FUNC(pk8020_state::devices_w),state)); + space.install_read_handler (0xfb00, 0xfbff, read8_delegate(FUNC(pk8020_state::devices_r),this)); + space.install_write_handler(0xfb00, 0xfbff, write8_delegate(FUNC(pk8020_state::devices_w),this)); // Text Video Memory - space.install_read_handler (0xfc00, 0xffff, read8_delegate(FUNC(pk8020_state::text_r),state)); - space.install_write_handler(0xfc00, 0xffff, write8_delegate(FUNC(pk8020_state::text_w),state)); + space.install_read_handler (0xfc00, 0xffff, read8_delegate(FUNC(pk8020_state::text_r),this)); + space.install_write_handler(0xfc00, 0xffff, write8_delegate(FUNC(pk8020_state::text_w),this)); } break; case 0x13 : @@ -612,21 +586,21 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // RAM space.install_read_bank (0x0000, 0xf7ff, "bank1"); space.install_write_bank(0x0000, 0xf7ff, "bank2"); - state->membank("bank1")->set_base(ram + 0x0000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(ram + 0x0000); + membank("bank2")->set_base(ram + 0x0000); // Keyboard - space.install_read_handler (0xf800, 0xf9ff, read8_delegate(FUNC(pk8020_state::keyboard_r),state)); + space.install_read_handler (0xf800, 0xf9ff, read8_delegate(FUNC(pk8020_state::keyboard_r),this)); space.install_write_bank(0xf800, 0xf9ff, "bank3"); - state->membank("bank3")->set_base(ram + 0xf800); + membank("bank3")->set_base(ram + 0xf800); // System reg - space.install_read_handler (0xfa00, 0xfaff, read8_delegate(FUNC(pk8020_state::sysreg_r),state)); - space.install_write_handler(0xfa00, 0xfaff, write8_delegate(FUNC(pk8020_state::sysreg_w),state)); + space.install_read_handler (0xfa00, 0xfaff, read8_delegate(FUNC(pk8020_state::sysreg_r),this)); + space.install_write_handler(0xfa00, 0xfaff, write8_delegate(FUNC(pk8020_state::sysreg_w),this)); // Devices - space.install_read_handler (0xfb00, 0xfbff, read8_delegate(FUNC(pk8020_state::devices_r),state)); - space.install_write_handler(0xfb00, 0xfbff, write8_delegate(FUNC(pk8020_state::devices_w),state)); + space.install_read_handler (0xfb00, 0xfbff, read8_delegate(FUNC(pk8020_state::devices_r),this)); + space.install_write_handler(0xfb00, 0xfbff, write8_delegate(FUNC(pk8020_state::devices_w),this)); // Text Video Memory - space.install_read_handler (0xfc00, 0xffff, read8_delegate(FUNC(pk8020_state::text_r),state)); - space.install_write_handler(0xfc00, 0xffff, write8_delegate(FUNC(pk8020_state::text_w),state)); + space.install_read_handler (0xfc00, 0xffff, read8_delegate(FUNC(pk8020_state::text_r),this)); + space.install_write_handler(0xfc00, 0xffff, write8_delegate(FUNC(pk8020_state::text_w),this)); } break; case 0x14 : @@ -634,19 +608,19 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // ROM space.install_read_bank (0x0000, 0x5fff, "bank1"); space.install_write_bank(0x0000, 0x5fff, "bank2"); - state->membank("bank1")->set_base(mem + 0x10000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(mem + 0x10000); + membank("bank2")->set_base(ram + 0x0000); // RAM space.install_read_bank (0x6000, 0xfdff, "bank3"); space.install_write_bank(0x6000, 0xfdff, "bank4"); - state->membank("bank3")->set_base(ram + 0x6000); - state->membank("bank4")->set_base(ram + 0x6000); + membank("bank3")->set_base(ram + 0x6000); + membank("bank4")->set_base(ram + 0x6000); // Devices - space.install_read_handler (0xfe00, 0xfeff, read8_delegate(FUNC(pk8020_state::devices_r),state)); - space.install_write_handler(0xfe00, 0xfeff, write8_delegate(FUNC(pk8020_state::devices_w),state)); + space.install_read_handler (0xfe00, 0xfeff, read8_delegate(FUNC(pk8020_state::devices_r),this)); + space.install_write_handler(0xfe00, 0xfeff, write8_delegate(FUNC(pk8020_state::devices_w),this)); // System reg - space.install_read_handler (0xff00, 0xffff, read8_delegate(FUNC(pk8020_state::sysreg_r),state)); - space.install_write_handler(0xff00, 0xffff, write8_delegate(FUNC(pk8020_state::sysreg_w),state)); + space.install_read_handler (0xff00, 0xffff, read8_delegate(FUNC(pk8020_state::sysreg_r),this)); + space.install_write_handler(0xff00, 0xffff, write8_delegate(FUNC(pk8020_state::sysreg_w),this)); } break; case 0x15 : @@ -654,19 +628,19 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // ROM space.install_read_bank (0x0000, 0x1fff, "bank1"); space.install_write_bank(0x0000, 0x1fff, "bank2"); - state->membank("bank1")->set_base(mem + 0x10000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(mem + 0x10000); + membank("bank2")->set_base(ram + 0x0000); // RAM space.install_read_bank (0x2000, 0xfdff, "bank3"); space.install_write_bank(0x2000, 0xfdff, "bank4"); - state->membank("bank3")->set_base(ram + 0x2000); - state->membank("bank4")->set_base(ram + 0x2000); + membank("bank3")->set_base(ram + 0x2000); + membank("bank4")->set_base(ram + 0x2000); // Devices - space.install_read_handler (0xfe00, 0xfeff, read8_delegate(FUNC(pk8020_state::devices_r),state)); - space.install_write_handler(0xfe00, 0xfeff, write8_delegate(FUNC(pk8020_state::devices_w),state)); + space.install_read_handler (0xfe00, 0xfeff, read8_delegate(FUNC(pk8020_state::devices_r),this)); + space.install_write_handler(0xfe00, 0xfeff, write8_delegate(FUNC(pk8020_state::devices_w),this)); // System reg - space.install_read_handler (0xff00, 0xffff, read8_delegate(FUNC(pk8020_state::sysreg_r),state)); - space.install_write_handler(0xff00, 0xffff, write8_delegate(FUNC(pk8020_state::sysreg_w),state)); + space.install_read_handler (0xff00, 0xffff, read8_delegate(FUNC(pk8020_state::sysreg_r),this)); + space.install_write_handler(0xff00, 0xffff, write8_delegate(FUNC(pk8020_state::sysreg_w),this)); } break; case 0x16 : @@ -674,19 +648,19 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // ROM space.install_read_bank (0x0000, 0x3fff, "bank1"); space.install_write_bank(0x0000, 0x3fff, "bank2"); - state->membank("bank1")->set_base(mem + 0x10000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(mem + 0x10000); + membank("bank2")->set_base(ram + 0x0000); // RAM space.install_read_bank (0x4000, 0xfdff, "bank3"); space.install_write_bank(0x4000, 0xfdff, "bank4"); - state->membank("bank3")->set_base(ram + 0x4000); - state->membank("bank4")->set_base(ram + 0x4000); + membank("bank3")->set_base(ram + 0x4000); + membank("bank4")->set_base(ram + 0x4000); // Devices - space.install_read_handler (0xfe00, 0xfeff, read8_delegate(FUNC(pk8020_state::devices_r),state)); - space.install_write_handler(0xfe00, 0xfeff, write8_delegate(FUNC(pk8020_state::devices_w),state)); + space.install_read_handler (0xfe00, 0xfeff, read8_delegate(FUNC(pk8020_state::devices_r),this)); + space.install_write_handler(0xfe00, 0xfeff, write8_delegate(FUNC(pk8020_state::devices_w),this)); // System reg - space.install_read_handler (0xff00, 0xffff, read8_delegate(FUNC(pk8020_state::sysreg_r),state)); - space.install_write_handler(0xff00, 0xffff, write8_delegate(FUNC(pk8020_state::sysreg_w),state)); + space.install_read_handler (0xff00, 0xffff, read8_delegate(FUNC(pk8020_state::sysreg_r),this)); + space.install_write_handler(0xff00, 0xffff, write8_delegate(FUNC(pk8020_state::sysreg_w),this)); } break; case 0x17 : @@ -694,14 +668,14 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // RAM space.install_read_bank (0x0000, 0xfdff, "bank1"); space.install_write_bank(0x0000, 0xfdff, "bank2"); - state->membank("bank1")->set_base(ram); - state->membank("bank2")->set_base(ram); + membank("bank1")->set_base(ram); + membank("bank2")->set_base(ram); // Devices - space.install_read_handler (0xfe00, 0xfeff, read8_delegate(FUNC(pk8020_state::devices_r),state)); - space.install_write_handler(0xfe00, 0xfeff, write8_delegate(FUNC(pk8020_state::devices_w),state)); + space.install_read_handler (0xfe00, 0xfeff, read8_delegate(FUNC(pk8020_state::devices_r),this)); + space.install_write_handler(0xfe00, 0xfeff, write8_delegate(FUNC(pk8020_state::devices_w),this)); // System reg - space.install_read_handler (0xff00, 0xffff, read8_delegate(FUNC(pk8020_state::sysreg_r),state)); - space.install_write_handler(0xff00, 0xffff, write8_delegate(FUNC(pk8020_state::sysreg_w),state)); + space.install_read_handler (0xff00, 0xffff, read8_delegate(FUNC(pk8020_state::sysreg_r),this)); + space.install_write_handler(0xff00, 0xffff, write8_delegate(FUNC(pk8020_state::sysreg_w),this)); } break; case 0x18 : @@ -709,19 +683,19 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // ROM space.install_read_bank (0x0000, 0x5fff, "bank1"); space.install_write_bank(0x0000, 0x5fff, "bank2"); - state->membank("bank1")->set_base(mem + 0x10000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(mem + 0x10000); + membank("bank2")->set_base(ram + 0x0000); // RAM space.install_read_bank (0x6000, 0xbeff, "bank3"); space.install_write_bank(0x6000, 0xbeff, "bank4"); - state->membank("bank3")->set_base(ram + 0x6000); - state->membank("bank4")->set_base(ram + 0x6000); + membank("bank3")->set_base(ram + 0x6000); + membank("bank4")->set_base(ram + 0x6000); // System reg - space.install_read_handler (0xbf00, 0xbfff, read8_delegate(FUNC(pk8020_state::sysreg_r),state)); - space.install_write_handler(0xbf00, 0xbfff, write8_delegate(FUNC(pk8020_state::sysreg_w),state)); + space.install_read_handler (0xbf00, 0xbfff, read8_delegate(FUNC(pk8020_state::sysreg_r),this)); + space.install_write_handler(0xbf00, 0xbfff, write8_delegate(FUNC(pk8020_state::sysreg_w),this)); // Video RAM - space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),state)); - space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),state)); + space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),this)); + space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),this)); } break; case 0x19 : @@ -729,19 +703,19 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // ROM space.install_read_bank (0x0000, 0x1fff, "bank1"); space.install_write_bank(0x0000, 0x1fff, "bank2"); - state->membank("bank1")->set_base(mem + 0x10000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(mem + 0x10000); + membank("bank2")->set_base(ram + 0x0000); // RAM space.install_read_bank (0x2000, 0xbeff, "bank3"); space.install_write_bank(0x2000, 0xbeff, "bank4"); - state->membank("bank3")->set_base(ram + 0x2000); - state->membank("bank4")->set_base(ram + 0x2000); + membank("bank3")->set_base(ram + 0x2000); + membank("bank4")->set_base(ram + 0x2000); // System reg - space.install_read_handler (0xbf00, 0xbfff, read8_delegate(FUNC(pk8020_state::sysreg_r),state)); - space.install_write_handler(0xbf00, 0xbfff, write8_delegate(FUNC(pk8020_state::sysreg_w),state)); + space.install_read_handler (0xbf00, 0xbfff, read8_delegate(FUNC(pk8020_state::sysreg_r),this)); + space.install_write_handler(0xbf00, 0xbfff, write8_delegate(FUNC(pk8020_state::sysreg_w),this)); // Video RAM - space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),state)); - space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),state)); + space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),this)); + space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),this)); } break; case 0x1A : @@ -749,19 +723,19 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // ROM space.install_read_bank (0x0000, 0x3fff, "bank1"); space.install_write_bank(0x0000, 0x3fff, "bank2"); - state->membank("bank1")->set_base(mem + 0x10000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(mem + 0x10000); + membank("bank2")->set_base(ram + 0x0000); // RAM space.install_read_bank (0x4000, 0xbeff, "bank3"); space.install_write_bank(0x4000, 0xbeff, "bank4"); - state->membank("bank3")->set_base(ram + 0x4000); - state->membank("bank4")->set_base(ram + 0x4000); + membank("bank3")->set_base(ram + 0x4000); + membank("bank4")->set_base(ram + 0x4000); // System reg - space.install_read_handler (0xbf00, 0xbfff, read8_delegate(FUNC(pk8020_state::sysreg_r),state)); - space.install_write_handler(0xbf00, 0xbfff, write8_delegate(FUNC(pk8020_state::sysreg_w),state)); + space.install_read_handler (0xbf00, 0xbfff, read8_delegate(FUNC(pk8020_state::sysreg_r),this)); + space.install_write_handler(0xbf00, 0xbfff, write8_delegate(FUNC(pk8020_state::sysreg_w),this)); // Video RAM - space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),state)); - space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),state)); + space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),this)); + space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),this)); } break; case 0x1B : @@ -769,14 +743,14 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // RAM space.install_read_bank (0x0000, 0xbeff, "bank1"); space.install_write_bank(0x0000, 0xbeff, "bank2"); - state->membank("bank1")->set_base(ram); - state->membank("bank2")->set_base(ram); + membank("bank1")->set_base(ram); + membank("bank2")->set_base(ram); // System reg - space.install_read_handler (0xbf00, 0xbfff, read8_delegate(FUNC(pk8020_state::sysreg_r),state)); - space.install_write_handler(0xbf00, 0xbfff, write8_delegate(FUNC(pk8020_state::sysreg_w),state)); + space.install_read_handler (0xbf00, 0xbfff, read8_delegate(FUNC(pk8020_state::sysreg_r),this)); + space.install_write_handler(0xbf00, 0xbfff, write8_delegate(FUNC(pk8020_state::sysreg_w),this)); // Video RAM - space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),state)); - space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),state)); + space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),this)); + space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),this)); } break; case 0x1C : @@ -784,16 +758,16 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // ROM space.install_read_bank (0x0000, 0x5fff, "bank1"); space.install_write_bank(0x0000, 0x5fff, "bank2"); - state->membank("bank1")->set_base(mem + 0x10000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(mem + 0x10000); + membank("bank2")->set_base(ram + 0x0000); // RAM space.install_read_bank (0x6000, 0xbfff, "bank3"); space.install_write_bank(0x6000, 0xbfff, "bank4"); - state->membank("bank3")->set_base(ram + 0x6000); - state->membank("bank4")->set_base(ram + 0x6000); + membank("bank3")->set_base(ram + 0x6000); + membank("bank4")->set_base(ram + 0x6000); // Video RAM - space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),state)); - space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),state)); + space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),this)); + space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),this)); } break; case 0x1D : @@ -801,16 +775,16 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // ROM space.install_read_bank (0x0000, 0x1fff, "bank1"); space.install_write_bank(0x0000, 0x1fff, "bank2"); - state->membank("bank1")->set_base(mem + 0x10000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(mem + 0x10000); + membank("bank2")->set_base(ram + 0x0000); // RAM space.install_read_bank (0x2000, 0xbfff, "bank3"); space.install_write_bank(0x2000, 0xbfff, "bank4"); - state->membank("bank3")->set_base(ram + 0x2000); - state->membank("bank4")->set_base(ram + 0x2000); + membank("bank3")->set_base(ram + 0x2000); + membank("bank4")->set_base(ram + 0x2000); // Video RAM - space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),state)); - space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),state)); + space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),this)); + space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),this)); } break; case 0x1E : @@ -818,16 +792,16 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // ROM space.install_read_bank (0x0000, 0x3fff, "bank1"); space.install_write_bank(0x0000, 0x3fff, "bank2"); - state->membank("bank1")->set_base(mem + 0x10000); - state->membank("bank2")->set_base(ram + 0x0000); + membank("bank1")->set_base(mem + 0x10000); + membank("bank2")->set_base(ram + 0x0000); // RAM space.install_read_bank (0x4000, 0xbfff, "bank3"); space.install_write_bank(0x4000, 0xbfff, "bank4"); - state->membank("bank3")->set_base(ram + 0x4000); - state->membank("bank4")->set_base(ram + 0x4000); + membank("bank3")->set_base(ram + 0x4000); + membank("bank4")->set_base(ram + 0x4000); // Video RAM - space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),state)); - space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),state)); + space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),this)); + space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),this)); } break; case 0x1F : @@ -835,11 +809,11 @@ static void pk8020_set_bank(running_machine &machine,UINT8 data) // RAM space.install_read_bank (0x0000, 0xbfff, "bank1"); space.install_write_bank(0x0000, 0xbfff, "bank2"); - state->membank("bank1")->set_base(ram); - state->membank("bank2")->set_base(ram); + membank("bank1")->set_base(ram); + membank("bank2")->set_base(ram); // Video RAM - space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),state)); - space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),state)); + space.install_read_handler (0xc000, 0xffff, read8_delegate(FUNC(pk8020_state::gzu_r),this)); + space.install_write_handler(0xc000, 0xffff, write8_delegate(FUNC(pk8020_state::gzu_w),this)); } break; @@ -865,27 +839,26 @@ WRITE8_MEMBER(pk8020_state::pk8020_portc_w) WRITE8_MEMBER(pk8020_state::pk8020_portb_w) { - device_t *fdc = machine().device("wd1793"); // Turn all motors off floppy_mon_w(floppy_get_device(machine(), 0), 1); floppy_mon_w(floppy_get_device(machine(), 1), 1); floppy_mon_w(floppy_get_device(machine(), 2), 1); floppy_mon_w(floppy_get_device(machine(), 3), 1); - wd17xx_set_side(fdc,BIT(data,4)); + wd17xx_set_side(m_wd1793,BIT(data,4)); if (BIT(data,0)) { - wd17xx_set_drive(fdc,0); + wd17xx_set_drive(m_wd1793,0); floppy_mon_w(floppy_get_device(machine(), 0), 0); floppy_drive_set_ready_state(floppy_get_device(machine(), 0), 1, 1); } else if (BIT(data,1)) { - wd17xx_set_drive(fdc,1); + wd17xx_set_drive(m_wd1793,1); floppy_mon_w(floppy_get_device(machine(), 1), 0); floppy_drive_set_ready_state(floppy_get_device(machine(), 1), 1, 1); } else if (BIT(data,2)) { - wd17xx_set_drive(fdc,2); + wd17xx_set_drive(m_wd1793,2); floppy_mon_w(floppy_get_device(machine(), 2), 0); floppy_drive_set_ready_state(floppy_get_device(machine(), 2), 1, 1); } else if (BIT(data,3)) { - wd17xx_set_drive(fdc,3); + wd17xx_set_drive(m_wd1793,3); floppy_mon_w(floppy_get_device(machine(), 3), 0); floppy_drive_set_ready_state(floppy_get_device(machine(), 3), 1, 1); } @@ -909,11 +882,9 @@ I8255A_INTERFACE( pk8020_ppi8255_interface_1 ) WRITE8_MEMBER(pk8020_state::pk8020_2_portc_w) { - device_t *speaker = machine().device(SPEAKER_TAG); - m_sound_gate = BIT(data,3); - speaker_level_w(speaker, m_sound_gate ? m_sound_level : 0); + speaker_level_w(m_speaker, m_sound_gate ? m_sound_level : 0); } I8255A_INTERFACE( pk8020_ppi8255_interface_2 ) @@ -938,11 +909,9 @@ I8255A_INTERFACE( pk8020_ppi8255_interface_3 ) WRITE_LINE_MEMBER(pk8020_state::pk8020_pit_out0) { - device_t *speaker = machine().device(SPEAKER_TAG); - m_sound_level = state; - speaker_level_w(speaker, m_sound_gate ? m_sound_level : 0); + speaker_level_w(m_speaker, m_sound_gate ? m_sound_level : 0); } @@ -974,7 +943,7 @@ const struct pit8253_config pk8020_pit8253_intf = WRITE_LINE_MEMBER(pk8020_state::pk8020_pic_set_int_line) { - machine().device("maincpu")->execute().set_input_line(0, state ? HOLD_LINE : CLEAR_LINE); + m_maincpu->set_input_line(0, state ? HOLD_LINE : CLEAR_LINE); } const struct pic8259_interface pk8020_pic8259_config = @@ -986,13 +955,26 @@ const struct pic8259_interface pk8020_pic8259_config = IRQ_CALLBACK_MEMBER(pk8020_state::pk8020_irq_callback) { - return pic8259_acknowledge(machine().device("pic8259")); + return pic8259_acknowledge(m_pic8259); +} + +void pk8020_state::machine_start() +{ + static const char *const keynames[] = { + "LINE0", "LINE1", "LINE2", "LINE3", "LINE4", "LINE5", "LINE6", "LINE7", + "LINE8", "LINE9", "LINE10", "LINE11", "LINE12", "LINE13", "LINE14", "LINE15" + }; + + for ( int i = 0; i < 16; i++ ) + { + m_io_port[i] = ioport(keynames[i]); + } } void pk8020_state::machine_reset() { - pk8020_set_bank(machine(),0); - machine().device("maincpu")->execute().set_irq_acknowledge_callback(device_irq_acknowledge_delegate(FUNC(pk8020_state::pk8020_irq_callback),this)); + pk8020_set_bank(0); + m_maincpu->set_irq_acknowledge_callback(device_irq_acknowledge_delegate(FUNC(pk8020_state::pk8020_irq_callback),this)); m_sound_gate = 0; m_sound_level = 0; @@ -1001,5 +983,5 @@ void pk8020_state::machine_reset() INTERRUPT_GEN_MEMBER(pk8020_state::pk8020_interrupt) { m_takt ^= 1; - pic8259_ir4_w(machine().device("pic8259"), 1); + pic8259_ir4_w(m_pic8259, 1); } diff --git a/src/mess/video/pk8020.c b/src/mess/video/pk8020.c index b573961796c..6e4cfcbf6f3 100644 --- a/src/mess/video/pk8020.c +++ b/src/mess/video/pk8020.c @@ -18,8 +18,8 @@ void pk8020_state::video_start() UINT32 pk8020_state::screen_update_pk8020(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) { int y, x, b, j; - UINT8 *gfx = memregion("gfx1")->base(); - UINT8 *ram = machine().device(RAM_TAG)->pointer(); + UINT8 *gfx = m_region_gfx1->base(); + UINT8 *ram = m_ram->pointer(); for (y = 0; y < 16; y++) {