summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author R. Belmont <rb6502@users.noreply.github.com>2015-08-28 15:32:08 -0400
committer R. Belmont <rb6502@users.noreply.github.com>2015-08-28 15:32:08 -0400
commit48d414360c5ed18c658fa013b82851cc14c07367 (patch)
tree7d7a6c5779dcd01d2abf21ef3980420c402bce90
parentf63386f674046390deadafa6ef2bdec6fcc119b5 (diff)
parent25dd325c93ab4e5117ed2a7585e7b5406399041d (diff)
Merge pull request #287 from felipesanches/canons80
initial skeleton driver for Canon S-80 typowriter
-rw-r--r--scripts/target/mame/mess.lua7
-rw-r--r--src/mame/mess.lst1
-rw-r--r--src/mess/drivers/canon_s80.c54
3 files changed, 59 insertions, 3 deletions
diff --git a/scripts/target/mame/mess.lua b/scripts/target/mame/mess.lua
index 421c3f9549f..29f03266dd2 100644
--- a/scripts/target/mame/mess.lua
+++ b/scripts/target/mame/mess.lua
@@ -1232,9 +1232,10 @@ files {
}
createMESSProjects(_target, _subtarget, "canon")
-files {
- MAME_DIR .. "src/mess/drivers/cat.c",
- MAME_DIR .. "src/mess/drivers/x07.c",
+files {
+ MAME_DIR .. "src/mess/drivers/cat.c",
+ MAME_DIR .. "src/mess/drivers/x07.c",
+ MAME_DIR .. "src/mess/drivers/canon_s80.c",
}
createMESSProjects(_target, _subtarget, "cantab")
diff --git a/src/mame/mess.lst b/src/mame/mess.lst
index 9e15101a2ae..12550729b17 100644
--- a/src/mame/mess.lst
+++ b/src/mame/mess.lst
@@ -1341,6 +1341,7 @@ canonv20e
canonv20f
canonv20g
canonv20s
+canons80
mx10
mx101
mx15
diff --git a/src/mess/drivers/canon_s80.c b/src/mess/drivers/canon_s80.c
new file mode 100644
index 00000000000..857e2bfa053
--- /dev/null
+++ b/src/mess/drivers/canon_s80.c
@@ -0,0 +1,54 @@
+// license:GPL2+
+// copyright-holders:FelipeSanches
+/*
+ * canon_s80.c
+ *
+ * CANON S-80 electronic typewriter
+ *
+ * skeleton driver by:
+ * Felipe Correa da Silva Sanches <juca@members.fsf.org>
+ *
+ * known issues:
+ * - memory-map is uncertain
+ * - maincpu clock is guessed
+ * - still need to hookup the Hitachi HD44780 LCD Controller
+ * - still lacks description of the keyboard inputs
+ * - as well as a "paper" device to plot the output of the dot matrix print head
+ */
+
+#include "emu.h"
+#include "cpu/m6800/m6800.h"
+//#include "video/hd44780.h"
+
+class canons80_state : public driver_device
+{
+public:
+ canons80_state(const machine_config &mconfig, device_type type, const char *tag)
+ : driver_device(mconfig, type, tag)
+ { }
+
+ DECLARE_DRIVER_INIT(canons80);
+};
+
+
+static ADDRESS_MAP_START(canons80_map, AS_PROGRAM, 8, canons80_state )
+ AM_RANGE(0x0000, 0x7fff) AM_RAM
+ AM_RANGE(0x8000, 0xffff) AM_ROM
+ADDRESS_MAP_END
+
+static MACHINE_CONFIG_START( canons80, canons80_state )
+ /* basic machine hardware */
+ MCFG_CPU_ADD("maincpu", HD6301, 5000000) /* hd63a01xop 5 MHz guessed: TODO: check on PCB */
+ MCFG_CPU_PROGRAM_MAP(canons80_map)
+MACHINE_CONFIG_END
+
+DRIVER_INIT_MEMBER(canons80_state, canons80)
+{}
+
+ROM_START( canons80 )
+ ROM_REGION( 0x10000, "maincpu", 0 ) /* 6800 code */
+ ROM_LOAD( "canon_8735kx_nh4-0029_064.ic6", 0x8000, 0x8000, CRC(b6cd2ff7) SHA1(e47a136300c826e480fac1be7fc090523078a2a6) )
+ROM_END
+
+/* YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY FULLNAME FLAGS */
+COMP( 1988, canons80, 0, 0, canons80, 0, canons80_state, canons80, "Canon", "Canon S-80 electronic typewriter", MACHINE_NOT_WORKING | MACHINE_NO_SOUND)