diff options
Diffstat (limited to 'src/mame/drivers/zac_1.cpp')
-rw-r--r-- | src/mame/drivers/zac_1.cpp | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/src/mame/drivers/zac_1.cpp b/src/mame/drivers/zac_1.cpp index b8adb03a90f..940fa24dbae 100644 --- a/src/mame/drivers/zac_1.cpp +++ b/src/mame/drivers/zac_1.cpp @@ -46,7 +46,7 @@ public: DECLARE_READ8_MEMBER(ctrl_r); DECLARE_WRITE8_MEMBER(ctrl_w); - DECLARE_READ8_MEMBER(serial_r); + DECLARE_READ_LINE_MEMBER(serial_r); DECLARE_WRITE_LINE_MEMBER(serial_w); DECLARE_READ8_MEMBER(reset_int_r); DECLARE_WRITE8_MEMBER(reset_int_w); @@ -77,8 +77,11 @@ ADDRESS_MAP_END static ADDRESS_MAP_START( zac_1_io, AS_IO, 8, zac_1_state ) ADDRESS_MAP_UNMAP_HIGH +ADDRESS_MAP_END + +static ADDRESS_MAP_START( zac_1_data, AS_DATA, 8, zac_1_state ) + ADDRESS_MAP_UNMAP_HIGH AM_RANGE(S2650_CTRL_PORT, S2650_CTRL_PORT) AM_READWRITE(ctrl_r,ctrl_w) - AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ(serial_r) ADDRESS_MAP_END static INPUT_PORTS_START( zac_1 ) @@ -177,7 +180,7 @@ WRITE8_MEMBER( zac_1_state::reset_int_w ) m_maincpu->set_input_line(INPUT_LINE_IRQ0, CLEAR_LINE); } -READ8_MEMBER( zac_1_state::serial_r ) +READ_LINE_MEMBER( zac_1_state::serial_r ) { // from printer return 0; @@ -248,7 +251,9 @@ static MACHINE_CONFIG_START( zac_1 ) MCFG_CPU_ADD("maincpu", S2650, 6000000/2) // no xtal, just 2 chips forming a random oscillator MCFG_CPU_PROGRAM_MAP(zac_1_map) MCFG_CPU_IO_MAP(zac_1_io) - MCFG_S2650_FLAG_HANDLER(WRITELINE(zac_1_state, serial_w)) + MCFG_CPU_DATA_MAP(zac_1_data) + MCFG_S2650_SENSE_INPUT(READLINE(zac_1_state, serial_r)) + MCFG_S2650_FLAG_OUTPUT(WRITELINE(zac_1_state, serial_w)) MCFG_NVRAM_ADD_0FILL("ram") MCFG_TIMER_DRIVER_ADD_PERIODIC("zac_1_inttimer", zac_1_state, zac_1_inttimer, attotime::from_hz(200)) @@ -272,9 +277,11 @@ ADDRESS_MAP_END static ADDRESS_MAP_START( locomotp_io, AS_IO, 8, zac_1_state) ADDRESS_MAP_UNMAP_HIGH +ADDRESS_MAP_END + +static ADDRESS_MAP_START( locomotp_data, AS_DATA, 8, zac_1_state) AM_RANGE(S2650_CTRL_PORT, S2650_CTRL_PORT) AM_READWRITE(ctrl_r,ctrl_w) AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READ(reset_int_r) - AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ(serial_r) ADDRESS_MAP_END READ8_MEMBER( zac_1_state::reset_int_r ) @@ -288,6 +295,7 @@ static MACHINE_CONFIG_DERIVED( locomotp, zac_1 ) MCFG_CPU_MODIFY("maincpu") MCFG_CPU_PROGRAM_MAP(locomotp_map) MCFG_CPU_IO_MAP(locomotp_io) + MCFG_CPU_DATA_MAP(locomotp_data) // also has sound cpu MACHINE_CONFIG_END |