summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Dirk Best <mail@dirk-best.de>2020-09-07 09:37:23 +0200
committer Dirk Best <mail@dirk-best.de>2020-09-07 09:37:53 +0200
commitbb65a67489dd7794007132a5d509427af8c2a89d (patch)
tree4a890e9c3eff1066993c5911c5e9bfa96a18f692
parentfe2149e8c2461054d94937ca3ff00d68c484f4c9 (diff)
New machines marked as NOT_WORKING
---------------------------------- Informer 207/100 [Bitsavers]
-rw-r--r--scripts/target/mame/mess.lua1
-rw-r--r--src/emu/xtal.cpp1
-rw-r--r--src/mame/drivers/informer_207_100.cpp190
-rw-r--r--src/mame/mame.lst3
-rw-r--r--src/mame/mess.flt1
5 files changed, 196 insertions, 0 deletions
diff --git a/scripts/target/mame/mess.lua b/scripts/target/mame/mess.lua
index a462b5ea6f9..d5a30b83edd 100644
--- a/scripts/target/mame/mess.lua
+++ b/scripts/target/mame/mess.lua
@@ -2601,6 +2601,7 @@ files {
createMESSProjects(_target, _subtarget, "informer")
files {
+ MAME_DIR .. "src/mame/drivers/informer_207_100.cpp",
MAME_DIR .. "src/mame/drivers/informer_207_376.cpp",
MAME_DIR .. "src/mame/machine/informer_207_376_kbd.cpp",
MAME_DIR .. "src/mame/machine/informer_207_376_kbd.h",
diff --git a/src/emu/xtal.cpp b/src/emu/xtal.cpp
index cb67952852d..5b8b763ab2f 100644
--- a/src/emu/xtal.cpp
+++ b/src/emu/xtal.cpp
@@ -289,6 +289,7 @@ const double XTAL::known_xtals[] = {
19'602'000, /* 19.602_MHz_XTAL Ampex 210+ 80-column display clock */
19'660'800, /* 19.6608_MHz_XTAL Euro League (bootleg), labeled as "UKI 19.6608 20PF" */
19'661'400, /* 19.6614_MHz_XTAL Wyse WY-30 */
+ 19'718'400, /* 19.7184_MHz_XTAL Informer 207/100 */
19'923'000, /* 19.923_MHz_XTAL Cinematronics vectors */
19'968'000, /* 19.968_MHz_XTAL Used mostly by some Taito games */
20'000'000, /* 20_MHz_XTAL - */
diff --git a/src/mame/drivers/informer_207_100.cpp b/src/mame/drivers/informer_207_100.cpp
new file mode 100644
index 00000000000..00bdf4d1b0d
--- /dev/null
+++ b/src/mame/drivers/informer_207_100.cpp
@@ -0,0 +1,190 @@
+// license: BSD-3-Clause
+// copyright-holders: Dirk Best
+/***************************************************************************
+
+ Informer 207/100
+
+ VT-100 compatible terminal
+
+ Hardware:
+ - HD68B09EP
+ - 3x HM6116LP-4 (+ 3 empty sockets), 2x TC5517BPL-20
+ - R6545-1AP CRTC
+ - MC2681P DUART
+ - MC68B50P ACIA
+ - M58321 RTC
+ - 19.7184 MHz XTAL, 3.6864 MHz XTAL
+
+ TODO:
+ - Redump ROM 207_100_2.bin
+
+***************************************************************************/
+
+#include "emu.h"
+#include "cpu/m6809/m6809.h"
+#include "machine/6850acia.h"
+#include "machine/mc68681.h"
+#include "machine/msm58321.h"
+#include "video/mc6845.h"
+#include "emupal.h"
+#include "screen.h"
+
+
+//**************************************************************************
+// TYPE DEFINITIONS
+//**************************************************************************
+
+class informer_207_100_state : public driver_device
+{
+public:
+ informer_207_100_state(const machine_config &mconfig, device_type type, const char *tag) :
+ driver_device(mconfig, type, tag),
+ m_maincpu(*this, "maincpu"),
+ m_crtc(*this, "crtc"),
+ m_screen(*this, "screen"),
+ m_palette(*this, "palette"),
+ m_duart(*this, "duart"),
+ m_acia(*this, "acia"),
+ m_rtc(*this, "rtc"),
+ m_ram(*this, "ram"),
+ m_chargen(*this, "chargen")
+ { }
+
+ void informer_207_100(machine_config &config);
+
+protected:
+ void machine_start() override;
+ void machine_reset() override;
+
+private:
+ required_device<cpu_device> m_maincpu;
+ required_device<r6545_1_device> m_crtc;
+ required_device<screen_device> m_screen;
+ required_device<palette_device> m_palette;
+ required_device<scn2681_device> m_duart;
+ required_device<acia6850_device> m_acia;
+ required_device<msm58321_device> m_rtc;
+ required_shared_ptr<uint8_t> m_ram;
+ required_region_ptr<uint8_t> m_chargen;
+
+ void mem_map(address_map &map);
+
+ MC6845_UPDATE_ROW(crtc_update_row);
+};
+
+
+//**************************************************************************
+// ADDRESS MAPS
+//**************************************************************************
+
+void informer_207_100_state::mem_map(address_map &map)
+{
+ map(0x0000, 0x27ff).ram().share("ram");
+ map(0xc000, 0xffff).rom().region("maincpu", 0);
+}
+
+
+//**************************************************************************
+// INPUT PORT DEFINITIONS
+//**************************************************************************
+
+static INPUT_PORTS_START( informer_207_100 )
+INPUT_PORTS_END
+
+
+//**************************************************************************
+// VIDEO EMULATION
+//**************************************************************************
+
+MC6845_UPDATE_ROW( informer_207_100_state::crtc_update_row )
+{
+}
+
+static const gfx_layout char_layout =
+{
+ 8,12,
+ RGN_FRAC(1,1),
+ 1,
+ { 0 },
+ { 0, 1, 2, 3, 4, 5, 6, 7 },
+ { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8, 8*8, 9*8, 10*8, 11*8 },
+ 8*16
+};
+
+static GFXDECODE_START(chars)
+ GFXDECODE_ENTRY("chargen", 0, char_layout, 0, 1)
+GFXDECODE_END
+
+
+//**************************************************************************
+// MACHINE EMULATION
+//**************************************************************************
+
+void informer_207_100_state::machine_start()
+{
+}
+
+void informer_207_100_state::machine_reset()
+{
+}
+
+
+//**************************************************************************
+// MACHINE DEFINTIONS
+//**************************************************************************
+
+void informer_207_100_state::informer_207_100(machine_config &config)
+{
+ MC6809(config, m_maincpu, 19.7184_MHz_XTAL / 4); // unknown clock divisor
+ m_maincpu->set_addrmap(AS_PROGRAM, &informer_207_100_state::mem_map);
+
+ ACIA6850(config, m_acia, 0); // unknown clock
+
+ SCN2681(config, m_duart, 0); // unknown clock
+
+ MSM58321(config, m_rtc, 32.768_kHz_XTAL);
+
+ // video
+ SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
+ m_screen->set_color(rgb_t::green());
+ m_screen->set_size(640, 480);
+ m_screen->set_visarea_full();
+ m_screen->set_refresh_hz(60);
+// m_screen->set_raw(19.7184_MHz_XTAL, 0, 0, 0, 0, 0, 0);
+ m_screen->set_screen_update("crtc", FUNC(mc6845_device::screen_update));
+
+ PALETTE(config, m_palette, palette_device::MONOCHROME);
+
+ GFXDECODE(config, "gfxdecode", m_palette, chars);
+
+ R6545_1(config, m_crtc, 19.7184_MHz_XTAL / 8); // unknown clock divisor
+ m_crtc->set_screen("screen");
+ m_crtc->set_show_border_area(false);
+ m_crtc->set_char_width(8);
+ m_crtc->set_update_row_callback(FUNC(informer_207_100_state::crtc_update_row));
+}
+
+
+//**************************************************************************
+// ROM DEFINITIONS
+//**************************************************************************
+
+ROM_START( in207100 )
+ ROM_REGION(0x4000, "maincpu", 0)
+ // 79505-001 V2.00 <unreadable>
+ ROM_LOAD("79505-001.bin", 0x0000, 0x2000, CRC(272ebfac) SHA1(b6b9dc523028ace9e5a210e908de2260f36dde4a))
+ // <Label lost>
+ ROM_LOAD("207_100_2.bin", 0x2000, 0x2000, BAD_DUMP CRC(848d1b45) SHA1(77dd68951ac85e5dc51b51db002d90863b0fce43))
+
+ ROM_REGION(0x1000, "chargen", 0)
+ // 79496 REV 1.01 12-29-83
+ ROM_LOAD("79496.bin", 0x0000, 0x1000, CRC(930AC23A) SHA1(74e6bf81b60e3504cb2b9f14a33e7c3e367dc825))
+ROM_END
+
+
+//**************************************************************************
+// SYSTEM DRIVERS
+//**************************************************************************
+
+// YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS
+COMP( 1983, in207100, 0, 0, informer_207_100, informer_207_100, informer_207_100_state, empty_init, "Informer", "Informer 207/100", MACHINE_IS_SKELETON | MACHINE_SUPPORTS_SAVE )
diff --git a/src/mame/mame.lst b/src/mame/mame.lst
index 9b39bd6d483..d3c00805996 100644
--- a/src/mame/mame.lst
+++ b/src/mame/mame.lst
@@ -16709,6 +16709,9 @@ indy_4613 // IP22: Indy, R4600, 133MHz
indy_5015 // IP22: Indy, R5000, 150MHz
indigo2_4415 // IP24: Indigo 2, R4400, 150MHz
+@source:informer_207_100.cpp
+in207100 // Informer 207/100
+
@source:informer_207_376.cpp
in207376 // Informer 207/376
diff --git a/src/mame/mess.flt b/src/mame/mess.flt
index 49207d932a7..e83beff9cb1 100644
--- a/src/mame/mess.flt
+++ b/src/mame/mess.flt
@@ -420,6 +420,7 @@ imsai.cpp
indiana.cpp
indigo.cpp
indy_indigo2.cpp
+informer_207_100.cpp
informer_207_376.cpp
instruct.cpp
inteladv.cpp