From 6c3f17c5956faefd2f1dc026468db2da03eee2bc Mon Sep 17 00:00:00 2001 From: smf- Date: Sun, 22 Dec 2013 16:27:05 +0000 Subject: replaced read rx/cts/dcd callbacks in I8251 with write handlers, which allows multiple chips to be connected together without using glue methods. [smf] --- src/mess/drivers/rainbow.c | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) (limited to 'src/mess/drivers/rainbow.c') diff --git a/src/mess/drivers/rainbow.c b/src/mess/drivers/rainbow.c index c0b87294a32..57ef93b8a3b 100644 --- a/src/mess/drivers/rainbow.c +++ b/src/mess/drivers/rainbow.c @@ -272,9 +272,6 @@ public: DECLARE_READ8_MEMBER(system_parameter_r); - DECLARE_READ_LINE_MEMBER(dsr_r); - - DECLARE_READ_LINE_MEMBER(kbd_rx); DECLARE_WRITE_LINE_MEMBER(kbd_tx); DECLARE_WRITE_LINE_MEMBER(kbd_rxready_w); DECLARE_WRITE_LINE_MEMBER(kbd_txready_w); @@ -510,6 +507,7 @@ static INPUT_PORTS_START( rainbow100b_in ) PORT_DIPNAME( 0x02, 0x02, "W13 (FACTORY TEST A, LEAVE OFF)") PORT_TOGGLE PORT_DIPSETTING( 0x02, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) + PORT_START("W14") PORT_DIPNAME( 0x04, 0x04, "W14 (FACTORY TEST B, LEAVE OFF)") PORT_TOGGLE PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) @@ -523,6 +521,7 @@ static INPUT_PORTS_START( rainbow100b_in ) PORT_DIPNAME( 0x01, 0x00, "W18 (FACTORY TEST D, LEAVE OFF) (8251A: DSR)") PORT_TOGGLE PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( On ) ) + PORT_WRITE_LINE_DEVICE_MEMBER("kbdser", i8251_device, write_dsr) // J17 jumper on FDC controller board shifts drive select (experimental) - PORT_START("FLOPPY CONTROLLER") @@ -1119,11 +1118,6 @@ WRITE8_MEMBER( rainbow_state::diagnostic_w ) } -READ_LINE_MEMBER(rainbow_state::dsr_r) -{ - return m_inp4->read(); // W18 (1/0) -} - // KEYBOARD void rainbow_state::update_kbd_irq() { @@ -1138,12 +1132,6 @@ void rainbow_state::update_kbd_irq() } -READ_LINE_MEMBER(rainbow_state::kbd_rx) -{ -// printf("read keyboard\n"); - return 0x00; -} - WRITE_LINE_MEMBER(rainbow_state::kbd_tx) { // printf("%02x to keyboard\n", state); @@ -1246,9 +1234,7 @@ static const floppy_interface floppy_intf = static const i8251_interface i8251_intf = { - DEVCB_DRIVER_LINE_MEMBER(rainbow_state, kbd_rx), // rxd in DEVCB_DRIVER_LINE_MEMBER(rainbow_state, kbd_tx), // txd out - DEVCB_DRIVER_LINE_MEMBER(rainbow_state, dsr_r), // dsr DEVCB_NULL, // dtr DEVCB_NULL, // rts DEVCB_DRIVER_LINE_MEMBER(rainbow_state, kbd_rxready_w), -- cgit v1.2.3