bus/rs232.cpp: completed removal of MCFG macros (nw)

This commit is contained in:
Ivan Vangelista 2018-10-23 18:24:43 +02:00
parent 66b5dd9a1a
commit 769e13f265
99 changed files with 842 additions and 866 deletions

View File

@ -82,7 +82,7 @@ MACHINE_CONFIG_START(adam_spi_device::device_add_mconfig)
MCFG_DEVICE_ADD(MC2661_TAG, MC2661, XTAL(4'915'200))
MCFG_DEVICE_ADD(RS232_TAG, RS232_PORT, default_rs232_devices, nullptr)
RS232_PORT(config, RS232_TAG, default_rs232_devices, nullptr);
centronics_device &centronics(CENTRONICS(config, "centronics", centronics_devices, "printer"));
centronics.set_data_input_buffer("cent_data_in");

View File

@ -47,11 +47,11 @@ MACHINE_CONFIG_START(cpc_rs232_device::device_add_mconfig)
m_dart->out_dtra_callback().set(m_rs232, FUNC(rs232_port_device::write_dtr));
m_dart->out_rtsa_callback().set(m_rs232, FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232",RS232_PORT,default_rs232_devices,nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_dart,z80dart_device,rxa_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_dart,z80dart_device,dcda_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_dart,z80dart_device,ctsa_w))
// MCFG_RS232_RI_HANDLER(WRITELINE(m_dart,z80dart_device,ria_w))
RS232_PORT(config, m_rs232, default_rs232_devices, nullptr);
m_rs232->rxd_handler().set(m_dart, FUNC(z80dart_device::rxa_w));
m_rs232->dcd_handler().set(m_dart, FUNC(z80dart_device::dcda_w));
m_rs232->cts_handler().set(m_dart, FUNC(z80dart_device::ctsa_w));
// m_rs232->ri_handler().set(m_dart, FUNC(z80dart_device::ria_w));
// pass-through
MCFG_DEVICE_ADD("exp", CPC_EXPANSION_SLOT, 0)

View File

@ -80,16 +80,17 @@ void mshark_device::mshark_io(address_map &map)
// device_add_mconfig - add device configuration
//-------------------------------------------------
MACHINE_CONFIG_START(mshark_device::device_add_mconfig)
void mshark_device::device_add_mconfig(machine_config &config)
{
// basic machine hardware
MCFG_DEVICE_ADD(I8085_TAG, I8085A, 1000000)
MCFG_DEVICE_PROGRAM_MAP(mshark_mem)
MCFG_DEVICE_IO_MAP(mshark_io)
I8085A(config, m_maincpu, 1000000);
m_maincpu->set_addrmap(AS_PROGRAM, &mshark_device::mshark_mem);
m_maincpu->set_addrmap(AS_IO, &mshark_device::mshark_io);
// devices
MCFG_HARDDISK_ADD("harddisk1")
MCFG_DEVICE_ADD(RS232_TAG, RS232_PORT, default_rs232_devices, nullptr)
MACHINE_CONFIG_END
HARDDISK(config, "harddisk1", 0);
RS232_PORT(config, RS232_TAG, default_rs232_devices, nullptr);
}
//-------------------------------------------------

View File

@ -244,10 +244,10 @@ MACHINE_CONFIG_START(softbox_device::device_add_mconfig)
i8251.dtr_handler().set(RS232_TAG, FUNC(rs232_port_device::write_dtr));
i8251.rts_handler().set(RS232_TAG, FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD(RS232_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(I8251_TAG, i8251_device, write_rxd))
MCFG_RS232_DSR_HANDLER(WRITELINE(I8251_TAG, i8251_device, write_dsr))
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("terminal", terminal)
rs232_port_device &rs232(RS232_PORT(config, RS232_TAG, default_rs232_devices, nullptr));
rs232.rxd_handler().set(I8251_TAG, FUNC(i8251_device::write_rxd));
rs232.dsr_handler().set(I8251_TAG, FUNC(i8251_device::write_dsr));
rs232.set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(terminal));
i8255_device &ppi0(I8255A(config, I8255_0_TAG));
ppi0.in_pa_callback().set(FUNC(softbox_device::ppi0_pa_r));

View File

@ -39,7 +39,8 @@ DEFINE_DEVICE_TYPE(ISA8_COM, isa8_com_device, "isa_com", "Communications Adapter
// device_add_mconfig - add device configuration
//-------------------------------------------------
MACHINE_CONFIG_START(isa8_com_device::device_add_mconfig)
void isa8_com_device::device_add_mconfig(machine_config &config)
{
ins8250_device &uart0(INS8250(config, "uart_0", XTAL(1'843'200)));
uart0.out_tx_callback().set("serport0", FUNC(rs232_port_device::write_txd));
uart0.out_dtr_callback().set("serport0", FUNC(rs232_port_device::write_dtr));
@ -61,34 +62,34 @@ MACHINE_CONFIG_START(isa8_com_device::device_add_mconfig)
uart3.out_rts_callback().set("serport3", FUNC(rs232_port_device::write_rts));
uart3.out_int_callback().set(FUNC(isa8_com_device::pc_com_interrupt_2));*/
MCFG_DEVICE_ADD( "serport0", RS232_PORT, isa_com, "logitech_mouse" )
MCFG_RS232_RXD_HANDLER(WRITELINE(uart0, ins8250_uart_device, rx_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(uart0, ins8250_uart_device, dcd_w))
MCFG_RS232_DSR_HANDLER(WRITELINE(uart0, ins8250_uart_device, dsr_w))
MCFG_RS232_RI_HANDLER(WRITELINE(uart0, ins8250_uart_device, ri_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(uart0, ins8250_uart_device, cts_w))
rs232_port_device &serport0(RS232_PORT(config, "serport0", isa_com, "logitech_mouse"));
serport0.rxd_handler().set(uart0, FUNC(ins8250_uart_device::rx_w));
serport0.dcd_handler().set(uart0, FUNC(ins8250_uart_device::dcd_w));
serport0.dsr_handler().set(uart0, FUNC(ins8250_uart_device::dsr_w));
serport0.ri_handler().set(uart0, FUNC(ins8250_uart_device::ri_w));
serport0.cts_handler().set(uart0, FUNC(ins8250_uart_device::cts_w));
MCFG_DEVICE_ADD( "serport1", RS232_PORT, isa_com, nullptr )
MCFG_RS232_RXD_HANDLER(WRITELINE(uart1, ins8250_uart_device, rx_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(uart1, ins8250_uart_device, dcd_w))
MCFG_RS232_DSR_HANDLER(WRITELINE(uart1, ins8250_uart_device, dsr_w))
MCFG_RS232_RI_HANDLER(WRITELINE(uart1, ins8250_uart_device, ri_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(uart1, ins8250_uart_device, cts_w))
rs232_port_device &serport1(RS232_PORT(config, "serport1", isa_com, nullptr));
serport1.rxd_handler().set(uart1, FUNC(ins8250_uart_device::rx_w));
serport1.dcd_handler().set(uart1, FUNC(ins8250_uart_device::dcd_w));
serport1.dsr_handler().set(uart1, FUNC(ins8250_uart_device::dsr_w));
serport1.ri_handler().set(uart1, FUNC(ins8250_uart_device::ri_w));
serport1.cts_handler().set(uart1, FUNC(ins8250_uart_device::cts_w));
//MCFG_DEVICE_ADD( "serport2", RS232_PORT, isa_com, nullptr )
//MCFG_RS232_RXD_HANDLER(WRITELINE(uart2, ins8250_uart_device, rx_w))
//MCFG_RS232_DCD_HANDLER(WRITELINE(uart2, ins8250_uart_device, dcd_w))
//MCFG_RS232_DSR_HANDLER(WRITELINE(uart2, ins8250_uart_device, dsr_w))
//MCFG_RS232_RI_HANDLER(WRITELINE(uart2, ins8250_uart_device, ri_w))
//MCFG_RS232_CTS_HANDLER(WRITELINE(uart2, ins8250_uart_device, cts_w))
//rs232_port_device &serport2(RS232_PORT(config, "serport2", isa_com, nullptr));
//serport2.rxd_handler().set(uart2, FUNC(ins8250_uart_device::rx_w));
//serport2.dcd_handler().set(uart2, FUNC(ins8250_uart_device::dcd_w));
//serport2.dsr_handler().set(uart2, FUNC(ins8250_uart_device::dsr_w));
//serport2.ri_handler().set(uart2, FUNC(ins8250_uart_device::ri_w));
//serport2.cts_handler().set(uart2, FUNC(ins8250_uart_device::cts_w));
//MCFG_DEVICE_ADD( "serport3", RS232_PORT, isa_com, nullptr )
//MCFG_RS232_RXD_HANDLER(WRITELINE(uart3, ins8250_uart_device, rx_w))
//MCFG_RS232_DCD_HANDLER(WRITELINE(uart3, ins8250_uart_device, dcd_w))
//MCFG_RS232_DSR_HANDLER(WRITELINE(uart3, ins8250_uart_device, dsr_w))
//MCFG_RS232_RI_HANDLER(WRITELINE(uart3, ins8250_uart_device, ri_w))
//MCFG_RS232_CTS_HANDLER(WRITELINE(uart3, ins8250_uart_device, cts_w))
MACHINE_CONFIG_END
//rs232_port_device &serport3(RS232_PORT(config, "serport3", isa_com, nullptr));
//serport3.rxd_handler().set(uart3, FUNC(ins8250_uart_device::rx_w));
//serport3.dcd_handler().set(uart3, FUNC(ins8250_uart_device::dcd_w));
//serport3.dsr_handler().set(uart3, FUNC(ins8250_uart_device::dsr_w));
//serport3.ri_handler().set(uart3, FUNC(ins8250_uart_device::ri_w));
//serport3.cts_handler().set(uart3, FUNC(ins8250_uart_device::cts_w));
}
//**************************************************************************
// LIVE DEVICE
@ -141,7 +142,8 @@ DEFINE_DEVICE_TYPE(ISA8_COM_AT, isa8_com_at_device, "isa_com_at", "Communication
// device_add_mconfig - add device configuration
//-------------------------------------------------
MACHINE_CONFIG_START(isa8_com_at_device::device_add_mconfig)
void isa8_com_at_device::device_add_mconfig(machine_config &config)
{
ns16450_device &uart0(NS16450(config, "uart_0", XTAL(1'843'200))); /* Verified: IBM P/N 6320947 Serial/Parallel card uses an NS16450N */
uart0.out_tx_callback().set("serport0", FUNC(rs232_port_device::write_txd));
uart0.out_dtr_callback().set("serport0", FUNC(rs232_port_device::write_dtr));
@ -162,23 +164,24 @@ MACHINE_CONFIG_START(isa8_com_at_device::device_add_mconfig)
uart3.out_dtr_callback().set("serport3", FUNC(rs232_port_device::write_dtr));
uart3.out_rts_callback().set("serport3", FUNC(rs232_port_device::write_rts));
uart3.out_int_callback().set(FUNC(isa8_com_device::pc_com_interrupt_2));*/
MCFG_DEVICE_ADD( "serport0", RS232_PORT, isa_com, "logitech_mouse" )
MCFG_RS232_RXD_HANDLER(WRITELINE(uart0, ins8250_uart_device, rx_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(uart0, ins8250_uart_device, dcd_w))
MCFG_RS232_DSR_HANDLER(WRITELINE(uart0, ins8250_uart_device, dsr_w))
MCFG_RS232_RI_HANDLER(WRITELINE(uart0, ins8250_uart_device, ri_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(uart0, ins8250_uart_device, cts_w))
MCFG_DEVICE_ADD( "serport1", RS232_PORT, isa_com, nullptr )
MCFG_RS232_RXD_HANDLER(WRITELINE(uart1, ins8250_uart_device, rx_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(uart1, ins8250_uart_device, dcd_w))
MCFG_RS232_DSR_HANDLER(WRITELINE(uart1, ins8250_uart_device, dsr_w))
MCFG_RS232_RI_HANDLER(WRITELINE(uart1, ins8250_uart_device, ri_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(uart1, ins8250_uart_device, cts_w))
rs232_port_device &serport0(RS232_PORT(config, "serport0", isa_com, "logitech_mouse"));
serport0.rxd_handler().set(uart0, FUNC(ins8250_uart_device::rx_w));
serport0.dcd_handler().set(uart0, FUNC(ins8250_uart_device::dcd_w));
serport0.dsr_handler().set(uart0, FUNC(ins8250_uart_device::dsr_w));
serport0.ri_handler().set(uart0, FUNC(ins8250_uart_device::ri_w));
serport0.cts_handler().set(uart0, FUNC(ins8250_uart_device::cts_w));
// MCFG_DEVICE_ADD( "serport2", RS232_PORT, isa_com, nullptr )
// MCFG_DEVICE_ADD( "serport3", RS232_PORT, isa_com, nullptr )
MACHINE_CONFIG_END
rs232_port_device &serport1(RS232_PORT(config, "serport1", isa_com, nullptr));
serport1.rxd_handler().set(uart1, FUNC(ins8250_uart_device::rx_w));
serport1.dcd_handler().set(uart1, FUNC(ins8250_uart_device::dcd_w));
serport1.dsr_handler().set(uart1, FUNC(ins8250_uart_device::dsr_w));
serport1.ri_handler().set(uart1, FUNC(ins8250_uart_device::ri_w));
serport1.cts_handler().set(uart1, FUNC(ins8250_uart_device::cts_w));
//RS232_PORT(config, "serport2", isa_com, nullptr);
//RS232_PORT(config, "serport3", isa_com, nullptr);
}
//-------------------------------------------------
// isa8_com_device - constructor

View File

@ -39,12 +39,12 @@ MACHINE_CONFIG_START(isa8_myb3k_com_device::device_add_mconfig)
m_usart->rxrdy_handler().set(FUNC(isa8_myb3k_com_device::com_int_rx));
m_usart->txrdy_handler().set(FUNC(isa8_myb3k_com_device::com_int_tx));
MCFG_DEVICE_ADD( "com1", RS232_PORT, isa8_myb3k_com, nullptr )
MCFG_RS232_RXD_HANDLER(WRITELINE("usart", i8251_device, write_rxd))
MCFG_RS232_DSR_HANDLER(WRITELINE("usart", i8251_device, write_dsr))
MCFG_RS232_CTS_HANDLER(WRITELINE("usart", i8251_device, write_cts))
MCFG_RS232_RI_HANDLER(WRITELINE(*this, isa8_myb3k_com_device, ri_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(*this, isa8_myb3k_com_device, dcd_w))
rs232_port_device &com1(RS232_PORT(config, "com1", isa8_myb3k_com, nullptr));
com1.rxd_handler().set(m_usart, FUNC(i8251_device::write_rxd));
com1.dsr_handler().set(m_usart, FUNC(i8251_device::write_dsr));
com1.cts_handler().set(m_usart, FUNC(i8251_device::write_cts));
com1.ri_handler().set(FUNC(isa8_myb3k_com_device::ri_w));
com1.dcd_handler().set(FUNC(isa8_myb3k_com_device::dcd_w));
// TODO: configure RxC and TxC from RS232 connector when these are defined is rs232.h
/* Timer chip */

View File

@ -90,7 +90,7 @@ MACHINE_CONFIG_START(newbrain_eim_device::device_add_mconfig)
ACIA6850(config, m_acia, 0);
m_acia->irq_handler().set(FUNC(newbrain_eim_device::acia_interrupt));
MCFG_DEVICE_ADD(RS232_TAG, RS232_PORT, default_rs232_devices, nullptr)
RS232_PORT(config, RS232_TAG, default_rs232_devices, nullptr);
MCFG_NEWBRAIN_EXPANSION_SLOT_ADD(NEWBRAIN_EXPANSION_SLOT_TAG, XTAL(16'000'000)/8, newbrain_expansion_cards, "fdc")

View File

@ -46,19 +46,20 @@ DEFINE_DEVICE_TYPE(NUBUS_BOOTBUG, nubus_bootbug_device, "nb_btbug", "Brigent Boo
// device_add_mconfig - add device configuration
//-------------------------------------------------
MACHINE_CONFIG_START(nubus_bootbug_device::device_add_mconfig)
ns16450_device &uart(NS16450(config, "uart_0", XTAL(1'843'200)));
uart.out_tx_callback().set("serport0", FUNC(rs232_port_device::write_txd));
uart.out_dtr_callback().set("serport0", FUNC(rs232_port_device::write_dtr));
uart.out_rts_callback().set("serport0", FUNC(rs232_port_device::write_rts));
void nubus_bootbug_device::device_add_mconfig(machine_config &config)
{
NS16450(config, m_uart, XTAL(1'843'200));
m_uart->out_tx_callback().set("serport0", FUNC(rs232_port_device::write_txd));
m_uart->out_dtr_callback().set("serport0", FUNC(rs232_port_device::write_dtr));
m_uart->out_rts_callback().set("serport0", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD( "serport0", RS232_PORT, isa_com, "terminal" )
MCFG_RS232_RXD_HANDLER(WRITELINE(uart, ins8250_uart_device, rx_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(uart, ins8250_uart_device, dcd_w))
MCFG_RS232_DSR_HANDLER(WRITELINE(uart, ins8250_uart_device, dsr_w))
MCFG_RS232_RI_HANDLER(WRITELINE(uart, ins8250_uart_device, ri_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(uart, ins8250_uart_device, cts_w))
MACHINE_CONFIG_END
rs232_port_device &serport0(RS232_PORT(config, "serport0", isa_com, "terminal"));
serport0.rxd_handler().set(m_uart, FUNC(ins8250_uart_device::rx_w));
serport0.dcd_handler().set(m_uart, FUNC(ins8250_uart_device::dcd_w));
serport0.dsr_handler().set(m_uart, FUNC(ins8250_uart_device::dsr_w));
serport0.ri_handler().set(m_uart, FUNC(ins8250_uart_device::ri_w));
serport0.cts_handler().set(m_uart, FUNC(ins8250_uart_device::cts_w));
}
//-------------------------------------------------
// rom_region - device-specific ROM region

View File

@ -37,7 +37,8 @@ DEFINE_DEVICE_TYPE(NUBUS_QUADRALINK, nubus_quadralink_device, "nb_qdlink", "Appl
// device_add_mconfig - add device configuration
//-------------------------------------------------
MACHINE_CONFIG_START(nubus_quadralink_device::device_add_mconfig)
void nubus_quadralink_device::device_add_mconfig(machine_config &config)
{
SCC8530N(config, m_scc1, 3.6864_MHz_XTAL);
m_scc1->out_txda_callback().set("serport0", FUNC(rs232_port_device::write_txd));
m_scc1->out_txdb_callback().set("serport1", FUNC(rs232_port_device::write_txd));
@ -46,26 +47,26 @@ MACHINE_CONFIG_START(nubus_quadralink_device::device_add_mconfig)
m_scc2->out_txda_callback().set("serport2", FUNC(rs232_port_device::write_txd));
m_scc2->out_txdb_callback().set("serport3", FUNC(rs232_port_device::write_txd));
MCFG_DEVICE_ADD("serport0", RS232_PORT, isa_com, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_scc1, z80scc_device, rxa_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_scc1, z80scc_device, dcda_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_scc1, z80scc_device, ctsa_w))
rs232_port_device &serport0(RS232_PORT(config, "serport0", isa_com, nullptr));
serport0.rxd_handler().set(m_scc1, FUNC(z80scc_device::rxa_w));
serport0.dcd_handler().set(m_scc1, FUNC(z80scc_device::dcda_w));
serport0.cts_handler().set(m_scc1, FUNC(z80scc_device::ctsa_w));
MCFG_DEVICE_ADD("serport1", RS232_PORT, isa_com, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_scc1, z80scc_device, rxb_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_scc1, z80scc_device, dcdb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_scc1, z80scc_device, ctsb_w))
rs232_port_device &serport1(RS232_PORT(config, "serport1", isa_com, nullptr));
serport1.rxd_handler().set(m_scc1, FUNC(z80scc_device::rxb_w));
serport1.dcd_handler().set(m_scc1, FUNC(z80scc_device::dcdb_w));
serport1.cts_handler().set(m_scc1, FUNC(z80scc_device::ctsb_w));
MCFG_DEVICE_ADD("serport2", RS232_PORT, isa_com, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_scc2, z80scc_device, rxa_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_scc2, z80scc_device, dcda_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_scc2, z80scc_device, ctsa_w))
rs232_port_device &serport2(RS232_PORT(config, "serport2", isa_com, nullptr));
serport2.rxd_handler().set(m_scc2, FUNC(z80scc_device::rxa_w));
serport2.dcd_handler().set(m_scc2, FUNC(z80scc_device::dcda_w));
serport2.cts_handler().set(m_scc2, FUNC(z80scc_device::ctsa_w));
MCFG_DEVICE_ADD("serport3", RS232_PORT, isa_com, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_scc2, z80scc_device, rxb_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_scc2, z80scc_device, dcdb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_scc2, z80scc_device, ctsb_w))
MACHINE_CONFIG_END
rs232_port_device &serport3(RS232_PORT(config, "serport3", isa_com, nullptr));
serport3.rxd_handler().set(m_scc2, FUNC(z80scc_device::rxb_w));
serport3.dcd_handler().set(m_scc2, FUNC(z80scc_device::dcdb_w));
serport3.cts_handler().set(m_scc2, FUNC(z80scc_device::ctsb_w));
}
//-------------------------------------------------
// rom_region - device-specific ROM region

View File

@ -33,20 +33,21 @@ DEFINE_DEVICE_TYPE(POFO_HPC102, pofo_hpc102_device, "pofo_hpc102", "Atari Portfo
// device_add_mconfig - add device configuration
//-------------------------------------------------
MACHINE_CONFIG_START(pofo_hpc102_device::device_add_mconfig)
void pofo_hpc102_device::device_add_mconfig(machine_config &config)
{
INS8250(config, m_uart, XTAL(1'843'200)); // should be INS8250A
m_uart->out_tx_callback().set(RS232_TAG, FUNC(rs232_port_device::write_txd));
m_uart->out_dtr_callback().set(RS232_TAG, FUNC(rs232_port_device::write_dtr));
m_uart->out_rts_callback().set(RS232_TAG, FUNC(rs232_port_device::write_rts));
m_uart->out_int_callback().set(FUNC(device_portfolio_expansion_slot_interface::eint_w));
MCFG_DEVICE_ADD(RS232_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_uart, ins8250_uart_device, rx_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_uart, ins8250_uart_device, dcd_w))
MCFG_RS232_DSR_HANDLER(WRITELINE(m_uart, ins8250_uart_device, dsr_w))
MCFG_RS232_RI_HANDLER(WRITELINE(m_uart, ins8250_uart_device, ri_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_uart, ins8250_uart_device, cts_w))
MACHINE_CONFIG_END
rs232_port_device &rs232(RS232_PORT(config, RS232_TAG, default_rs232_devices, nullptr));
rs232.rxd_handler().set(m_uart, FUNC(ins8250_uart_device::rx_w));
rs232.dcd_handler().set(m_uart, FUNC(ins8250_uart_device::dcd_w));
rs232.dsr_handler().set(m_uart, FUNC(ins8250_uart_device::dsr_w));
rs232.ri_handler().set(m_uart, FUNC(ins8250_uart_device::ri_w));
rs232.cts_handler().set(m_uart, FUNC(ins8250_uart_device::cts_w));
}
//**************************************************************************

View File

@ -8,30 +8,6 @@
#include "diserial.h"
#define MCFG_RS232_RXD_HANDLER(_devcb) \
downcast<rs232_port_device &>(*device).set_rxd_handler(DEVCB_##_devcb);
#define MCFG_RS232_DCD_HANDLER(_devcb) \
downcast<rs232_port_device &>(*device).set_dcd_handler(DEVCB_##_devcb);
#define MCFG_RS232_DSR_HANDLER(_devcb) \
downcast<rs232_port_device &>(*device).set_dsr_handler(DEVCB_##_devcb);
#define MCFG_RS232_RI_HANDLER(_devcb) \
downcast<rs232_port_device &>(*device).set_ri_handler(DEVCB_##_devcb);
#define MCFG_RS232_SI_HANDLER(_devcb) \
downcast<rs232_port_device &>(*device).set_si_handler(DEVCB_##_devcb);
#define MCFG_RS232_CTS_HANDLER(_devcb) \
downcast<rs232_port_device &>(*device).set_cts_handler(DEVCB_##_devcb);
#define MCFG_RS232_RXC_HANDLER(_devcb) \
downcast<rs232_port_device &>(*device).set_rxc_handler(DEVCB_##_devcb);
#define MCFG_RS232_TXC_HANDLER(_devcb) \
downcast<rs232_port_device &>(*device).set_txc_handler(DEVCB_##_devcb);
#define RS232_BAUD_110 (0x00)
#define RS232_BAUD_150 (0x01)
#define RS232_BAUD_300 (0x02)
@ -135,14 +111,6 @@ public:
virtual ~rs232_port_device();
// static configuration helpers
template <class Object> devcb_base &set_rxd_handler(Object &&cb) { return m_rxd_handler.set_callback(std::forward<Object>(cb)); }
template <class Object> devcb_base &set_dcd_handler(Object &&cb) { return m_dcd_handler.set_callback(std::forward<Object>(cb)); }
template <class Object> devcb_base &set_dsr_handler(Object &&cb) { return m_dsr_handler.set_callback(std::forward<Object>(cb)); }
template <class Object> devcb_base &set_ri_handler(Object &&cb) { return m_ri_handler.set_callback(std::forward<Object>(cb)); }
template <class Object> devcb_base &set_si_handler(Object &&cb) { return m_si_handler.set_callback(std::forward<Object>(cb)); }
template <class Object> devcb_base &set_cts_handler(Object &&cb) { return m_cts_handler.set_callback(std::forward<Object>(cb)); }
template <class Object> devcb_base &set_rxc_handler(Object &&cb) { return m_rxc_handler.set_callback(std::forward<Object>(cb)); }
template <class Object> devcb_base &set_txc_handler(Object &&cb) { return m_txc_handler.set_callback(std::forward<Object>(cb)); }
auto rxd_handler() { return m_rxd_handler.bind(); }
auto dcd_handler() { return m_dcd_handler.bind(); }
auto dsr_handler() { return m_dsr_handler.bind(); }

View File

@ -110,27 +110,27 @@ MACHINE_CONFIG_START(s100_wunderbus_device::device_add_mconfig)
m_ace3->out_rts_callback().set(RS232_C_TAG, FUNC(rs232_port_device::write_rts));
m_ace3->out_int_callback().set(I8259A_TAG, FUNC(pic8259_device::ir5_w));
MCFG_DEVICE_ADD(RS232_A_TAG, RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE(m_ace1, ins8250_uart_device, rx_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_ace1, ins8250_uart_device, dcd_w))
MCFG_RS232_DSR_HANDLER(WRITELINE(m_ace1, ins8250_uart_device, dsr_w))
MCFG_RS232_RI_HANDLER(WRITELINE(m_ace1, ins8250_uart_device, ri_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_ace1, ins8250_uart_device, cts_w))
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("terminal", terminal)
rs232_port_device &rs232a(RS232_PORT(config, RS232_A_TAG, default_rs232_devices, "terminal"));
rs232a.rxd_handler().set(m_ace1, FUNC(ins8250_uart_device::rx_w));
rs232a.dcd_handler().set(m_ace1, FUNC(ins8250_uart_device::dcd_w));
rs232a.dsr_handler().set(m_ace1, FUNC(ins8250_uart_device::dsr_w));
rs232a.ri_handler().set(m_ace1, FUNC(ins8250_uart_device::ri_w));
rs232a.cts_handler().set(m_ace1, FUNC(ins8250_uart_device::cts_w));
rs232a.set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(terminal));
MCFG_DEVICE_ADD(RS232_B_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_ace2, ins8250_uart_device, rx_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_ace2, ins8250_uart_device, dcd_w))
MCFG_RS232_DSR_HANDLER(WRITELINE(m_ace2, ins8250_uart_device, dsr_w))
MCFG_RS232_RI_HANDLER(WRITELINE(m_ace2, ins8250_uart_device, ri_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_ace2, ins8250_uart_device, cts_w))
rs232_port_device &rs232b(RS232_PORT(config, RS232_B_TAG, default_rs232_devices, nullptr));
rs232b.rxd_handler().set(m_ace2, FUNC(ins8250_uart_device::rx_w));
rs232b.dcd_handler().set(m_ace2, FUNC(ins8250_uart_device::dcd_w));
rs232b.dsr_handler().set(m_ace2, FUNC(ins8250_uart_device::dsr_w));
rs232b.ri_handler().set(m_ace2, FUNC(ins8250_uart_device::ri_w));
rs232b.cts_handler().set(m_ace2, FUNC(ins8250_uart_device::cts_w));
MCFG_DEVICE_ADD(RS232_C_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_ace3, ins8250_uart_device, rx_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_ace3, ins8250_uart_device, dcd_w))
MCFG_RS232_DSR_HANDLER(WRITELINE(m_ace3, ins8250_uart_device, dsr_w))
MCFG_RS232_RI_HANDLER(WRITELINE(m_ace3, ins8250_uart_device, ri_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_ace3, ins8250_uart_device, cts_w))
rs232_port_device &rs232c(RS232_PORT(config, RS232_C_TAG, default_rs232_devices, nullptr));
rs232c.rxd_handler().set(m_ace3, FUNC(ins8250_uart_device::rx_w));
rs232c.dcd_handler().set(m_ace3, FUNC(ins8250_uart_device::dcd_w));
rs232c.dsr_handler().set(m_ace3, FUNC(ins8250_uart_device::dsr_w));
rs232c.ri_handler().set(m_ace3, FUNC(ins8250_uart_device::ri_w));
rs232c.cts_handler().set(m_ace3, FUNC(ins8250_uart_device::cts_w));
UPD1990A(config, m_rtc);
m_rtc->tp_callback().set(FUNC(s100_wunderbus_device::rtc_tp_w));

View File

@ -111,9 +111,9 @@ MACHINE_CONFIG_START(ss50_mpc_device::device_add_mconfig)
//m_pia->irqa_handler().set(FUNC(ss50_mpc_device::pia_irq_w));
//m_pia->irqb_handler().set(FUNC(ss50_mpc_device::pia_irq_w));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE(*this, ss50_mpc_device, serial_input_w))
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("terminal", terminal)
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal"));
rs232.rxd_handler().set(FUNC(ss50_mpc_device::serial_input_w));
rs232.set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(terminal));
MCFG_INPUT_MERGER_ALL_HIGH("outgate")
MCFG_INPUT_MERGER_OUTPUT_HANDLER(WRITELINE("rs232", rs232_port_device, write_txd))

View File

@ -96,16 +96,17 @@ DEVICE_INPUT_DEFAULTS_END
// machine configuration
//-------------------------------------------------
MACHINE_CONFIG_START(ss50_mps_device::device_add_mconfig)
void ss50_mps_device::device_add_mconfig(machine_config &config)
{
ACIA6850(config, m_acia, 0);
m_acia->txd_handler().set("rs232", FUNC(rs232_port_device::write_txd));
//m_acia->rts_handler().set(FUNC(ss50_mps_device::reader_control_w));
m_acia->irq_handler().set(FUNC(ss50_mps_device::acia_irq_w));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("acia", acia6850_device, write_rxd))
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("terminal", terminal)
MACHINE_CONFIG_END
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal"));
rs232.rxd_handler().set(m_acia, FUNC(acia6850_device::write_rxd));
rs232.set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(terminal));
}
//-------------------------------------------------

View File

@ -20,19 +20,20 @@ DEFINE_DEVICE_TYPE(SV805, sv805_device, "sv805", "SV-805 RS-232 Interface")
// device_add_mconfig - add device configuration
//-------------------------------------------------
MACHINE_CONFIG_START(sv805_device::device_add_mconfig)
void sv805_device::device_add_mconfig(machine_config &config)
{
INS8250(config, m_uart, XTAL(3'072'000));
m_uart->out_int_callback().set(FUNC(sv805_device::uart_intr_w));
m_uart->out_tx_callback().set("rs232", FUNC(rs232_port_device::write_txd));
m_uart->out_dtr_callback().set("rs232", FUNC(rs232_port_device::write_dtr));
m_uart->out_rts_callback().set("rs232", FUNC(rs232_port_device::write_rts));
m_uart->out_tx_callback().set(m_rs232, FUNC(rs232_port_device::write_txd));
m_uart->out_dtr_callback().set(m_rs232, FUNC(rs232_port_device::write_dtr));
m_uart->out_rts_callback().set(m_rs232, FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_uart, ins8250_uart_device, rx_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_uart, ins8250_uart_device, dcd_w))
MCFG_RS232_DSR_HANDLER(WRITELINE(m_uart, ins8250_uart_device, dsr_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_uart, ins8250_uart_device, cts_w))
MACHINE_CONFIG_END
RS232_PORT(config, m_rs232, default_rs232_devices, nullptr);
m_rs232->rxd_handler().set(m_uart, FUNC(ins8250_uart_device::rx_w));
m_rs232->dcd_handler().set(m_uart, FUNC(ins8250_uart_device::dcd_w));
m_rs232->dsr_handler().set(m_uart, FUNC(ins8250_uart_device::dsr_w));
m_rs232->cts_handler().set(m_uart, FUNC(ins8250_uart_device::cts_w));
}
//**************************************************************************

View File

@ -49,10 +49,11 @@ void graph_link_hle_device::device_reset()
}
MACHINE_CONFIG_START(graph_link_hle_device::device_add_mconfig)
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(*this, graph_link_hle_device, rx_w))
MACHINE_CONFIG_END
void graph_link_hle_device::device_add_mconfig(machine_config &config)
{
RS232_PORT(config, m_serial_port, default_rs232_devices, nullptr);
m_serial_port->rxd_handler().set(FUNC(graph_link_hle_device::rx_w));
}
void graph_link_hle_device::byte_collision()

View File

@ -298,20 +298,20 @@ MACHINE_CONFIG_START(vme_fccpu20_device::device_add_mconfig)
mpcc3.out_int_cb().set("bim", FUNC(bim68153_device::int3_w));
// MPCC - RS232
MCFG_DEVICE_ADD(RS232P1_TAG, RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER (WRITELINE ("mpcc", mpcc68561_device, write_rx))
MCFG_RS232_CTS_HANDLER (WRITELINE ("mpcc", mpcc68561_device, cts_w))
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("terminal", terminal)
rs232_port_device &rs232p1(RS232_PORT(config, RS232P1_TAG, default_rs232_devices, "terminal"));
rs232p1.rxd_handler().set(m_mpcc, FUNC(mpcc68561_device::write_rx));
rs232p1.cts_handler().set(m_mpcc, FUNC(mpcc68561_device::cts_w));
rs232p1.set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(terminal));
// MPCC2 - RS232
MCFG_DEVICE_ADD(RS232P2_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER (WRITELINE ("mpcc2", mpcc68561_device, write_rx))
MCFG_RS232_CTS_HANDLER (WRITELINE ("mpcc2", mpcc68561_device, cts_w))
rs232_port_device &rs232p2(RS232_PORT(config, RS232P2_TAG, default_rs232_devices, nullptr));
rs232p2.rxd_handler().set(m_mpcc2, FUNC(mpcc68561_device::write_rx));
rs232p2.cts_handler().set(m_mpcc2, FUNC(mpcc68561_device::cts_w));
// MPCC3 - RS232
MCFG_DEVICE_ADD(RS232P3_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER (WRITELINE ("mpcc3", mpcc68561_device, write_rx))
MCFG_RS232_CTS_HANDLER (WRITELINE ("mpcc3", mpcc68561_device, cts_w))
rs232_port_device &rs232p3(RS232_PORT(config, RS232P3_TAG, default_rs232_devices, nullptr));
rs232p3.rxd_handler().set(m_mpcc3, FUNC(mpcc68561_device::write_rx));
rs232p3.cts_handler().set(m_mpcc3, FUNC(mpcc68561_device::cts_w));
MACHINE_CONFIG_END
MACHINE_CONFIG_START(vme_fccpu20_card_device::device_add_mconfig)

View File

@ -300,13 +300,13 @@ MACHINE_CONFIG_START(vme_fcisio1_card_device::device_add_mconfig)
MCFG_DUSCC_OUT_DTRB_CB(WRITELINE(RS232P2_TAG, rs232_port_device, write_dtr))
MCFG_DUSCC_OUT_RTSB_CB(WRITELINE(RS232P2_TAG, rs232_port_device, write_rts))
/* RS232 for DUSCC 0 */
MCFG_DEVICE_ADD(RS232P1_TAG, RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER (WRITELINE ("duscc0", duscc68562_device, rxa_w))
MCFG_RS232_CTS_HANDLER (WRITELINE ("duscc0", duscc68562_device, ctsa_w))
rs232_port_device &rs232p1(RS232_PORT(config, RS232P1_TAG, default_rs232_devices, "terminal"));
rs232p1.rxd_handler().set(m_duscc0, FUNC(duscc68562_device::rxa_w));
rs232p1.cts_handler().set(m_duscc0, FUNC(duscc68562_device::ctsa_w));
MCFG_DEVICE_ADD(RS232P2_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER (WRITELINE ("duscc0", duscc68562_device, rxb_w))
MCFG_RS232_CTS_HANDLER (WRITELINE ("duscc0", duscc68562_device, ctsb_w))
rs232_port_device &rs232p2(RS232_PORT(config, RS232P2_TAG, default_rs232_devices, nullptr));
rs232p2.rxd_handler().set(m_duscc0, FUNC(duscc68562_device::rxb_w));
rs232p2.cts_handler().set(m_duscc0, FUNC(duscc68562_device::ctsb_w));
MCFG_DUSCC68562_ADD("duscc1", DUSCC_CLOCK, 0, 0, 0, 0 )
/* Port 3 on DUSCC 1 Port A */
@ -318,13 +318,13 @@ MACHINE_CONFIG_START(vme_fcisio1_card_device::device_add_mconfig)
MCFG_DUSCC_OUT_DTRB_CB(WRITELINE(RS232P4_TAG, rs232_port_device, write_dtr))
MCFG_DUSCC_OUT_RTSB_CB(WRITELINE(RS232P4_TAG, rs232_port_device, write_rts))
/* RS232 for DUSCC 1 */
MCFG_DEVICE_ADD(RS232P3_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER (WRITELINE ("duscc1", duscc68562_device, rxa_w))
MCFG_RS232_CTS_HANDLER (WRITELINE ("duscc1", duscc68562_device, ctsa_w))
rs232_port_device &rs232p3(RS232_PORT(config, RS232P3_TAG, default_rs232_devices, nullptr));
rs232p3.rxd_handler().set(m_duscc1, FUNC(duscc68562_device::rxa_w));
rs232p3.cts_handler().set(m_duscc1, FUNC(duscc68562_device::ctsa_w));
MCFG_DEVICE_ADD(RS232P4_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER (WRITELINE ("duscc1", duscc68562_device, rxb_w))
MCFG_RS232_CTS_HANDLER (WRITELINE ("duscc1", duscc68562_device, ctsb_w))
rs232_port_device &rs232p4(RS232_PORT(config, RS232P4_TAG, default_rs232_devices, nullptr));
rs232p4.rxd_handler().set(m_duscc1, FUNC(duscc68562_device::rxb_w));
rs232p4.cts_handler().set(m_duscc1, FUNC(duscc68562_device::ctsb_w));
MCFG_DUSCC68562_ADD("duscc2", DUSCC_CLOCK, 0, 0, 0, 0 )
/* Port 5 on DUSCC 2 Port A */
@ -336,13 +336,13 @@ MACHINE_CONFIG_START(vme_fcisio1_card_device::device_add_mconfig)
MCFG_DUSCC_OUT_DTRB_CB(WRITELINE(RS232P6_TAG, rs232_port_device, write_dtr))
MCFG_DUSCC_OUT_RTSB_CB(WRITELINE(RS232P6_TAG, rs232_port_device, write_rts))
/* RS232 for DUSCC 2 */
MCFG_DEVICE_ADD(RS232P5_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER (WRITELINE ("duscc2", duscc68562_device, rxa_w))
MCFG_RS232_CTS_HANDLER (WRITELINE ("duscc2", duscc68562_device, ctsa_w))
rs232_port_device &rs232p5(RS232_PORT(config, RS232P5_TAG, default_rs232_devices, nullptr));
rs232p5.rxd_handler().set(m_duscc2, FUNC(duscc68562_device::rxa_w));
rs232p5.cts_handler().set(m_duscc2, FUNC(duscc68562_device::ctsa_w));
MCFG_DEVICE_ADD(RS232P6_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER (WRITELINE ("duscc2", duscc68562_device, rxb_w))
MCFG_RS232_CTS_HANDLER (WRITELINE ("duscc2", duscc68562_device, ctsb_w))
rs232_port_device &rs232p6(RS232_PORT(config, RS232P6_TAG, default_rs232_devices, nullptr));
rs232p6.rxd_handler().set(m_duscc2, FUNC(duscc68562_device::rxb_w));
rs232p6.cts_handler().set(m_duscc2, FUNC(duscc68562_device::ctsb_w));
MCFG_DUSCC68562_ADD("duscc3", DUSCC_CLOCK, 0, 0, 0, 0 )
/* Port 7 on DUSCC 3 Port A */
@ -354,13 +354,13 @@ MACHINE_CONFIG_START(vme_fcisio1_card_device::device_add_mconfig)
MCFG_DUSCC_OUT_DTRB_CB(WRITELINE(RS232P8_TAG, rs232_port_device, write_dtr))
MCFG_DUSCC_OUT_RTSB_CB(WRITELINE(RS232P8_TAG, rs232_port_device, write_rts))
/* RS232 for DUSCC 4 */
MCFG_DEVICE_ADD(RS232P7_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE ("duscc3", duscc68562_device, rxa_w))
MCFG_RS232_CTS_HANDLER(WRITELINE ("duscc3", duscc68562_device, ctsa_w))
rs232_port_device &rs232p7(RS232_PORT(config, RS232P7_TAG, default_rs232_devices, nullptr));
rs232p7.rxd_handler().set(m_duscc3, FUNC(duscc68562_device::rxa_w));
rs232p7.cts_handler().set(m_duscc3, FUNC(duscc68562_device::ctsa_w));
MCFG_DEVICE_ADD(RS232P8_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE ("duscc3", duscc68562_device, rxb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE ("duscc3", duscc68562_device, ctsb_w))
rs232_port_device &rs232p8(RS232_PORT(config, RS232P8_TAG, default_rs232_devices, nullptr));
rs232p8.rxd_handler().set(m_duscc3, FUNC(duscc68562_device::rxb_w));
rs232p8.cts_handler().set(m_duscc3, FUNC(duscc68562_device::ctsb_w));
PIT68230(config, m_pit, XTAL(20'000'000) / 2);
m_pit->pb_in_callback().set(FUNC(vme_fcisio1_card_device::config_rd));

View File

@ -135,13 +135,13 @@ MACHINE_CONFIG_START(vme_hcpu30_card_device::device_add_mconfig)
MCFG_DUSCC_OUT_RTSB_CB(WRITELINE(RS232P2_TAG, rs232_port_device, write_rts))
// MCFG_DUSCC_OUT_INT_CB(WRITELINE()
MCFG_DEVICE_ADD (RS232P1_TAG, RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER (WRITELINE ("duscc", duscc68562_device, rxa_w))
MCFG_RS232_CTS_HANDLER (WRITELINE ("duscc", duscc68562_device, ctsa_w))
rs232_port_device &rs232p1(RS232_PORT(config, RS232P1_TAG, default_rs232_devices, "terminal"));
rs232p1.rxd_handler().set(m_dusccterm, FUNC(duscc68562_device::rxa_w));
rs232p1.cts_handler().set(m_dusccterm, FUNC(duscc68562_device::ctsa_w));
MCFG_DEVICE_ADD (RS232P2_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER (WRITELINE ("duscc", duscc68562_device, rxb_w))
MCFG_RS232_CTS_HANDLER (WRITELINE ("duscc", duscc68562_device, ctsb_w))
rs232_port_device &rs232p2(RS232_PORT(config, RS232P2_TAG, default_rs232_devices, nullptr));
rs232p2.rxd_handler().set(m_dusccterm, FUNC(duscc68562_device::rxb_w));
rs232p2.cts_handler().set(m_dusccterm, FUNC(duscc68562_device::ctsb_w));
MACHINE_CONFIG_END
/* Boot vector handler, the PCB hardwires the first 8 bytes from 0xff800000 to 0x0 at reset */

View File

@ -124,7 +124,8 @@ DEFINE_DEVICE_TYPE(VME_MZR8300, vme_mzr8300_card_device, "mzr8300", "Mizar 8300
// device_add_mconfig - add device configuration
//-------------------------------------------------
MACHINE_CONFIG_START(vme_mzr8300_card_device::device_add_mconfig)
void vme_mzr8300_card_device::device_add_mconfig(machine_config &config)
{
upd7201_new_device& sio0(UPD7201_NEW(config, "sio0", XTAL(4'000'000)));
sio0.out_txdb_callback().set("rs232p1", FUNC(rs232_port_device::write_txd));
sio0.out_dtrb_callback().set("rs232p1", FUNC(rs232_port_device::write_dtr));
@ -132,9 +133,9 @@ MACHINE_CONFIG_START(vme_mzr8300_card_device::device_add_mconfig)
UPD7201_NEW(config, "sio1", XTAL(4'000'000));
MCFG_DEVICE_ADD("rs232p1", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("sio0", upd7201_new_device, rxb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("sio0", upd7201_new_device, ctsb_w))
rs232_port_device &rs232p1(RS232_PORT(config, "rs232p1", default_rs232_devices, "terminal"));
rs232p1.rxd_handler().set("sio0", FUNC(upd7201_new_device::rxb_w));
rs232p1.cts_handler().set("sio0", FUNC(upd7201_new_device::ctsb_w));
am9513_device &stc(AM9513(config, "stc", 4_MHz_XTAL));
stc.out1_cb().set("sio0", FUNC(upd7201_new_device::rxca_w));
@ -145,7 +146,7 @@ MACHINE_CONFIG_START(vme_mzr8300_card_device::device_add_mconfig)
stc.out3_cb().append("sio1", FUNC(upd7201_new_device::txca_w));
stc.out4_cb().set("sio1", FUNC(upd7201_new_device::rxcb_w));
stc.out4_cb().append("sio1", FUNC(upd7201_new_device::txcb_w));
MACHINE_CONFIG_END
}
//**************************************************************************

View File

@ -34,10 +34,11 @@ const tiny_rom_entry *vtech_rs232_interface_device::device_rom_region() const
// device_add_mconfig - add device configuration
//-------------------------------------------------
MACHINE_CONFIG_START(vtech_rs232_interface_device::device_add_mconfig)
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(*this, vtech_rs232_interface_device, rs232_rx_w))
MACHINE_CONFIG_END
void vtech_rs232_interface_device::device_add_mconfig(machine_config &config)
{
RS232_PORT(config, m_rs232, default_rs232_devices, nullptr);
m_rs232->rxd_handler().set(FUNC(vtech_rs232_interface_device::rs232_rx_w));
}
//**************************************************************************

View File

@ -580,8 +580,8 @@ MACHINE_CONFIG_START(ie15_device::ie15core)
IE15_KEYBOARD(config, m_keyboard, 0)
.keyboard_cb().set(FUNC(ie15_device::kbd_put));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "null_modem")
MCFG_RS232_RXD_HANDLER(WRITELINE(*this, ie15_device, serial_rx_callback))
RS232_PORT(config, m_rs232, default_rs232_devices, "null_modem");
m_rs232->rxd_handler().set(FUNC(ie15_device::serial_rx_callback));
SPEAKER(config, "mono").front_center();
MCFG_DEVICE_ADD("beeper", BEEP, 2400)

View File

@ -143,18 +143,19 @@ void vrc5074_device::target1_map(address_map &map)
map(0x00000000, 0xFFFFFFFF).rw(FUNC(vrc5074_device::target1_r), FUNC(vrc5074_device::target1_w));
}
MACHINE_CONFIG_START(vrc5074_device::device_add_mconfig)
ns16550_device &uart(NS16550(config, "uart", DERIVED_CLOCK(1, 12)));
uart.out_int_callback().set(FUNC(vrc5074_device::uart_irq_callback));
uart.out_tx_callback().set("ttys00", FUNC(rs232_port_device::write_txd));
uart.out_dtr_callback().set("ttys00", FUNC(rs232_port_device::write_dtr));
uart.out_rts_callback().set("ttys00", FUNC(rs232_port_device::write_rts));
void vrc5074_device::device_add_mconfig(machine_config &config)
{
NS16550(config, m_uart, DERIVED_CLOCK(1, 12));
m_uart->out_int_callback().set(FUNC(vrc5074_device::uart_irq_callback));
m_uart->out_tx_callback().set("ttys00", FUNC(rs232_port_device::write_txd));
m_uart->out_dtr_callback().set("ttys00", FUNC(rs232_port_device::write_dtr));
m_uart->out_rts_callback().set("ttys00", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("ttys00", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(uart, ns16550_device, rx_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(uart, ns16550_device, dcd_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(uart, ns16550_device, cts_w))
MACHINE_CONFIG_END
rs232_port_device &ttys00(RS232_PORT(config, "ttys00", default_rs232_devices, nullptr));
ttys00.rxd_handler().set(m_uart, FUNC(ns16550_device::rx_w));
ttys00.dcd_handler().set(m_uart, FUNC(ns16550_device::dcd_w));
ttys00.cts_handler().set(m_uart, FUNC(ns16550_device::cts_w));
}
vrc5074_device::vrc5074_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
pci_host_device(mconfig, VRC5074, tag, owner, clock),

View File

@ -757,17 +757,17 @@ MACHINE_CONFIG_START(avigo_state::avigo)
MCFG_QUANTUM_TIME(attotime::from_hz(60))
NS16550(config, m_uart, XTAL(1'843'200));
m_uart->out_tx_callback().set("serport", FUNC(rs232_port_device::write_txd));
m_uart->out_dtr_callback().set("serport", FUNC(rs232_port_device::write_dtr));
m_uart->out_rts_callback().set("serport", FUNC(rs232_port_device::write_rts));
m_uart->out_tx_callback().set(m_serport, FUNC(rs232_port_device::write_txd));
m_uart->out_dtr_callback().set(m_serport, FUNC(rs232_port_device::write_dtr));
m_uart->out_rts_callback().set(m_serport, FUNC(rs232_port_device::write_rts));
m_uart->out_int_callback().set(FUNC(avigo_state::com_interrupt));
MCFG_DEVICE_ADD( "serport", RS232_PORT, default_rs232_devices, nullptr )
MCFG_RS232_RXD_HANDLER(WRITELINE("ns16550", ins8250_uart_device, rx_w))
MCFG_RS232_DCD_HANDLER(WRITELINE("ns16550", ins8250_uart_device, dcd_w))
MCFG_RS232_DSR_HANDLER(WRITELINE("ns16550", ins8250_uart_device, dsr_w))
MCFG_RS232_RI_HANDLER(WRITELINE("ns16550", ins8250_uart_device, ri_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("ns16550", ins8250_uart_device, cts_w))
RS232_PORT(config, m_serport, default_rs232_devices, nullptr);
m_serport->rxd_handler().set(m_uart, FUNC(ins8250_uart_device::rx_w));
m_serport->dcd_handler().set(m_uart, FUNC(ins8250_uart_device::dcd_w));
m_serport->dsr_handler().set(m_uart, FUNC(ins8250_uart_device::dsr_w));
m_serport->ri_handler().set(m_uart, FUNC(ins8250_uart_device::ri_w));
m_serport->cts_handler().set(m_uart, FUNC(ins8250_uart_device::cts_w));
/* video hardware */
MCFG_SCREEN_ADD("screen", LCD)

View File

@ -320,8 +320,7 @@ MACHINE_CONFIG_START(binbug_state::binbug)
MCFG_PALETTE_ADD_MONOCHROME("palette")
/* Keyboard */
MCFG_DEVICE_ADD("keyboard", RS232_PORT, default_rs232_devices, "keyboard")
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("keyboard", keyboard)
RS232_PORT(config, m_rs232, default_rs232_devices, "keyboard").set_option_device_input_defaults("keyboard", DEVICE_INPUT_DEFAULTS_NAME(keyboard));
/* Cassette */
MCFG_CASSETTE_ADD( "cassette" )

View File

@ -505,33 +505,33 @@ MACHINE_CONFIG_START(bitgraph_state::bg_motherboard)
ACIA6850(config, m_acia0, 0);
m_acia0->txd_handler().set(RS232_H_TAG, FUNC(rs232_port_device::write_txd));
m_acia0->rts_handler().set(RS232_H_TAG, FUNC(rs232_port_device::write_rts));
m_acia0->irq_handler().set_inputline(M68K_TAG, M68K_IRQ_1);
m_acia0->irq_handler().set_inputline(m_maincpu, M68K_IRQ_1);
MCFG_DEVICE_ADD(RS232_H_TAG, RS232_PORT, default_rs232_devices, "null_modem")
MCFG_RS232_RXD_HANDLER(WRITELINE(ACIA0_TAG, acia6850_device, write_rxd))
MCFG_RS232_DCD_HANDLER(WRITELINE(ACIA0_TAG, acia6850_device, write_dcd))
MCFG_RS232_CTS_HANDLER(WRITELINE(ACIA0_TAG, acia6850_device, write_cts))
rs232_port_device &rs232h(RS232_PORT(config, RS232_H_TAG, default_rs232_devices, "null_modem"));
rs232h.rxd_handler().set(m_acia0, FUNC(acia6850_device::write_rxd));
rs232h.dcd_handler().set(m_acia0, FUNC(acia6850_device::write_dcd));
rs232h.cts_handler().set(m_acia0, FUNC(acia6850_device::write_cts));
ACIA6850(config, m_acia1, 0);
m_acia1->txd_handler().set(RS232_K_TAG, FUNC(rs232_port_device::write_txd));
m_acia1->rts_handler().set(RS232_K_TAG, FUNC(rs232_port_device::write_rts));
m_acia1->irq_handler().set_inputline(M68K_TAG, M68K_IRQ_1);
m_acia1->irq_handler().set_inputline(m_maincpu, M68K_IRQ_1);
MCFG_DEVICE_ADD(RS232_K_TAG, RS232_PORT, default_rs232_devices, "keyboard")
MCFG_RS232_RXD_HANDLER(WRITELINE(ACIA1_TAG, acia6850_device, write_rxd))
MCFG_RS232_DCD_HANDLER(WRITELINE(ACIA1_TAG, acia6850_device, write_dcd))
MCFG_RS232_CTS_HANDLER(WRITELINE(ACIA1_TAG, acia6850_device, write_cts))
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("keyboard", kbd_rs232_defaults)
rs232_port_device &rs232k(RS232_PORT(config, RS232_K_TAG, default_rs232_devices, "keyboard"));
rs232k.rxd_handler().set(m_acia1, FUNC(acia6850_device::write_rxd));
rs232k.dcd_handler().set(m_acia1, FUNC(acia6850_device::write_dcd));
rs232k.cts_handler().set(m_acia1, FUNC(acia6850_device::write_cts));
rs232k.set_option_device_input_defaults("keyboard", DEVICE_INPUT_DEFAULTS_NAME(kbd_rs232_defaults));
ACIA6850(config, m_acia2, 0);
m_acia2->txd_handler().set(RS232_D_TAG, FUNC(rs232_port_device::write_txd));
m_acia2->rts_handler().set(RS232_D_TAG, FUNC(rs232_port_device::write_rts));
m_acia2->irq_handler().set_inputline(M68K_TAG, M68K_IRQ_1);
m_acia2->irq_handler().set_inputline(m_maincpu, M68K_IRQ_1);
MCFG_DEVICE_ADD(RS232_D_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(ACIA2_TAG, acia6850_device, write_rxd))
MCFG_RS232_DCD_HANDLER(WRITELINE(ACIA2_TAG, acia6850_device, write_dcd))
MCFG_RS232_CTS_HANDLER(WRITELINE(ACIA2_TAG, acia6850_device, write_cts))
rs232_port_device &rs232d(RS232_PORT(config, RS232_D_TAG, default_rs232_devices, nullptr));
rs232d.rxd_handler().set(m_acia2, FUNC(acia6850_device::write_rxd));
rs232d.dcd_handler().set(m_acia2, FUNC(acia6850_device::write_dcd));
rs232d.cts_handler().set(m_acia2, FUNC(acia6850_device::write_cts));
// XXX actual part may be something else
COM8116(config, m_dbrga, 5.0688_MHz_XTAL);
@ -581,40 +581,40 @@ MACHINE_CONFIG_START(bitgraph_state::bg_ppu)
MACHINE_CONFIG_END
#endif
MACHINE_CONFIG_START(bitgraph_state::bitgrpha)
MCFG_DEVICE_ADD(M68K_TAG, M68000, XTAL(6'900'000))
MCFG_DEVICE_PROGRAM_MAP(bitgrapha_mem)
void bitgraph_state::bitgrpha(machine_config &config)
{
M68000(config, m_maincpu, XTAL(6'900'000));
m_maincpu->set_addrmap(AS_PROGRAM, &bitgraph_state::bitgrapha_mem);
bg_motherboard(config);
MCFG_DEVICE_ADD("system_clock", CLOCK, 40)
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(*this, bitgraph_state, system_clock_write))
CLOCK(config, "system_clock", 40).signal_handler().set(FUNC(bitgraph_state::system_clock_write));
ACIA6850(config, m_acia3, 0);
m_acia3->txd_handler().set(RS232_M_TAG, FUNC(rs232_port_device::write_txd));
m_acia3->rts_handler().set(RS232_M_TAG, FUNC(rs232_port_device::write_rts));
m_acia3->irq_handler().set_inputline(M68K_TAG, M68K_IRQ_1);
MCFG_DEVICE_ADD(RS232_M_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(ACIA3_TAG, acia6850_device, write_rxd))
MCFG_RS232_DCD_HANDLER(WRITELINE(ACIA3_TAG, acia6850_device, write_dcd))
MCFG_RS232_CTS_HANDLER(WRITELINE(ACIA3_TAG, acia6850_device, write_cts))
rs232_port_device &rs232m(RS232_PORT(config, RS232_M_TAG, default_rs232_devices, nullptr));
rs232m.rxd_handler().set(m_acia3, FUNC(acia6850_device::write_rxd));
rs232m.dcd_handler().set(m_acia3, FUNC(acia6850_device::write_dcd));
rs232m.cts_handler().set(m_acia3, FUNC(acia6850_device::write_cts));
RAM(config, RAM_TAG).set_default_size("128K");
MACHINE_CONFIG_END
}
MACHINE_CONFIG_START(bitgraph_state::bitgrphb)
MCFG_DEVICE_ADD(M68K_TAG, M68000, XTAL(6'900'000))
MCFG_DEVICE_PROGRAM_MAP(bitgraphb_mem)
void bitgraph_state::bitgrphb(machine_config &config)
{
M68000(config, m_maincpu, XTAL(6'900'000));
m_maincpu->set_addrmap(AS_PROGRAM, &bitgraph_state::bitgraphb_mem);
bg_motherboard(config);
// bg_ppu(config);
MCFG_DEVICE_ADD("system_clock", CLOCK, 1040)
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(*this, bitgraph_state, system_clock_write))
CLOCK(config, "system_clock", 1040).signal_handler().set(FUNC(bitgraph_state::system_clock_write));
RAM(config, RAM_TAG).set_default_size("512K");
MACHINE_CONFIG_END
}
/* ROM definition */
ROM_START( bitgrpha )

View File

@ -1166,12 +1166,12 @@ MACHINE_CONFIG_START(bullet_state::bullet)
MCFG_CENTRONICS_OUTPUT_LATCH_ADD("cent_data_out", CENTRONICS_TAG)
MCFG_DEVICE_ADD(RS232_A_TAG, RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE(m_dart, z80dart_device, rxa_w))
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("terminal", terminal)
rs232_port_device &rs232a(RS232_PORT(config, RS232_A_TAG, default_rs232_devices, "terminal"));
rs232a.rxd_handler().set(m_dart, FUNC(z80dart_device::rxa_w));
rs232a.set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(terminal));
MCFG_DEVICE_ADD(RS232_B_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_dart, z80dart_device, rxb_w))
rs232_port_device &rs232b(RS232_PORT(config, RS232_B_TAG, default_rs232_devices, nullptr));
rs232b.rxd_handler().set(m_dart, FUNC(z80dart_device::rxb_w));
// software lists
MCFG_SOFTWARE_LIST_ADD("flop_list", "wmbullet")
@ -1246,12 +1246,12 @@ MACHINE_CONFIG_START(bulletf_state::bulletf)
MCFG_CENTRONICS_OUTPUT_LATCH_ADD("cent_data_out", CENTRONICS_TAG)
MCFG_DEVICE_ADD(RS232_A_TAG, RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE(m_dart, z80dart_device, rxa_w))
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("terminal", terminal)
rs232_port_device &rs232a(RS232_PORT(config, RS232_A_TAG, default_rs232_devices, "terminal"));
rs232a.rxd_handler().set(m_dart, FUNC(z80dart_device::rxa_w));
rs232a.set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(terminal));
MCFG_DEVICE_ADD(RS232_B_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_dart, z80dart_device, rxb_w))
rs232_port_device &rs232b(RS232_PORT(config, RS232_B_TAG, default_rs232_devices, nullptr));
rs232b.rxd_handler().set(m_dart, FUNC(z80dart_device::rxb_w));
MCFG_DEVICE_ADD(SCSIBUS_TAG, SCSI_PORT, 0)
MCFG_SCSI_BSY_HANDLER(WRITELINE("scsi_ctrl_in", input_buffer_device, write_bit3))

View File

@ -669,9 +669,10 @@ DEVICE_INPUT_DEFAULTS_END
#define CAN09T_BAUDGEN_CLOCK 1.8432_MHz_XTAL
#define CAN09T_ACIA_CLOCK (CAN09T_BAUDGEN_CLOCK / 12)
MACHINE_CONFIG_START(can09t_state::can09t)
MCFG_DEVICE_ADD("maincpu", MC6809, 4.9152_MHz_XTAL) // IPL crystal
MCFG_DEVICE_PROGRAM_MAP(can09t_map)
void can09t_state::can09t(machine_config &config)
{
MC6809(config, m_maincpu, 4.9152_MHz_XTAL); // IPL crystal
m_maincpu->set_addrmap(AS_PROGRAM, &can09t_state::can09t_map);
/* --PIA inits----------------------- */
PIA6821(config, m_syspia, 0); // CPU board
@ -704,13 +705,12 @@ MACHINE_CONFIG_START(can09t_state::can09t)
ACIA6850(config, m_acia, 0);
m_acia->txd_handler().set("rs232", FUNC(rs232_port_device::write_txd));
m_acia->rts_handler().set("rs232", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("acia", acia6850_device, write_rxd))
MCFG_RS232_CTS_HANDLER(WRITELINE("acia", acia6850_device, write_cts))
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal"));
rs232.rxd_handler().set(m_acia, FUNC(acia6850_device::write_rxd));
rs232.cts_handler().set(m_acia, FUNC(acia6850_device::write_cts));
MCFG_DEVICE_ADD ("acia_clock", CLOCK, CAN09T_ACIA_CLOCK)
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(*this, can09t_state, write_acia_clock))
MACHINE_CONFIG_END
CLOCK(config, "acia_clock", CAN09T_ACIA_CLOCK).signal_handler().set(FUNC(can09t_state::write_acia_clock));
}
#define CAN09_X1_CLOCK 22.1184_MHz_XTAL /* UKI 22118.40 Khz */
#define CAN09_CPU_CLOCK (CAN09_X1_CLOCK / 16) /* ~1.38MHz Divider needs to be check but is the most likelly */

View File

@ -355,12 +355,12 @@ MACHINE_CONFIG_START(cdc721_state::cdc721)
comuart.out_dtr_callback().set("comm", FUNC(rs232_port_device::write_dtr));
comuart.out_rts_callback().set("comm", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("comm", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("comuart", ins8250_device, rx_w))
MCFG_RS232_DSR_HANDLER(WRITELINE("comuart", ins8250_device, dsr_w))
MCFG_RS232_DCD_HANDLER(WRITELINE("comuart", ins8250_device, dcd_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("comuart", ins8250_device, cts_w))
MCFG_RS232_RI_HANDLER(WRITELINE("comuart", ins8250_device, ri_w))
rs232_port_device &comm(RS232_PORT(config, "comm", default_rs232_devices, nullptr));
comm.rxd_handler().set("comuart", FUNC(ins8250_device::rx_w));
comm.dsr_handler().set("comuart", FUNC(ins8250_device::dsr_w));
comm.dcd_handler().set("comuart", FUNC(ins8250_device::dcd_w));
comm.cts_handler().set("comuart", FUNC(ins8250_device::cts_w));
comm.ri_handler().set("comuart", FUNC(ins8250_device::ri_w));
ins8250_device &kbduart(INS8250(config, "kbduart", 1.8432_MHz_XTAL));
kbduart.out_int_callback().set(FUNC(cdc721_state::int_w<5>));
@ -375,12 +375,12 @@ MACHINE_CONFIG_START(cdc721_state::cdc721)
pauart.out_dtr_callback().set("cha", FUNC(rs232_port_device::write_dtr));
pauart.out_rts_callback().set("cha", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("cha", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("pauart", ins8250_device, rx_w))
MCFG_RS232_DSR_HANDLER(WRITELINE("pauart", ins8250_device, dsr_w))
MCFG_RS232_DCD_HANDLER(WRITELINE("pauart", ins8250_device, dcd_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("pauart", ins8250_device, cts_w))
MCFG_RS232_RI_HANDLER(WRITELINE("pauart", ins8250_device, ri_w))
rs232_port_device &cha(RS232_PORT(config, "cha", default_rs232_devices, nullptr));
cha.rxd_handler().set("pauart", FUNC(ins8250_device::rx_w));
cha.dsr_handler().set("pauart", FUNC(ins8250_device::dsr_w));
cha.dcd_handler().set("pauart", FUNC(ins8250_device::dcd_w));
cha.cts_handler().set("pauart", FUNC(ins8250_device::cts_w));
cha.ri_handler().set("pauart", FUNC(ins8250_device::ri_w));
ins8250_device &pbuart(INS8250(config, "pbuart", 1.8432_MHz_XTAL));
pbuart.out_int_callback().set("int2", FUNC(input_merger_device::in_w<0>));
@ -388,12 +388,12 @@ MACHINE_CONFIG_START(cdc721_state::cdc721)
pbuart.out_dtr_callback().set("chb", FUNC(rs232_port_device::write_dtr));
pbuart.out_rts_callback().set("chb", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("chb", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("pbuart", ins8250_device, rx_w))
MCFG_RS232_DSR_HANDLER(WRITELINE("pbuart", ins8250_device, dsr_w))
MCFG_RS232_DCD_HANDLER(WRITELINE("pbuart", ins8250_device, dcd_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("pbuart", ins8250_device, cts_w))
MCFG_RS232_RI_HANDLER(WRITELINE("pbuart", ins8250_device, ri_w))
rs232_port_device &chb(RS232_PORT(config, "chb", default_rs232_devices, nullptr));
chb.rxd_handler().set("pbuart", FUNC(ins8250_device::rx_w));
chb.dsr_handler().set("pbuart", FUNC(ins8250_device::dsr_w));
chb.dcd_handler().set("pbuart", FUNC(ins8250_device::dcd_w));
chb.cts_handler().set("pbuart", FUNC(ins8250_device::cts_w));
chb.ri_handler().set("pbuart", FUNC(ins8250_device::ri_w));
MCFG_INPUT_MERGER_ANY_HIGH("int2") // 74S05 (open collector)
MCFG_INPUT_MERGER_OUTPUT_HANDLER(WRITELINE(*this, cdc721_state, int_w<2>))

View File

@ -97,11 +97,12 @@ void cm1800_state::machine_reset()
m_uart->write_cs(0);
}
MACHINE_CONFIG_START(cm1800_state::cm1800)
void cm1800_state::cm1800(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", I8080, XTAL(2'000'000))
MCFG_DEVICE_PROGRAM_MAP(mem_map)
MCFG_DEVICE_IO_MAP(io_map)
I8080(config, m_maincpu, XTAL(2'000'000));
m_maincpu->set_addrmap(AS_PROGRAM, &cm1800_state::mem_map);
m_maincpu->set_addrmap(AS_IO, &cm1800_state::io_map);
/* video hardware */
AY51013(config, m_uart); // exact uart type is unknown
@ -111,8 +112,8 @@ MACHINE_CONFIG_START(cm1800_state::cm1800)
m_uart->write_so_callback().set("rs232", FUNC(rs232_port_device::write_txd));
m_uart->set_auto_rdav(true);
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MACHINE_CONFIG_END
RS232_PORT(config, "rs232", default_rs232_devices, "terminal");
}
/* ROM definition */
ROM_START( cm1800 )

View File

@ -467,9 +467,9 @@ MACHINE_CONFIG_START(coco12_state::coco)
MCFG_CASSETTE_FORMATS(coco_cassette_formats)
MCFG_CASSETTE_DEFAULT_STATE(CASSETTE_PLAY | CASSETTE_MOTOR_DISABLED | CASSETTE_SPEAKER_MUTED)
MCFG_DEVICE_ADD(RS232_TAG, RS232_PORT, default_rs232_devices, "printer")
MCFG_RS232_DCD_HANDLER(WRITELINE(PIA1_TAG, pia6821_device, ca1_w))
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("printer", printer)
rs232_port_device &rs232(RS232_PORT(config, RS232_TAG, default_rs232_devices, "printer"));
rs232.dcd_handler().set(PIA1_TAG, FUNC(pia6821_device::ca1_w));
rs232.set_option_device_input_defaults("printer", DEVICE_INPUT_DEFAULTS_NAME(printer));
cococart_slot_device &cartslot(COCOCART_SLOT(config, CARTRIDGE_TAG, DERIVED_CLOCK(1, 1), coco_cart, "pak"));
cartslot.cart_callback().set([this] (int state) { cart_w(state != 0); }); // lambda because name is overloaded

View File

@ -277,9 +277,9 @@ MACHINE_CONFIG_START(coco3_state::coco3)
MCFG_CASSETTE_FORMATS(coco_cassette_formats)
MCFG_CASSETTE_DEFAULT_STATE(CASSETTE_PLAY | CASSETTE_MOTOR_DISABLED | CASSETTE_SPEAKER_MUTED)
MCFG_DEVICE_ADD(RS232_TAG, RS232_PORT, default_rs232_devices, "printer")
MCFG_RS232_DCD_HANDLER(WRITELINE(PIA1_TAG, pia6821_device, ca1_w))
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("printer", printer)
rs232_port_device &rs232(RS232_PORT(config, RS232_TAG, default_rs232_devices, "printer"));
rs232.dcd_handler().set(PIA1_TAG, FUNC(pia6821_device::ca1_w));
rs232.set_option_device_input_defaults("printer", DEVICE_INPUT_DEFAULTS_NAME(printer));
cococart_slot_device &cartslot(COCOCART_SLOT(config, CARTRIDGE_TAG, DERIVED_CLOCK(1, 1), coco_cart, "fdcv11"));
cartslot.cart_callback().set([this] (int state) { cart_w(state != 0); }); // lambda because name is overloaded

View File

@ -62,10 +62,11 @@ void codata_state::machine_reset()
m_maincpu->reset();
}
MACHINE_CONFIG_START(codata_state::codata)
void codata_state::codata(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu",M68000, XTAL(16'000'000) / 2)
MCFG_DEVICE_PROGRAM_MAP(mem_map)
M68000(config, m_maincpu, XTAL(16'000'000) / 2);
m_maincpu->set_addrmap(AS_PROGRAM, &codata_state::mem_map);
upd7201_new_device& uart(UPD7201_NEW(config, "uart", 16_MHz_XTAL / 4));
uart.out_txda_callback().set("rs423a", FUNC(rs232_port_device::write_txd));
@ -83,14 +84,14 @@ MACHINE_CONFIG_START(codata_state::codata)
timer.out5_cb().set("uart", FUNC(upd7201_new_device::rxcb_w));
timer.out5_cb().append("uart", FUNC(upd7201_new_device::txcb_w));
MCFG_DEVICE_ADD("rs423a", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("uart", upd7201_new_device, rxa_w))
MCFG_RS232_DSR_HANDLER(WRITELINE("uart", upd7201_new_device, dcda_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("uart", upd7201_new_device, ctsa_w))
rs232_port_device &rs423a(RS232_PORT(config, "rs423a", default_rs232_devices, "terminal"));
rs423a.rxd_handler().set("uart", FUNC(upd7201_new_device::rxa_w));
rs423a.dsr_handler().set("uart", FUNC(upd7201_new_device::dcda_w));
rs423a.cts_handler().set("uart", FUNC(upd7201_new_device::ctsa_w));
MCFG_DEVICE_ADD("rs423b", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("uart", upd7201_new_device, rxb_w))
MACHINE_CONFIG_END
rs232_port_device &rs423b(RS232_PORT(config, "rs423b", default_rs232_devices, nullptr));
rs423b.rxd_handler().set("uart", FUNC(upd7201_new_device::rxb_w));
}
/* ROM definition */
ROM_START( codata )

View File

@ -791,15 +791,15 @@ MACHINE_CONFIG_START(compis_state::compis)
MCFG_TIMER_DRIVER_ADD_PERIODIC("tape", compis_state, tape_tick, attotime::from_hz(44100))
MCFG_DEVICE_ADD(RS232_A_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_mpsc, z80dart_device, rxa_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_mpsc, z80dart_device, dcda_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_mpsc, z80dart_device, ctsa_w))
rs232_port_device &rs232a(RS232_PORT(config, RS232_A_TAG, default_rs232_devices, nullptr));
rs232a.rxd_handler().set(m_mpsc, FUNC(z80dart_device::rxa_w));
rs232a.dcd_handler().set(m_mpsc, FUNC(z80dart_device::dcda_w));
rs232a.cts_handler().set(m_mpsc, FUNC(z80dart_device::ctsa_w));
MCFG_DEVICE_ADD(RS232_B_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_mpsc, z80dart_device, rxb_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_mpsc, z80dart_device, dcdb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_mpsc, z80dart_device, ctsb_w))
rs232_port_device &rs232b(RS232_PORT(config, RS232_B_TAG, default_rs232_devices, nullptr));
rs232b.rxd_handler().set(m_mpsc, FUNC(z80dart_device::rxb_w));
rs232b.dcd_handler().set(m_mpsc, FUNC(z80dart_device::dcdb_w));
rs232b.cts_handler().set(m_mpsc, FUNC(z80dart_device::ctsb_w));
MCFG_DEVICE_ADD(m_centronics, CENTRONICS, centronics_devices, "printer")
MCFG_CENTRONICS_BUSY_HANDLER(WRITELINE(*this, compis_state, write_centronics_busy))

View File

@ -612,7 +612,7 @@ MACHINE_CONFIG_START(md6802_state::md6802)
MCFG_TIMER_DRIVER_ADD_PERIODIC("artwork_timer", md6802_state, scan_artwork, attotime::from_hz(10))
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, nullptr)
RS232_PORT(config, m_rs232, default_rs232_devices, nullptr);
MACHINE_CONFIG_END
MACHINE_CONFIG_START(mp68a_state::mp68a)

View File

@ -74,8 +74,8 @@ public:
driver_device(mconfig, type, tag),
m_ram(*this, RAM_TAG),
m_maincpu(*this, "maincpu"),
m_speaker(*this, "speaker"),
m_acia(*this, "acia"),
m_speaker(*this, "speaker"),
m_vfd(*this, "vfd"),
m_kb(*this, "74c923"),
m_rambank(*this, "bankedram"),
@ -119,11 +119,11 @@ protected:
void z80_io_1_4(address_map &map);
required_device<ram_device> m_ram;
required_device<cpu_device> m_maincpu;
required_device<mos6551_device> m_acia;
private:
required_device<cpu_device> m_maincpu;
required_device<speaker_sound_device> m_speaker;
required_device<mos6551_device> m_acia;
required_device<roc10937_device> m_vfd;
required_device<mm74c922_device> m_kb;
required_memory_bank m_rambank;
@ -633,7 +633,7 @@ WRITE_LINE_MEMBER( ep804_state::ep804_acia_irq_w )
MACHINE_CONFIG_START(digel804_state::digel804)
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", Z80, 3.6864_MHz_XTAL/2) /* Z80A, X1(aka E0 on schematics): 3.6864Mhz */
MCFG_DEVICE_ADD(m_maincpu, Z80, 3.6864_MHz_XTAL/2) /* Z80A, X1(aka E0 on schematics): 3.6864Mhz */
MCFG_DEVICE_PROGRAM_MAP(z80_mem_804_1_4)
MCFG_DEVICE_IO_MAP(z80_io_1_4)
MCFG_QUANTUM_TIME(attotime::from_hz(60))
@ -651,19 +651,19 @@ MACHINE_CONFIG_START(digel804_state::digel804)
MCFG_MM74C922_X4_CALLBACK(IOPORT("LINE3"))
/* acia */
mos6551_device &acia(MOS6551(config, "acia", 0));
acia.set_xtal(3.6864_MHz_XTAL/2);
acia.irq_handler().set(FUNC(digel804_state::acia_irq_w));
acia.txd_handler().set("rs232", FUNC(rs232_port_device::write_txd));
acia.rts_handler().set("rs232", FUNC(rs232_port_device::write_rts));
acia.dtr_handler().set("rs232", FUNC(rs232_port_device::write_dtr));
MOS6551(config, m_acia, 0);
m_acia->set_xtal(3.6864_MHz_XTAL/2);
m_acia->irq_handler().set(FUNC(digel804_state::acia_irq_w));
m_acia->txd_handler().set("rs232", FUNC(rs232_port_device::write_txd));
m_acia->rts_handler().set("rs232", FUNC(rs232_port_device::write_rts));
m_acia->dtr_handler().set("rs232", FUNC(rs232_port_device::write_dtr));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "null_modem")
MCFG_RS232_RXD_HANDLER(WRITELINE("acia", mos6551_device, write_rxd))
MCFG_RS232_DSR_HANDLER(WRITELINE("acia", mos6551_device, write_dsr))
MCFG_RS232_CTS_HANDLER(WRITELINE("acia", mos6551_device, write_cts))
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("null_modem", digel804_rs232_defaults)
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("terminal", digel804_rs232_defaults)
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "null_modem"));
rs232.rxd_handler().set(m_acia, FUNC(mos6551_device::write_rxd));
rs232.dsr_handler().set(m_acia, FUNC(mos6551_device::write_dsr));
rs232.cts_handler().set(m_acia, FUNC(mos6551_device::write_cts));
rs232.set_option_device_input_defaults("null_modem", DEVICE_INPUT_DEFAULTS_NAME(digel804_rs232_defaults));
rs232.set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(digel804_rs232_defaults));
RAM(config, m_ram).set_default_size("256K").set_extra_options("32K,64K,128K");
@ -673,18 +673,19 @@ MACHINE_CONFIG_START(digel804_state::digel804)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MACHINE_CONFIG_END
MACHINE_CONFIG_START(ep804_state::ep804)
void ep804_state::ep804(machine_config &config)
{
digel804(config);
/* basic machine hardware */
MCFG_DEVICE_MODIFY("maincpu") /* Z80, X1(aka E0 on schematics): 3.6864Mhz */
MCFG_DEVICE_PROGRAM_MAP(z80_mem_804_1_2)
MCFG_DEVICE_IO_MAP(z80_io_1_2)
/* Z80, X1(aka E0 on schematics): 3.6864Mhz */
m_maincpu->set_addrmap(AS_PROGRAM, &ep804_state::z80_mem_804_1_2);
m_maincpu->set_addrmap(AS_IO, &ep804_state::z80_io_1_2);
subdevice<mos6551_device>("acia")->irq_handler().set(FUNC(ep804_state::ep804_acia_irq_w));
m_acia->irq_handler().set(FUNC(ep804_state::ep804_acia_irq_w));
m_ram->set_default_size("32K").set_extra_options("64K");
MACHINE_CONFIG_END
}

View File

@ -177,11 +177,11 @@ MACHINE_CONFIG_START(dmax8000_state::dmax8000)
dart1.out_dtra_callback().set("rs232", FUNC(rs232_port_device::write_dtr));
dart1.out_rtsa_callback().set("rs232", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("dart1", z80dart_device, rxa_w))
MCFG_RS232_DCD_HANDLER(WRITELINE("dart1", z80dart_device, dcda_w))
MCFG_RS232_RI_HANDLER(WRITELINE("dart1", z80dart_device, ria_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("dart1", z80dart_device, ctsa_w))
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal"));
rs232.rxd_handler().set("dart1", FUNC(z80dart_device::rxa_w));
rs232.dcd_handler().set("dart1", FUNC(z80dart_device::dcda_w));
rs232.ri_handler().set("dart1", FUNC(z80dart_device::ria_w));
rs232.cts_handler().set("dart1", FUNC(z80dart_device::ctsa_w));
Z80DART(config, "dart2", 4'000'000); // RS232 ports

View File

@ -49,9 +49,11 @@ public:
void init_dsb46();
protected:
virtual void machine_reset() override;
private:
DECLARE_WRITE8_MEMBER(port1a_w);
DECLARE_MACHINE_RESET(dsb46);
void dsb46_io(address_map &map);
void dsb46_mem(address_map &map);
required_device<z80_device> m_maincpu;
@ -88,7 +90,7 @@ void dsb46_state::init_dsb46()
membank("write")->configure_entry(0, &RAM[0x00000]);
}
MACHINE_RESET_MEMBER( dsb46_state,dsb46 )
void dsb46_state::machine_reset()
{
membank("read")->set_entry(0);
membank("write")->set_entry(0);
@ -108,15 +110,14 @@ static const z80_daisy_config daisy_chain[] =
};
MACHINE_CONFIG_START(dsb46_state::dsb46)
void dsb46_state::dsb46(machine_config &config)
{
// basic machine hardware
Z80(config, m_maincpu, XTAL(24'000'000) / 6);
m_maincpu->set_addrmap(AS_PROGRAM, &dsb46_state::dsb46_mem);
m_maincpu->set_addrmap(AS_IO, &dsb46_state::dsb46_io);
m_maincpu->set_daisy_config(daisy_chain);
MCFG_MACHINE_RESET_OVERRIDE(dsb46_state, dsb46)
/* video hardware */
clock_device &ctc_clock(CLOCK(config, "ctc_clock", 1.8432_MHz_XTAL));
ctc_clock.signal_handler().set("ctc1", FUNC(z80ctc_device::trg0));
@ -129,9 +130,9 @@ MACHINE_CONFIG_START(dsb46_state::dsb46)
sio.out_dtra_callback().set("rs232", FUNC(rs232_port_device::write_dtr));
sio.out_rtsa_callback().set("rs232", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("sio", z80sio_device, rxa_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("sio", z80sio_device, ctsa_w))
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal"));
rs232.rxd_handler().set("sio", FUNC(z80sio_device::rxa_w));
rs232.cts_handler().set("sio", FUNC(z80sio_device::ctsa_w));
z80ctc_device &ctc1(Z80CTC(config, "ctc1", 24_MHz_XTAL / 6));
ctc1.intr_callback().set_inputline(m_maincpu, INPUT_LINE_IRQ0);
@ -139,7 +140,7 @@ MACHINE_CONFIG_START(dsb46_state::dsb46)
ctc1.zc_callback<0>().append("sio", FUNC(z80sio_device::txca_w));
ctc1.zc_callback<2>().set("sio", FUNC(z80sio_device::rxcb_w));
ctc1.zc_callback<2>().append("sio", FUNC(z80sio_device::txcb_w));
MACHINE_CONFIG_END
}
ROM_START( dsb46 )
ROM_REGION( 0x10800, "maincpu", 0 )

View File

@ -575,7 +575,7 @@ MACHINE_CONFIG_START(e100_state::e100)
m_pia2->irqa_handler().set_inputline("maincpu", M6800_IRQ_LINE);
/* Serial port support */
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, nullptr)
RS232_PORT(config, m_rs232, default_rs232_devices, nullptr);
/* Cassette support - E100 uses 300 baud Kansas City Standard with 1200/2400 Hz modulation */
/* NOTE on usage: mame e100 -window -cass <wav file> -ui_active

View File

@ -652,10 +652,10 @@ MACHINE_CONFIG_START(einstein_state::einstein)
ic_i060.dtr_handler().set("rs232", FUNC(rs232_port_device::write_dtr));
// rs232 port
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(IC_I060, i8251_device, write_rxd))
MCFG_RS232_DSR_HANDLER(WRITELINE(IC_I060, i8251_device, write_dsr))
MCFG_RS232_CTS_HANDLER(WRITELINE(IC_I060, i8251_device, write_cts))
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, nullptr));
rs232.rxd_handler().set(IC_I060, FUNC(i8251_device::write_rxd));
rs232.dsr_handler().set(IC_I060, FUNC(i8251_device::write_dsr));
rs232.cts_handler().set(IC_I060, FUNC(i8251_device::write_cts));
// floppy
WD1770(config, m_fdc, XTAL_X002);

View File

@ -234,8 +234,7 @@ MACHINE_CONFIG_START(et3400_state::et3400)
m_pia->readpa_handler().set(FUNC(et3400_state::pia_ar));
m_pia->readpb_handler().set(FUNC(et3400_state::pia_br));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("terminal", terminal)
RS232_PORT(config, m_rs232, default_rs232_devices, "terminal").set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(terminal));
for (std::size_t i = 0; i < 6; i++)
LS259(config, m_displatch[i]);

View File

@ -468,9 +468,9 @@ MACHINE_CONFIG_START(eurocom2_state::eurocom2)
ACIA6850(config, m_acia, 0);
m_acia->txd_handler().set("rs232", FUNC(rs232_port_device::write_txd));
m_acia->rts_handler().set("rs232", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("acia", acia6850_device, write_rxd))
MCFG_RS232_CTS_HANDLER(WRITELINE("acia", acia6850_device, write_cts))
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, nullptr));
rs232.rxd_handler().set(m_acia, FUNC(acia6850_device::write_rxd));
rs232.cts_handler().set(m_acia, FUNC(acia6850_device::write_cts));
FD1793(config, m_fdc, 2_MHz_XTAL / 2);
// m_fdc->intrq_wr_callback().set_inputline(m_maincpu, M6809_IRQ_LINE);

View File

@ -203,8 +203,7 @@ MACHINE_CONFIG_START(exp85_state::exp85)
MCFG_CASSETTE_ADD("cassette")
MCFG_CASSETTE_DEFAULT_STATE(CASSETTE_STOPPED | CASSETTE_MOTOR_ENABLED | CASSETTE_SPEAKER_MUTED)
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("terminal", terminal)
RS232_PORT(config, "rs232", default_rs232_devices, "terminal").set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(terminal));
/* internal ram */
RAM(config, RAM_TAG).set_default_size("256").set_extra_options("4K");

View File

@ -83,11 +83,11 @@ void ft68m_state::machine_reset()
m_maincpu->reset();
}
MACHINE_CONFIG_START(ft68m_state::ft68m)
void ft68m_state::ft68m(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", M68000, XTAL(19'660'800) / 2)
MCFG_DEVICE_PROGRAM_MAP(mem_map)
M68000(config, m_maincpu, XTAL(19'660'800) / 2);
m_maincpu->set_addrmap(AS_PROGRAM, &ft68m_state::mem_map);
upd7201_new_device& mpsc(UPD7201_NEW(config, "mpsc", 0));
mpsc.out_txda_callback().set("rs232a", FUNC(rs232_port_device::write_txd));
@ -104,14 +104,14 @@ MACHINE_CONFIG_START(ft68m_state::ft68m)
stc.out5_cb().set("mpsc", FUNC(upd7201_new_device::rxcb_w));
stc.out5_cb().append("mpsc", FUNC(upd7201_new_device::txcb_w));
MCFG_DEVICE_ADD("rs232a", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("mpsc", upd7201_new_device, rxa_w))
MCFG_RS232_DSR_HANDLER(WRITELINE("mpsc", upd7201_new_device, dcda_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("mpsc", upd7201_new_device, ctsa_w))
rs232_port_device &rs232a(RS232_PORT(config, "rs232a", default_rs232_devices, "terminal"));
rs232a.rxd_handler().set("mpsc", FUNC(upd7201_new_device::rxa_w));
rs232a.dsr_handler().set("mpsc", FUNC(upd7201_new_device::dcda_w));
rs232a.cts_handler().set("mpsc", FUNC(upd7201_new_device::ctsa_w));
MCFG_DEVICE_ADD("rs232b", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("mpsc", upd7201_new_device, rxb_w))
MACHINE_CONFIG_END
rs232_port_device &rs232b(RS232_PORT(config, "rs232b", default_rs232_devices, nullptr));
rs232b.rxd_handler().set("mpsc", FUNC(upd7201_new_device::rxb_w));
}
/* ROM definition */
ROM_START( ft68m )

View File

@ -527,21 +527,21 @@ MACHINE_CONFIG_START(gimix_state::gimix)
m_acia4->txd_handler().set("serial4", FUNC(rs232_port_device::write_txd));
m_acia4->rts_handler().set("serial4", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("serial1",RS232_PORT, default_rs232_devices,nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("acia1",acia6850_device,write_rxd))
MCFG_RS232_CTS_HANDLER(WRITELINE("acia1",acia6850_device,write_cts))
rs232_port_device &serial1(RS232_PORT(config, "serial1", default_rs232_devices, nullptr));
serial1.rxd_handler().set(m_acia1, FUNC(acia6850_device::write_rxd));
serial1.cts_handler().set(m_acia1, FUNC(acia6850_device::write_cts));
MCFG_DEVICE_ADD("serial2",RS232_PORT, default_rs232_devices,"terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("acia2",acia6850_device,write_rxd))
MCFG_RS232_CTS_HANDLER(WRITELINE("acia2",acia6850_device,write_cts))
rs232_port_device &serial2(RS232_PORT(config, "serial2", default_rs232_devices, "terminal"));
serial2.rxd_handler().set(m_acia2, FUNC(acia6850_device::write_rxd));
serial2.cts_handler().set(m_acia2, FUNC(acia6850_device::write_cts));
MCFG_DEVICE_ADD("serial3",RS232_PORT, default_rs232_devices,nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("acia3",acia6850_device,write_rxd))
MCFG_RS232_CTS_HANDLER(WRITELINE("acia3",acia6850_device,write_cts))
rs232_port_device &serial3(RS232_PORT(config, "serial3", default_rs232_devices, nullptr));
serial3.rxd_handler().set(m_acia3, FUNC(acia6850_device::write_rxd));
serial3.cts_handler().set(m_acia3, FUNC(acia6850_device::write_cts));
MCFG_DEVICE_ADD("serial4",RS232_PORT, default_rs232_devices,nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("acia4",acia6850_device,write_rxd))
MCFG_RS232_CTS_HANDLER(WRITELINE("acia4",acia6850_device,write_cts))
rs232_port_device &serial4(RS232_PORT(config, "serial4", default_rs232_devices, nullptr));
serial4.rxd_handler().set(m_acia4, FUNC(acia6850_device::write_rxd));
serial4.cts_handler().set(m_acia4, FUNC(acia6850_device::write_cts));
clock_device &acia_clock(CLOCK(config, "acia_clock", 153600));
acia_clock.signal_handler().set(m_acia1, FUNC(acia6850_device::write_txc));

View File

@ -987,11 +987,11 @@ MACHINE_CONFIG_START(hp2645_state::hp2645)
config.set_default_layout(layout_hp2640);
// RS232
MCFG_DEVICE_ADD("rs232" , RS232_PORT, default_rs232_devices , nullptr)
RS232_PORT(config, m_rs232, default_rs232_devices , nullptr);
// UART (TR1602B)
AY51013(config, m_uart);
m_uart->read_si_callback().set("rs232", FUNC(rs232_port_device::rxd_r));
m_uart->read_si_callback().set(m_rs232, FUNC(rs232_port_device::rxd_r));
m_uart->write_so_callback().set(FUNC(hp2645_state::async_txd_w));
m_uart->write_dav_callback().set(FUNC(hp2645_state::async_dav_w));
m_uart->set_auto_rdav(true);

View File

@ -142,8 +142,8 @@ MACHINE_CONFIG_START(ht68k_state::ht68k)
MCFG_MC68681_B_TX_CALLBACK(WRITELINE(*this, ht68k_state, duart_txb))
MCFG_MC68681_OUTPORT_CALLBACK(WRITE8(*this, ht68k_state, duart_output))
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("duart68681", mc68681_device, rx_a_w))
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal"));
rs232.rxd_handler().set(m_duart, FUNC(mc68681_device::rx_a_w));
WD1770(config, m_fdc, 8_MHz_XTAL);

View File

@ -414,9 +414,9 @@ MACHINE_CONFIG_START(hunter2_state::hunter2)
MCFG_NSC810_TIMER0_OUT(WRITELINE(*this, hunter2_state,timer0_out))
MCFG_NSC810_TIMER1_OUT(WRITELINE(*this, hunter2_state,timer1_out))
MCFG_DEVICE_ADD("serial",RS232_PORT, default_rs232_devices,nullptr)
MCFG_RS232_CTS_HANDLER(WRITELINE(*this, hunter2_state,cts_w))
MCFG_RS232_RXD_HANDLER(WRITELINE(*this, hunter2_state,rxd_w))
RS232_PORT(config, m_rs232, default_rs232_devices, nullptr);
m_rs232->cts_handler().set(FUNC(hunter2_state::cts_w));
m_rs232->rxd_handler().set(FUNC(hunter2_state::rxd_w));
NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_0);

View File

@ -932,7 +932,7 @@ MACHINE_CONFIG_START(hx20_state::hx20)
MC146818(config, m_rtc, 4.194304_MHz_XTAL);
m_rtc->irq().set(FUNC(hx20_state::rtc_irq_w));
MCFG_DEVICE_ADD(RS232_TAG, RS232_PORT, default_rs232_devices, nullptr)
RS232_PORT(config, RS232_TAG, default_rs232_devices, nullptr);
MCFG_CASSETTE_ADD(CASSETTE_TAG)
MCFG_EPSON_SIO_ADD("sio", "tf20")
MCFG_EPSON_SIO_RX(WRITELINE(*this, hx20_state, sio_rx_w))

View File

@ -114,9 +114,9 @@ MACHINE_CONFIG_START(indiana_state::indiana)
mfp.set_tx_clock(0);
mfp.out_so_cb().set("keyboard", FUNC(rs232_port_device::write_txd));
MCFG_DEVICE_ADD("keyboard", RS232_PORT, default_rs232_devices, "keyboard")
MCFG_RS232_RXD_HANDLER(WRITELINE(MFP_TAG, mc68901_device, write_rx))
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("keyboard", keyboard)
rs232_port_device &keyboard(RS232_PORT(config, "keyboard", default_rs232_devices, "keyboard"));
keyboard.rxd_handler().set(MFP_TAG, FUNC(mc68901_device::write_rx));
keyboard.set_option_device_input_defaults("keyboard", DEVICE_INPUT_DEFAULTS_NAME(keyboard));
MACHINE_CONFIG_END
/* ROM definition */

View File

@ -62,11 +62,12 @@ static INPUT_PORTS_START( jade )
INPUT_PORTS_END
MACHINE_CONFIG_START(jade_state::jade)
void jade_state::jade(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu",Z80, XTAL(4'000'000))
MCFG_DEVICE_PROGRAM_MAP(mem_map)
MCFG_DEVICE_IO_MAP(io_map)
Z80(config, m_maincpu, XTAL(4'000'000));
m_maincpu->set_addrmap(AS_PROGRAM, &jade_state::mem_map);
m_maincpu->set_addrmap(AS_IO, &jade_state::io_map);
Z80CTC(config, "ctc1", 4_MHz_XTAL);
@ -83,10 +84,10 @@ MACHINE_CONFIG_START(jade_state::jade)
sio.out_dtra_callback().set("rs232", FUNC(rs232_port_device::write_dtr));
sio.out_rtsa_callback().set("rs232", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("sio", z80sio_device, rxa_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("sio", z80sio_device, ctsa_w))
MACHINE_CONFIG_END
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal"));
rs232.rxd_handler().set("sio", FUNC(z80sio_device::rxa_w));
rs232.cts_handler().set("sio", FUNC(z80sio_device::ctsa_w));
}
/* ROM definition */
ROM_START( jade )

View File

@ -282,35 +282,36 @@ void jupiter3_state::machine_reset()
// MACHINE_CONFIG( jupiter )
//-------------------------------------------------
MACHINE_CONFIG_START(jupiter2_state::jupiter2)
void jupiter2_state::jupiter2(machine_config &config)
{
// basic machine hardware
MCFG_DEVICE_ADD(MCM6571AP_TAG, M6800, 2000000)
MCFG_DEVICE_PROGRAM_MAP(jupiter2_mem)
M6800(config, m_maincpu, 2000000);
m_maincpu->set_addrmap(AS_PROGRAM, &jupiter2_state::jupiter2_mem);
// devices
FD1771(config, INS1771N1_TAG, 1000000);
MCFG_FLOPPY_DRIVE_ADD(INS1771N1_TAG":0", jupiter_floppies, "525ssdd", floppy_image_device::default_floppy_formats)
MCFG_FLOPPY_DRIVE_ADD(INS1771N1_TAG":1", jupiter_floppies, nullptr, floppy_image_device::default_floppy_formats)
FLOPPY_CONNECTOR(config, INS1771N1_TAG":0", jupiter_floppies, "525ssdd", floppy_image_device::default_floppy_formats);
FLOPPY_CONNECTOR(config, INS1771N1_TAG":1", jupiter_floppies, nullptr, floppy_image_device::default_floppy_formats);
ACIA6850(config, m_acia0, XTAL(2'000'000)); // unknown frequency
m_acia0->txd_handler().set("serial0", FUNC(rs232_port_device::write_txd));
m_acia0->rts_handler().set("serial0", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("serial0", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("acia0", acia6850_device, write_rxd))
MCFG_RS232_CTS_HANDLER(WRITELINE("acia0", acia6850_device, write_cts))
rs232_port_device &serial0(RS232_PORT(config, "serial0", default_rs232_devices, "terminal"));
serial0.rxd_handler().set(m_acia0, FUNC(acia6850_device::write_rxd));
serial0.cts_handler().set(m_acia0, FUNC(acia6850_device::write_cts));
ACIA6850(config, m_acia1, XTAL(2'000'000)); // unknown frequency
m_acia1->txd_handler().set("serial1", FUNC(rs232_port_device::write_txd));
m_acia1->rts_handler().set("serial1", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("serial1", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("acia1", acia6850_device, write_rxd))
MCFG_RS232_CTS_HANDLER(WRITELINE("acia1", acia6850_device, write_cts))
rs232_port_device &serial1(RS232_PORT(config, "serial1", default_rs232_devices, "terminal"));
serial1.rxd_handler().set(m_acia1, FUNC(acia6850_device::write_rxd));
serial1.cts_handler().set(m_acia1, FUNC(acia6850_device::write_cts));
// internal ram
RAM(config, RAM_TAG).set_default_size("64K");
MACHINE_CONFIG_END
}
//-------------------------------------------------

View File

@ -83,11 +83,12 @@ void lft_state::machine_reset()
{
}
MACHINE_CONFIG_START(lft_state::lft)
void lft_state::lft(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", I80186, 16_MHz_XTAL)
MCFG_DEVICE_PROGRAM_MAP(mem_map)
MCFG_DEVICE_IO_MAP(io_map)
I80186(config, m_maincpu, 16_MHz_XTAL);
m_maincpu->set_addrmap(AS_PROGRAM, &lft_state::mem_map);
m_maincpu->set_addrmap(AS_IO, &lft_state::io_map);
// Devices
MM58167(config, m_rtc, 32.768_kHz_XTAL);
@ -97,20 +98,20 @@ MACHINE_CONFIG_START(lft_state::lft)
m_scc->out_dtra_callback().set("rs232a", FUNC(rs232_port_device::write_dtr));
m_scc->out_rtsa_callback().set("rs232a", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232a", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_scc, scc8530_device, rxa_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_scc, scc8530_device, dcda_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_scc, scc8530_device, ctsa_w))
rs232_port_device &rs232a(RS232_PORT(config, "rs232a", default_rs232_devices, nullptr));
rs232a.rxd_handler().set(m_scc, FUNC(scc8530_device::rxa_w));
rs232a.dcd_handler().set(m_scc, FUNC(scc8530_device::dcda_w));
rs232a.cts_handler().set(m_scc, FUNC(scc8530_device::ctsa_w));
m_scc->out_txdb_callback().set("rs232b", FUNC(rs232_port_device::write_txd));
m_scc->out_dtrb_callback().set("rs232b", FUNC(rs232_port_device::write_dtr));
m_scc->out_rtsb_callback().set("rs232b", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232b", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE(m_scc, scc8530_device, rxb_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_scc, scc8530_device, dcdb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_scc, scc8530_device, ctsb_w))
MACHINE_CONFIG_END
rs232_port_device &rs232b(RS232_PORT(config, "rs232b", default_rs232_devices, "terminal"));
rs232b.rxd_handler().set(m_scc, FUNC(scc8530_device::rxb_w));
rs232b.dcd_handler().set(m_scc, FUNC(scc8530_device::dcdb_w));
rs232b.cts_handler().set(m_scc, FUNC(scc8530_device::ctsb_w));
}
/* ROM definition */

View File

@ -270,10 +270,10 @@ MACHINE_CONFIG_START(mc1502_state::mc1502)
m_upd8251->txrdy_handler().set("pic8259", FUNC(pic8259_device::ir7_w));
m_upd8251->syndet_handler().set(FUNC(mc1502_state::mc1502_i8251_syndet));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("upd8251", i8251_device, write_rxd))
MCFG_RS232_DSR_HANDLER(WRITELINE("upd8251", i8251_device, write_dsr))
MCFG_RS232_CTS_HANDLER(WRITELINE("upd8251", i8251_device, write_cts))
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, nullptr));
rs232.rxd_handler().set(m_upd8251, FUNC(i8251_device::write_rxd));
rs232.dsr_handler().set(m_upd8251, FUNC(i8251_device::write_dsr));
rs232.cts_handler().set(m_upd8251, FUNC(i8251_device::write_cts));
MCFG_DEVICE_ADD("isa", ISA8, 0)
MCFG_ISA8_CPU("maincpu")

View File

@ -237,9 +237,9 @@ MACHINE_CONFIG_START(mc8030_state::mc8030)
sio.out_dtra_callback().set("rs232", FUNC(rs232_port_device::write_dtr));
sio.out_rtsa_callback().set("rs232", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "keyboard")
MCFG_RS232_RXD_HANDLER(WRITELINE("asp_sio", z80sio_device, rxa_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("asp_sio", z80sio_device, ctsa_w))
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "keyboard"));
rs232.rxd_handler().set("asp_sio", FUNC(z80sio_device::rxa_w));
rs232.cts_handler().set("asp_sio", FUNC(z80sio_device::ctsa_w));
MACHINE_CONFIG_END
/* ROM definition */

View File

@ -80,11 +80,12 @@ void mccpm_state::machine_reset()
memcpy(m_p_ram, bios, 0x1000);
}
MACHINE_CONFIG_START(mccpm_state::mccpm)
void mccpm_state::mccpm(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu",Z80, XTAL(4'000'000))
MCFG_DEVICE_PROGRAM_MAP(mccpm_mem)
MCFG_DEVICE_IO_MAP(mccpm_io)
Z80(config, m_maincpu, XTAL(4'000'000));
m_maincpu->set_addrmap(AS_PROGRAM, &mccpm_state::mccpm_mem);
m_maincpu->set_addrmap(AS_IO, &mccpm_state::mccpm_io);
/* Devices */
clock_device &uart_clock(CLOCK(config, "uart_clock", 153600));
@ -97,12 +98,12 @@ MACHINE_CONFIG_START(mccpm_state::mccpm)
sio.out_dtra_callback().set("rs232", FUNC(rs232_port_device::write_dtr));
sio.out_rtsa_callback().set("rs232", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("sio", z80sio_device, rxa_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("sio", z80sio_device, ctsa_w))
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal"));
rs232.rxd_handler().set("sio", FUNC(z80sio_device::rxa_w));
rs232.cts_handler().set("sio", FUNC(z80sio_device::ctsa_w));
Z80PIO(config, "pio", XTAL(4'000'000));
MACHINE_CONFIG_END
}
/* ROM definition */
ROM_START( mccpm )

View File

@ -99,7 +99,8 @@ void mfabfz_state::machine_reset()
}
MACHINE_CONFIG_START(mfabfz_state::mfabfz)
void mfabfz_state::mfabfz(machine_config &config)
{
/* basic machine hardware */
I8085A(config, m_maincpu, 4_MHz_XTAL / 2);
m_maincpu->set_addrmap(AS_PROGRAM, &mfabfz_state::mfabfz_mem);
@ -115,14 +116,14 @@ MACHINE_CONFIG_START(mfabfz_state::mfabfz)
uart1.dtr_handler().set("rs232", FUNC(rs232_port_device::write_dtr));
uart1.rts_handler().set("rs232", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("uart1", i8251_device, write_rxd))
MCFG_RS232_DSR_HANDLER(WRITELINE("uart1", i8251_device, write_dsr))
MCFG_RS232_CTS_HANDLER(WRITELINE("uart1", i8251_device, write_cts))
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal"));
rs232.rxd_handler().set("uart1", FUNC(i8251_device::write_rxd));
rs232.dsr_handler().set("uart1", FUNC(i8251_device::write_dsr));
rs232.cts_handler().set("uart1", FUNC(i8251_device::write_cts));
// uart2 - cassette - clock comes from 2MHz through a divider consisting of 4 chips and some jumpers.
I8251(config, "uart2", 0);
MACHINE_CONFIG_END
}
static DEVICE_INPUT_DEFAULTS_START( terminal )
DEVICE_INPUT_DEFAULTS( "RS232_RXBAUD", 0xff, RS232_BAUD_4800 )

View File

@ -160,11 +160,12 @@ static DEVICE_INPUT_DEFAULTS_START( mice2_terminal )
DEVICE_INPUT_DEFAULTS_END
MACHINE_CONFIG_START(mice_state::mice)
void mice_state::mice(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", I8085A, 6.144_MHz_XTAL)
MCFG_DEVICE_PROGRAM_MAP(mice_mem)
MCFG_DEVICE_IO_MAP(mice_io)
I8085A(config, m_maincpu, 6.144_MHz_XTAL);
m_maincpu->set_addrmap(AS_PROGRAM, &mice_state::mice_mem);
m_maincpu->set_addrmap(AS_IO, &mice_state::mice_io);
i8251_device &uart(I8251(config, "uart", 6.144_MHz_XTAL / 2));
uart.txd_handler().set("rs232", FUNC(rs232_port_device::write_txd));
@ -173,36 +174,35 @@ MACHINE_CONFIG_START(mice_state::mice)
uart.txrdy_handler().set_inputline("maincpu", I8085_RST65_LINE);
uart.rxrdy_handler().set_inputline("maincpu", I8085_RST75_LINE);
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("uart", i8251_device, write_rxd))
MCFG_RS232_DSR_HANDLER(WRITELINE("uart", i8251_device, write_dsr))
MCFG_RS232_CTS_HANDLER(WRITELINE("uart", i8251_device, write_cts))
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("terminal", mice_terminal)
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal"));
rs232.rxd_handler().set("uart", FUNC(i8251_device::write_rxd));
rs232.dsr_handler().set("uart", FUNC(i8251_device::write_dsr));
rs232.cts_handler().set("uart", FUNC(i8251_device::write_cts));
rs232.set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(mice_terminal));
i8155_device &rpt(I8155(config, "rpt", 6.144_MHz_XTAL / 2));
rpt.in_pc_callback().set_ioport("BAUD");
rpt.out_to_callback().set("uart", FUNC(i8251_device::write_txc));
rpt.out_to_callback().append("uart", FUNC(i8251_device::write_rxc));
I8255(config, "ppi", 0);
MACHINE_CONFIG_END
I8255(config, "ppi");
}
MACHINE_CONFIG_START(mice_state::mice2)
void mice_state::mice2(machine_config &config)
{
mice(config);
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_PROGRAM_MAP(mice2_mem)
MCFG_DEVICE_IO_MAP(mice2_io)
m_maincpu->set_addrmap(AS_PROGRAM, &mice_state::mice2_mem);
m_maincpu->set_addrmap(AS_IO, &mice_state::mice2_io);
MCFG_DEVICE_MODIFY("rs232")
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("terminal", mice2_terminal)
subdevice<rs232_port_device>("rs232")->set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(mice2_terminal));
MCFG_DEVICE_ADD("rttppi1", I8255, 0)
MCFG_DEVICE_ADD("rttppi2", I8255, 0)
MCFG_DEVICE_ADD("rttppi3", I8255, 0)
MCFG_DEVICE_ADD("rttppi4", I8255, 0)
MCFG_DEVICE_ADD("rttppi5", I8255, 0)
MCFG_DEVICE_ADD("rtt8155", I8155, 0)
MACHINE_CONFIG_END
I8255(config, "rttppi1");
I8255(config, "rttppi2");
I8255(config, "rttppi3");
I8255(config, "rttppi4");
I8255(config, "rttppi5");
I8155(config, "rtt8155", 0);
}
/* ROM definitions */
ROM_START( mice_6502 )

View File

@ -173,9 +173,9 @@ MACHINE_CONFIG_START(micro20_state::micro20)
MCFG_DEVICE_ADD(DUART_A_TAG, MC68681, 3.6864_MHz_XTAL)
MCFG_MC68681_A_TX_CALLBACK(WRITELINE("rs232", rs232_port_device, write_txd))
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE(DUART_A_TAG, mc68681_device, rx_a_w))
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("terminal", terminal)
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal"));
rs232.rxd_handler().set(DUART_A_TAG, FUNC(mc68681_device::rx_a_w));
rs232.set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(terminal));
MCFG_DEVICE_ADD(DUART_B_TAG, MC68681, 3.6864_MHz_XTAL)

View File

@ -551,14 +551,14 @@ MACHINE_CONFIG_START(ms0515_state::ms0515)
// serial connection to printer
I8251(config, m_i8251line, 0);
m_i8251line->txd_handler().set("rs232", FUNC(rs232_port_device::write_txd));
m_i8251line->txd_handler().set(m_rs232, FUNC(rs232_port_device::write_txd));
m_i8251line->rxrdy_handler().set(FUNC(ms0515_state::irq9_w));
m_i8251line->txrdy_handler().set(FUNC(ms0515_state::irq8_w));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_i8251line, i8251_device, write_rxd))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_i8251line, i8251_device, write_cts))
MCFG_RS232_DSR_HANDLER(WRITELINE(m_i8251line, i8251_device, write_dsr))
RS232_PORT(config, m_rs232, default_rs232_devices, nullptr);
m_rs232->rxd_handler().set(m_i8251line, FUNC(i8251_device::write_rxd));
m_rs232->cts_handler().set(m_i8251line, FUNC(i8251_device::write_cts));
m_rs232->dsr_handler().set(m_i8251line, FUNC(i8251_device::write_dsr));
// MCFG_DEVICE_ADD("line_clock", CLOCK, 4800*16) // 8251 is set to /16 on the clock input
// MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(*this, ms0515_state, write_line_clock))

View File

@ -133,7 +133,7 @@ void mx2178_state::machine_reset()
MACHINE_CONFIG_START(mx2178_state::mx2178)
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", Z80, XTAL(18'869'600) / 5) // guess
MCFG_DEVICE_ADD(m_maincpu, Z80, XTAL(18'869'600) / 5) // guess
MCFG_DEVICE_PROGRAM_MAP(mx2178_mem)
MCFG_DEVICE_IO_MAP(mx2178_io)
@ -163,20 +163,20 @@ MACHINE_CONFIG_START(mx2178_state::mx2178)
acia6850_device &acia1(ACIA6850(config, "acia1", 0));
acia1.txd_handler().set("rs232a", FUNC(rs232_port_device::write_txd));
acia1.rts_handler().set("rs232a", FUNC(rs232_port_device::write_rts));
acia1.irq_handler().set_inputline("maincpu", INPUT_LINE_IRQ0);
acia1.irq_handler().set_inputline(m_maincpu, INPUT_LINE_IRQ0);
MCFG_DEVICE_ADD("rs232a", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("acia1", acia6850_device, write_rxd))
MCFG_RS232_CTS_HANDLER(WRITELINE("acia1", acia6850_device, write_cts))
rs232_port_device &rs232a(RS232_PORT(config, "rs232a", default_rs232_devices, nullptr));
rs232a.rxd_handler().set("acia1", FUNC(acia6850_device::write_rxd));
rs232a.cts_handler().set("acia1", FUNC(acia6850_device::write_cts));
acia6850_device &acia2(ACIA6850(config, "acia2", 0));
acia2.txd_handler().set("rs232b", FUNC(rs232_port_device::write_txd));
acia2.rts_handler().set("rs232b", FUNC(rs232_port_device::write_rts));
acia2.irq_handler().set_inputline("maincpu", INPUT_LINE_IRQ0);
acia2.irq_handler().set_inputline(m_maincpu, INPUT_LINE_IRQ0);
MCFG_DEVICE_ADD("rs232b", RS232_PORT, default_rs232_devices, "keyboard")
MCFG_RS232_RXD_HANDLER(WRITELINE("acia2", acia6850_device, write_rxd))
MCFG_RS232_CTS_HANDLER(WRITELINE("acia2", acia6850_device, write_cts))
rs232_port_device &rs232b(RS232_PORT(config, "rs232b", default_rs232_devices, "keyboard"));
rs232b.rxd_handler().set("acia2", FUNC(acia6850_device::write_rxd));
rs232b.cts_handler().set("acia2", FUNC(acia6850_device::write_cts));
MACHINE_CONFIG_END
/* ROM definition */

View File

@ -837,8 +837,8 @@ MACHINE_CONFIG_START(newbrain_state::newbrain)
MCFG_CASSETTE_ADD(CASSETTE2_TAG)
MCFG_CASSETTE_DEFAULT_STATE(CASSETTE_STOPPED | CASSETTE_MOTOR_DISABLED | CASSETTE_SPEAKER_MUTED)
MCFG_DEVICE_ADD(RS232_V24_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_DEVICE_ADD(RS232_PRN_TAG, RS232_PORT, default_rs232_devices, nullptr)
RS232_PORT(config, RS232_V24_TAG, default_rs232_devices, nullptr);
RS232_PORT(config, RS232_PRN_TAG, default_rs232_devices, nullptr);
// internal ram
RAM(config, RAM_TAG).set_default_size("32K");

View File

@ -973,17 +973,17 @@ MACHINE_CONFIG_START(ngen_state::ngen)
m_iouart->out_rtsa_callback().set("rs232_a", FUNC(rs232_port_device::write_rts));
m_iouart->out_rtsb_callback().set("rs232_b", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232_a", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("iouart", upd7201_device, rxa_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("iouart", upd7201_device, ctsa_w))
MCFG_RS232_DCD_HANDLER(WRITELINE("iouart", upd7201_device, dcda_w))
MCFG_RS232_RI_HANDLER(WRITELINE("iouart", upd7201_device, ria_w))
rs232_port_device &rs232a(RS232_PORT(config, "rs232_a", default_rs232_devices, nullptr));
rs232a.rxd_handler().set(m_iouart, FUNC(upd7201_device::rxa_w));
rs232a.cts_handler().set(m_iouart, FUNC(upd7201_device::ctsa_w));
rs232a.dcd_handler().set(m_iouart, FUNC(upd7201_device::dcda_w));
rs232a.ri_handler().set(m_iouart, FUNC(upd7201_device::ria_w));
MCFG_DEVICE_ADD("rs232_b", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("iouart", upd7201_device, rxb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("iouart", upd7201_device, ctsb_w))
MCFG_RS232_DCD_HANDLER(WRITELINE("iouart", upd7201_device, dcdb_w))
MCFG_RS232_RI_HANDLER(WRITELINE("iouart", upd7201_device, rib_w))
rs232_port_device &rs232b(RS232_PORT(config, "rs232_b", default_rs232_devices, nullptr));
rs232b.rxd_handler().set(m_iouart, FUNC(upd7201_device::rxb_w));
rs232b.cts_handler().set(m_iouart, FUNC(upd7201_device::ctsb_w));
rs232b.dcd_handler().set(m_iouart, FUNC(upd7201_device::dcdb_w));
rs232b.ri_handler().set(m_iouart, FUNC(upd7201_device::rib_w));
// TODO: SCN2652 MPCC (not implemented), used for RS-422 cluster communications?
@ -1004,8 +1004,8 @@ MACHINE_CONFIG_START(ngen_state::ngen)
I8251(config, m_viduart, 0); // main clock unknown, Rx/Tx clocks are 19.53kHz
// m_viduart->txempty_handler().set(m_pic, FUNC(pic8259_device::ir4_w));
m_viduart->txd_handler().set("keyboard", FUNC(rs232_port_device::write_txd));
MCFG_DEVICE_ADD("keyboard", RS232_PORT, keyboard, "ngen")
MCFG_RS232_RXD_HANDLER(WRITELINE(m_viduart, i8251_device, write_rxd))
rs232_port_device &kbd(RS232_PORT(config, "keyboard", keyboard, "ngen"));
kbd.rxd_handler().set(m_viduart, FUNC(i8251_device::write_rxd));
MCFG_DEVICE_ADD("refresh_clock", CLOCK, 19200*16) // should be 19530Hz
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(*this, ngen_state,timer_clk_out))
@ -1085,17 +1085,17 @@ MACHINE_CONFIG_START(ngen386_state::ngen386)
m_iouart->out_rtsa_callback().set("rs232_a", FUNC(rs232_port_device::write_rts));
m_iouart->out_rtsb_callback().set("rs232_b", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232_a", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("iouart", upd7201_device, rxa_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("iouart", upd7201_device, ctsa_w))
MCFG_RS232_DCD_HANDLER(WRITELINE("iouart", upd7201_device, dcda_w))
MCFG_RS232_RI_HANDLER(WRITELINE("iouart", upd7201_device, ria_w))
rs232_port_device &rs232a(RS232_PORT(config, "rs232_a", default_rs232_devices, nullptr));
rs232a.rxd_handler().set(m_iouart, FUNC(upd7201_device::rxa_w));
rs232a.cts_handler().set(m_iouart, FUNC(upd7201_device::ctsa_w));
rs232a.dcd_handler().set(m_iouart, FUNC(upd7201_device::dcda_w));
rs232a.ri_handler().set(m_iouart, FUNC(upd7201_device::ria_w));
MCFG_DEVICE_ADD("rs232_b", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("iouart", upd7201_device, rxb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("iouart", upd7201_device, ctsb_w))
MCFG_RS232_DCD_HANDLER(WRITELINE("iouart", upd7201_device, dcdb_w))
MCFG_RS232_RI_HANDLER(WRITELINE("iouart", upd7201_device, rib_w))
rs232_port_device &rs232b(RS232_PORT(config, "rs232_b", default_rs232_devices, nullptr));
rs232b.rxd_handler().set(m_iouart, FUNC(upd7201_device::rxb_w));
rs232b.cts_handler().set(m_iouart, FUNC(upd7201_device::ctsb_w));
rs232b.dcd_handler().set(m_iouart, FUNC(upd7201_device::dcdb_w));
rs232b.ri_handler().set(m_iouart, FUNC(upd7201_device::rib_w));
// TODO: SCN2652 MPCC (not implemented), used for RS-422 cluster communications?
@ -1116,8 +1116,8 @@ MACHINE_CONFIG_START(ngen386_state::ngen386)
I8251(config, m_viduart, 0); // main clock unknown, Rx/Tx clocks are 19.53kHz
// m_viduart->txempty_handler().set("pic", FUNC(pic8259_device::ir4_w));
m_viduart->txd_handler().set("keyboard", FUNC(rs232_port_device::write_txd));
MCFG_DEVICE_ADD("keyboard", RS232_PORT, keyboard, "ngen")
MCFG_RS232_RXD_HANDLER(WRITELINE(m_viduart, i8251_device, write_rxd))
rs232_port_device &kbd(RS232_PORT(config, "keyboard", keyboard, "ngen"));
kbd.rxd_handler().set(m_viduart, FUNC(i8251_device::write_rxd));
MCFG_DEVICE_ADD("refresh_clock", CLOCK, 19200*16) // should be 19530Hz
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(*this, ngen386_state,timer_clk_out))

View File

@ -966,12 +966,12 @@ MACHINE_CONFIG_START(octopus_state::octopus)
m_kb_uart->rxrdy_handler().set("pic_slave", FUNC(pic8259_device::ir4_w));
m_kb_uart->dtr_handler().set(FUNC(octopus_state::spk_w));
m_kb_uart->rts_handler().set(FUNC(octopus_state::beep_w));
MCFG_DEVICE_ADD("keyboard_port", RS232_PORT, keyboard, "octopus")
MCFG_RS232_RXD_HANDLER(WRITELINE("keyboard", i8251_device, write_rxd))
rs232_port_device &keyboard_port(RS232_PORT(config, "keyboard_port", keyboard, "octopus"));
keyboard_port.rxd_handler().set(m_kb_uart, FUNC(i8251_device::write_rxd));
MCFG_DEVICE_ADD("keyboard_clock_rx", CLOCK, 9600 * 64)
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE("keyboard",i8251_device,write_rxc))
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(m_kb_uart,i8251_device,write_rxc))
MCFG_DEVICE_ADD("keyboard_clock_tx", CLOCK, 1200 * 64)
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE("keyboard",i8251_device,write_txc))
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(m_kb_uart,i8251_device,write_txc))
FD1793(config, m_fdc, 16_MHz_XTAL / 8);
m_fdc->intrq_wr_callback().set(m_pic1, FUNC(pic8259_device::ir5_w));

View File

@ -518,10 +518,10 @@ MACHINE_CONFIG_START(okean240_state::okean240t)
uart.dtr_handler().set("rs232", FUNC(rs232_port_device::write_dtr));
uart.rts_handler().set("rs232", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("uart", i8251_device, write_rxd))
MCFG_RS232_DSR_HANDLER(WRITELINE("uart", i8251_device, write_dsr))
MCFG_RS232_CTS_HANDLER(WRITELINE("uart", i8251_device, write_cts))
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal"));
rs232.rxd_handler().set("uart", FUNC(i8251_device::write_rxd));
rs232.dsr_handler().set("uart", FUNC(i8251_device::write_dsr));
rs232.cts_handler().set("uart", FUNC(i8251_device::write_cts));
I8255(config, m_ppikbd);
m_ppikbd->in_pa_callback().set(FUNC(okean240_state::okean240_port40_r));
@ -538,7 +538,7 @@ MACHINE_CONFIG_START(okean240_state::okean240t)
pit.out_handler<1>().set("uart", FUNC(i8251_device::write_txc));
pit.out_handler<1>().append("uart", FUNC(i8251_device::write_rxc));
MCFG_DEVICE_ADD("pic", PIC8259, 0)
PIC8259(config, "pic", 0);
/* video hardware */
MCFG_SCREEN_ADD("screen1", RASTER)
@ -557,11 +557,7 @@ MACHINE_CONFIG_START(okean240_state::okean240a)
MCFG_DEVICE_MODIFY("maincpu")
MCFG_DEVICE_IO_MAP(okean240a_io)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_okean240a)
MCFG_DEVICE_REMOVE("rs232")
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "keyboard")
MCFG_RS232_RXD_HANDLER(WRITELINE("uart", i8251_device, write_rxd))
MCFG_RS232_DSR_HANDLER(WRITELINE("uart", i8251_device, write_dsr))
MCFG_RS232_CTS_HANDLER(WRITELINE("uart", i8251_device, write_cts))
subdevice<rs232_port_device>("rs232")->set_default_option("keyboard");
m_ppikbd->in_pa_callback().set(FUNC(okean240_state::okean240a_port40_r));
m_ppikbd->in_pb_callback().set(FUNC(okean240_state::okean240a_port41_r));

View File

@ -64,7 +64,6 @@ public:
void subio(address_map &map);
void submem(address_map &map);
private:
DECLARE_MACHINE_RESET(c8002);
void z8002_m1_w(uint8_t data);
required_device<cpu_device> m_maincpu; // z8002 or z80 depending on driver
@ -79,10 +78,6 @@ static INPUT_PORTS_START( c8002 )
INPUT_PORTS_END
MACHINE_RESET_MEMBER(onyx_state, c8002)
{
}
void onyx_state::c8002_mem(address_map &map)
{
map(0x00000, 0x00fff).rom().share("share0");
@ -136,7 +131,8 @@ void onyx_state::subio(address_map &map)
****************************************************************************/
MACHINE_CONFIG_START(onyx_state::c8002)
void onyx_state::c8002(machine_config &config)
{
/* basic machine hardware */
z8002_device& maincpu(Z8002(config, m_maincpu, XTAL(4'000'000)));
//maincpu.set_daisy_config(main_daisy_chain);
@ -149,8 +145,6 @@ MACHINE_CONFIG_START(onyx_state::c8002)
subcpu.set_addrmap(AS_PROGRAM, &onyx_state::submem);
subcpu.set_addrmap(AS_IO, &onyx_state::subio);
MCFG_MACHINE_RESET_OVERRIDE(onyx_state, c8002)
clock_device &sio1_clock(CLOCK(config, "sio1_clock", 307200));
sio1_clock.signal_handler().set(m_sio[0], FUNC(z80sio_device::rxca_w));
sio1_clock.signal_handler().append(m_sio[0], FUNC(z80sio_device::txca_w));
@ -172,10 +166,10 @@ MACHINE_CONFIG_START(onyx_state::c8002)
Z80SIO(config, m_sio[3], XTAL(16'000'000) /4);
Z80SIO(config, m_sio[4], XTAL(16'000'000) /4);
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("sio1", z80sio_device, rxa_w))
MCFG_RS232_DCD_HANDLER(WRITELINE("sio1", z80sio_device, dcda_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("sio1", z80sio_device, ctsa_w))
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal"));
rs232.rxd_handler().set(m_sio[0], FUNC(z80sio_device::rxa_w));
rs232.dcd_handler().set(m_sio[0], FUNC(z80sio_device::dcda_w));
rs232.cts_handler().set(m_sio[0], FUNC(z80sio_device::ctsa_w));
Z80PIO(config, "pio1s", XTAL(16'000'000)/4);
//z80pio_device& pio1s(Z80PIO(config, "pio1s", XTAL(16'000'000)/4));
@ -190,11 +184,11 @@ MACHINE_CONFIG_START(onyx_state::c8002)
sio1s.out_dtrb_callback().set("rs232s", FUNC(rs232_port_device::write_dtr));
sio1s.out_rtsb_callback().set("rs232s", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232s", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("sio1s", z80sio_device, rxb_w))
MCFG_RS232_DCD_HANDLER(WRITELINE("sio1s", z80sio_device, dcdb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("sio1s", z80sio_device, ctsb_w))
MACHINE_CONFIG_END
rs232_port_device &rs232s(RS232_PORT(config, "rs232s", default_rs232_devices, "terminal"));
rs232s.rxd_handler().set("sio1s", FUNC(z80sio_device::rxb_w));
rs232s.dcd_handler().set("sio1s", FUNC(z80sio_device::dcdb_w));
rs232s.cts_handler().set("sio1s", FUNC(z80sio_device::ctsb_w));
}
/* ROM definition */
ROM_START( c8002 )
@ -250,18 +244,17 @@ void onyx_state::c5000_io(address_map &map)
map(0x10, 0x13).rw(m_sio[0], FUNC(z80sio_device::cd_ba_r), FUNC(z80sio_device::cd_ba_w));
}
MACHINE_CONFIG_START(onyx_state::c5000)
void onyx_state::c5000(machine_config &config)
{
/* basic machine hardware */
z80_device& maincpu(Z80(config, m_maincpu, XTAL(16'000'000) / 4));
//maincpu.set_daisy_config(sub_daisy_chain);
maincpu.set_addrmap(AS_PROGRAM, &onyx_state::c5000_mem);
maincpu.set_addrmap(AS_IO, &onyx_state::c5000_io);
//MCFG_MACHINE_RESET_OVERRIDE(onyx_state, c8002)
MCFG_DEVICE_ADD("sio1_clock", CLOCK, 614400)
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(m_sio[0], z80sio_device, rxtxcb_w))
//MCFG_DEVCB_CHAIN_OUTPUT(WRITELINE(m_sio[0] ,z80sio_device, txca_w))
clock_device &sio1_clock(CLOCK(config, "sio1_clock", 614400));
sio1_clock.signal_handler().set(m_sio[0], FUNC(z80sio_device::rxtxcb_w));
//sio1_clock.signal_handler().append(m_sio[0], FUNC(z80sio_device::txca_w));
/* peripheral hardware */
//Z80PIO(config, m_pio[0], XTAL(16'000'000)/4);
@ -277,13 +270,13 @@ MACHINE_CONFIG_START(onyx_state::c5000)
m_sio[0]->out_dtrb_callback().set("rs232", FUNC(rs232_port_device::write_dtr));
m_sio[0]->out_rtsb_callback().set("rs232", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE(m_sio[0], z80sio_device, rxb_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_sio[0], z80sio_device, dcdb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_sio[0], z80sio_device, ctsb_w))
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal"));
rs232.rxd_handler().set(m_sio[0], FUNC(z80sio_device::rxb_w));
rs232.dcd_handler().set(m_sio[0], FUNC(z80sio_device::dcdb_w));
rs232.cts_handler().set(m_sio[0], FUNC(z80sio_device::ctsb_w));
//MCFG_DEVICE_ADD(m_sio[1]", Z80SIO, XTAL(16'000'000) /4)
MACHINE_CONFIG_END
//Z80SIO(config, m_sio[1], XTAL(16'000'000) /4);
}
ROM_START( c5000 )

View File

@ -455,9 +455,9 @@ MACHINE_CONFIG_START(p8k_state::p8k)
sio.out_rtsb_callback().set("rs232", FUNC(rs232_port_device::write_rts));
sio.out_int_callback().set_inputline(m_maincpu, INPUT_LINE_IRQ0);
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("sio", z80sio_device, rxb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("sio", z80sio_device, ctsb_w))
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal"));
rs232.rxd_handler().set("sio", FUNC(z80sio_device::rxb_w));
rs232.cts_handler().set("sio", FUNC(z80sio_device::ctsb_w));
z80sio_device& sio1(Z80SIO(config, "sio1", XTAL(4'000'000)));
sio1.out_int_callback().set_inputline(m_maincpu, INPUT_LINE_IRQ0);
@ -512,9 +512,9 @@ MACHINE_CONFIG_START(p8k_state::p8k_16)
sio.out_rtsb_callback().set("rs232", FUNC(rs232_port_device::write_rts));
sio.out_int_callback().set(FUNC(p8k_state::p8k_16_daisy_interrupt));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("sio", z80sio_device, rxb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("sio", z80sio_device, ctsb_w))
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal"));
rs232.rxd_handler().set("sio", FUNC(z80sio_device::rxb_w));
rs232.cts_handler().set("sio", FUNC(z80sio_device::ctsb_w));
z80sio_device& sio1(Z80SIO(config, "sio1", XTAL(4'000'000)));
sio1.out_int_callback().set(FUNC(p8k_state::p8k_16_daisy_interrupt));

View File

@ -162,15 +162,15 @@ QUICKLOAD_LOAD_MEMBER( pipbug_state, pipbug )
MACHINE_CONFIG_START(pipbug_state::pipbug)
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", S2650, XTAL(1'000'000))
MCFG_DEVICE_ADD(m_maincpu, S2650, XTAL(1'000'000))
MCFG_DEVICE_PROGRAM_MAP(pipbug_mem)
MCFG_DEVICE_DATA_MAP(pipbug_data)
MCFG_S2650_FLAG_OUTPUT(WRITELINE("rs232", rs232_port_device, write_txd))
/* video hardware */
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(INPUTLINE("maincpu", S2650_SENSE_LINE))
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("terminal", terminal)
RS232_PORT(config, m_rs232, default_rs232_devices, "terminal");
m_rs232->rxd_handler().set_inputline(m_maincpu, S2650_SENSE_LINE);
m_rs232->set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(terminal));
/* quickload */
MCFG_QUICKLOAD_ADD("quickload", pipbug_state, pipbug, "pgm", 1)

View File

@ -58,10 +58,11 @@ void pm68k_state::machine_reset()
m_maincpu->reset();
}
MACHINE_CONFIG_START(pm68k_state::pm68k)
void pm68k_state::pm68k(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", M68000, 8000000)
MCFG_DEVICE_PROGRAM_MAP(pm68k_mem)
M68000(config, m_maincpu, 8000000);
m_maincpu->set_addrmap(AS_PROGRAM, &pm68k_state::pm68k_mem);
i8274_new_device& mpsc(I8274_NEW(config, "mpsc", 0));
mpsc.out_txda_callback().set("rs232a", FUNC(rs232_port_device::write_txd));
@ -77,16 +78,16 @@ MACHINE_CONFIG_START(pm68k_state::pm68k)
stc.out5_cb().set("mpsc", FUNC(i8274_new_device::rxcb_w));
stc.out5_cb().append("mpsc", FUNC(i8274_new_device::txcb_w));
MCFG_DEVICE_ADD("rs232a", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("mpsc", i8274_new_device, rxa_w))
MCFG_RS232_DSR_HANDLER(WRITELINE("mpsc", i8274_new_device, dcda_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("mpsc", i8274_new_device, ctsa_w))
rs232_port_device &rs232a(RS232_PORT(config, "rs232a", default_rs232_devices, "terminal"));
rs232a.rxd_handler().set("mpsc", FUNC(i8274_new_device::rxa_w));
rs232a.dsr_handler().set("mpsc", FUNC(i8274_new_device::dcda_w));
rs232a.cts_handler().set("mpsc", FUNC(i8274_new_device::ctsa_w));
MCFG_DEVICE_ADD("rs232b", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("mpsc", i8274_new_device, rxb_w))
MCFG_RS232_DSR_HANDLER(WRITELINE("mpsc", i8274_new_device, dcdb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("mpsc", i8274_new_device, ctsb_w))
MACHINE_CONFIG_END
rs232_port_device &rs232b(RS232_PORT(config, "rs232b", default_rs232_devices, nullptr));
rs232b.rxd_handler().set("mpsc", FUNC(i8274_new_device::rxb_w));
rs232b.dsr_handler().set("mpsc", FUNC(i8274_new_device::dcdb_w));
rs232b.cts_handler().set("mpsc", FUNC(i8274_new_device::ctsb_w));
}
/* ROM definition */
ROM_START( pm68k )

View File

@ -421,9 +421,9 @@ MACHINE_CONFIG_START(proteus3_state::proteus3)
m_acia2->txd_handler().set("rs232", FUNC(rs232_port_device::write_txd));
m_acia2->rts_handler().set("rs232", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "keyboard")
MCFG_RS232_RXD_HANDLER(WRITELINE("acia2", acia6850_device, write_rxd))
MCFG_RS232_CTS_HANDLER(WRITELINE("acia2", acia6850_device, write_cts))
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "keyboard"));
rs232.rxd_handler().set(m_acia2, FUNC(acia6850_device::write_rxd));
rs232.cts_handler().set(m_acia2, FUNC(acia6850_device::write_cts));
/* Bit Rate Generator */
MC14411(config, m_brg, XTAL(1'843'200)); // crystal needs verification but is the likely one

View File

@ -774,11 +774,11 @@ MACHINE_CONFIG_START(sol20_state::sol20)
m_uart->set_rx_clock(4800.0);
m_uart->set_auto_rdav(true); // ROD (pin 4) tied to RDD (pin 18)
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, nullptr)
RS232_PORT(config, m_rs232, default_rs232_devices, nullptr);
AY51013(config, m_uart_s); // TMS6011NC
m_uart_s->read_si_callback().set("rs232", FUNC(rs232_port_device::rxd_r));
m_uart_s->write_so_callback().set("rs232", FUNC(rs232_port_device::write_txd));
m_uart_s->read_si_callback().set(m_rs232, FUNC(rs232_port_device::rxd_r));
m_uart_s->write_so_callback().set(m_rs232, FUNC(rs232_port_device::write_txd));
m_uart_s->set_tx_clock(4800.0);
m_uart_s->set_rx_clock(4800.0);
m_uart_s->set_auto_rdav(true); // ROD (pin 4) tied to RDD (pin 18)

View File

@ -66,8 +66,10 @@ public:
void init_pulsar();
protected:
virtual void machine_reset() override;
private:
DECLARE_MACHINE_RESET(pulsar);
TIMER_CALLBACK_MEMBER(pulsar_reset);
DECLARE_WRITE8_MEMBER(ppi_pa_w);
DECLARE_WRITE8_MEMBER(ppi_pb_w);
@ -186,7 +188,7 @@ static void pulsar_floppies(device_slot_interface &device)
static INPUT_PORTS_START( pulsar )
INPUT_PORTS_END
MACHINE_RESET_MEMBER( pulsar_state, pulsar )
void pulsar_state::machine_reset()
{
machine().scheduler().timer_set(attotime::from_usec(3), timer_expired_delegate(FUNC(pulsar_state::pulsar_reset),this));
membank("bankr0")->set_entry(0); // point at rom
@ -209,14 +211,14 @@ void pulsar_state::init_pulsar()
membank("bankw1")->configure_entry(0, &main[0xf800]);
}
MACHINE_CONFIG_START(pulsar_state::pulsar)
void pulsar_state::pulsar(machine_config &config)
{
/* basic machine hardware */
Z80(config, m_maincpu, 4_MHz_XTAL);
m_maincpu->set_addrmap(AS_PROGRAM, &pulsar_state::mem_map);
m_maincpu->set_addrmap(AS_IO, &pulsar_state::io_map);
m_maincpu->set_daisy_config(daisy_chain_intf);
MCFG_MACHINE_RESET_OVERRIDE(pulsar_state, pulsar)
/* Devices */
i8255_device &ppi(I8255(config, "ppi"));
@ -225,7 +227,7 @@ MACHINE_CONFIG_START(pulsar_state::pulsar)
ppi.in_pc_callback().set(FUNC(pulsar_state::ppi_pc_r));
ppi.out_pc_callback().set(FUNC(pulsar_state::ppi_pc_w));
MCFG_DEVICE_ADD("rtc", MSM5832, 32.768_kHz_XTAL)
MSM5832(config, "rtc", 32.768_kHz_XTAL);
z80dart_device& dart(Z80DART(config, "dart", 4_MHz_XTAL));
dart.out_txda_callback().set("rs232", FUNC(rs232_port_device::write_txd));
@ -233,10 +235,10 @@ MACHINE_CONFIG_START(pulsar_state::pulsar)
dart.out_rtsa_callback().set("rs232", FUNC(rs232_port_device::write_rts));
dart.out_int_callback().set_inputline(m_maincpu, INPUT_LINE_IRQ0);
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("dart", z80dart_device, rxa_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("dart", z80dart_device, ctsa_w))
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("terminal", terminal)
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal"));
rs232.rxd_handler().set("dart", FUNC(z80dart_device::rxa_w));
rs232.cts_handler().set("dart", FUNC(z80dart_device::ctsa_w));
rs232.set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(terminal));
com8116_device &brg(COM8116(config, "brg", 5.0688_MHz_XTAL));
// Schematic has the labels for FT and FR the wrong way around, but the pin numbers are correct.
@ -246,11 +248,9 @@ MACHINE_CONFIG_START(pulsar_state::pulsar)
brg.ft_handler().append("dart", FUNC(z80dart_device::rxcb_w));
FD1797(config, m_fdc, 4_MHz_XTAL / 2);
MCFG_FLOPPY_DRIVE_ADD("fdc:0", pulsar_floppies, "flop", floppy_image_device::default_floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MCFG_FLOPPY_DRIVE_ADD("fdc:1", pulsar_floppies, "flop", floppy_image_device::default_floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
MACHINE_CONFIG_END
FLOPPY_CONNECTOR(config, "fdc:0", pulsar_floppies, "flop", floppy_image_device::default_floppy_formats).enable_sound(true);
FLOPPY_CONNECTOR(config, "fdc:1", pulsar_floppies, "flop", floppy_image_device::default_floppy_formats).enable_sound(true);
}
/* ROM definition */
ROM_START( pulsarlb )

View File

@ -360,7 +360,8 @@ WRITE8_MEMBER(pve500_state::io_sel_w)
}
}
MACHINE_CONFIG_START(pve500_state::pve500)
void pve500_state::pve500(machine_config &config)
{
/* Main CPU */
TMPZ84C015(config, m_maincpu, 12_MHz_XTAL / 2); // TMPZ84C015BF-6
m_maincpu->set_addrmap(AS_PROGRAM, &pve500_state::maincpu_prg);
@ -380,17 +381,17 @@ MACHINE_CONFIG_START(pve500_state::pve500)
sio.out_txdb_callback().set("edl_inout", FUNC(rs232_port_device::write_txd));
/* Secondary CPU */
MCFG_DEVICE_ADD("subcpu", TMPZ84C015, 12_MHz_XTAL / 2) /* TMPZ84C015BF-6 */
MCFG_DEVICE_PROGRAM_MAP(subcpu_prg)
MCFG_DEVICE_IO_MAP(subcpu_io)
MCFG_TMPZ84C015_OUT_DTRA_CB(WRITELINE(*this, pve500_state, cxdio_reset_w))
MCFG_TMPZ84C015_OUT_DTRB_CB(WRITELINE(*this, pve500_state, external_monitor_w))
MCFG_TMPZ84C015_OUT_TXDA_CB(WRITELINE("switcher", rs232_port_device, write_txd))
MCFG_TMPZ84C015_OUT_TXDB_CB(WRITELINE("serial_mixer", rs232_port_device, write_txd))
TMPZ84C015(config, m_subcpu, 12_MHz_XTAL / 2); /* TMPZ84C015BF-6 */
m_subcpu->set_addrmap(AS_PROGRAM, &pve500_state::subcpu_prg);
m_subcpu->set_addrmap(AS_IO, &pve500_state::subcpu_io);
m_subcpu->out_dtra_callback().set(FUNC(pve500_state::cxdio_reset_w));
m_subcpu->out_dtrb_callback().set(FUNC(pve500_state::external_monitor_w));
m_subcpu->out_txda_callback().set("switcher", FUNC(rs232_port_device::write_txd));
m_subcpu->out_txdb_callback().set("serial_mixer", FUNC(rs232_port_device::write_txd));
// PIO callbacks
MCFG_TMPZ84C015_IN_PA_CB(READ8(*this, pve500_state, eeprom_r))
MCFG_TMPZ84C015_OUT_PA_CB(WRITE8(*this, pve500_state, eeprom_w))
m_subcpu->in_pa_callback().set(FUNC(pve500_state::eeprom_r));
m_subcpu->out_pa_callback().set(FUNC(pve500_state::eeprom_w));
// ICG3: I/O Expander
CXD1095(config, m_cxdio, 0);
@ -401,33 +402,31 @@ MACHINE_CONFIG_START(pve500_state::pve500)
m_cxdio->out_porte_cb().set(FUNC(pve500_state::io_sel_w));
/* Search Dial MCUs */
MCFG_DEVICE_ADD("dial_mcu_left", MB88201, 4_MHz_XTAL) /* PLAYER DIAL MCU */
MCFG_DEVICE_DISABLE()
MCFG_DEVICE_ADD("dial_mcu_right", MB88201, 4_MHz_XTAL) /* RECORDER DIAL MCU */
MCFG_DEVICE_DISABLE()
MB88201(config, "dial_mcu_left", 4_MHz_XTAL).set_disable(); /* PLAYER DIAL MCU */
MB88201(config, "dial_mcu_right", 4_MHz_XTAL).set_disable(); /* RECORDER DIAL MCU */
/* Serial EEPROM (128 bytes, 8-bit data organization) */
/* The EEPROM stores the setup data */
EEPROM_MSM16911_8BIT(config, "eeprom");
/* FIX-ME: These are actually RS422 ports (except EDL IN/OUT which is indeed an RS232 port)*/
MCFG_DEVICE_ADD("recorder", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("maincpu", tmpz84c015_device, rxa_w))
rs232_port_device &recorder(RS232_PORT(config, "recorder", default_rs232_devices, nullptr));
recorder.rxd_handler().set(m_maincpu, FUNC(tmpz84c015_device::rxa_w));
MCFG_DEVICE_ADD("player1", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("maincpu", tmpz84c015_device, rxb_w))
rs232_port_device &player1(RS232_PORT(config, "player1", default_rs232_devices, nullptr));
player1.rxd_handler().set(m_maincpu, FUNC(tmpz84c015_device::rxb_w));
MCFG_DEVICE_ADD("player2", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("external_sio", z80dart_device, rxa_w))
rs232_port_device &player2(RS232_PORT(config, "player2", default_rs232_devices, nullptr));
player2.rxd_handler().set("external_sio", FUNC(z80dart_device::rxa_w));
MCFG_DEVICE_ADD("edl_inout", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("external_sio", z80dart_device, rxb_w))
rs232_port_device &edl_inout(RS232_PORT(config, "edl_inout", default_rs232_devices, nullptr));
edl_inout.rxd_handler().set("external_sio", FUNC(z80dart_device::rxb_w));
MCFG_DEVICE_ADD("switcher", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("subcpu", tmpz84c015_device, rxa_w))
rs232_port_device &switcher(RS232_PORT(config, "switcher", default_rs232_devices, nullptr));
switcher.rxd_handler().set(m_subcpu, FUNC(tmpz84c015_device::rxa_w));
MCFG_DEVICE_ADD("serial_mixer", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("subcpu", tmpz84c015_device, rxb_w))
rs232_port_device &serial_mixer(RS232_PORT(config, "serial_mixer", default_rs232_devices, nullptr));
serial_mixer.rxd_handler().set(m_subcpu, FUNC(tmpz84c015_device::rxb_w));
clock_device &clk1(CLOCK(config, "clk1", 12_MHz_XTAL / 20));
clk1.signal_handler().set(m_maincpu, FUNC(tmpz84c015_device::rxca_w));
@ -449,10 +448,8 @@ MACHINE_CONFIG_START(pve500_state::pve500)
/* audio hardware */
SPEAKER(config, "mono").front_center();
MCFG_DEVICE_ADD("buzzer", BEEP, 12_MHz_XTAL / 3200) // 3.75 kHz CLK2 coming out of IC D4 (frequency divider circuitry)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.05)
MACHINE_CONFIG_END
BEEP(config, "buzzer", 12_MHz_XTAL / 3200).add_route(ALL_OUTPUTS, "mono", 0.05); // 3.75 kHz CLK2 coming out of IC D4 (frequency divider circuitry)
}
ROM_START( pve500 )
ROM_REGION( 0x10000, "maincpu", 0 )

View File

@ -474,11 +474,12 @@ static DEVICE_INPUT_DEFAULTS_START( terminal )
DEVICE_INPUT_DEFAULTS( "RS232_STOPBITS", 0xff, RS232_STOPBITS_1 )
DEVICE_INPUT_DEFAULTS_END
MACHINE_CONFIG_START(qtsbc_state::qtsbc)
void qtsbc_state::qtsbc(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", Z80, 4_MHz_XTAL) // Mostek MK3880
MCFG_DEVICE_PROGRAM_MAP(mem_map)
MCFG_DEVICE_IO_MAP(io_map)
Z80(config, m_maincpu, 4_MHz_XTAL); // Mostek MK3880
m_maincpu->set_addrmap(AS_PROGRAM, &qtsbc_state::mem_map);
m_maincpu->set_addrmap(AS_IO, &qtsbc_state::io_map);
/* video hardware */
PIT8253(config, m_pit, 0); // U9
@ -489,15 +490,15 @@ MACHINE_CONFIG_START(qtsbc_state::qtsbc)
m_pit->out_handler<1>().set(m_pit, FUNC(pit8253_device::write_clk2));
I8251(config, m_usart, 0); // U8
m_usart->txd_handler().set("rs232", FUNC(rs232_port_device::write_txd));
m_usart->txd_handler().set(m_rs232, FUNC(rs232_port_device::write_txd));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("usart", i8251_device, write_rxd))
MCFG_RS232_DSR_HANDLER(WRITELINE("usart", i8251_device, write_dsr)) // actually from pin 11, "Reverse Channel Transmit"
MCFG_RS232_CTS_HANDLER(WRITELINE(*this, qtsbc_state, rts_loopback_w))
MCFG_RS232_DCD_HANDLER(WRITELINE("rs232", rs232_port_device, write_dtr))
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("terminal", terminal) // must be exactly here
MACHINE_CONFIG_END
RS232_PORT(config, m_rs232, default_rs232_devices, "terminal");
m_rs232->rxd_handler().set(m_usart, FUNC(i8251_device::write_rxd));
m_rs232->dsr_handler().set(m_usart, FUNC(i8251_device::write_dsr)); // actually from pin 11, "Reverse Channel Transmit"
m_rs232->cts_handler().set(FUNC(qtsbc_state::rts_loopback_w));
m_rs232->dcd_handler().set(m_rs232, FUNC(rs232_port_device::write_dtr));
m_rs232->set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(terminal));
}
/* ROM definition */
ROM_START( qtsbc )

