summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author hap <happppp@users.noreply.github.com>2021-03-11 22:06:41 +0100
committer hap <happppp@users.noreply.github.com>2021-03-11 22:07:58 +0100
commit269e145561bca6812c59ba12b270be341ef5501e (patch)
tree3d8792c948e41cf45803413774c7ee01520b6b0d
parent86ef78c9dab63516836fe44d1607601aa51c997f (diff)
Machines promoted to working
---------------------------- Tri-1 (Fonas) [hap, Sean Riddle]
-rw-r--r--src/mame/drivers/hh_pic16.cpp2
-rw-r--r--src/mame/drivers/hh_pps41.cpp56
-rw-r--r--src/mame/drivers/hh_tms1k.cpp2
-rw-r--r--src/mame/layout/f2pbball.lay2
-rw-r--r--src/mame/layout/ftri1.lay243
-rw-r--r--src/mame/layout/hh_amis2k_test.lay5
-rw-r--r--src/mame/layout/hh_cop400_test.lay5
-rw-r--r--src/mame/layout/hh_cops1_test.lay5
-rw-r--r--src/mame/layout/hh_hmcs40_test.lay5
-rw-r--r--src/mame/layout/hh_melps4_test.lay5
-rw-r--r--src/mame/layout/hh_pic16_test.lay5
-rw-r--r--src/mame/layout/hh_pps41_test.lay5
-rw-r--r--src/mame/layout/hh_sm500_test.lay5
-rw-r--r--src/mame/layout/hh_sm510_test.lay5
-rw-r--r--src/mame/layout/hh_tms1k_test.lay5
-rw-r--r--src/mame/layout/hh_ucom4_test.lay5
16 files changed, 306 insertions, 54 deletions
diff --git a/src/mame/drivers/hh_pic16.cpp b/src/mame/drivers/hh_pic16.cpp
index c945fc00428..c5ee7247cf9 100644
--- a/src/mame/drivers/hh_pic16.cpp
+++ b/src/mame/drivers/hh_pic16.cpp
@@ -383,7 +383,7 @@ static INPUT_PORTS_START( pabball )
PORT_CONFSETTING( 0x20, "2" )
PORT_START("RESET")
- PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_NAME("P1 Reset") PORT_CHANGED_MEMBER(DEVICE_SELF, hh_pic16_state, reset_button, 0)
+ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_pic16_state, reset_button, 0) PORT_NAME("P1 Reset")
INPUT_PORTS_END
void pabball_state::pabball(machine_config &config)
diff --git a/src/mame/drivers/hh_pps41.cpp b/src/mame/drivers/hh_pps41.cpp
index d24be147b12..606fe4f83d4 100644
--- a/src/mame/drivers/hh_pps41.cpp
+++ b/src/mame/drivers/hh_pps41.cpp
@@ -17,11 +17,12 @@
#include "speaker.h"
// internal artwork
+#include "ftri1.lh"
#include "mastmind.lh"
#include "memoquiz.lh"
#include "scrabsen.lh"
-#include "hh_pps41_test.lh" // common test-layout - use external artwork
+//#include "hh_pps41_test.lh" // common test-layout - use external artwork
class hh_pps41_state : public driver_device
@@ -48,6 +49,7 @@ public:
u8 m_r = ~0;
u8 read_inputs(int columns);
+ virtual DECLARE_INPUT_CHANGED_MEMBER(reset_button);
protected:
virtual void update_int() { ; }
@@ -91,6 +93,12 @@ u8 hh_pps41_state::read_inputs(int columns)
return ~ret;
}
+INPUT_CHANGED_MEMBER(hh_pps41_state::reset_button)
+{
+ // when an input is directly wired to MCU PO pin
+ m_maincpu->set_input_line(INPUT_LINE_RESET, newval ? ASSERT_LINE : CLEAR_LINE);
+}
+
/***************************************************************************
@@ -104,9 +112,17 @@ namespace {
/***************************************************************************
Fonas Tri-1
- * MM78 MCU variant with 40 pins (label ?, die label A7859)
+ * PCB label: CASSIA CA010-F
+ * MM78 MCU variant with 40 pins (no label, die label A7859)
* 4 7seg leds, 41 other leds, 1-bit sound
+ The game only uses 1.5KB ROM and seems it doesn't use all the RAM either,
+ as if it was programmed for MM77L.
+
+ Hold all 4 buttons at boot (not counting RESET) for a led test.
+ Cassia was Eric White/Ken Cohen's company, later named CXG, known for
+ their chess computers.
+
***************************************************************************/
class ftri1_state : public hh_pps41_state
@@ -126,13 +142,12 @@ public:
void ftri1_state::update_display()
{
- m_display->matrix((m_d << 4 & 0x100) | (~m_r & 0xff), bitswap<8>(m_d, 2,5,8,0,1,3,7,6));
+ m_display->matrix(m_d, bitswap<8>(~m_r, 0,7,6,5,4,3,2,1));
}
void ftri1_state::write_d(u16 data)
{
- // DIO0-DIO3, DIO5-DIO8: digit/led data
- // DIO4: another led select
+ // DIO0-DIO8: digit/led select
m_d = data;
update_display();
@@ -142,7 +157,7 @@ void ftri1_state::write_d(u16 data)
void ftri1_state::write_r(u8 data)
{
- // RIO1-RIO8: digit/led select
+ // RIO1-RIO8: digit/led data
m_r = data;
update_display();
}
@@ -151,14 +166,19 @@ void ftri1_state::write_r(u8 data)
static INPUT_PORTS_START( ftri1 )
PORT_START("IN.0")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_KEYPAD ) PORT_CODE(KEYCODE_1)
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_KEYPAD ) PORT_CODE(KEYCODE_2)
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_KEYPAD ) PORT_CODE(KEYCODE_3)
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_KEYPAD ) PORT_CODE(KEYCODE_4)
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_KEYPAD ) PORT_CODE(KEYCODE_5)
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_KEYPAD ) PORT_CODE(KEYCODE_6)
- PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_KEYPAD ) PORT_CODE(KEYCODE_7)
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_KEYPAD ) PORT_CODE(KEYCODE_8)
+ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED )
+ PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED )
+ PORT_CONFNAME( 0x0c, 0x04, "Game" )
+ PORT_CONFSETTING( 0x08, "Star Chase" )
+ PORT_CONFSETTING( 0x04, "All Star Baseball" )
+ PORT_CONFSETTING( 0x00, "Batting Champs" )
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Score / S1 H")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Steal / S1 V")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Pitch / S2 H")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Swing / S2 V")
+
+ PORT_START("RESET")
+ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYPAD ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_pps41_state, reset_button, 0) PORT_CODE(KEYCODE_F1) PORT_NAME("Game Reset")
INPUT_PORTS_END
void ftri1_state::ftri1(machine_config &config)
@@ -171,8 +191,8 @@ void ftri1_state::ftri1(machine_config &config)
/* video hardware */
PWM_DISPLAY(config, m_display).set_size(9, 8);
- m_display->set_segmask(0xff, 0x7f);
- config.set_default_layout(layout_hh_pps41_test);
+ m_display->set_segmask(0x1e0, 0x7f);
+ config.set_default_layout(layout_ftri1);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -184,7 +204,7 @@ void ftri1_state::ftri1(machine_config &config)
ROM_START( ftri1 )
ROM_REGION( 0x0800, "maincpu", 0 )
- ROM_LOAD( "ftri1.bin", 0x0000, 0x0800, CRC(3c957f1d) SHA1(42db81a78bbef971a84e61a26d91f7411980d79c) )
+ ROM_LOAD( "a7859", 0x0000, 0x0800, CRC(3c957f1d) SHA1(42db81a78bbef971a84e61a26d91f7411980d79c) )
ROM_END
@@ -605,7 +625,7 @@ ROM_END
***************************************************************************/
// YEAR NAME PARENT CMP MACHINE INPUT CLASS INIT COMPANY, FULLNAME, FLAGS
-CONS( 1979, ftri1, 0, 0, ftri1, ftri1, ftri1_state, empty_init, "Fonas", "Tri-1 (Fonas)", MACHINE_SUPPORTS_SAVE | MACHINE_NOT_WORKING )
+CONS( 1979, ftri1, 0, 0, ftri1, ftri1, ftri1_state, empty_init, "Fonas", "Tri-1 (Fonas)", MACHINE_SUPPORTS_SAVE )
CONS( 1979, mastmind, 0, 0, mastmind, mastmind, mastmind_state, empty_init, "Invicta Plastics", "Electronic Master Mind (Invicta)", MACHINE_SUPPORTS_SAVE | MACHINE_NO_SOUND_HW )
diff --git a/src/mame/drivers/hh_tms1k.cpp b/src/mame/drivers/hh_tms1k.cpp
index af8182cdce3..34fb6220aae 100644
--- a/src/mame/drivers/hh_tms1k.cpp
+++ b/src/mame/drivers/hh_tms1k.cpp
@@ -73,7 +73,7 @@
@MP3201 TMS1000 1977, Milton Bradley Electronic Battleship (1977, model 4750A)
@MP3208 TMS1000 1977, Milton Bradley Electronic Battleship (1977, model 4750B)
@MP3226 TMS1000 1978, Milton Bradley Simon (Rev A)
- *MP3232 TMS1000 1979, Fonas 2-Player Baseball (no "MP" on chip label)
+ *MP3232 TMS1000 1979, Fonas 2 Player Baseball (no "MP" on chip label)
@MP3260 TMS1000 1979, Electroplay Quickfire
@MP3300 TMS1000 1979, Milton Bradley Simon (Rev F)
@MP3301A TMS1000 1979, Milton Bradley Big Trak
diff --git a/src/mame/layout/f2pbball.lay b/src/mame/layout/f2pbball.lay
index a75f71ee5e9..0031a23d18c 100644
--- a/src/mame/layout/f2pbball.lay
+++ b/src/mame/layout/f2pbball.lay
@@ -113,7 +113,7 @@ license:CC0
<element name="text_hometeam"><text string="HOME TEAM"><color red="0.8" green="0.8" blue="0.8" /></text></element>
<element name="text_balls"><text string="BALLS"><color red="0.8" green="0.8" blue="0.8" /></text></element>
<element name="text_strikes"><text string="STKS"><color red="0.8" green="0.8" blue="0.8" /></text></element>
- <element name="text_atbat"><text string="ATBAT"><color red="0.8" green="0.8" blue="0.8" /></text></element>
+ <element name="text_atbat"><text string="AT BAT"><color red="0.8" green="0.8" blue="0.8" /></text></element>
<element name="text_outs"><text string="OUTS"><color red="0.8" green="0.8" blue="0.8" /></text></element>
<element name="text_innings"><text string="INGS"><color red="0.8" green="0.8" blue="0.8" /></text></element>
diff --git a/src/mame/layout/ftri1.lay b/src/mame/layout/ftri1.lay
new file mode 100644
index 00000000000..f4b83ffb561
--- /dev/null
+++ b/src/mame/layout/ftri1.lay
@@ -0,0 +1,243 @@
+<?xml version="1.0"?>
+<!--
+license:CC0
+-->
+<mamelayout version="2">
+
+<!-- define elements -->
+
+ <element name="diamond_white">
+ <image><data><![CDATA[
+ <svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="1414.21356" height="1414.21356">
+ <rect width="1000.0" height="1000.0" x="500.0" y="-500.0" transform="rotate(45.0)" style="opacity:1;fill:#cccccc;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ </svg>
+ ]]></data></image>
+ </element>
+ <element name="diamond_black">
+ <image><data><![CDATA[
+ <svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="1414.21356" height="1414.21356">
+ <rect width="1000.0" height="1000.0" x="500.0" y="-500.0" transform="rotate(45.0)" style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ </svg>
+ ]]></data></image>
+ </element>
+ <element name="diamond_green">
+ <image><data><![CDATA[
+ <svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="1414.21356" height="1414.21356">
+ <rect width="1000.0" height="1000.0" x="500.0" y="-500.0" transform="rotate(45.0)" style="opacity:1;fill:#006126;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ </svg>
+ ]]></data></image>
+ </element>
+
+ <element name="black"><rect><color red="0.0" green="0.0" blue="0.0" /></rect></element>
+ <element name="blackd"><disk><color red="0.0" green="0.0" blue="0.0" /></disk></element>
+ <element name="green"><rect><color red="0.0" green="0.38" blue="0.149" /></rect></element>
+ <element name="white"><rect><color red="0.8" green="0.8" blue="0.8" /></rect></element>
+ <element name="whited"><disk><color red="0.8" green="0.8" blue="0.8" /></disk></element>
+
+ <element name="led" defstate="0">
+ <disk>
+ <bounds x="0.0" y="0.0" width="1.0" height="1.0" />
+ <color red="0.0" green="0.0" blue="0.0" />
+ </disk>
+ <disk state="0">
+ <bounds x="0.25" y="0.25" width="0.5" height="0.5" />
+ <color red="0.1" green="0.01" blue="0.015" />
+ </disk>
+ <disk state="1">
+ <bounds x="0.25" y="0.25" width="0.5" height="0.5" />
+ <color red="1.0" green="0.1" blue="0.15" />
+ </disk>
+ </element>
+
+ <element name="digit" defstate="0">
+ <led7seg><color red="1.0" green="0.1" blue="0.15" /></led7seg>
+ </element>
+
+ <element name="text_foul">
+ <rect><color red="0.0" green="0.38" blue="0.15" /></rect>
+ <text string="FOUL"><color red="0.8" green="0.8" blue="0.8" /></text>
+ </element>
+ <element name="text_ball">
+ <rect><color red="0.0" green="0.38" blue="0.15" /></rect>
+ <text string="BALL"><color red="0.8" green="0.8" blue="0.8" /></text>
+ </element>
+ <element name="text_strike">
+ <text string="STRIKE"><color red="0.8" green="0.8" blue="0.8" /></text>
+ </element>
+ <element name="text_flyout">
+ <rect><color red="0.0" green="0.38" blue="0.15" /></rect>
+ <text string="FLY OUT"><color red="0.8" green="0.8" blue="0.8" /></text>
+ </element>
+ <element name="text_homerun">
+ <rect><color red="0.0" green="0.38" blue="0.15" /></rect>
+ <text string="HOME RUN"><color red="0.8" green="0.8" blue="0.8" /></text>
+ </element>
+ <element name="text_grdout">
+ <rect><color red="0.0" green="0.38" blue="0.15" /></rect>
+ <text string="GRD. OUT"><color red="0.8" green="0.8" blue="0.8" /></text>
+ </element>
+ <element name="text_single">
+ <rect><color red="0.0" green="0.38" blue="0.15" /></rect>
+ <text string="SINGLE"><color red="0.8" green="0.8" blue="0.8" /></text>
+ </element>
+ <element name="text_double">
+ <rect><color red="0.0" green="0.38" blue="0.15" /></rect>
+ <text string="DOUBLE"><color red="0.8" green="0.8" blue="0.8" /></text>
+ </element>
+ <element name="text_triple">
+ <rect><color red="0.0" green="0.38" blue="0.15" /></rect>
+ <text string="TRIPLE"><color red="0.8" green="0.8" blue="0.8" /></text>
+ </element>
+
+ <element name="text_visitor"><text string="VISITORS"><color red="0.8" green="0.8" blue="0.8" /></text></element>
+ <element name="text_hometeam"><text string="HOME TEAM"><color red="0.8" green="0.8" blue="0.8" /></text></element>
+ <element name="text_balls"><text string="BALLS"><color red="0.8" green="0.8" blue="0.8" /></text></element>
+ <element name="text_strikes"><text string="STR"><color red="0.8" green="0.8" blue="0.8" /></text></element>
+ <element name="text_atbat"><text string="AT BAT"><color red="0.8" green="0.8" blue="0.8" /></text></element>
+ <element name="text_outs"><text string="OUTS"><color red="0.8" green="0.8" blue="0.8" /></text></element>
+ <element name="text_innings"><text string="ING"><color red="0.8" green="0.8" blue="0.8" /></text></element>
+ <element name="text_enemy"><text string="ENEMY"><color red="0.8" green="0.8" blue="0.8" /></text></element>
+ <element name="text_spaceship"><text string="SPACE SHIP"><color red="0.8" green="0.8" blue="0.8" /></text></element>
+
+
+<!-- build screen -->
+
+ <view name="Internal Layout">
+ <bounds left="3" right="28" top="-2.2" bottom="30" />
+
+ <element ref="green"><bounds x="2" y="3" width="27" height="27" /></element>
+
+ <element ref="text_ball"><bounds x="10.2" y="25.7" width="3" height="0.85" /></element>
+ <element ref="text_ball"><bounds x="17.9" y="25.7" width="3" height="0.85" /></element>
+
+ <element ref="diamond_white"><bounds x="3" y="3.5" width="25" height="25" /></element>
+ <element ref="diamond_green"><bounds x="3" y="3.25" width="25" height="25" /></element>
+
+ <element ref="white"><bounds x="2" y="3" width="27" height="1" /></element>
+ <element ref="black"><bounds x="2" y="2.6" width="27" height="1" /></element>
+
+ <element ref="black"><bounds x="1" y="0" width="2" height="50" /></element>
+ <element ref="black"><bounds x="28" y="0" width="2" height="50" /></element>
+
+ <!-- score panel -->
+
+ <element ref="text_visitor"><bounds x="6.55" y="-2.1" width="6.4" height="1" /></element>
+ <element ref="text_enemy"><bounds x="6.55" y="2.75" width="6.4" height="0.7" /></element>
+ <element ref="white"><bounds x="6.55" y="-1" width="6.4" height="3.65" /></element>
+ <element ref="black"><bounds x="6.75" y="-0.8" width="6" height="3.25" /></element>
+
+ <element ref="text_balls"><bounds x="6.75" y="1.7" width="2" height="0.7" /></element>
+ <element ref="text_strikes"><bounds x="8.75" y="1.7" width="2" height="0.7" /></element>
+ <element ref="text_atbat"><bounds x="10.85" y="1.7" width="2" height="0.7" /></element>
+
+ <element name="digit5" ref="digit"><bounds x="7" y="-0.6" width="1.5" height="2.25" /></element>
+ <element name="digit6" ref="digit"><bounds x="9" y="-0.6" width="1.5" height="2.25" /></element>
+ <element name="6.7" ref="led"><bounds x="11.25" y="0.05" width="1" height="1" /></element>
+
+ <element ref="white"><bounds x="8.65" y="-0.9" width="0.2" height="3.45" /></element>
+ <element ref="white"><bounds x="10.65" y="-0.9" width="0.2" height="3.45" /></element>
+
+ <element ref="text_hometeam"><bounds x="18" y="-2.1" width="6.4" height="1" /></element>
+ <element ref="text_spaceship"><bounds x="18" y="2.75" width="6.4" height="0.7" /></element>
+ <element ref="white"><bounds x="18" y="-1" width="6.4" height="3.65" /></element>
+ <element ref="black"><bounds x="18.2" y="-0.8" width="6" height="3.25" /></element>
+
+ <element ref="text_atbat"><bounds x="18.2" y="1.7" width="2" height="0.7" /></element>
+ <element ref="text_outs"><bounds x="20.2" y="1.7" width="2" height="0.7" /></element>
+ <element ref="text_innings"><bounds x="22.2" y="1.7" width="2" height="0.7" /></element>
+
+ <element name="7.7" ref="led"><bounds x="18.7" y="0.05" width="1" height="1" /></element>
+ <element name="digit7" ref="digit"><bounds x="20.45" y="-0.6" width="1.5" height="2.25" /></element>
+ <element name="digit8" ref="digit"><bounds x="22.45" y="-0.6" width="1.5" height="2.25" /></element>
+
+ <element ref="white"><bounds x="20.1" y="-0.9" width="0.2" height="3.45" /></element>
+ <element ref="white"><bounds x="22.1" y="-0.9" width="0.2" height="3.45" /></element>
+
+ <!-- upper part -->
+
+ <element ref="text_flyout"><bounds x="4.5" y="8.1" width="4" height="0.7" /></element>
+ <element ref="text_homerun"><bounds x="7.5" y="7.1" width="4" height="0.7" /></element>
+ <element ref="text_grdout"><bounds x="10.5" y="6.1" width="4" height="0.7" /></element>
+ <element ref="text_triple"><bounds x="4.5" y="11.1" width="4" height="0.7" /></element>
+ <element ref="text_grdout"><bounds x="7.5" y="10.1" width="4" height="0.7" /></element>
+ <element ref="text_single"><bounds x="10.5" y="9.1" width="4" height="0.7" /></element>
+
+ <element ref="text_flyout"><bounds x="16.5" y="6.1" width="4" height="0.7" /></element>
+ <element ref="text_flyout"><bounds x="19.5" y="7.1" width="4" height="0.7" /></element>
+ <element ref="text_double"><bounds x="22.5" y="8.1" width="4" height="0.7" /></element>
+ <element ref="text_single"><bounds x="16.5" y="9.1" width="4" height="0.7" /></element>
+ <element ref="text_single"><bounds x="19.5" y="10.1" width="4" height="0.7" /></element>
+ <element ref="text_grdout"><bounds x="22.5" y="11.1" width="4" height="0.7" /></element>
+
+ <element name="2.6" ref="led"><bounds x="6" y="7" width="1" height="1" /></element>
+ <element name="4.6" ref="led"><bounds x="9" y="6" width="1" height="1" /></element>
+ <element name="4.4" ref="led"><bounds x="12" y="5" width="1" height="1" /></element>
+ <element name="1.6" ref="led"><bounds x="6" y="10" width="1" height="1" /></element>
+ <element name="3.6" ref="led"><bounds x="9" y="9" width="1" height="1" /></element>
+ <element name="4.5" ref="led"><bounds x="12" y="8" width="1" height="1" /></element>
+
+ <element name="4.3" ref="led"><bounds x="18" y="5" width="1" height="1" /></element>
+ <element name="4.1" ref="led"><bounds x="21" y="6" width="1" height="1" /></element>
+ <element name="4.0" ref="led"><bounds x="24" y="7" width="1" height="1" /></element>
+ <element name="3.2" ref="led"><bounds x="18" y="8" width="1" height="1" /></element>
+ <element name="4.2" ref="led"><bounds x="21" y="9" width="1" height="1" /></element>
+ <element name="4.7" ref="led"><bounds x="24" y="10" width="1" height="1" /></element>
+
+ <!-- field labels -->
+
+ <element ref="text_foul"><bounds x="6.8" y="24.1" width="2.2" height="0.85" /></element>
+ <element ref="text_foul"><bounds x="22.1" y="24.1" width="2.2" height="0.85" /></element>
+
+ <element ref="diamond_white"><bounds x="5.5" y="8.5" width="20" height="20" /></element>
+
+ <element ref="whited"><bounds x="11.5" y="23.5" width="2" height="2" /></element>
+ <element ref="blackd"><bounds x="11.75" y="23.75" width="1.5" height="1.5" /></element>
+ <element ref="whited"><bounds x="17.5" y="23.5" width="2" height="2" /></element>
+ <element ref="blackd"><bounds x="17.75" y="23.75" width="1.5" height="1.5" /></element>
+ <element ref="white"><bounds x="14.5" y="26.5" width="2" height="2.5" /></element>
+
+ <element ref="diamond_black"><bounds x="5.75" y="8.75" width="19.5" height="19.5" /></element>
+
+ <element ref="text_strike"><bounds x="13" y="25.45" width="5" height="1" /></element>
+
+ <element ref="white"><bounds x="14" y="10.1" width="3" height="0.25" /></element>
+ <element ref="white"><bounds x="7.1" y="17" width="0.25" height="3" /></element>
+ <element ref="white"><bounds x="23.65" y="17" width="0.25" height="3" /></element>
+
+ <element ref="white"><bounds x="14.5" y="26.5" width="1.77" height="0.25" /></element>
+ <element ref="white"><bounds x="14.5" y="26.5" width="0.25" height="1.2" /></element>
+ <element ref="white"><bounds x="16.25" y="26.5" width="0.25" height="1" /></element>
+ <element ref="white"><bounds x="16.25" y="26.5" width="0.2" height="1.2" /></element>
+
+ <!-- field leds -->
+
+ <element name="3.5" ref="led"><bounds x="15" y="9" width="1" height="1" /></element>
+ <element name="2.5" ref="led"><bounds x="12" y="12" width="1" height="1" /></element>
+ <element name="2.4" ref="led"><bounds x="15" y="12" width="1" height="1" /></element>
+ <element name="3.3" ref="led"><bounds x="18" y="12" width="1" height="1" /></element>
+ <element name="1.5" ref="led"><bounds x="9" y="15" width="1" height="1" /></element>
+ <element name="1.4" ref="led"><bounds x="12" y="15" width="1" height="1" /></element>
+ <element name="2.3" ref="led"><bounds x="15" y="15" width="1" height="1" /></element>
+ <element name="2.2" ref="led"><bounds x="18" y="15" width="1" height="1" /></element>
+ <element name="3.1" ref="led"><bounds x="21" y="15" width="1" height="1" /></element>
+ <element name="0.5" ref="led"><bounds x="6" y="18" width="1" height="1" /></element>
+ <element name="0.4" ref="led"><bounds x="9" y="18" width="1" height="1" /></element>
+ <element name="1.3" ref="led"><bounds x="12" y="18" width="1" height="1" /></element>
+ <element name="1.2" ref="led"><bounds x="15" y="18" width="1" height="1" /></element>
+ <element name="2.1" ref="led"><bounds x="18" y="18" width="1" height="1" /></element>
+ <element name="2.0" ref="led"><bounds x="21" y="18" width="1" height="1" /></element>
+ <element name="3.7" ref="led"><bounds x="24" y="18" width="1" height="1" /></element>
+ <element name="0.3" ref="led"><bounds x="9" y="21" width="1" height="1" /></element>
+ <element name="0.2" ref="led"><bounds x="12" y="21" width="1" height="1" /></element>
+ <element name="1.1" ref="led"><bounds x="15" y="21" width="1" height="1" /></element>
+ <element name="1.0" ref="led"><bounds x="18" y="21" width="1" height="1" /></element>
+ <element name="2.7" ref="led"><bounds x="21" y="21" width="1" height="1" /></element>
+ <element name="6.6" ref="led"><bounds x="9" y="24" width="1" height="1" /></element>
+ <element name="0.1" ref="led"><bounds x="12" y="24" width="1" height="1" /></element>
+ <element name="0.0" ref="led"><bounds x="15" y="24" width="1" height="1" /></element>
+ <element name="1.7" ref="led"><bounds x="18" y="24" width="1" height="1" /></element>
+ <element name="3.0" ref="led"><bounds x="21" y="24" width="1" height="1" /></element>
+ <element name="0.7" ref="led"><bounds x="15" y="27" width="1" height="1" /></element>
+
+ </view>
+</mamelayout>
diff --git a/src/mame/layout/hh_amis2k_test.lay b/src/mame/layout/hh_amis2k_test.lay
index 1f4755364e9..3aadcd44155 100644
--- a/src/mame/layout/hh_amis2k_test.lay
+++ b/src/mame/layout/hh_amis2k_test.lay
@@ -4,7 +4,7 @@ license:CC0
-->
<mamelayout version="2">
- <!-- define elements -->
+<!-- define elements -->
<element name="static_black"><rect><color red="0.0" green="0.0" blue="0.0" /></rect></element>
@@ -14,7 +14,7 @@ license:CC0
</element>
- <!-- build screen -->
+<!-- build screen -->
<view name="Test Layout">
<bounds left="0" right="32" top="0" bottom="16" />
@@ -23,7 +23,6 @@ license:CC0
</element>
<!-- max 16*32 matrix -->
-
<repeat count="16">
<param name="y" start="0" increment="1" />
diff --git a/src/mame/layout/hh_cop400_test.lay b/src/mame/layout/hh_cop400_test.lay
index 1f4755364e9..3aadcd44155 100644
--- a/src/mame/layout/hh_cop400_test.lay
+++ b/src/mame/layout/hh_cop400_test.lay
@@ -4,7 +4,7 @@ license:CC0
-->
<mamelayout version="2">
- <!-- define elements -->
+<!-- define elements -->
<element name="static_black"><rect><color red="0.0" green="0.0" blue="0.0" /></rect></element>
@@ -14,7 +14,7 @@ license:CC0
</element>
- <!-- build screen -->
+<!-- build screen -->
<view name="Test Layout">
<bounds left="0" right="32" top="0" bottom="16" />
@@ -23,7 +23,6 @@ license:CC0
</element>
<!-- max 16*32 matrix -->
-
<repeat count="16">
<param name="y" start="0" increment="1" />
diff --git a/src/mame/layout/hh_cops1_test.lay b/src/mame/layout/hh_cops1_test.lay
index 1f4755364e9..3aadcd44155 100644
--- a/src/mame/layout/hh_cops1_test.lay
+++ b/src/mame/layout/hh_cops1_test.lay
@@ -4,7 +4,7 @@ license:CC0
-->
<mamelayout version="2">
- <!-- define elements -->
+<!-- define elements -->
<element name="static_black"><rect><color red="0.0" green="0.0" blue="0.0" /></rect></element>
@@ -14,7 +14,7 @@ license:CC0
</element>
- <!-- build screen -->
+<!-- build screen -->
<view name="Test Layout">
<bounds left="0" right="32" top="0" bottom="16" />
@@ -23,7 +23,6 @@ license:CC0
</element>
<!-- max 16*32 matrix -->
-
<repeat count="16">
<param name="y" start="0" increment="1" />
diff --git a/src/mame/layout/hh_hmcs40_test.lay b/src/mame/layout/hh_hmcs40_test.lay
index 8be4c5cef74..85ebdae627d 100644
--- a/src/mame/layout/hh_hmcs40_test.lay
+++ b/src/mame/layout/hh_hmcs40_test.lay
@@ -4,7 +4,7 @@ license:CC0
-->
<mamelayout version="2">
- <!-- define elements -->
+<!-- define elements -->
<element name="static_black"><rect><color red="0.0" green="0.0" blue="0.0" /></rect></element>
@@ -14,7 +14,7 @@ license:CC0
</element>
- <!-- build screen -->
+<!-- build screen -->
<view name="Test Layout">
<bounds left="0" right="40" top="0" bottom="16" />
@@ -23,7 +23,6 @@ license:CC0
</element>
<!-- max 16*40 matrix -->
-
<repeat count="16">
<param name="y" start="0" increment="1" />
diff --git a/src/mame/layout/hh_melps4_test.lay b/src/mame/layout/hh_melps4_test.lay
index d737d012688..88bf8778030 100644
--- a/src/mame/layout/hh_melps4_test.lay
+++ b/src/mame/layout/hh_melps4_test.lay
@@ -4,7 +4,7 @@ license:CC0
-->
<mamelayout version="2">
- <!-- define elements -->
+<!-- define elements -->
<element name="static_black"><rect><color red="0.0" green="0.0" blue="0.0" /></rect></element>
@@ -14,7 +14,7 @@ license:CC0
</element>
- <!-- build screen -->
+<!-- build screen -->
<view name="Test Layout">
<bounds left="0" right="32" top="0" bottom="16" />
@@ -23,7 +23,6 @@ license:CC0
</element>
<!-- max 16*32 matrix -->
-
<repeat count="16">
<param name="y" start="0" increment="1" />
diff --git a/src/mame/layout/hh_pic16_test.lay b/src/mame/layout/hh_pic16_test.lay
index 1f4755364e9..3aadcd44155 100644
--- a/src/mame/layout/hh_pic16_test.lay
+++ b/src/mame/layout/hh_pic16_test.lay
@@ -4,7 +4,7 @@ license:CC0
-->
<mamelayout version="2">
- <!-- define elements -->
+<!-- define elements -->
<element name="static_black"><rect><color red="0.0" green="0.0" blue="0.0" /></rect></element>
@@ -14,7 +14,7 @@ license:CC0
</element>
- <!-- build screen -->
+<!-- build screen -->
<view name="Test Layout">
<bounds left="0" right="32" top="0" bottom="16" />
@@ -23,7 +23,6 @@ license:CC0
</element>
<!-- max 16*32 matrix -->
-
<repeat count="16">
<param name="y" start="0" increment="1" />
diff --git a/src/mame/layout/hh_pps41_test.lay b/src/mame/layout/hh_pps41_test.lay
index 1f4755364e9..3aadcd44155 100644
--- a/src/mame/layout/hh_pps41_test.lay
+++ b/src/mame/layout/hh_pps41_test.lay
@@ -4,7 +4,7 @@ license:CC0
-->
<mamelayout version="2">
- <!-- define elements -->
+<!-- define elements -->
<element name="static_black"><rect><color red="0.0" green="0.0" blue="0.0" /></rect></element>
@@ -14,7 +14,7 @@ license:CC0
</element>
- <!-- build screen -->
+<!-- build screen -->
<view name="Test Layout">
<bounds left="0" right="32" top="0" bottom="16" />
@@ -23,7 +23,6 @@ license:CC0
</element>
<!-- max 16*32 matrix -->
-
<repeat count="16">
<param name="y" start="0" increment="1" />
diff --git a/src/mame/layout/hh_sm500_test.lay b/src/mame/layout/hh_sm500_test.lay
index 46967e9e810..6dc2b2b135a 100644
--- a/src/mame/layout/hh_sm500_test.lay
+++ b/src/mame/layout/hh_sm500_test.lay
@@ -4,7 +4,7 @@ license:CC0
-->
<mamelayout version="2">
- <!-- define elements -->
+<!-- define elements -->
<!-- not really black, and not really leds either, but let's just keep the same naming as the other hh test layouts -->
<element name="static_black"><rect><color red="0.5412" green="0.57255" blue="0.5804" /></rect></element>
@@ -15,7 +15,7 @@ license:CC0
</element>
- <!-- build screen -->
+<!-- build screen -->
<view name="Test Layout">
<bounds left="0" right="10" top="0" bottom="10" />
@@ -24,7 +24,6 @@ license:CC0
</element>
<!-- max 9*4*2 matrix -->
-
<repeat count="9">
<param name="y" start="0" increment="1" />
diff --git a/src/mame/layout/hh_sm510_test.lay b/src/mame/layout/hh_sm510_test.lay
index 258f72e1a97..27bbb3f8ba8 100644
--- a/src/mame/layout/hh_sm510_test.lay
+++ b/src/mame/layout/hh_sm510_test.lay
@@ -4,7 +4,7 @@ license:CC0
-->
<mamelayout version="2">
- <!-- define elements -->
+<!-- define elements -->
<!-- not really black, and not really leds either, but let's just keep the same naming as the other hh test layouts -->
<element name="static_black"><rect><color red="0.5412" green="0.57255" blue="0.5804" /></rect></element>
@@ -15,7 +15,7 @@ license:CC0
</element>
- <!-- build screen -->
+<!-- build screen -->
<view name="Test Layout">
<bounds left="0" right="20" top="0" bottom="16" />
@@ -24,7 +24,6 @@ license:CC0
</element>
<!-- max 4*16*4 matrix -->
-
<repeat count="16">
<param name="y" start="0" increment="1" />
diff --git a/src/mame/layout/hh_tms1k_test.lay b/src/mame/layout/hh_tms1k_test.lay
index 1f4755364e9..3aadcd44155 100644
--- a/src/mame/layout/hh_tms1k_test.lay
+++ b/src/mame/layout/hh_tms1k_test.lay
@@ -4,7 +4,7 @@ license:CC0
-->
<mamelayout version="2">
- <!-- define elements -->
+<!-- define elements -->
<element name="static_black"><rect><color red="0.0" green="0.0" blue="0.0" /></rect></element>
@@ -14,7 +14,7 @@ license:CC0
</element>
- <!-- build screen -->
+<!-- build screen -->
<view name="Test Layout">
<bounds left="0" right="32" top="0" bottom="16" />
@@ -23,7 +23,6 @@ license:CC0
</element>
<!-- max 16*32 matrix -->
-
<repeat count="16">
<param name="y" start="0" increment="1" />
diff --git a/src/mame/layout/hh_ucom4_test.lay b/src/mame/layout/hh_ucom4_test.lay
index d737d012688..88bf8778030 100644
--- a/src/mame/layout/hh_ucom4_test.lay
+++ b/src/mame/layout/hh_ucom4_test.lay
@@ -4,7 +4,7 @@ license:CC0
-->
<mamelayout version="2">
- <!-- define elements -->
+<!-- define elements -->
<element name="static_black"><rect><color red="0.0" green="0.0" blue="0.0" /></rect></element>
@@ -14,7 +14,7 @@ license:CC0
</element>
- <!-- build screen -->
+<!-- build screen -->
<view name="Test Layout">
<bounds left="0" right="32" top="0" bottom="16" />
@@ -23,7 +23,6 @@ license:CC0
</element>
<!-- max 16*32 matrix -->
-
<repeat count="16">
<param name="y" start="0" increment="1" />