From d80a70f1bbf024ba2899a47af41af2e0a6fb3193 Mon Sep 17 00:00:00 2001 From: AJR Date: Fri, 12 Apr 2019 21:42:14 -0400 Subject: New machines marked as NOT_WORKING ---------------------------------- Ericsson 9161 Display Processor Unit [MCbx Old Computer Collection] --- scripts/target/mame/mess.lua | 1 + src/mame/drivers/e9161.cpp | 72 ++++++++++++++++++++++++++++++++++++++++++++ src/mame/mame.lst | 3 ++ src/mame/mess.flt | 1 + 4 files changed, 77 insertions(+) create mode 100644 src/mame/drivers/e9161.cpp diff --git a/scripts/target/mame/mess.lua b/scripts/target/mame/mess.lua index a69109a3540..0852cfee715 100644 --- a/scripts/target/mame/mess.lua +++ b/scripts/target/mame/mess.lua @@ -3847,6 +3847,7 @@ files { MAME_DIR .. "src/mame/drivers/dsb46.cpp", MAME_DIR .. "src/mame/drivers/dual68.cpp", MAME_DIR .. "src/mame/drivers/e100.cpp", + MAME_DIR .. "src/mame/drivers/e9161.cpp", MAME_DIR .. "src/mame/drivers/eacc.cpp", MAME_DIR .. "src/mame/drivers/elwro800.cpp", MAME_DIR .. "src/mame/drivers/emate.cpp", diff --git a/src/mame/drivers/e9161.cpp b/src/mame/drivers/e9161.cpp new file mode 100644 index 00000000000..d3f2033ba94 --- /dev/null +++ b/src/mame/drivers/e9161.cpp @@ -0,0 +1,72 @@ +// license:BSD-3-Clause +// copyright-holders:AJR +/************************************************************************************************************ + + Skeleton driver for Ericsson/Datasaab 9161 Display Processor Unit (DPU). + + This is a high-end video terminal that can connect to a Datasaab E2500 mainframe system over a coaxial + cable. It also has an unusual differential connector for its display (which operates at 50 Hz). + +************************************************************************************************************/ + +#include "emu.h" +#include "cpu/m68000/m68000.h" +#include "machine/hd63450.h" + + +class e9161_state : public driver_device +{ +public: + e9161_state(const machine_config &mconfig, device_type type, const char *tag) + : driver_device(mconfig, type, tag) + , m_maincpu(*this, "maincpu") + , m_dmac(*this, "dmac") + { + } + + void e9161(machine_config &config); + +private: + void mem_map(address_map &map); + + required_device m_maincpu; + required_device m_dmac; +}; + + +void e9161_state::mem_map(address_map &map) +{ + map(0x000000, 0x000007).rom().region("program", 0); + map(0x018000, 0x0187ff).ram(); + map(0xc00000, 0xc03fff).rom().region("program", 0); +} + + +static INPUT_PORTS_START(e9161) // TODO: serial keyboard +INPUT_PORTS_END + + +void e9161_state::e9161(machine_config &config) +{ + M68000(config, m_maincpu, 8'000'000); + m_maincpu->set_addrmap(AS_PROGRAM, &e9161_state::mem_map); + + HD63450(config, m_dmac, 8'000'000, m_maincpu); +} + + +// CPU: MC68000G8 +// DMAC: HD68450-8 +// DRAM: 16 x M5K4164ANP-12 +// DRAM controller: TMS4500A-15NL +// SIO: MK68564N-4A +// CRTC: Am8052-6LC (under heatsink) +// XTALs: 19.1700 MHz (middle of board), ??.???? MHz (near video connector) +ROM_START(e9161) + ROM_REGION16_BE(0x4000, "program", 0) + ROM_LOAD16_BYTE("e3405_87080_7403.bin", 0x0000, 0x2000, CRC(97f72404) SHA1(ced003ce294cd7370051e1f774d5120062390647)) + ROM_LOAD16_BYTE("e3405_87080_7303.bin", 0x0001, 0x2000, CRC(ec94aec4) SHA1(f41ae1b7f04ca3a2d0def6ff9aad3ff41782589a)) +ROM_END + + +COMP(198?, e9161, 0, 0, e9161, e9161, e9161_state, empty_init, "Ericsson", "9161 Display Processor Unit", MACHINE_IS_SKELETON) diff --git a/src/mame/mame.lst b/src/mame/mame.lst index 122e263eb61..fce4968087a 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -11904,6 +11904,9 @@ dyndukeu // (c) 1989 Seibu Kaihatsu + Fabtek license (25J @source:e100.cpp e100 // +@source:e9161.cpp +e9161 // + @source:eacc.cpp eacc // diff --git a/src/mame/mess.flt b/src/mame/mess.flt index 675f1b05dc3..fc0f05902c9 100644 --- a/src/mame/mess.flt +++ b/src/mame/mess.flt @@ -204,6 +204,7 @@ duet16.cpp dvk_kcgd.cpp dvk_ksm.cpp e100.cpp +e9161.cpp eacc.cpp ec184x.cpp ec65.cpp -- cgit v1.2.3