View File

@ -701,12 +701,11 @@ MACHINE_CONFIG_START(sapi1_state::sapi3a)
AY51013(config, m_uart); // Tesla MHB1012
m_uart->set_tx_clock(XTAL(12'288'000) / 80); // not actual rate?
m_uart->set_rx_clock(XTAL(12'288'000) / 80); // not actual rate?
m_uart->read_si_callback().set("v24", FUNC(rs232_port_device::rxd_r));
m_uart->write_so_callback().set("v24", FUNC(rs232_port_device::write_txd));
m_uart->read_si_callback().set(m_v24, FUNC(rs232_port_device::rxd_r));
m_uart->write_so_callback().set(m_v24, FUNC(rs232_port_device::write_txd));
m_uart->set_auto_rdav(true); // RDAV not actually tied to RDE, but pulsed by K155AG3 (=74123N): R25=22k, C14=220
MCFG_DEVICE_ADD("v24", RS232_PORT, default_rs232_devices, "terminal")
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("terminal", terminal)
RS232_PORT(config, m_v24, default_rs232_devices, "terminal").set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(terminal));
/* internal ram */
RAM(config, RAM_TAG).set_default_size("64K");

View File

@ -191,10 +191,10 @@ MACHINE_CONFIG_START(sagitta180_state::sagitta180)
uart.dtr_handler().set("rs232", FUNC(rs232_port_device::write_dtr));
uart.rts_handler().set("rs232", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("uart", i8251_device, write_rxd))
MCFG_RS232_CTS_HANDLER(WRITELINE("uart", i8251_device, write_cts))
MCFG_RS232_DSR_HANDLER(WRITELINE("uart", i8251_device, write_dsr))
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, nullptr));
rs232.rxd_handler().set("uart", FUNC(i8251_device::write_rxd));
rs232.cts_handler().set("uart", FUNC(i8251_device::write_cts));
rs232.dsr_handler().set("uart", FUNC(i8251_device::write_dsr));
clock_device &uart_clock(CLOCK(config, "uart_clock", 19218)); // 19218 / 19222 ? guesses...
uart_clock.signal_handler().set("uart", FUNC(i8251_device::write_txc));

