summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/dual68.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/dual68.cpp')
-rw-r--r--src/mame/drivers/dual68.cpp26
1 files changed, 11 insertions, 15 deletions
diff --git a/src/mame/drivers/dual68.cpp b/src/mame/drivers/dual68.cpp
index 9e36f91b2de..6369f029c8c 100644
--- a/src/mame/drivers/dual68.cpp
+++ b/src/mame/drivers/dual68.cpp
@@ -12,7 +12,7 @@
#include "cpu/m68000/m68000.h"
#include "cpu/i8085/i8085.h"
//#include "bus/s100/s100.h"
-#include "machine/i8251.h"
+#include "machine/mc2661.h"
#include "machine/terminal.h"
@@ -68,14 +68,10 @@ void dual68_state::sio4_mem(address_map &map)
void dual68_state::sio4_io(address_map &map)
{
map.unmap_value_high();
- map(0x22, 0x22).rw("uart1", FUNC(i8251_device::status_r), FUNC(i8251_device::control_w));
- map(0x23, 0x23).rw("uart1", FUNC(i8251_device::data_r), FUNC(i8251_device::data_w));
- map(0x2a, 0x2a).rw("uart2", FUNC(i8251_device::status_r), FUNC(i8251_device::control_w));
- map(0x2b, 0x2b).rw("uart2", FUNC(i8251_device::data_r), FUNC(i8251_device::data_w));
- map(0x32, 0x32).rw("uart3", FUNC(i8251_device::status_r), FUNC(i8251_device::control_w));
- map(0x33, 0x33).rw("uart3", FUNC(i8251_device::data_r), FUNC(i8251_device::data_w));
- map(0x3a, 0x3a).rw("uart4", FUNC(i8251_device::status_r), FUNC(i8251_device::control_w));
- map(0x3b, 0x3b).rw("uart4", FUNC(i8251_device::data_r), FUNC(i8251_device::data_w));
+ map(0x20, 0x23).rw("usart1", FUNC(mc2661_device::read), FUNC(mc2661_device::write));
+ map(0x28, 0x2b).rw("usart2", FUNC(mc2661_device::read), FUNC(mc2661_device::write));
+ map(0x30, 0x33).rw("usart3", FUNC(mc2661_device::read), FUNC(mc2661_device::write));
+ map(0x38, 0x3b).rw("usart4", FUNC(mc2661_device::read), FUNC(mc2661_device::write));
}
/* Input ports */
@@ -99,10 +95,10 @@ void dual68_state::kbd_put(u8 data)
MACHINE_CONFIG_START(dual68_state::dual68)
/* basic machine hardware */
- MCFG_DEVICE_ADD("maincpu", M68000, XTAL(16'000'000) / 2)
+ MCFG_DEVICE_ADD("maincpu", M68000, 16_MHz_XTAL / 2) // MC68000L8
MCFG_DEVICE_PROGRAM_MAP(dual68_mem)
- MCFG_DEVICE_ADD("siocpu", I8085A, XTAL(16'000'000) / 8)
+ MCFG_DEVICE_ADD("siocpu", I8085A, 9.8304_MHz_XTAL) // NEC D8085AC-2
MCFG_DEVICE_PROGRAM_MAP(sio4_mem)
MCFG_DEVICE_IO_MAP(sio4_io)
@@ -110,10 +106,10 @@ MACHINE_CONFIG_START(dual68_state::dual68)
MCFG_DEVICE_ADD(m_terminal, GENERIC_TERMINAL, 0)
MCFG_GENERIC_TERMINAL_KEYBOARD_CB(PUT(dual68_state, kbd_put))
- MCFG_DEVICE_ADD("uart1", I8251, 0)
- MCFG_DEVICE_ADD("uart2", I8251, 0)
- MCFG_DEVICE_ADD("uart3", I8251, 0)
- MCFG_DEVICE_ADD("uart4", I8251, 0)
+ MCFG_DEVICE_ADD("usart1", MC2661, 9.8304_MHz_XTAL / 2) // SCN2661B
+ MCFG_DEVICE_ADD("usart2", MC2661, 9.8304_MHz_XTAL / 2) // SCN2661B
+ MCFG_DEVICE_ADD("usart3", MC2661, 9.8304_MHz_XTAL / 2) // SCN2661B
+ MCFG_DEVICE_ADD("usart4", MC2661, 9.8304_MHz_XTAL / 2) // SCN2661B
MACHINE_CONFIG_END
/* ROM definition */