diff options
author | 2020-09-07 09:37:23 +0200 | |
---|---|---|
committer | 2020-09-07 09:37:53 +0200 | |
commit | bb65a67489dd7794007132a5d509427af8c2a89d (patch) | |
tree | 4a890e9c3eff1066993c5911c5e9bfa96a18f692 | |
parent | fe2149e8c2461054d94937ca3ff00d68c484f4c9 (diff) |
New machines marked as NOT_WORKING
----------------------------------
Informer 207/100 [Bitsavers]
-rw-r--r-- | scripts/target/mame/mess.lua | 1 | ||||
-rw-r--r-- | src/emu/xtal.cpp | 1 | ||||
-rw-r--r-- | src/mame/drivers/informer_207_100.cpp | 190 | ||||
-rw-r--r-- | src/mame/mame.lst | 3 | ||||
-rw-r--r-- | src/mame/mess.flt | 1 |
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 |