View File

@ -133,11 +133,11 @@ MACHINE_CONFIG_START(seattle_comp_state::seattle)
uart.rxrdy_handler().set("pic2", FUNC(pic8259_device::ir1_w));
uart.txrdy_handler().set("pic2", FUNC(pic8259_device::ir5_w));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("uart", i8251_device, write_rxd))
MCFG_RS232_DSR_HANDLER(WRITELINE("uart", i8251_device, write_dsr))
MCFG_RS232_CTS_HANDLER(WRITELINE("uart", i8251_device, write_cts))
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("terminal", terminal) // must be exactly here
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal"));
rs232.rxd_handler().set("uart", FUNC(i8251_device::write_rxd));
rs232.dsr_handler().set("uart", FUNC(i8251_device::write_dsr));
rs232.cts_handler().set("uart", FUNC(i8251_device::write_cts));
rs232.set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(terminal));
MACHINE_CONFIG_END
/* ROM definition */

View File

@ -236,10 +236,10 @@ MACHINE_CONFIG_START(selz80_state::selz80)
uart.dtr_handler().set("rs232", FUNC(rs232_port_device::write_dtr));
uart.rts_handler().set("rs232", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("uart", i8251_device, write_rxd))
MCFG_RS232_DSR_HANDLER(WRITELINE("uart", i8251_device, write_dsr))
MCFG_RS232_CTS_HANDLER(WRITELINE("uart", i8251_device, write_cts))
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, nullptr));
rs232.rxd_handler().set("uart", FUNC(i8251_device::write_rxd));
rs232.dsr_handler().set("uart", FUNC(i8251_device::write_dsr));
rs232.cts_handler().set("uart", FUNC(i8251_device::write_cts));
i8279_device &kbdc(I8279(config, "i8279", 5000000 / 2)); // based on divider
kbdc.out_sl_callback().set(FUNC(selz80_state::scanlines_w)); // scan SL lines

