diff options
Diffstat (limited to 'src/mame/drivers/applix.cpp')
-rw-r--r-- | src/mame/drivers/applix.cpp | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/src/mame/drivers/applix.cpp b/src/mame/drivers/applix.cpp index 6a1ffb04994..f0bdabb9ec8 100644 --- a/src/mame/drivers/applix.cpp +++ b/src/mame/drivers/applix.cpp @@ -853,18 +853,20 @@ MACHINE_CONFIG_START(applix_state::applix) /* basic machine hardware */ MCFG_DEVICE_ADD("maincpu", M68000, 30_MHz_XTAL / 4) // MC68000-P10 @ 7.5 MHz MCFG_DEVICE_PROGRAM_MAP(applix_mem) + MCFG_DEVICE_ADD("subcpu", Z80, 16_MHz_XTAL / 2) // Z80H MCFG_DEVICE_PROGRAM_MAP(subcpu_mem) MCFG_DEVICE_IO_MAP(subcpu_io) - MCFG_DEVICE_ADD("kbdcpu", I8051, 11060250) - MCFG_DEVICE_PROGRAM_MAP(keytronic_pc3270_program) - MCFG_DEVICE_IO_MAP(keytronic_pc3270_io) - MCFG_MCS51_PORT_P1_IN_CB(READ8(*this, applix_state, p1_read)) - MCFG_MCS51_PORT_P1_OUT_CB(WRITE8(*this, applix_state, p1_write)) - MCFG_MCS51_PORT_P2_IN_CB(READ8(*this, applix_state, p2_read)) - MCFG_MCS51_PORT_P2_OUT_CB(WRITE8(*this, applix_state, p2_write)) - MCFG_MCS51_PORT_P3_IN_CB(READ8(*this, applix_state, p3_read)) - MCFG_MCS51_PORT_P3_OUT_CB(WRITE8(*this, applix_state, p3_write)) + + i8051_device &kbdcpu(I8051(config, "kbdcpu", 11060250)); + kbdcpu.set_addrmap(AS_PROGRAM, &applix_state::keytronic_pc3270_program); + kbdcpu.set_addrmap(AS_IO, &applix_state::keytronic_pc3270_io); + kbdcpu.port_in_cb<1>().set(FUNC(applix_state::p1_read)); + kbdcpu.port_out_cb<1>().set(FUNC(applix_state::p1_write)); + kbdcpu.port_in_cb<2>().set(FUNC(applix_state::p2_read)); + kbdcpu.port_out_cb<2>().set(FUNC(applix_state::p2_write)); + kbdcpu.port_in_cb<3>().set(FUNC(applix_state::p3_read)); + kbdcpu.port_out_cb<3>().set(FUNC(applix_state::p3_write)); /* video hardware */ MCFG_SCREEN_ADD("screen", RASTER) |