From 461da9b647e1406455f2c7dc90b264e0ab4052d9 Mon Sep 17 00:00:00 2001 From: Nigel Barnes Date: Mon, 18 Jul 2016 19:29:51 +0100 Subject: [PATCH] New WORKING clones added ------------------------ LTM Portable (B+) [Nigel Barnes] LTM Portable (Master) [Nigel Barnes] --- src/mame/drivers/bbc.cpp | 40 ++++++++++++++++++++++++++++++++++++++++ src/mame/includes/bbc.h | 2 ++ src/mame/machine/bbc.cpp | 21 ++++++++++++++++++++- src/mame/mame.lst | 2 ++ 4 files changed, 64 insertions(+), 1 deletion(-) diff --git a/src/mame/drivers/bbc.cpp b/src/mame/drivers/bbc.cpp index 54a2ba59777..056eb7c53da 100644 --- a/src/mame/drivers/bbc.cpp +++ b/src/mame/drivers/bbc.cpp @@ -752,6 +752,19 @@ static INPUT_PORTS_START(bbcm) PORT_INCLUDE(bbc_joy) INPUT_PORTS_END +static INPUT_PORTS_START(ltmpbp) + PORT_INCLUDE(bbc_keyboard) + PORT_INCLUDE(bbc_dipswitch) + PORT_INCLUDE(bbcbp_links) + PORT_INCLUDE(bbc_joy) +INPUT_PORTS_END + +static INPUT_PORTS_START(ltmpm) + PORT_INCLUDE(bbc_keyboard) + PORT_INCLUDE(bbc_keypad) + PORT_INCLUDE(bbc_joy) +INPUT_PORTS_END + INTERRUPT_GEN_MEMBER(bbc_state::bbcb_vsync) { @@ -1498,6 +1511,26 @@ static MACHINE_CONFIG_DERIVED(pro128s, bbcmc) MACHINE_CONFIG_END +/*************************************************************************** + + LTM Portables + +****************************************************************************/ + +/* Both LTM machines used a 9" Hantarex MT3000 green monitor */ + +static MACHINE_CONFIG_DERIVED(ltmpbp, bbcbp) + /* basic machine hardware */ + MCFG_MACHINE_RESET_OVERRIDE(bbc_state, ltmpbp) +MACHINE_CONFIG_END + + +static MACHINE_CONFIG_DERIVED(ltmpm, bbcm) + /* basic machine hardware */ + MCFG_MACHINE_RESET_OVERRIDE(bbc_state, ltmpm) +MACHINE_CONFIG_END + + /* the BBC came with 4 rom sockets on the motherboard as shown in the model A driver */ /* you could get a number of rom upgrade boards that took this up to 16 roms as in the */ /* model B driver */ @@ -2157,6 +2190,11 @@ ROM_START(pro128s) // ROM_LOAD("mos510o.epr", 0x00, 0x80, CRC(d8458039) SHA1(72c056d493e74ceca41f48936012b012b496a226)) ROM_END + +#define rom_ltmpbp rom_bbcbp +#define rom_ltmpm rom_bbcm + + /* YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS */ COMP ( 1981, bbcb, 0, bbca, bbcb, bbcb, bbc_state, bbc, "Acorn", "BBC Micro Model B w/8271 FDC", MACHINE_IMPERFECT_GRAPHICS) COMP ( 1981, bbca, bbcb, 0, bbca, bbca, bbc_state, bbc, "Acorn", "BBC Micro Model A", MACHINE_IMPERFECT_GRAPHICS) @@ -2171,6 +2209,7 @@ COMP ( 1985, bbcbp128, bbcbp, 0, bbcbp128, bbcbp, bbc_state, bbc, " COMP ( 1985, abc110, bbcbp, 0, abc110, abc, bbc_state, bbc, "Acorn", "ABC 110", MACHINE_NOT_WORKING) COMP ( 1985, acw443, bbcbp, 0, acw443, abc, bbc_state, bbc, "Acorn", "ABC 210/Cambridge Workstation", MACHINE_NOT_WORKING) COMP ( 1985, abc310, bbcbp, 0, abc310, abc, bbc_state, bbc, "Acorn", "ABC 310", MACHINE_NOT_WORKING) +COMP ( 1985, ltmpbp, bbcbp, 0, ltmpbp, ltmpbp, bbc_state, bbc, "Lawrie T&M Ltd.", "LTM Portable (B+)", MACHINE_IMPERFECT_GRAPHICS) COMP ( 1985, reutapm, bbcbp, 0, reutapm, bbcb, bbc_state, bbc, "Acorn", "Reuters APM", MACHINE_NO_SOUND_HW | MACHINE_NOT_WORKING) COMP ( 1986, bbcm, 0, bbcb, bbcm, bbcm, bbc_state, bbc, "Acorn", "BBC Master 128", MACHINE_IMPERFECT_GRAPHICS) COMP ( 1986, bbcmt, bbcm, 0, bbcmt, bbcm, bbc_state, bbc, "Acorn", "BBC Master Turbo", MACHINE_NOT_WORKING) @@ -2178,6 +2217,7 @@ COMP ( 1986, bbcmaiv, bbcm, 0, bbcmaiv, bbcm, bbc_state, bbc, " COMP ( 1986, bbcmet, bbcm, 0, bbcmet, bbcm, bbc_state, bbc, "Acorn", "BBC Master ET", MACHINE_IMPERFECT_GRAPHICS) COMP ( 1986, bbcm512, bbcm, 0, bbcm512, bbcm, bbc_state, bbc, "Acorn", "BBC Master 512", MACHINE_NOT_WORKING) COMP ( 1986, bbcmarm, bbcm, 0, bbcmarm, bbcm, bbc_state, bbc, "Acorn", "ARM Evaluation System", MACHINE_NOT_WORKING) +COMP ( 1986, ltmpm, bbcm, 0, ltmpm, ltmpm, bbc_state, bbc, "Lawrie T&M Ltd.", "LTM Portable (Master)", MACHINE_IMPERFECT_GRAPHICS) COMP ( 1986, bbcmc, 0, bbcm, bbcmc, bbcm, bbc_state, bbc, "Acorn", "BBC Master Compact", MACHINE_IMPERFECT_GRAPHICS) COMP ( 1986, bbcmc_ar, bbcmc, 0, bbcmc, bbcm, bbc_state, bbc, "Acorn", "BBC Master Compact (Arabic)", MACHINE_IMPERFECT_GRAPHICS) COMP ( 1987, pro128s, bbcmc, 0, pro128s, bbcm, bbc_state, bbc, "Olivetti", "Prodest PC 128S", MACHINE_IMPERFECT_GRAPHICS) diff --git a/src/mame/includes/bbc.h b/src/mame/includes/bbc.h index 3d50f7c344e..e8c11b2c3ef 100644 --- a/src/mame/includes/bbc.h +++ b/src/mame/includes/bbc.h @@ -155,6 +155,8 @@ public: DECLARE_MACHINE_RESET(bbcm); DECLARE_MACHINE_START(bbcmc); DECLARE_MACHINE_RESET(bbcmc); + DECLARE_MACHINE_RESET(ltmpbp); + DECLARE_MACHINE_RESET(ltmpm); DECLARE_PALETTE_INIT(bbc); INTERRUPT_GEN_MEMBER(bbcb_vsync); diff --git a/src/mame/machine/bbc.cpp b/src/mame/machine/bbc.cpp index b0b35eec0ab..114a546eb95 100644 --- a/src/mame/machine/bbc.cpp +++ b/src/mame/machine/bbc.cpp @@ -1793,7 +1793,7 @@ MACHINE_RESET_MEMBER(bbc_state, torch) { MACHINE_RESET_CALL_MEMBER(bbcb); - m_monitortype = 0; + m_monitortype = monitor_type_t::COLOUR; m_Speech = 1; m_SWRAMtype = 0; } @@ -1870,3 +1870,22 @@ MACHINE_RESET_MEMBER(bbc_state, bbcmc) { MACHINE_RESET_CALL_MEMBER(bbcm); } + + +MACHINE_RESET_MEMBER(bbc_state, ltmpbp) +{ + MACHINE_RESET_CALL_MEMBER(bbcbp); + + m_monitortype = monitor_type_t::GREEN; + m_Speech = 1; + m_SWRAMtype = 0; +} + +MACHINE_RESET_MEMBER(bbc_state, ltmpm) +{ + MACHINE_RESET_CALL_MEMBER(bbcm); + + m_monitortype = monitor_type_t::GREEN; + m_Speech = 0; + m_SWRAMtype = 0; +} diff --git a/src/mame/mame.lst b/src/mame/mame.lst index ec2fc50cbeb..f07e96286be 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -2550,6 +2550,8 @@ bbcmc // 1986 BBC Master Compact bbcmc_ar // 1986 BBC Master Compact (Arabic) bbcmet // 1986 BBC Master ET bbcmt // 1986 BBC Master Turbo +ltmpbp // 1985 LTM Portable (B+) +ltmpm // 1986 LTM Portable (Master) pro128s // 1987 Olivetti Prodest PC 128S reutapm // 1985 Reuters APM Board torchf // 1982 Torch CF240