summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/sdk86.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/sdk86.cpp')
-rw-r--r--src/mame/drivers/sdk86.cpp26
1 files changed, 8 insertions, 18 deletions
diff --git a/src/mame/drivers/sdk86.cpp b/src/mame/drivers/sdk86.cpp
index f2561185988..0ca083a2898 100644
--- a/src/mame/drivers/sdk86.cpp
+++ b/src/mame/drivers/sdk86.cpp
@@ -41,23 +41,18 @@ ToDo:
class sdk86_state : public driver_device
{
public:
- sdk86_state(const machine_config &mconfig, device_type type, const char *tag) :
- driver_device(mconfig, type, tag) ,
- m_maincpu(*this, "maincpu"),
- m_usart(*this, I8251_TAG)
- {
- }
-
- required_device<cpu_device> m_maincpu;
- required_device<i8251_device> m_usart;
+ sdk86_state(const machine_config &mconfig, device_type type, const char *tag)
+ : driver_device(mconfig, type, tag)
+ , m_maincpu(*this, "maincpu")
+ { }
DECLARE_WRITE8_MEMBER(scanlines_w);
DECLARE_WRITE8_MEMBER(digit_w);
DECLARE_READ8_MEMBER(kbd_r);
- DECLARE_WRITE_LINE_MEMBER( write_usart_clock );
-
+private:
uint8_t m_digit;
+ required_device<cpu_device> m_maincpu;
};
static ADDRESS_MAP_START(sdk86_mem, AS_PROGRAM, 16, sdk86_state)
@@ -131,12 +126,6 @@ READ8_MEMBER( sdk86_state::kbd_r )
return data;
}
-WRITE_LINE_MEMBER( sdk86_state::write_usart_clock )
-{
- m_usart->write_txc(state);
- m_usart->write_rxc(state);
-}
-
static DEVICE_INPUT_DEFAULTS_START( terminal )
DEVICE_INPUT_DEFAULTS( "RS232_TXBAUD", 0xff, RS232_BAUD_4800 )
DEVICE_INPUT_DEFAULTS( "RS232_RXBAUD", 0xff, RS232_BAUD_4800 )
@@ -167,7 +156,8 @@ static MACHINE_CONFIG_START( sdk86 )
MCFG_DEVICE_CARD_DEVICE_INPUT_DEFAULTS("terminal", terminal)
MCFG_DEVICE_ADD("usart_clock", CLOCK, 307200)
- MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(sdk86_state, write_usart_clock))
+ MCFG_CLOCK_SIGNAL_HANDLER(DEVWRITELINE(I8251_TAG, i8251_device, write_txc))
+ MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE(I8251_TAG, i8251_device, write_rxc))
MCFG_DEVICE_ADD("i8279", I8279, 2500000) // based on divider
MCFG_I8279_OUT_SL_CB(WRITE8(sdk86_state, scanlines_w)) // scan SL lines