View File

@ -371,11 +371,11 @@ MACHINE_CONFIG_START(softbox_state::softbox)
i8251.dtr_handler().set(RS232_TAG, FUNC(rs232_port_device::write_dtr));
i8251.rts_handler().set(RS232_TAG, FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD(RS232_TAG, RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE(I8251_TAG, i8251_device, write_rxd))
MCFG_RS232_DSR_HANDLER(WRITELINE(I8251_TAG, i8251_device, write_dsr))
MCFG_RS232_CTS_HANDLER(WRITELINE(I8251_TAG, i8251_device, write_cts))
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("terminal", terminal)
rs232_port_device &rs232(RS232_PORT(config, RS232_TAG, default_rs232_devices, "terminal"));
rs232.rxd_handler().set(I8251_TAG, FUNC(i8251_device::write_rxd));
rs232.dsr_handler().set(I8251_TAG, FUNC(i8251_device::write_dsr));
rs232.cts_handler().set(I8251_TAG, FUNC(i8251_device::write_cts));
rs232.set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(terminal));
i8255_device &ppi0(I8255A(config, I8255_0_TAG));
ppi0.in_pa_callback().set(FUNC(softbox_state::ppi0_pa_r));

View File

@ -434,8 +434,7 @@ MACHINE_CONFIG_START(sorcerer_state::sorcerer)
m_uart->set_rx_clock(ES_UART_CLOCK);
m_uart->set_auto_rdav(true);
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "null_modem")
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("terminal", terminal)
RS232_PORT(config, "rs232", default_rs232_devices, "null_modem").set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(terminal));
/* printer */
MCFG_DEVICE_ADD("centronics", CENTRONICS, centronics_devices, "covox")

