summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author AJR <ajrhacker@users.noreply.github.com>2018-11-22 12:00:34 -0500
committer AJR <ajrhacker@users.noreply.github.com>2018-11-22 12:01:30 -0500
commitc60cee60563fb661f598f50c2c450b194ade9aa3 (patch)
tree8a494d712cfd94ca494ddc5eb137329fedf3688d
parent95702795e9247d1efc47d0302d1dccb3bb013db4 (diff)
New machines marked as NOT_WORKING
---------------------------------- TS-1 (v2.13.0) [Bitsavers, bhilpert]
-rw-r--r--src/mame/drivers/falcots.cpp44
-rw-r--r--src/mame/mame.lst1
2 files changed, 40 insertions, 5 deletions
diff --git a/src/mame/drivers/falcots.cpp b/src/mame/drivers/falcots.cpp
index 36abff69e2d..50271b33efb 100644
--- a/src/mame/drivers/falcots.cpp
+++ b/src/mame/drivers/falcots.cpp
@@ -28,6 +28,7 @@ public:
{
}
+ void ts1(machine_config &config);
void ts2624(machine_config &config);
protected:
@@ -45,9 +46,10 @@ private:
void mem_map(address_map &map);
void io_map(address_map &map);
+ void ts1_io_map(address_map &map);
required_device<z80_device> m_maincpu;
- optional_device<mc6845_device> m_crtc;
+ required_device<mc6845_device> m_crtc;
required_shared_ptr<u8> m_vram;
required_region_ptr<u8> m_chargen;
required_ioport_array<12> m_keys;
@@ -100,6 +102,15 @@ void falcots_state::mem_map(address_map &map)
map(0xc000, 0xffff).ram().share("vram"); // 8x AM9016EPC (4116)
}
+void falcots_state::ts1_io_map(address_map &map)
+{
+ map.global_mask(0xff);
+ map(0xe1, 0xe1).w(FUNC(falcots_state::key_scan_w));
+ map(0xe8, 0xe8).r(FUNC(falcots_state::key_status_r));
+ map(0xf0, 0xf0).w(m_crtc, FUNC(mc6845_device::address_w));
+ map(0xf1, 0xf1).w(m_crtc, FUNC(mc6845_device::register_w));
+}
+
void falcots_state::io_map(address_map &map)
{
map.global_mask(0xff);
@@ -215,8 +226,8 @@ static INPUT_PORTS_START(ts2624)
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_CHAR(UCHAR_MAMEKEY(0_PAD)) PORT_CODE(KEYCODE_0_PAD)
PORT_START("KEYA")
- PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("\xe2\x86\x90 Prev Page") PORT_CHAR(UCHAR_MAMEKEY(LEFT))
- PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("\xe2\x86\x91 Scroll Up") PORT_CHAR(UCHAR_MAMEKEY(UP))
+ PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("\xe2\x86\x90 Prev Page") PORT_CHAR(UCHAR_MAMEKEY(LEFT)) PORT_CODE(KEYCODE_LEFT)
+ PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("\xe2\x86\x91 Scroll Up") PORT_CHAR(UCHAR_MAMEKEY(UP)) PORT_CODE(KEYCODE_UP)
PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("Keypad 8 \xe2\x86\x91 (Brite)") PORT_CHAR(UCHAR_MAMEKEY(8_PAD)) PORT_CODE(KEYCODE_8_PAD)
PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("Keypad 5 Home") PORT_CHAR(UCHAR_MAMEKEY(5_PAD)) PORT_CODE(KEYCODE_5_PAD)
PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("Keypad 2 \xe2\x86\x93 (Dim)") PORT_CHAR(UCHAR_MAMEKEY(2_PAD)) PORT_CODE(KEYCODE_2_PAD)
@@ -225,8 +236,8 @@ static INPUT_PORTS_START(ts2624)
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_CHAR(UCHAR_MAMEKEY(DEL_PAD)) PORT_CODE(KEYCODE_DEL_PAD)
PORT_START("KEYB")
- PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("\xe2\x86\x93 Scroll Down") PORT_CHAR(UCHAR_MAMEKEY(DOWN))
- PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("\xe2\x86\x92 Next Page") PORT_CHAR(UCHAR_MAMEKEY(RIGHT))
+ PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("\xe2\x86\x93 Scroll Down") PORT_CHAR(UCHAR_MAMEKEY(DOWN)) PORT_CODE(KEYCODE_DOWN)
+ PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("\xe2\x86\x92 Next Page") PORT_CHAR(UCHAR_MAMEKEY(RIGHT)) PORT_CODE(KEYCODE_RIGHT)
PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_CHAR(UCHAR_MAMEKEY(MINUS_PAD)) PORT_CODE(KEYCODE_MINUS_PAD)
PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_CHAR(UCHAR_MAMEKEY(9_PAD)) PORT_CODE(KEYCODE_9_PAD)
PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("Keypad 6 \xe2\x86\x92") PORT_CHAR(UCHAR_MAMEKEY(6_PAD)) PORT_CODE(KEYCODE_6_PAD)
@@ -274,6 +285,28 @@ void falcots_state::ts2624(machine_config &config)
m_crtc->set_update_row_callback(FUNC(falcots_state::update_row), this);
}
+void falcots_state::ts1(machine_config &config)
+{
+ ts2624(config);
+
+ m_maincpu->set_addrmap(AS_IO, &falcots_state::ts1_io_map);
+
+ m_crtc->set_clock(15'206'400 / 8);
+ m_crtc->set_char_width(8);
+
+ screen_device &screen(*subdevice<screen_device>("screen"));
+ screen.set_raw(15'206'400, 792, 0, 640, 320, 0, 300);
+}
+
+ROM_START(ts1)
+ ROM_REGION(0x8000, "maincpu", ROMREGION_ERASEFF)
+ ROM_LOAD("v2_13_x.d9", 0x0000, 0x1000, CRC(420e1ecd) SHA1(748e3733858ba813b9d72dfe018ba4f918d8c0db)) // Chip Type: 2732
+ ROM_LOAD("v2_13_0.d10", 0x1000, 0x1000, CRC(228e7321) SHA1(43e0d04c58ee7c71f5603222bf0aaaf7979d67a3)) // Chip Type: 2732
+
+ ROM_REGION(0x2000, "chargen", ROMREGION_ERASEFF)
+ ROM_LOAD("crom003.f4", 0x0000, 0x0800, CRC(557c8e0b) SHA1(b028f526bd92f957ee6242a7e0e6e0f16b0880a8)) // Chip Type: EA8316E517
+ROM_END
+
ROM_START(ts2624)
ROM_REGION(0x8000, "maincpu", 0)
ROM_LOAD("1.bin", 0x0000, 0x2000, CRC(14fb80aa) SHA1(93bf0d39f3e4bf092b6cd850f95ee6cbd322ad13))
@@ -290,4 +323,5 @@ ROM_START(ts2624)
ROM_LOAD("prom.12f", 0x20, 0x20, NO_DUMP) // 74S288 or equivalent
ROM_END
+COMP(1980, ts1, 0, 0, ts1, ts2624, falcots_state, empty_init, "Falco Data Products", "TS-1 (v2.13.0)", MACHINE_IS_SKELETON)
COMP(1982, ts2624, 0, 0, ts2624, ts2624, falcots_state, empty_init, "Falco Data Products", "TS-2624", MACHINE_IS_SKELETON)
diff --git a/src/mame/mame.lst b/src/mame/mame.lst
index 2e3c49a1efc..2ae9ec8bb88 100644
--- a/src/mame/mame.lst
+++ b/src/mame/mame.lst
@@ -12677,6 +12677,7 @@ falco5220e // 1987
falco5220s // 1989
@source:falcots.cpp
+ts1 // 1980
ts2624 // 1982
@source:famibox.cpp