summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author AJR <ajrhacker@users.noreply.github.com>2017-11-25 00:37:46 -0500
committer AJR <ajrhacker@users.noreply.github.com>2017-11-25 00:37:46 -0500
commita636fabf6b0048d83cf132856c0b73a2e78a375b (patch)
tree8b18989c8b05916598f01b9ad34862ca5c224f00
parent80b787b498258936c136b911957b1d29dc1d15cf (diff)
vp122: Skeleton driver (nw)
-rw-r--r--scripts/target/mame/mess.lua1
-rw-r--r--src/mame/drivers/terminals.cpp22
-rw-r--r--src/mame/drivers/vp122.cpp77
-rw-r--r--src/mame/mame.lst4
-rw-r--r--src/mame/mess.flt1
5 files changed, 82 insertions, 23 deletions
diff --git a/scripts/target/mame/mess.lua b/scripts/target/mame/mess.lua
index ae669b9e93e..2c271051276 100644
--- a/scripts/target/mame/mess.lua
+++ b/scripts/target/mame/mess.lua
@@ -3604,6 +3604,7 @@ files {
MAME_DIR .. "src/mame/drivers/vector4.cpp",
MAME_DIR .. "src/mame/drivers/vectrix.cpp",
MAME_DIR .. "src/mame/drivers/vii.cpp",
+ MAME_DIR .. "src/mame/drivers/vp122.cpp",
MAME_DIR .. "src/mame/drivers/vsmilepro.cpp",
MAME_DIR .. "src/mame/drivers/wicat.cpp",
MAME_DIR .. "src/mame/drivers/wyse.cpp",
diff --git a/src/mame/drivers/terminals.cpp b/src/mame/drivers/terminals.cpp
index 17b67929d7f..e184c105e78 100644
--- a/src/mame/drivers/terminals.cpp
+++ b/src/mame/drivers/terminals.cpp
@@ -62,28 +62,6 @@ COMP( 1982, vp60, 0, 0, terminals, terminals, terminals_state, 0, "ADDS", "Viewp
/**************************************************************************************************************
-ADDS Viewpoint 122 (VPT-122).
-Chips: D8085AC-2, SCN2674B, SCB2675T, D8251AFC, SCN2681A, D8253C-2, 5x MB8129-15, MX462020-20 (guess, it's unreadable)
-Crystals: 22.096, 14.916, 3.6864, 8.000
-
-***************************************************************************************************************/
-
-ROM_START( vp122 )
- ROM_REGION(0x10000, "maincpu", 0)
- ROM_LOAD( "223-48600.uj1", 0x0000, 0x4000, CRC(4d140c69) SHA1(04aa5a4f0c0e0d07b9dc983a6d626ee88ef8b8ba) )
- ROM_LOAD( "223-48500.ug1", 0x4000, 0x4000, CRC(4e98554d) SHA1(0cbb9cb7efd02a3209caed410ccc8495a5ec1772) )
- ROM_LOAD( "223-49400.uj2", 0x8000, 0x4000, CRC(447d90d3) SHA1(f8c0db824198b5a571eef80cc3eaf1e829aa2c2a) )
-
- ROM_REGION(0x2000, "chargen", 0)
- ROM_LOAD( "223-48700.uk4", 0x0000, 0x2000, CRC(4dbab4bd) SHA1(18e9a23ba22e2096fa529541fa329f5a56740e62) )
-ROM_END
-
-COMP( 1985, vp122, 0, 0, terminals, terminals, terminals_state, 0, "ADDS", "Viewpoint 122", MACHINE_IS_SKELETON )
-
-
-
-/**************************************************************************************************************
-
Ann Arbor Ambassador.
Chips: Z80A, M58725P (16k RAM), 2x SCN2651C, nvram, button-battery
Crystals: 18.414, 6.0688
diff --git a/src/mame/drivers/vp122.cpp b/src/mame/drivers/vp122.cpp
new file mode 100644
index 00000000000..5ea63662f0b
--- /dev/null
+++ b/src/mame/drivers/vp122.cpp
@@ -0,0 +1,77 @@
+// license:BSD-3-Clause
+// copyright-holders:
+/***********************************************************************************************************************************
+
+Skeleton driver for ADDS Viewpoint 122 terminal.
+
+************************************************************************************************************************************/
+
+#include "emu.h"
+#include "cpu/i8085/i8085.h"
+#include "machine/i8251.h"
+#include "machine/mc68681.h"
+#include "machine/pit8253.h"
+//#include "video/scn2674.h"
+
+class vp122_state : public driver_device
+{
+public:
+ vp122_state(const machine_config &mconfig, device_type type, const char *tag)
+ : driver_device(mconfig, type, tag)
+ , m_maincpu(*this, "maincpu")
+ //, m_p_chargen(*this, "chargen")
+ { }
+
+private:
+ required_device<cpu_device> m_maincpu;
+ //required_region_ptr<u8> m_p_chargen;
+};
+
+static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, vp122_state )
+ AM_RANGE(0x0000, 0x9fff) AM_ROM AM_REGION("maincpu", 0)
+ AM_RANGE(0xa000, 0xa7ff) AM_RAM
+ADDRESS_MAP_END
+
+static ADDRESS_MAP_START( io_map, AS_IO, 8, vp122_state )
+ AM_RANGE(0x01, 0x01) AM_READNOP
+ AM_RANGE(0x10, 0x1f) AM_DEVREADWRITE("duart", scn2681_device, read, write)
+ AM_RANGE(0x20, 0x20) AM_DEVREADWRITE("usart", i8251_device, data_r, data_w)
+ AM_RANGE(0x21, 0x21) AM_DEVREADWRITE("usart", i8251_device, status_r, control_w)
+ AM_RANGE(0x70, 0x73) AM_DEVREADWRITE("pit", pit8253_device, read, write)
+ADDRESS_MAP_END
+
+static INPUT_PORTS_START( vp122 )
+INPUT_PORTS_END
+
+static MACHINE_CONFIG_START( vp122 )
+ MCFG_CPU_ADD("maincpu", I8085A, XTAL_8MHz)
+ MCFG_CPU_PROGRAM_MAP(mem_map)
+ MCFG_CPU_IO_MAP(io_map)
+
+ MCFG_DEVICE_ADD("duart", SCN2681, XTAL_3_6864MHz)
+ MCFG_MC68681_IRQ_CALLBACK(INPUTLINE("maincpu", I8085_RST55_LINE))
+
+ MCFG_DEVICE_ADD("usart", I8251, XTAL_8MHz / 4)
+
+ MCFG_DEVICE_ADD("pit", PIT8253, 0)
+MACHINE_CONFIG_END
+
+/**************************************************************************************************************
+
+ADDS Viewpoint 122 (VPT-122).
+Chips: D8085AC-2, SCN2674B, SCB2675T, D8251AFC, SCN2681A, D8253C-2, 5x MB8129-15, MX462020-20 (guess, it's unreadable)
+Crystals: 22.096, 14.916, 3.6864, 8.000
+
+***************************************************************************************************************/
+
+ROM_START( vp122 )
+ ROM_REGION(0xc000, "maincpu", 0)
+ ROM_LOAD( "223-48600.uj1", 0x0000, 0x4000, CRC(4d140c69) SHA1(04aa5a4f0c0e0d07b9dc983a6d626ee88ef8b8ba) )
+ ROM_LOAD( "223-48500.ug1", 0x4000, 0x4000, CRC(4e98554d) SHA1(0cbb9cb7efd02a3209caed410ccc8495a5ec1772) )
+ ROM_LOAD( "223-49400.uj2", 0x8000, 0x4000, CRC(447d90d3) SHA1(f8c0db824198b5a571eef80cc3eaf1e829aa2c2a) )
+
+ ROM_REGION(0x2000, "chargen", 0)
+ ROM_LOAD( "223-48700.uk4", 0x0000, 0x2000, CRC(4dbab4bd) SHA1(18e9a23ba22e2096fa529541fa329f5a56740e62) )
+ROM_END
+
+COMP( 1985, vp122, 0, 0, vp122, vp122, vp122_state, 0, "ADDS", "Viewpoint 122", MACHINE_IS_SKELETON )
diff --git a/src/mame/mame.lst b/src/mame/mame.lst
index db31b71ba0f..c57355d6a6e 100644
--- a/src/mame/mame.lst
+++ b/src/mame/mame.lst
@@ -36343,7 +36343,6 @@ tv965
v100
v102
vp60
-vp122
vt420
zephyr
@@ -37676,6 +37675,9 @@ specfrce // (c) 2002 ICE/Play Mechanix
specfrceo // (c) 2002 ICE/Play Mechanix
zoofari // (c) 2006 ICE/Play Mechanix
+@source:vp122.cpp
+vp122 //
+
@source:vpoker.cpp
5acespkr // (c) 198?
vpoker // (c) 198?
diff --git a/src/mame/mess.flt b/src/mame/mess.flt
index c5746ed48ac..316a399232c 100644
--- a/src/mame/mess.flt
+++ b/src/mame/mess.flt
@@ -736,6 +736,7 @@ vixen.cpp
vk100.cpp
votrpss.cpp
votrtnt.cpp
+vp122.cpp
vsmilepro.cpp
vt100.cpp
vt220.cpp