View File

@ -653,15 +653,15 @@ MACHINE_CONFIG_START(sun2_state::sun2vme)
scc2.out_txdb_callback().set(RS232B_TAG, FUNC(rs232_port_device::write_txd));
scc2.out_int_callback().set_inputline(m_maincpu, M68K_IRQ_6);
MCFG_DEVICE_ADD(RS232A_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(SCC2_TAG, z80scc_device, rxa_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(SCC2_TAG, z80scc_device, dcda_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(SCC2_TAG, z80scc_device, ctsa_w))
rs232_port_device &rs232a(RS232_PORT(config, RS232A_TAG, default_rs232_devices, nullptr));
rs232a.rxd_handler().set(SCC2_TAG, FUNC(z80scc_device::rxa_w));
rs232a.dcd_handler().set(SCC2_TAG, FUNC(z80scc_device::dcda_w));
rs232a.cts_handler().set(SCC2_TAG, FUNC(z80scc_device::ctsa_w));
MCFG_DEVICE_ADD(RS232B_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(SCC2_TAG, z80scc_device, rxb_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(SCC2_TAG, z80scc_device, dcdb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(SCC2_TAG, z80scc_device, ctsb_w))
rs232_port_device &rs232b(RS232_PORT(config, RS232B_TAG, default_rs232_devices, nullptr));
rs232b.rxd_handler().set(SCC2_TAG, FUNC(z80scc_device::rxb_w));
rs232b.dcd_handler().set(SCC2_TAG, FUNC(z80scc_device::dcdb_w));
rs232b.cts_handler().set(SCC2_TAG, FUNC(z80scc_device::ctsb_w));
MACHINE_CONFIG_END
MACHINE_CONFIG_START(sun2_state::sun2mbus)
@ -706,17 +706,17 @@ MACHINE_CONFIG_START(sun2_state::sun2mbus)
scc2.out_txdb_callback().set(RS232B_TAG, FUNC(rs232_port_device::write_txd));
scc2.out_int_callback().set_inputline(m_maincpu, M68K_IRQ_6);
MCFG_DEVICE_ADD(RS232A_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(SCC2_TAG, z80scc_device, rxa_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(SCC2_TAG, z80scc_device, dcda_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(SCC2_TAG, z80scc_device, ctsa_w))
rs232_port_device &rs232a(RS232_PORT(config, RS232A_TAG, default_rs232_devices, nullptr));
rs232a.rxd_handler().set(SCC2_TAG, FUNC(z80scc_device::rxa_w));
rs232a.dcd_handler().set(SCC2_TAG, FUNC(z80scc_device::dcda_w));
rs232a.cts_handler().set(SCC2_TAG, FUNC(z80scc_device::ctsa_w));
MCFG_DEVICE_ADD(RS232B_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(SCC2_TAG, z80scc_device, rxb_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(SCC2_TAG, z80scc_device, dcdb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(SCC2_TAG, z80scc_device, ctsb_w))
rs232_port_device &rs232b(RS232_PORT(config, RS232B_TAG, default_rs232_devices, nullptr));
rs232b.rxd_handler().set(SCC2_TAG, FUNC(z80scc_device::rxb_w));
rs232b.dcd_handler().set(SCC2_TAG, FUNC(z80scc_device::dcdb_w));
rs232b.cts_handler().set(SCC2_TAG, FUNC(z80scc_device::ctsb_w));
MCFG_DEVICE_ADD("rtc", MM58167, 32.768_kHz_XTAL)
MM58167(config, "rtc", 32.768_kHz_XTAL);
MACHINE_CONFIG_END
/* ROM definition */

View File

@ -1049,15 +1049,15 @@ MACHINE_CONFIG_START(sun3_state::sun3)
m_scc2->out_txda_callback().set(RS232A_TAG, FUNC(rs232_port_device::write_txd));
m_scc2->out_txdb_callback().set(RS232B_TAG, FUNC(rs232_port_device::write_txd));
MCFG_DEVICE_ADD(RS232A_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_scc2, z80scc_device, rxa_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_scc2, z80scc_device, dcda_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_scc2, z80scc_device, ctsa_w))
rs232_port_device &rs232a(RS232_PORT(config, RS232A_TAG, default_rs232_devices, nullptr));
rs232a.rxd_handler().set(m_scc2, FUNC(z80scc_device::rxa_w));
rs232a.dcd_handler().set(m_scc2, FUNC(z80scc_device::dcda_w));
rs232a.cts_handler().set(m_scc2, FUNC(z80scc_device::ctsa_w));
MCFG_DEVICE_ADD(RS232B_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_scc2, z80scc_device, rxb_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_scc2, z80scc_device, dcdb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_scc2, z80scc_device, ctsb_w))
rs232_port_device &rs232b(RS232_PORT(config, RS232B_TAG, default_rs232_devices, nullptr));
rs232b.rxd_handler().set(m_scc2, FUNC(z80scc_device::rxb_w));
rs232b.dcd_handler().set(m_scc2, FUNC(z80scc_device::dcdb_w));
rs232b.cts_handler().set(m_scc2, FUNC(z80scc_device::ctsb_w));
AM79C90(config, m_lance, 10'000'000); // clock is a guess
@ -1152,15 +1152,15 @@ MACHINE_CONFIG_START(sun3_state::sun3_50)
m_scc2->out_txda_callback().set(RS232A_TAG, FUNC(rs232_port_device::write_txd));
m_scc2->out_txdb_callback().set(RS232B_TAG, FUNC(rs232_port_device::write_txd));
MCFG_DEVICE_ADD(RS232A_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_scc2, z80scc_device, rxa_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_scc2, z80scc_device, dcda_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_scc2, z80scc_device, ctsa_w))
rs232_port_device &rs232a(RS232_PORT(config, RS232A_TAG, default_rs232_devices, nullptr));
rs232a.rxd_handler().set(m_scc2, FUNC(z80scc_device::rxa_w));
rs232a.dcd_handler().set(m_scc2, FUNC(z80scc_device::dcda_w));
rs232a.cts_handler().set(m_scc2, FUNC(z80scc_device::ctsa_w));
MCFG_DEVICE_ADD(RS232B_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_scc2, z80scc_device, rxb_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_scc2, z80scc_device, dcdb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_scc2, z80scc_device, ctsb_w))
rs232_port_device &rs232b(RS232_PORT(config, RS232B_TAG, default_rs232_devices, nullptr));
rs232b.rxd_handler().set(m_scc2, FUNC(z80scc_device::rxb_w));
rs232b.dcd_handler().set(m_scc2, FUNC(z80scc_device::dcdb_w));
rs232b.cts_handler().set(m_scc2, FUNC(z80scc_device::ctsb_w));
MCFG_NSCSI_BUS_ADD("scsibus")
MCFG_NSCSI_ADD("scsibus:0", scsi_devices, nullptr, false)

View File

@ -608,15 +608,15 @@ MACHINE_CONFIG_START(sun3x_state::sun3_80)
m_scc2->out_txda_callback().set(RS232A_TAG, FUNC(rs232_port_device::write_txd));
m_scc2->out_txdb_callback().set(RS232B_TAG, FUNC(rs232_port_device::write_txd));
MCFG_DEVICE_ADD(RS232A_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_scc2, z80scc_device, rxa_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_scc2, z80scc_device, dcda_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_scc2, z80scc_device, ctsa_w))
rs232_port_device &rs232a(RS232_PORT(config, RS232A_TAG, default_rs232_devices, nullptr));
rs232a.rxd_handler().set(m_scc2, FUNC(z80scc_device::rxa_w));
rs232a.dcd_handler().set(m_scc2, FUNC(z80scc_device::dcda_w));
rs232a.cts_handler().set(m_scc2, FUNC(z80scc_device::ctsa_w));
MCFG_DEVICE_ADD(RS232B_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_scc2, z80scc_device, rxb_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_scc2, z80scc_device, dcdb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_scc2, z80scc_device, ctsb_w))
rs232_port_device &rs232b(RS232_PORT(config, RS232B_TAG, default_rs232_devices, nullptr));
rs232b.rxd_handler().set(m_scc2, FUNC(z80scc_device::rxb_w));
rs232b.dcd_handler().set(m_scc2, FUNC(z80scc_device::dcdb_w));
rs232b.cts_handler().set(m_scc2, FUNC(z80scc_device::ctsb_w));
MCFG_DEVICE_ADD("scsi", SCSI_PORT, 0)
MCFG_SCSIDEV_ADD("scsi:" SCSI_PORT_DEVICE1, "harddisk", SCSIHD, SCSI_ID_6)
@ -638,28 +638,29 @@ MACHINE_CONFIG_START(sun3x_state::sun3_80)
MCFG_SCREEN_REFRESH_RATE(72)
MACHINE_CONFIG_END
MACHINE_CONFIG_START(sun3x_state::sun3_460)
void sun3x_state::sun3_460(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", M68030, 33000000)
MCFG_DEVICE_PROGRAM_MAP(sun3_460_mem)
M68030(config, m_maincpu, 33000000);
m_maincpu->set_addrmap(AS_PROGRAM, &sun3x_state::sun3_460_mem);
MCFG_DEVICE_ADD(TIMEKEEPER_TAG, M48T02, 0)
M48T02(config, TIMEKEEPER_TAG, 0);
SCC8530N(config, m_scc1, 4.9152_MHz_XTAL);
SCC8530N(config, m_scc2, 4.9152_MHz_XTAL);
m_scc2->out_txda_callback().set(RS232A_TAG, FUNC(rs232_port_device::write_txd));
m_scc2->out_txdb_callback().set(RS232B_TAG, FUNC(rs232_port_device::write_txd));
MCFG_DEVICE_ADD(RS232A_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_scc2, z80scc_device, rxa_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_scc2, z80scc_device, dcda_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_scc2, z80scc_device, ctsa_w))
rs232_port_device &rs232a(RS232_PORT(config, RS232A_TAG, default_rs232_devices, nullptr));
rs232a.rxd_handler().set(m_scc2, FUNC(z80scc_device::rxa_w));
rs232a.dcd_handler().set(m_scc2, FUNC(z80scc_device::dcda_w));
rs232a.cts_handler().set(m_scc2, FUNC(z80scc_device::ctsa_w));
MCFG_DEVICE_ADD(RS232B_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_scc2, z80scc_device, rxb_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_scc2, z80scc_device, dcdb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_scc2, z80scc_device, ctsb_w))
MACHINE_CONFIG_END
rs232_port_device &rs232b(RS232_PORT(config, RS232B_TAG, default_rs232_devices, nullptr));
rs232b.rxd_handler().set(m_scc2, FUNC(z80scc_device::rxb_w));
rs232b.dcd_handler().set(m_scc2, FUNC(z80scc_device::dcdb_w));
rs232b.cts_handler().set(m_scc2, FUNC(z80scc_device::ctsb_w));
}
/* ROM definition */

