From 02ba6e2b99f8b939521de636cfa13821afe09a2f Mon Sep 17 00:00:00 2001 From: Dirk Best Date: Thu, 30 Nov 2017 16:58:17 +0100 Subject: [PATCH] micro3d: Add terminal to the DrMath board --- src/mame/drivers/micro3d.cpp | 14 +++++++++++--- src/mame/includes/micro3d.h | 2 -- src/mame/machine/micro3d.cpp | 23 ----------------------- 3 files changed, 11 insertions(+), 28 deletions(-) diff --git a/src/mame/drivers/micro3d.cpp b/src/mame/drivers/micro3d.cpp index d3b77edb0e7..b3c5ab50313 100644 --- a/src/mame/drivers/micro3d.cpp +++ b/src/mame/drivers/micro3d.cpp @@ -30,6 +30,7 @@ #include "cpu/m68000/m68000.h" #include "cpu/mcs51/mcs51.h" #include "bus/rs232/rs232.h" +#include "machine/z80scc.h" #include "machine/adc0844.h" #include "machine/mc68681.h" #include "machine/mc68901.h" @@ -265,7 +266,7 @@ static ADDRESS_MAP_START( drmath_data, AS_DATA, 32, micro3d_state ) AM_RANGE(0x01400000, 0x01400003) AM_READWRITE(micro3d_pipe_r, micro3d_fifo_w) AM_RANGE(0x01600000, 0x01600003) AM_WRITE(drmath_intr2_ack) AM_RANGE(0x01800000, 0x01800003) AM_WRITE(micro3d_alt_fifo_w) - AM_RANGE(0x03fffff0, 0x03fffff7) AM_READWRITE(micro3d_scc_r, micro3d_scc_w) + AM_RANGE(0x03fffff0, 0x03fffff7) AM_DEVREADWRITE8("scc", z80scc_device, ba_cd_inv_r, ba_cd_inv_w, 0x000000ff) ADDRESS_MAP_END /************************************* @@ -313,6 +314,13 @@ static MACHINE_CONFIG_START( micro3d ) MCFG_CPU_PROGRAM_MAP(drmath_prg) MCFG_CPU_DATA_MAP(drmath_data) + MCFG_SCC8530_ADD("scc", XTAL_32MHz / 2 / 2, 0, 0, 0, 0) + MCFG_Z80SCC_OUT_TXDB_CB(DEVWRITELINE("monitor_drmath", rs232_port_device, write_txd)) + + MCFG_RS232_PORT_ADD("monitor_drmath", default_rs232_devices, nullptr) + MCFG_RS232_RXD_HANDLER(DEVWRITELINE("scc", z80scc_device, rxb_w)) + MCFG_RS232_DCD_HANDLER(DEVWRITELINE("scc", z80scc_device, dcdb_w)) MCFG_DEVCB_XOR(1) + MCFG_CPU_ADD("audiocpu", I8051, XTAL_11_0592MHz) MCFG_CPU_PROGRAM_MAP(soundmem_prg) MCFG_CPU_IO_MAP(soundmem_io) @@ -321,7 +329,7 @@ static MACHINE_CONFIG_START( micro3d ) MCFG_DEVICE_ADD("duart", MC68681, XTAL_3_6864MHz) MCFG_MC68681_IRQ_CALLBACK(WRITELINE(micro3d_state, duart_irq_handler)) - MCFG_MC68681_A_TX_CALLBACK(DEVWRITELINE("monitor", rs232_port_device, write_txd)) + MCFG_MC68681_A_TX_CALLBACK(DEVWRITELINE("monitor_host", rs232_port_device, write_txd)) MCFG_MC68681_B_TX_CALLBACK(WRITELINE(micro3d_state, duart_txb)) MCFG_MC68681_INPORT_CALLBACK(READ8(micro3d_state, duart_input_r)) MCFG_MC68681_OUTPORT_CALLBACK(WRITE8(micro3d_state, duart_output_w)) @@ -346,7 +354,7 @@ static MACHINE_CONFIG_START( micro3d ) MCFG_SCREEN_UPDATE_DEVICE("vgb", tms34010_device, tms340x0_ind16) MCFG_SCREEN_PALETTE("palette") - MCFG_RS232_PORT_ADD("monitor", default_rs232_devices, nullptr) + MCFG_RS232_PORT_ADD("monitor_host", default_rs232_devices, nullptr) MCFG_RS232_RXD_HANDLER(DEVWRITELINE("duart", mc68681_device, rx_a_w)) MCFG_ADC0844_ADD("adc") diff --git a/src/mame/includes/micro3d.h b/src/mame/includes/micro3d.h index 04c5f7faa79..25815f0884c 100644 --- a/src/mame/includes/micro3d.h +++ b/src/mame/includes/micro3d.h @@ -134,8 +134,6 @@ public: DECLARE_WRITE16_MEMBER(micro3d_ti_uart_w); DECLARE_READ16_MEMBER(micro3d_ti_uart_r); - DECLARE_WRITE32_MEMBER(micro3d_scc_w); - DECLARE_READ32_MEMBER(micro3d_scc_r); DECLARE_WRITE32_MEMBER(micro3d_mac1_w); DECLARE_READ32_MEMBER(micro3d_mac2_r); DECLARE_WRITE32_MEMBER(micro3d_mac2_w); diff --git a/src/mame/machine/micro3d.cpp b/src/mame/machine/micro3d.cpp index a272edf2a4d..44aafd9400d 100644 --- a/src/mame/machine/micro3d.cpp +++ b/src/mame/machine/micro3d.cpp @@ -186,29 +186,6 @@ READ16_MEMBER(micro3d_state::micro3d_ti_uart_r) } -/************************************* - * - * Z8530 SCC (Am29000) - * - *************************************/ - -WRITE32_MEMBER(micro3d_state::micro3d_scc_w) -{ -#if DRMATH_MONITOR_DISPLAY - if (offset == 1) - osd_printf_debug("%c", data); -#endif -} - -READ32_MEMBER(micro3d_state::micro3d_scc_r) -{ - if (offset == 1) - return 0xd; - else - return 5; -} - - /************************************* *