View File

@ -1916,16 +1916,15 @@ MACHINE_CONFIG_START(sun4_state::sun4)
m_scc2->out_txda_callback().set(RS232A_TAG, FUNC(rs232_port_device::write_txd));
m_scc2->out_txdb_callback().set(RS232B_TAG, FUNC(rs232_port_device::write_txd));
rs232_port_device &rs232a(RS232_PORT(config, RS232A_TAG, default_rs232_devices, nullptr));
rs232a.rxd_handler().set(m_scc2, FUNC(z80scc_device::rxa_w));
rs232a.dcd_handler().set(m_scc2, FUNC(z80scc_device::dcda_w));
rs232a.cts_handler().set(m_scc2, FUNC(z80scc_device::ctsa_w));
MCFG_DEVICE_ADD(RS232A_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_scc2, z80scc_device, rxa_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_scc2, z80scc_device, dcda_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_scc2, z80scc_device, ctsa_w))
MCFG_DEVICE_ADD(RS232B_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_scc2, z80scc_device, rxb_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_scc2, z80scc_device, dcdb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_scc2, z80scc_device, ctsb_w))
rs232_port_device &rs232b(RS232_PORT(config, RS232B_TAG, default_rs232_devices, nullptr));
rs232b.rxd_handler().set(m_scc2, FUNC(z80scc_device::rxb_w));
rs232b.dcd_handler().set(m_scc2, FUNC(z80scc_device::dcdb_w));
rs232b.cts_handler().set(m_scc2, FUNC(z80scc_device::ctsb_w));
MCFG_NSCSI_BUS_ADD("scsibus")
MCFG_NSCSI_ADD("scsibus:0", sun_scsi_devices, "harddisk", false)
@ -1990,15 +1989,15 @@ MACHINE_CONFIG_START(sun4_state::sun4c)
m_scc2->out_txda_callback().set(RS232A_TAG, FUNC(rs232_port_device::write_txd));
m_scc2->out_txdb_callback().set(RS232B_TAG, FUNC(rs232_port_device::write_txd));
MCFG_DEVICE_ADD(RS232A_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_scc2, z80scc_device, rxa_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_scc2, z80scc_device, dcda_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_scc2, z80scc_device, ctsa_w))
rs232_port_device &rs232a(RS232_PORT(config, RS232A_TAG, default_rs232_devices, nullptr));
rs232a.rxd_handler().set(m_scc2, FUNC(z80scc_device::rxa_w));
rs232a.dcd_handler().set(m_scc2, FUNC(z80scc_device::dcda_w));
rs232a.cts_handler().set(m_scc2, FUNC(z80scc_device::ctsa_w));
MCFG_DEVICE_ADD(RS232B_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_scc2, z80scc_device, rxb_w))
MCFG_RS232_DCD_HANDLER(WRITELINE(m_scc2, z80scc_device, dcdb_w))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_scc2, z80scc_device, ctsb_w))
rs232_port_device &rs232b(RS232_PORT(config, RS232B_TAG, default_rs232_devices, nullptr));
rs232b.rxd_handler().set(m_scc2, FUNC(z80scc_device::rxb_w));
rs232b.dcd_handler().set(m_scc2, FUNC(z80scc_device::dcdb_w));
rs232b.cts_handler().set(m_scc2, FUNC(z80scc_device::ctsb_w));
MCFG_NSCSI_BUS_ADD("scsibus")
MCFG_NSCSI_ADD("scsibus:0", sun_scsi_devices, "harddisk", false)

View File

@ -154,22 +154,22 @@ MACHINE_CONFIG_START(sys9002_state::sys9002)
uart1.dtr_handler().set("rs232a", FUNC(rs232_port_device::write_dtr));
uart1.rts_handler().set("rs232a", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232a", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("uart1", i8251_device, write_rxd))
MCFG_RS232_DSR_HANDLER(WRITELINE("uart1", i8251_device, write_dsr))
MCFG_RS232_CTS_HANDLER(WRITELINE("uart1", i8251_device, write_cts))
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("terminal", uart1)
rs232_port_device &rs232a(RS232_PORT(config, "rs232a", default_rs232_devices, nullptr));
rs232a.rxd_handler().set("uart1", FUNC(i8251_device::write_rxd));
rs232a.dsr_handler().set("uart1", FUNC(i8251_device::write_dsr));
rs232a.cts_handler().set("uart1", FUNC(i8251_device::write_cts));
rs232a.set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(uart1));
i8251_device &uart2(I8251(config, "uart2", 0)); // enabled for transmit only, 8 bits odd parity, x64
uart2.txd_handler().set("rs232b", FUNC(rs232_port_device::write_txd));
uart2.dtr_handler().set("rs232b", FUNC(rs232_port_device::write_dtr));
uart2.rts_handler().set("rs232b", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232b", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("uart2", i8251_device, write_rxd))
MCFG_RS232_DSR_HANDLER(WRITELINE("uart2", i8251_device, write_dsr))
MCFG_RS232_CTS_HANDLER(WRITELINE("uart2", i8251_device, write_cts))
MCFG_SLOT_OPTION_DEVICE_INPUT_DEFAULTS("terminal", uart2)
rs232_port_device &rs232b(RS232_PORT(config, "rs232b", default_rs232_devices, "terminal"));
rs232b.rxd_handler().set("uart2", FUNC(i8251_device::write_rxd));
rs232b.dsr_handler().set("uart2", FUNC(i8251_device::write_dsr));
rs232b.cts_handler().set("uart2", FUNC(i8251_device::write_cts));
rs232b.set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(uart2));
MACHINE_CONFIG_END
/* ROM definition */

View File

@ -84,11 +84,12 @@ void systec_state::machine_reset()
}
MACHINE_CONFIG_START(systec_state::systec)
void systec_state::systec(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu", Z80, XTAL(16'000'000) / 4)
MCFG_DEVICE_PROGRAM_MAP(systec_mem)
MCFG_DEVICE_IO_MAP(systec_io)
Z80(config, m_maincpu, XTAL(16'000'000) / 4);
m_maincpu->set_addrmap(AS_PROGRAM, &systec_state::systec_mem);
m_maincpu->set_addrmap(AS_IO, &systec_state::systec_io);
clock_device &uart_clock(CLOCK(config, "uart_clock", 153600));
uart_clock.signal_handler().set("sio", FUNC(z80sio_device::txca_w));
@ -101,10 +102,10 @@ MACHINE_CONFIG_START(systec_state::systec)
sio.out_dtra_callback().set("rs232", FUNC(rs232_port_device::write_dtr));
sio.out_rtsa_callback().set("rs232", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("sio", z80sio_device, rxa_w))
MCFG_RS232_CTS_HANDLER(WRITELINE("sio", z80sio_device, ctsa_w))
MACHINE_CONFIG_END
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal"));
rs232.rxd_handler().set("sio", FUNC(z80sio_device::rxa_w));
rs232.cts_handler().set("sio", FUNC(z80sio_device::ctsa_w));
}
/* ROM definition */

View File

@ -825,15 +825,15 @@ MACHINE_CONFIG_START(tandy2k_state::tandy2k)
m_i8255a->out_pc_callback().set(FUNC(tandy2k_state::ppi_pc_w));
I8251(config, m_uart, 0);
m_uart->txd_handler().set(RS232_TAG, FUNC(rs232_port_device::write_txd));
m_uart->dtr_handler().set(RS232_TAG, FUNC(rs232_port_device::write_dtr));
m_uart->rts_handler().set(RS232_TAG, FUNC(rs232_port_device::write_rts));
m_uart->txd_handler().set(m_rs232, FUNC(rs232_port_device::write_txd));
m_uart->dtr_handler().set(m_rs232, FUNC(rs232_port_device::write_dtr));
m_uart->rts_handler().set(m_rs232, FUNC(rs232_port_device::write_rts));
m_uart->rxrdy_handler().set(FUNC(tandy2k_state::rxrdy_w));
m_uart->txrdy_handler().set(FUNC(tandy2k_state::txrdy_w));
MCFG_DEVICE_ADD(RS232_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(I8251A_TAG, i8251_device, write_rxd))
MCFG_RS232_DSR_HANDLER(WRITELINE(I8251A_TAG, i8251_device, write_dsr))
RS232_PORT(config, m_rs232, default_rs232_devices, nullptr);
m_rs232->rxd_handler().set(m_uart, FUNC(i8251_device::write_rxd));
m_rs232->dsr_handler().set(m_uart, FUNC(i8251_device::write_dsr));
// TODO pin 15 external transmit clock
// TODO pin 17 external receiver clock

View File

@ -327,9 +327,9 @@ MACHINE_CONFIG_START(tavernie_state::cpu09)
acia.txd_handler().set("rs232", FUNC(rs232_port_device::write_txd));
acia.rts_handler().set("rs232", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("acia", acia6850_device, write_rxd))
MCFG_RS232_CTS_HANDLER(WRITELINE("acia", acia6850_device, write_cts))
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal"));
rs232.rxd_handler().set("acia", FUNC(acia6850_device::write_rxd));
rs232.cts_handler().set("acia", FUNC(acia6850_device::write_cts));
clock_device &acia_clock(CLOCK(config, "acia_clock", 153600));
acia_clock.signal_handler().set("acia", FUNC(acia6850_device::write_txc));

View File

@ -752,11 +752,11 @@ MACHINE_CONFIG_START(tiki100_state::tiki100)
MCFG_FLOPPY_DRIVE_ADD(FD1797_TAG":0", tiki100_floppies, "525qd", tiki100_state::floppy_formats)
MCFG_FLOPPY_DRIVE_ADD(FD1797_TAG":1", tiki100_floppies, "525qd", tiki100_state::floppy_formats)
MCFG_DEVICE_ADD(RS232_A_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_dart, z80dart_device, rxa_w))
rs232_port_device &rs232a(RS232_PORT(config, RS232_A_TAG, default_rs232_devices, nullptr));
rs232a.rxd_handler().set(m_dart, FUNC(z80dart_device::rxa_w));
MCFG_DEVICE_ADD(RS232_B_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_dart, z80dart_device, rxb_w))
rs232_port_device &rs232b(RS232_PORT(config, RS232_B_TAG, default_rs232_devices, nullptr));
rs232b.rxd_handler().set(m_dart, FUNC(z80dart_device::rxb_w));
CENTRONICS(config, m_centronics, centronics_devices, "printer");
m_centronics->set_data_input_buffer("cent_data_in");

View File

@ -458,8 +458,8 @@ MACHINE_CONFIG_START(ts803_state::ts803)
dart.out_int_callback().set_inputline(m_maincpu, INPUT_LINE_IRQ0);
dart.out_txda_callback().set("rs232", FUNC(rs232_port_device::write_txd));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "keyboard")
MCFG_RS232_RXD_HANDLER(WRITELINE("dart", z80dart_device, rxa_w))
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "keyboard"));
rs232.rxd_handler().set("dart", FUNC(z80dart_device::rxa_w));
/* floppy disk */
FD1793(config, m_fdc, 1_MHz_XTAL);

View File

@ -58,10 +58,11 @@ void tti_state::prg_map(address_map &map)
map(0x80070, 0x80077).w("bitlatch", FUNC(ls259_device::write_d0));
}
MACHINE_CONFIG_START(tti_state::tti)
MCFG_DEVICE_ADD("maincpu", M68008, 20_MHz_XTAL / 2) // guess
MCFG_DEVICE_PROGRAM_MAP(prg_map)
MCFG_DEVICE_IRQ_ACKNOWLEDGE_DRIVER(tti_state, intack)
void tti_state::tti(machine_config &config)
{
M68008(config, m_maincpu, 20_MHz_XTAL / 2); // guess
m_maincpu->set_addrmap(AS_PROGRAM, &tti_state::prg_map);
m_maincpu->set_irq_acknowledge_callback(FUNC(tti_state::intack));
MC68901(config, m_mfp, 20_MHz_XTAL / 2); // guess
m_mfp->set_timer_clock(20_MHz_XTAL / 2); // guess
@ -70,8 +71,8 @@ MACHINE_CONFIG_START(tti_state::tti)
m_mfp->out_so_cb().set("rs232", FUNC(rs232_port_device::write_txd));
m_mfp->out_irq_cb().set_inputline("maincpu", M68K_IRQ_5);
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("mfp", mc68901_device, write_rx))
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal"));
rs232.rxd_handler().set(m_mfp, FUNC(mc68901_device::write_rx));
EEPROM_X24C44_16BIT(config, "novram").do_callback().set("mfp", FUNC(mc68901_device::i0_w));
@ -79,7 +80,7 @@ MACHINE_CONFIG_START(tti_state::tti)
bitlatch.q_out_cb<0>().set("novram", FUNC(eeprom_serial_x24c44_device::di_write));
bitlatch.q_out_cb<1>().set("novram", FUNC(eeprom_serial_x24c44_device::clk_write));
bitlatch.q_out_cb<2>().set("novram", FUNC(eeprom_serial_x24c44_device::cs_write));
MACHINE_CONFIG_END
}
ROM_START( tti )
ROM_REGION( 0x8000, "maincpu", 0 )

View File

@ -1091,9 +1091,9 @@ MACHINE_CONFIG_START(v1050_state::v1050)
m_uart_sio->rxrdy_handler().set(FUNC(v1050_state::sio_rxrdy_w));
m_uart_sio->txrdy_handler().set(FUNC(v1050_state::sio_txrdy_w));
MCFG_DEVICE_ADD(RS232_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(I8251A_SIO_TAG, i8251_device, write_rxd))
MCFG_RS232_DSR_HANDLER(WRITELINE(I8251A_SIO_TAG, i8251_device, write_dsr))
rs232_port_device &rs232(RS232_PORT(config, RS232_TAG, default_rs232_devices, nullptr));
rs232.rxd_handler().set(m_uart_sio, FUNC(i8251_device::write_rxd));
rs232.dsr_handler().set(m_uart_sio, FUNC(i8251_device::write_dsr));
MCFG_DEVICE_ADD(CLOCK_SIO_TAG, CLOCK, 16_MHz_XTAL/4)
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(*this, v1050_state, write_sio_clock))

View File

@ -64,11 +64,12 @@ void vector4_state::machine_reset()
}
MACHINE_CONFIG_START(vector4_state::vector4)
void vector4_state::vector4(machine_config &config)
{
/* basic machine hardware */
MCFG_DEVICE_ADD("maincpu",Z80, XTAL(4'000'000))
MCFG_DEVICE_PROGRAM_MAP(vector4_mem)
MCFG_DEVICE_IO_MAP(vector4_io)
Z80(config, m_maincpu, XTAL(4'000'000));
m_maincpu->set_addrmap(AS_PROGRAM, &vector4_state::vector4_mem);
m_maincpu->set_addrmap(AS_IO, &vector4_state::vector4_io);
/* video hardware */
clock_device &uart_clock(CLOCK(config, "uart_clock", 153600));
@ -84,31 +85,31 @@ MACHINE_CONFIG_START(vector4_state::vector4)
uart1.dtr_handler().set("rs232a", FUNC(rs232_port_device::write_dtr));
uart1.rts_handler().set("rs232a", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232a", RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE("uart1", i8251_device, write_rxd))
MCFG_RS232_DSR_HANDLER(WRITELINE("uart1", i8251_device, write_dsr))
MCFG_RS232_CTS_HANDLER(WRITELINE("uart1", i8251_device, write_cts))
rs232_port_device &rs232a(RS232_PORT(config, "rs232a", default_rs232_devices, "terminal"));
rs232a.rxd_handler().set("uart1", FUNC(i8251_device::write_rxd));
rs232a.dsr_handler().set("uart1", FUNC(i8251_device::write_dsr));
rs232a.cts_handler().set("uart1", FUNC(i8251_device::write_cts));
i8251_device &uart2(I8251(config, "uart2", 0));
uart2.txd_handler().set("rs232b", FUNC(rs232_port_device::write_txd));
uart2.dtr_handler().set("rs232b", FUNC(rs232_port_device::write_dtr));
uart2.rts_handler().set("rs232b", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232b", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("uart2", i8251_device, write_rxd))
MCFG_RS232_DSR_HANDLER(WRITELINE("uart2", i8251_device, write_dsr))
MCFG_RS232_CTS_HANDLER(WRITELINE("uart2", i8251_device, write_cts))
rs232_port_device &rs232b(RS232_PORT(config, "rs232b", default_rs232_devices, nullptr));
rs232b.rxd_handler().set("uart2", FUNC(i8251_device::write_rxd));
rs232b.dsr_handler().set("uart2", FUNC(i8251_device::write_dsr));
rs232b.cts_handler().set("uart2", FUNC(i8251_device::write_cts));
i8251_device &uart3(I8251(config, "uart3", 0));
uart3.txd_handler().set("rs232c", FUNC(rs232_port_device::write_txd));
uart3.dtr_handler().set("rs232c", FUNC(rs232_port_device::write_dtr));
uart3.rts_handler().set("rs232c", FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD("rs232c", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("uart3", i8251_device, write_rxd))
MCFG_RS232_DSR_HANDLER(WRITELINE("uart3", i8251_device, write_dsr))
MCFG_RS232_CTS_HANDLER(WRITELINE("uart3", i8251_device, write_cts))
MACHINE_CONFIG_END
rs232_port_device &rs232c(RS232_PORT(config, "rs232c", default_rs232_devices, nullptr));
rs232c.rxd_handler().set("uart3", FUNC(i8251_device::write_rxd));
rs232c.dsr_handler().set("uart3", FUNC(i8251_device::write_dsr));
rs232c.cts_handler().set("uart3", FUNC(i8251_device::write_cts));
}
/* ROM definition */
ROM_START( vector4 )

View File

@ -271,10 +271,10 @@ MACHINE_CONFIG_START(votrpss_state::votrpss)
uart.rts_handler().set("rs232", FUNC(rs232_port_device::write_rts));
// when serial is chosen, and you select terminal, nothing shows (by design). You can only type commands in.
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE("uart", i8251_device, write_rxd))
MCFG_RS232_DSR_HANDLER(WRITELINE("uart", i8251_device, write_dsr))
MCFG_RS232_CTS_HANDLER(WRITELINE("uart", i8251_device, write_cts))
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, nullptr));
rs232.rxd_handler().set("uart", FUNC(i8251_device::write_rxd));
rs232.dsr_handler().set("uart", FUNC(i8251_device::write_dsr));
rs232.cts_handler().set("uart", FUNC(i8251_device::write_cts));
pit8253_device &pit(PIT8253(config, "pit", 0));
pit.set_clk<0>(8_MHz_XTAL); // Timer 0: baud rate gen for 8251

View File

@ -1342,8 +1342,8 @@ MACHINE_CONFIG_START(wangpc_state::wangpc)
INPUT_BUFFER(config, m_cent_data_in);
MCFG_CENTRONICS_OUTPUT_LATCH_ADD("cent_data_out", CENTRONICS_TAG)
MCFG_DEVICE_ADD(RS232_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(SCN2661_TAG, mc2661_device, rx_w))
rs232_port_device &rs232(RS232_PORT(config, RS232_TAG, default_rs232_devices, nullptr));
rs232.rxd_handler().set(m_epci, FUNC(mc2661_device::rx_w));
WANGPC_KEYBOARD(config, "wangpckb").txd_handler().set(m_uart, FUNC(im6402_device::write_rri));

View File

@ -641,11 +641,11 @@ MACHINE_CONFIG_START(xerox820_state::xerox820)
m_sio->out_rtsb_callback().set(RS232_B_TAG, FUNC(rs232_port_device::write_rts));
m_sio->out_int_callback().set_inputline(m_maincpu, INPUT_LINE_IRQ0);
MCFG_DEVICE_ADD(RS232_A_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_sio, z80sio0_device, rxa_w))
rs232_port_device &rs232a(RS232_PORT(config, RS232_A_TAG, default_rs232_devices, nullptr));
rs232a.rxd_handler().set(m_sio, FUNC(z80sio0_device::rxa_w));
MCFG_DEVICE_ADD(RS232_B_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_sio, z80sio0_device, rxb_w))
rs232_port_device &rs232b(RS232_PORT(config, RS232_B_TAG, default_rs232_devices, nullptr));
rs232b.rxd_handler().set(m_sio, FUNC(z80sio0_device::rxb_w));
com8116_device &dbrg(COM8116(config, COM8116_TAG, 5.0688_MHz_XTAL));
dbrg.fr_handler().set(m_sio, FUNC(z80dart_device::rxca_w));
@ -730,11 +730,11 @@ MACHINE_CONFIG_START(xerox820ii_state::xerox820ii)
m_sio->out_rtsb_callback().set(RS232_B_TAG, FUNC(rs232_port_device::write_rts));
m_sio->out_int_callback().set_inputline(m_maincpu, INPUT_LINE_IRQ0);
MCFG_DEVICE_ADD(RS232_A_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_sio, z80sio0_device, rxa_w))
rs232_port_device &rs232a(RS232_PORT(config, RS232_A_TAG, default_rs232_devices, nullptr));
rs232a.rxd_handler().set(m_sio, FUNC(z80sio0_device::rxa_w));
MCFG_DEVICE_ADD(RS232_B_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_sio, z80sio0_device, rxb_w))
rs232_port_device &rs232b(RS232_PORT(config, RS232_B_TAG, default_rs232_devices, nullptr));
rs232b.rxd_handler().set(m_sio, FUNC(z80sio0_device::rxb_w));
com8116_device &dbrg(COM8116(config, COM8116_TAG, 5.0688_MHz_XTAL));
dbrg.fr_handler().set(m_sio, FUNC(z80dart_device::rxca_w));

View File

@ -489,19 +489,19 @@ MACHINE_CONFIG_START(xor100_state::xor100)
m_uart_a->dtr_handler().set(RS232_A_TAG, FUNC(rs232_port_device::write_dtr));
m_uart_a->rts_handler().set(RS232_A_TAG, FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD(RS232_A_TAG, RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_uart_a, i8251_device, write_rxd))
MCFG_RS232_DSR_HANDLER(WRITELINE(m_uart_a, i8251_device, write_dsr))
rs232_port_device &rs232a(RS232_PORT(config, RS232_A_TAG, default_rs232_devices, nullptr));
rs232a.rxd_handler().set(m_uart_a, FUNC(i8251_device::write_rxd));
rs232a.dsr_handler().set(m_uart_a, FUNC(i8251_device::write_dsr));
I8251(config, m_uart_b, 0/*8_MHz_XTAL / 2,*/);
m_uart_b->txd_handler().set(RS232_B_TAG, FUNC(rs232_port_device::write_txd));
m_uart_b->dtr_handler().set(RS232_B_TAG, FUNC(rs232_port_device::write_dtr));
m_uart_b->rts_handler().set(RS232_B_TAG, FUNC(rs232_port_device::write_rts));
MCFG_DEVICE_ADD(RS232_B_TAG, RS232_PORT, default_rs232_devices, "terminal")
MCFG_RS232_RXD_HANDLER(WRITELINE(m_uart_b, i8251_device, write_rxd))
MCFG_RS232_DSR_HANDLER(WRITELINE(m_uart_b, i8251_device, write_dsr))
MCFG_RS232_CTS_HANDLER(WRITELINE(m_uart_b, i8251_device, write_cts))
rs232_port_device &rs232b(RS232_PORT(config, RS232_B_TAG, default_rs232_devices, "terminal"));
rs232b.rxd_handler().set(m_uart_b, FUNC(i8251_device::write_rxd));
rs232b.dsr_handler().set(m_uart_b, FUNC(i8251_device::write_dsr));
rs232b.cts_handler().set(m_uart_b, FUNC(i8251_device::write_cts));
com8116_device &brg(COM8116(config, COM5016_TAG, 5.0688_MHz_XTAL));
brg.fr_handler().set(m_uart_a, FUNC(i8251_device::write_txc));

View File

@ -237,10 +237,10 @@ MACHINE_CONFIG_START(zorba_state::zorba)
// J2 EIA RS232/internal modem
// TODO: this has additional lines compared to a regular RS232 port (TxC in, RxC in, RxC out, speaker in, power)
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_uart0, i8251_device, write_rxd)) // TODO: this line has a LED attached
MCFG_RS232_CTS_HANDLER(WRITELINE(m_uart0, i8251_device, write_cts)) // TODO: this line has a LED attached
MCFG_RS232_DSR_HANDLER(WRITELINE(m_uart0, i8251_device, write_dsr))
rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, nullptr));
rs232.rxd_handler().set(m_uart0, FUNC(i8251_device::write_rxd)); // TODO: this line has a LED attached
rs232.cts_handler().set(m_uart0, FUNC(i8251_device::write_cts)); // TODO: this line has a LED attached
rs232.dsr_handler().set(m_uart0, FUNC(i8251_device::write_dsr));
// J3 Parallel printer
MCFG_CENTRONICS_OUTPUT_LATCH_ADD("parprndata", "parprn")
@ -251,8 +251,8 @@ MACHINE_CONFIG_START(zorba_state::zorba)
parprn.select_handler().set(FUNC(zorba_state::printer_select_w));
// J3 Serial printer
MCFG_DEVICE_ADD("serprn", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(m_uart1, i8251_device, write_rxd)) // TODO: this line has a LED attached
rs232_port_device &serprn(RS232_PORT(config, "serprn", default_rs232_devices, nullptr));
serprn.rxd_handler().set(m_uart1, FUNC(i8251_device::write_rxd)); // TODO: this line has a LED attached
// J6 TTL-level serial keyboard
ZORBA_KEYBOARD(config, "keyboard").rxd_cb().set(m_uart2, FUNC(i8251_device::write_rxd));

View File

@ -530,10 +530,10 @@ MACHINE_CONFIG_START(to7_io_line_device::device_add_mconfig)
m_pia_io->irqa_handler().set("^mainfirq", FUNC(input_merger_device::in_w<1>));
m_pia_io->irqb_handler().set("^mainfirq", FUNC(input_merger_device::in_w<1>));
MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, nullptr)
MCFG_RS232_RXD_HANDLER(WRITELINE(*this, to7_io_line_device, write_rxd))
MCFG_RS232_CTS_HANDLER(WRITELINE(*this, to7_io_line_device, write_cts))
MCFG_RS232_DSR_HANDLER(WRITELINE(*this, to7_io_line_device, write_dsr))
RS232_PORT(config, m_rs232, default_rs232_devices, nullptr);
m_rs232->rxd_handler().set(FUNC(to7_io_line_device::write_rxd));
m_rs232->cts_handler().set(FUNC(to7_io_line_device::write_cts));
m_rs232->dsr_handler().set(FUNC(to7_io_line_device::write_dsr));
MCFG_DEVICE_ADD("centronics", CENTRONICS, centronics_devices, "printer")
MCFG_CENTRONICS_ACK_HANDLER(WRITELINE(THOM_PIA_IO, pia6821_device, cb1_w))